diff --git a/Berechnungen.py b/Berechnungen.py index d53e514..27e6a42 100644 --- a/Berechnungen.py +++ b/Berechnungen.py @@ -1,67 +1,243 @@ -from typing import Any - -import sympy as sp from decimal import Decimal +import sympy as sp +from typing import Any import math import numpy as np -from numpy import ndarray, dtype import Datenbank class Berechnungen: + """Geodätische Hilfsberechnungen auf einem Rotationsellipsoid. + + Die Klasse stellt Methoden zur Verfügung für: + + - erste numerische Exzentrizität e² und zweite numerische Exzentrizität e'², + - Umrechnung ECEF (X, Y, Z) → geodätische Breite B, geodätische Länge L und ellipsoidische Höhe H, + - lokale ENU-Komponenten (E, N, U), + - Horizontalstrecke, Zenitwinkel, Azimut und Richtung, + - Berechnung von Azimut, Richtung und Zenitwinkel aus Tachymeterbeobachtungen. + + :ivar a_wert: Große Halbachse a in Meter. + :vartype a_wert: float + :ivar b_wert: Kleine Halbachse b in Meter. + :vartype b_wert: float + :ivar e_quadrat_wert: Quadrat der ersten numerischen Exzentrizität e² (einheitenlos). + :vartype e_quadrat_wert: float + :ivar e_strich_quadrat_wert: Quadrat der zweiten numerischen Exzentrizität e'² (einheitenlos). + :vartype e_strich_quadrat_wert: float + """ + def __init__(self, a: float, b: float) -> None: + """Initialisiert die Ellipsoidparameter. + + Berechnet die erste und zweite numerische Exzentrizität. + + :param a: Große Halbachse a des Rotationsellipsoids in Meter. + :type a: float + :param b: Kleine Halbachse b des Rotationsellipsoids in Meter. + :type b: float + """ self.a_wert = a self.b_wert = b self.e_quadrat_wert = self.e_quadrat() self.e_strich_quadrat_wert = self.e_strich_quadrat() def e_quadrat(self) -> float: + """Berechnet das Quadrat der ersten numerischen Exzentrizität e². + + Es gilt: e² = (a² − b²) / a², wobei a die große und b die kleine Halbachse ist. + + :return: Quadrat der ersten numerischen Exzentrizität e² (einheitenlos). + :rtype: float + """ return (self.a_wert**2 - self.b_wert**2) / self.a_wert **2 def e_strich_quadrat(self) -> float: + """Berechnet das Quadrat der zweiten numerischen Exzentrizität e'². + + Es gilt: e'² = (a² − b²) / b², wobei a die große und b die kleine Halbachse ist + + :return: Quadrat der zweiten numerischen Exzentrizität e'² (einheitenlos). + :rtype: float + """ return (self.a_wert**2 - self.b_wert**2) / self.b_wert **2 def P(self, x: float, y: float) -> float: + """Berechnet den Hilfswert P aus geozentrischen Koordinaten. + + Es gilt: P = sqrt(x² + y²). + + :param x: Geozentrische kartesische X-Koordinate (ECEF) in Meter. + :type x: float + :param y: Geozentrische kartesische Y-Koordinate (ECEF) in Meter. + :type y: float + :return: Hilfswert P in Meter. + :rtype: float + """ return np.sqrt(x**2 + y**2) def hilfswinkel(self, x: float, y: float, z: float) -> float: + """Berechnet den Hilfswinkel für die Bestimmung der geodätischen Breite. + + Es gilt: hw = atan2(z * a, P(x, y) * b). + + :param x: Geozentrische kartesische X-Koordinate (ECEF) in Meter. + :type x: float + :param y: Geozentrische kartesische Y-Koordinate (ECEF) in Meter. + :type y: float + :param z: Geozentrische kartesische Z-Koordinate (ECEF) in Meter. + :type z: float + :return: Hilfswinkel in Radiant. + :rtype: float + """ hw = np.atan2(z * self.a_wert, self.P(x, y) * self.b_wert) return hw def B(self, x: float, y: float, z: float) -> float: + """Berechnet die geodätische Breite B aus geozentrischen Koordinaten. + + Verwendet den Hilfswinkel, e² und e'² zur Berechnung. + + :param x: Geozentrische kartesische X-Koordinate (ECEF) in Meter. + :type x: float + :param y: Geozentrische kartesische Y-Koordinate (ECEF) in Meter. + :type y: float + :param z: Geozentrische kartesische Z-Koordinate (ECEF) in Meter. + :type z: float + :return: Geodätische Breite B in Radiant. + :rtype: float + """ hilfswinkel = self.hilfswinkel(x, y, z) B = np.atan2((z + self.e_strich_quadrat_wert * self.b_wert * np.sin(hilfswinkel) ** 3), (self.P(x, y) - self.e_quadrat_wert * self.a_wert * np.cos(hilfswinkel) ** 3)) return B def L(self, x: float, y: float) -> float: + """Berechnet die geodätische Länge L aus geozentrischen Koordinaten. + + Es gilt: L = atan2(y, x). + + :param x: Geozentrische kartesische X-Koordinate (ECEF) in Meter. + :type x: float + :param y: Geozentrische kartesische Y-Koordinate (ECEF) in Meter. + :type y: float + :return: Geodätische Länge L in Radiant. + :rtype: float + """ return np.atan2(y, x) def H(self, x: float, y: float, z: float) -> float: + """Berechnet die ellipsoidische Höhe H aus geozentrisch kartesischen Koordinaten. + + Die ellipsoidische Höhe wird mithilfe der geodätischen Breite B und der Ellipsoidparameter berechnet. + + :param x: Geozentrische kartesische X-Koordinate (ECEF) in Meter. + :type x: float + :param y: Geozentrische kartesische Y-Koordinate (ECEF) in Meter. + :type y: float + :param z: Geozentrische kartesische Z-Koordinate (ECEF) in Meter. + :type z: float + :return: Ellipsoidische Höhe H in Meter. + :rtype: float + """ B = self.B(x, y, z) H = (self.P(x, y) / np.cos(B)) - self.a_wert / (np.sqrt(1 - self.e_quadrat_wert * np.sin(B) ** 2)) return H def E(self, L: float, dX: float, dY: float) -> float: + """Berechnet die Ostkomponente E im lokalen ENU-System. + + :param L: Geodätische Länge in Radiant. + :type L: float + :param dX: Differenz dX = X2 − X1 in Meter. + :type dX: float + :param dY: Differenz dY = Y2 − Y1 in Meter. + :type dY: float + :return: Ostkomponente E in Meter. + :rtype: float + """ E = -np.sin(L) * dX + np.cos(L) * dY return E def N(self, B: float, L: float, dX: float, dY: float, dZ: float) -> float: + """Berechnet die Nordkomponente N im lokalen ENU-System. + + :param B: Geodätische Breite in Radiant. + :type B: float + :param L: Geodätische Länge in Radiant. + :type L: float + :param dX: Differenz dX = X2 − X1 in Meter. + :type dX: float + :param dY: Differenz dY = Y2 − Y1 in Meter. + :type dY: float + :param dZ: Differenz dZ = Z2 − Z1 in Meter. + :type dZ: float + :return: Nordkomponente N in Meter. + :rtype: float + """ N = -np.sin(B) * np.cos(L) * dX - np.sin(B) * np.sin(L) * dY + np.cos(B) * dZ return N def U(self, B: float, L: float, dX: float, dY: float, dZ: float) -> float: + """Berechnet die Up-Komponente U im lokalen ENU-System. + + :param B: Geodätischee Breite in Radiant. + :type B: float + :param L: Geodätische Länge in Radiant. + :type L: float + :param dX: Differenz dX = X2 − X1 in Meter. + :type dX: float + :param dY: Differenz dY = Y2 − Y1 in Meter. + :type dY: float + :param dZ: Differenz dZ = Z2 − Z1 in Meter. + :type dZ: float + :return: Up-Komponente U in Meter. + :rtype: float + """ U = np.cos(B) * np.cos(L) * dX + np.cos(B) * np.sin(L) *dY + np.sin(B) * dZ return U def horizontalstrecke_ENU(self, E: float, N: float) -> float: + """Berechnet die Horizontalstrecke aus den ENU-Komponenten E und N. + + Es gilt: s = sqrt(E² + N²). + + :param E: Ostkomponente E in Meter. + :type E: float + :param N: Nordkomponente N in Meter. + :type N: float + :return: Horizontalstrecke in Meter. + :rtype: float + """ s = np.sqrt(E**2 + N**2) return s def Zenitwinkel(self, horizontalstrecke_ENU: float, U: float) -> float: + """Berechnet den Zenitwinkel aus Horizontalstrecke und Up-Komponente. + + Es gilt: zw = atan2(horizontalstrecke_ENU, U). + + :param horizontalstrecke_ENU: Horizontalstrecke in Meter. + :type horizontalstrecke_ENU: float + :param U: Up-Komponente U in Meter. + :type U: float + :return: Zenitwinkel in Radiant. + :rtype: float + """ zw = np.atan2(horizontalstrecke_ENU, U) return zw def Azimut(self, E: float, N: float) -> float: + """Berechnet den Azimut aus den ENU-Komponenten E und N. + + Der Azimut wird auf [0, 2π) normiert. + + :param E: Ostkomponente E in Meter. + :type E: float + :param N: Nordkomponente N in Meter. + :type N: float + :return: Azimut in Radiant im Bereich [0, 2π). + :rtype: float + """ Azimut = np.atan2(E, N) if Azimut < 0: Azimut += 2 * np.pi @@ -70,6 +246,17 @@ class Berechnungen: return Azimut def Richtung(self, Azimut: float, Orientierung: float) -> float: + """Berechnet die Richtung aus Azimut und Orientierung. + + Die Richtung wird auf [0, 2π) normiert. + + :param Azimut: Azimut in Radiant. + :type Azimut: float + :param Orientierung: Orientierung in Radiant. + :type Orientierung: float + :return: Richtung in Radiant im Bereich [0, 2π). + :rtype: float + """ Richtung = Azimut - Orientierung if Richtung < 0: Richtung += 2 * np.pi @@ -77,13 +264,37 @@ class Berechnungen: Richtung -= 2 * np.pi return Richtung - def geometrische_breite_laenge(self, dict_koordinaten: dict) -> dict: + def geodätische_breite_laenge(self, dict_koordinaten: dict) -> dict: + """Berechnet geodätische Breite und Länge für alle Punkte eines Koordinatendictionaries. + + Die Einträge des Dictionaries werden in einer Schleife erweitert zu [Koordinatenmatrix, B, L], wobei Koordinatenmatrix = (X, Y, Z) ist. + + :param dict_koordinaten: Dictionary mit geozentrischen Koordinaten je Punkt. + :type dict_koordinaten: dict + :return: Das übergebene Dictionary mit erweiterten Einträgen. + :rtype: dict + """ for punktnummer, matrix in dict_koordinaten.items(): dict_koordinaten[punktnummer] = [matrix, self.B(matrix[0], matrix[1], matrix[2]), self.L(matrix[0], matrix[1])] return dict_koordinaten def berechnung_richtung_azimut_zenitwinkel(self, pfad_datenbank: str, dict_koordinaten: dict) -> tuple[list[Any], dict[Any, Any]]: + """Berechnet Azimut, Richtung und Zenitwinkel aus Tachymeterbeobachtungen. + + Die Tachymeterbeobachtungen werden aus der Datenbank gelesen. Für jede Beobachtung + (Standpunkt → Zielpunkt) werden aus den Koordinatendifferenzen die lokalen ENU-Komponenten + am Standpunkt berechnet und daraus Azimut, Richtung und Zenitwinkel berechnet. + + Die Orientierung wird pro Beobachtungsgruppe durch den ersten Azimut der Gruppe gesetzt. + + :param pfad_datenbank: Pfad zur Datenbank. + :type pfad_datenbank: str + :param dict_koordinaten: Dictionary mit geozentrisch kartesischen Koordinaten je Punkt (ECEF). + :type dict_koordinaten: dict + :return: Tupel aus Ergebnisliste mit (beobachtungsgruppeID, standpunkt, zielpunkt, Azimut, richtung, Zenitwinkel, schraegstrecke, orientierung) und Dictionary der Orientierungen je Beobachtungsgruppe. Winkel in Radiant, Strecken in Meter. + :rtype: tuple[list[Any], dict[Any, Any]] + """ dict_koordinaten_erweitert = {} dict_orientierungen = {} liste_azimut_richtungen = [] @@ -149,6 +360,21 @@ class Berechnungen: def berechne_zenitwinkel_distanz_bodenbezogen(self, zenitwinkel_messung: float, schraegdistanz_messung: float, instrumentenhoehe: float, prismenhoehe: float): + """Berechnet bodenbezogene Schrägdistanz und bodenbezogenen Zenitwinkel. + + Aus gemessener Schrägdistanz und gemessenem Zenitwinkel werden die Horizontalstrecke, der bodenbezogene Höhenunterschied sowie die bodenbezogenen Größen abgeleitet. + + :param zenitwinkel_messung: Gemessener Zenitwinkel in Radiant. + :type zenitwinkel_messung: float + :param schraegdistanz_messung: Gemessene Schrägdistanz in Meter. + :type schraegdistanz_messung: float + :param instrumentenhoehe: Instrumentenhöhe in Meter. + :type instrumentenhoehe: float + :param prismenhoehe: Prismen-/Zielhöhe in Meter. + :type prismenhoehe: float + :return: Bodenbezogene Schrägdistanz in Meter und bodenbezogener Zenitwinkel in Radiant. + :rtype: tuple[float, float] + """ HD = np.sin(np.pi - zenitwinkel_messung) * schraegdistanz_messung delta_h_ihzh = schraegdistanz_messung * np.cos(zenitwinkel_messung) delta_h_boden = delta_h_ihzh + instrumentenhoehe - prismenhoehe @@ -158,30 +384,166 @@ class Berechnungen: class Einheitenumrechnung: - def __init__(self) -> None: - pass + """Einheitenumrechnungen für Winkel- und Längeneinheiten. + Die Klasse stellt Methoden zur Verfügung für: + + - Umrechnung von Millibogensekunden (mas) in Radiant, + - Umrechnung von Millimetern (mm) in Meter, + - Umrechnung von Gon und Milligon (mgon) in Radiant (Decimal-basiert). + """ def mas_to_rad(mas: float) -> float: + """Rechnet Millibogensekunden (mas) in Radiant um. + + Es gilt: rad = mas * (pi / (180 * 3600 * 1000)). + + :param mas: Winkel in Millibogensekunden (mas). + :type mas: float + :return: Winkel in Radiant. + :rtype: float + """ umrechnungsfaktor = 1 / 1000 * 1 / 3600 * sp.pi / 180 grad = mas * umrechnungsfaktor return grad def mm_to_m(mm: float) -> float: + """Rechnet Millimeter in Meter um. + + Es gilt: m = mm / 1000. + + :param mm: Länge in Millimeter. + :type mm: float + :return: Länge in Meter. + :rtype: float + """ m = mm / 1000 return m - def ppb(ppb: float) -> float: - ppb *= 10 ** (-9) - return ppb + def gon_to_rad_Decimal(gon: float) -> Decimal: + """Rechnet Gon in Radiant um (Decimal-basiert). - def gon_to_rad_Decimal(gon: float) -> float: + Es gilt: 400 gon = 2*pi und damit rad = (gon / 200) * pi. + + :param gon: Winkel in Gon. + :type gon: float + :return: Winkel in Radiant als Decimal. + :rtype: Decimal + """ gon = Decimal(gon) pi = Decimal(str(math.pi)) rad = (gon / Decimal(200)) * pi return rad - def mgon_to_rad_Decimal(gon: float) -> float: + def mgon_to_rad_Decimal(gon: float) -> Decimal: + """Rechnet Milligon (mgon) in Radiant um (Decimal-basiert). + + Es gilt: 1 mgon = 0.001 gon und damit rad = (mgon / 200000) * pi. + + :param gon: Winkel in Milligon (mgon). + :type gon: float + :return: Winkel in Radiant als Decimal. + :rtype: Decimal + """ gon = Decimal(gon) pi = Decimal(str(math.pi)) rad = (gon / Decimal(200000)) * pi - return rad \ No newline at end of file + return rad + + def rad_to_gon_Decimal(rad: float) -> Decimal: + """Rechnet Radiant in Gon um (Decimal-basiert). + + Es gilt: 400 gon = 2*pi und damit rad = (gon / 200) * pi. + + :param rad: Winkel in Rad. + :type rad: float + :return: Winkel in Gon als Decimal. + :rtype: Decimal + """ + rad = Decimal(rad) + pi = Decimal(str(math.pi)) + gon = (rad / pi) * Decimal(200) + return gon + + +class ENU: + + @staticmethod + def berechne_schwerpunkt_fuer_enu(berechnungen, dict_xyz): + XYZ = np.array(list(dict_xyz.values()), dtype=float) + X0, Y0, Z0 = XYZ.mean(axis=0) + B0 = float(berechnungen.B(X0, Y0, Z0)) + L0 = float(berechnungen.L(X0, Y0)) + return B0, L0 + + + @staticmethod + def berechne_R0_ENU(berechnungen, B, L): + # East + r11 = berechnungen.E(L, 1, 0) + r12 = berechnungen.E(L, 0, 1) + r13 = berechnungen.E(L, 0, 0) + + # North + r21 = berechnungen.N(B, L, 1, 0, 0) + r22 = berechnungen.N(B, L, 0, 1, 0) + r23 = berechnungen.N(B, L, 0, 0, 1) + + # Up + r31 = berechnungen.U(B, L, 1, 0, 0) + r32 = berechnungen.U(B, L, 0, 1, 0) + r33 = berechnungen.U(B, L, 0, 0, 1) + + R0 = np.array([ + [r11, r12, r13], + [r21, r22, r23], + [r31, r32, r33] + ], dtype=float) + + return R0 + + + @staticmethod + def berechne_R_ENU(unbekannten_liste, R0): + names = [str(s) for s in unbekannten_liste] + n = len(names) + R = np.eye(n, dtype=float) + + punkt_ids = [nm[1:] for nm in names if nm and nm[0].upper() == "X"] + + for pid in punkt_ids: + try: + ix = next(i for i, nm in enumerate(names) if nm.upper() == f"X{pid}".upper()) + iy = next(i for i, nm in enumerate(names) if nm.upper() == f"Y{pid}".upper()) + iz = next(i for i, nm in enumerate(names) if nm.upper() == f"Z{pid}".upper()) + except StopIteration: + continue + + I = [ix, iy, iz] + R[np.ix_(I, I)] = R0 + + return R + + + @staticmethod + def transform_Qxx_zu_QxxENU(Qxx, unbekannten_liste, berechnungen, dict_xyz): + B0, L0 = ENU.berechne_schwerpunkt_fuer_enu(berechnungen, dict_xyz) + R0 = ENU.berechne_R0_ENU(berechnungen, B0, L0) + R_ENU = ENU.berechne_R_ENU(unbekannten_liste, R0) + + Qenu = R_ENU @ Qxx @ R_ENU.T + Qenu = 0.5 * (Qenu + Qenu.T) + + return Qenu, (B0, L0), R0 + + + @staticmethod + def transform_Koord_zu_KoordENU(dict_xyz, R0): + XYZ = np.asarray(list(dict_xyz.values()), dtype=float).reshape(-1, 3) + XYZ0 = XYZ.mean(axis=0).reshape(3, ) + + Koord_ENU = {} + for pid, xyz in dict_xyz.items(): + xyz = np.asarray(xyz, dtype=float).reshape(3, ) + enu = (R0 @ (xyz - XYZ0)).reshape(3, ) + Koord_ENU[str(pid)] = (float(enu[0]), float(enu[1]), float(enu[2])) + return Koord_ENU \ No newline at end of file diff --git a/Campusnetz.ipynb b/Campusnetz.ipynb index 65d5c89..2fa6453 100644 --- a/Campusnetz.ipynb +++ b/Campusnetz.ipynb @@ -5,33 +5,25 @@ "id": "2bc687b1b4adb7bd", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T17:57:23.443659Z", - "start_time": "2026-01-30T17:57:21.227961Z" + "end_time": "2026-02-02T18:14:08.454689Z", + "start_time": "2026-02-02T18:14:06.706671Z" } }, "source": [ - "# Hier werden alle verwendeten Pythonmodule importiert\n", + "# Zelle 1: Import Pythonmodule\n", + "\n", + "from datetime import datetime\n", + "import importlib\n", + "from IPython.display import HTML\n", + "from IPython.display import display\n", + "import itables\n", + "from itables.widget import ITable\n", + "import pandas as pd\n", + "\n", "import Datenbank\n", "import Import\n", - "import importlib\n", "import Koordinatentransformationen\n", - "import sqlite3\n", - "import Funktionales_Modell\n", - "import Berechnungen\n", - "from Berechnungen import Berechnungen\n", - "import Parameterschaetzung\n", - "import Stochastisches_Modell\n", - "from Stochastisches_Modell import StochastischesModell\n", - "import Export\n", - "import Netzqualität_Genauigkeit\n", - "import Datumsfestlegung\n", - "import pandas as pd\n", - "from IPython.display import display, HTML\n", - "from IPython.display import display, clear_output\n", - "import itables\n", - "import ipywidgets as widgets\n", - "from itables.widget import ITable\n", - "from datetime import datetime" + "import Stochastisches_Modell" ], "outputs": [], "execution_count": 1 @@ -41,14 +33,25 @@ "id": "4f7efd7ba6ec18f9", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T17:57:26.315349Z", - "start_time": "2026-01-30T17:57:26.312715Z" + "end_time": "2026-02-02T18:14:08.474671Z", + "start_time": "2026-02-02T18:14:08.470536Z" } }, "source": [ - "# Hier werden allgemeine Einstellungen für die Ausgleichung vorgenommen\n", + "# Zelle 2: Allgemeine Einstellungen\n", "\n", - "datumfestlegung = \"weiche Lagerung\"" + "# Auswahl der Datumsdefinition (Aktuell ist lediglich die weiche Lagerung implementiert).\n", + "datumfestlegung = \"weiche Lagerung\"\n", + "\n", + "# Übergabe der großen- und kleinen Halbachse des jeweiligen Referenzellipsoids.\n", + "a = 6378137.0 #m\n", + "b = 6356752.314 #m\n", + "\n", + "# Auswahl der SQLite-Datenbank oder anlegen einer neuen Datenbank, wenn diese nicht existiert.\n", + "pfad_datenbank = r\"Campusnetz.db\"\n", + "\n", + "# Übergabe des Pfades zum GCG2016 des BKG:\n", + "pfad_tif_quasigeoidundolation = r\"Daten\\GCG2016v2023.tif\"" ], "outputs": [], "execution_count": 2 @@ -58,20 +61,20 @@ "id": "57fcd841405b7866", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T17:57:29.346768Z", - "start_time": "2026-01-30T17:57:29.314403Z" + "end_time": "2026-02-02T18:14:08.489070Z", + "start_time": "2026-02-02T18:14:08.485660Z" } }, "source": [ - "importlib.reload(Datenbank)\n", - "importlib.reload(Import)\n", - "# Anlegen der Datenbank, wenn nicht vorhanden\n", - "pfad_datenbank = r\"Campusnetz.db\"\n", + "# Zelle 3: SQLite-Datenbank aufrufen oder anlegen und Klassen initialisieren\n", + "\n", + "# Aufrufen oder anlegen der SQLite-Datenbank\n", "Datenbank.Datenbank_anlegen(pfad_datenbank)\n", "\n", - "# Import vervollständigen\n", - "imp = Import.Import(pfad_datenbank)\n", - "db_zugriff = Datenbank.Datenbankzugriff(pfad_datenbank)" + "# Klassen initialisieren\n", + "db_zugriff = Datenbank.Datenbankzugriff(pfad_datenbank)\n", + "imp = Import.Import(pfad_datenbank, a, b)\n", + "trafos = Koordinatentransformationen.Transformationen(pfad_datenbank)" ], "outputs": [], "execution_count": 3 @@ -81,261 +84,27 @@ "id": "6ecde908841d1212", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T17:57:30.181931Z", - "start_time": "2026-01-30T17:57:30.167156Z" + "end_time": "2026-02-02T18:14:08.514542Z", + "start_time": "2026-02-02T18:14:08.501666Z" } }, "source": [ - "# Import der Koordinatendatei(en) vom Tachymeter\n", - "pfad_datei = r\"Daten\\campsnetz_koordinaten_plus_nachmessungen.csv\"\n", - "imp.import_koordinaten_lh_tachymeter(pfad_datei)" - ], - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Der Import der Näherungskoordinaten wurde erfolgreich abgeschlossen\n" - ] - } - ], - "execution_count": 4 - }, - { - "cell_type": "code", - "id": "b28afe0c64aa59d6", - "metadata": { - "ExecuteTime": { - "end_time": "2026-01-30T17:57:30.812358Z", - "start_time": "2026-01-30T17:57:30.795131Z" - } - }, - "source": [ - "importlib.reload(Import)\n", - "imp = Import.Import(pfad_datenbank)\n", + "# Zelle 4: Instrumente anlegen\n", "\n", - "pfad_koordinaten_gnss = r\"Daten\\Koordinaten_ohne0648und10002.csv\"\n", - "# X, Y, Z der SAPOS-Stationen\n", - "genauigkeit_sapos_referenzstationen = [0.005, 0.005, 0.008]\n", - "\n", - "imp.import_koordinaten_gnss(pfad_koordinaten_gnss, genauigkeit_sapos_referenzstationen)\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - "'Import der Koordinaten aus stationärem GNSS abgeschlossen.'" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 5 - }, - { - "metadata": { - "ExecuteTime": { - "end_time": "2026-01-30T17:57:31.272526Z", - "start_time": "2026-01-30T17:57:31.243591Z" - } - }, - "cell_type": "code", - "source": [ - "# Instrumente in der Datenbank anlegen\n", "# Besonderheit GNSS-Empfänger: Bitte alle GNSS-Empfänger als ein Instrument einfügen!\n", - "importlib.reload(Datenbank)\n", - "db_zugriff = Datenbank.Datenbankzugriff(pfad_datenbank)\n", - "\n", "db_zugriff.get_instrument_liste(\"Tachymeter\")\n", "db_zugriff.set_instrument(\"Tachymeter\", \"Trimble S9\", [\"Tachymeter_Streckenbeobachtungen\", \"Tachymeter_Richtungsbeobachtungen\", \"Tachymeter_Zenitwinkelbeobachtungen\"])\n", "db_zugriff.set_instrument(\"Nivellier\", \"Trimble DiNi 0.3\", [\"Nivellier_Hoehendifferenzbeobachtungen\"])\n", "db_zugriff.get_instrument_liste(\"Tachymeter\")\n", - "db_zugriff.set_instrument(\"GNSS\", \"GNSS-Rover\", [\"GNSS-Rover_Basislinienbeobachtungen\"])" - ], - "id": "75d9d9edbbbc7bb7", - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Das Instrument Trimble S9 wurde erfolgreich hinzugefügt.\n", - "Das Instrument Trimble DiNi 0.3 wurde erfolgreich hinzugefügt.\n", - "Das Instrument GNSS-Rover wurde erfolgreich hinzugefügt.\n" - ] - } - ], - "execution_count": 6 - }, - { - "cell_type": "code", - "id": "2d8a0533726304a8", - "metadata": { - "ExecuteTime": { - "end_time": "2026-01-30T17:57:31.663206Z", - "start_time": "2026-01-30T17:57:31.650289Z" - } - }, - "source": [ - "# Basislinien importieren\n", - "\n", - "importlib.reload(Import)\n", - "imp = Import.Import(pfad_datenbank)\n", - "\n", - "pfad_basislinien_gnss = r\"Daten\\Basislinien_ohne0648und10002.asc.txt\"\n", - "\n", - "imp.import_basislinien_gnss(pfad_basislinien_gnss, 4)" - ], - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Der Import der Datei Daten\\Basislinien_ohne0648und10002.asc.txt wurde erfolgreich abgeschlossen.\n" - ] - } - ], - "execution_count": 7 - }, - { - "cell_type": "code", - "id": "ed9be38e35cfc619", - "metadata": { - "ExecuteTime": { - "end_time": "2026-01-30T17:57:32.209080Z", - "start_time": "2026-01-30T17:57:32.194448Z" - } - }, - "source": [ - "# Jacobimatrix aufstellen\n", - "# Datumsgebende Koordinaten bestimmen\n", - "importlib.reload(Datenbank)\n", - "db_zugriff = Datenbank.Datenbankzugriff(pfad_datenbank)\n", - "\n", - "liste_koordinaten_x = []\n", - "liste_koordinaten_y = []\n", - "liste_koordinaten_z = []\n", - "#liste_koordinaten_x_y_z = [10054, 10014, 10008, 10059, 10037, 10044, 10026, 10001, 10002, 10028]\n", - "liste_koordinaten_x_y_z = [\"0645\", \"0656\", \"0995\", \"1675\", \"ESTE\", \"GNA2\"]\n", - "\n", - "db_zugriff.set_datumskoordinaten(liste_koordinaten_x, liste_koordinaten_y, liste_koordinaten_z, liste_koordinaten_x_y_z)\n", - "\n", - "# Datumgebende Koordinaten entfernen\n", - "liste_koordinaten_x = []\n", - "liste_koordinaten_y = []\n", - "liste_koordinaten_z = []\n", - "liste_koordinaten_x_y_z = []\n", - "\n", - "db_zugriff.set_datumskoordinaten_to_neupunkte(liste_koordinaten_x, liste_koordinaten_y, liste_koordinaten_z, liste_koordinaten_x_y_z)" - ], - "outputs": [], - "execution_count": 8 - }, - { - "cell_type": "code", - "id": "2d2156381d974d94", - "metadata": { - "ExecuteTime": { - "end_time": "2026-01-30T17:57:36.656812Z", - "start_time": "2026-01-30T17:57:34.464017Z" - } - }, - "source": [ - "# lokale Koordinaten aus der Tacyhmetermessung per Helmerttransformation in das ETRF89 / DREF 91 (Realisierung 2025) transformieren\n", - "\n", - "importlib.reload(Koordinatentransformationen)\n", - "trafos = Koordinatentransformationen.Transformationen(pfad_datenbank)\n", - "\n", - "importlib.reload(Datenbank)\n", - "db_zugriff = Datenbank.Datenbankzugriff(pfad_datenbank)\n", + "db_zugriff.set_instrument(\"GNSS\", \"GNSS-Rover\", [\"GNSS-Rover_Basislinienbeobachtungen\"])\n", "\n", "\n", - "transformationsparameter = trafos.Helmerttransformation_Euler_Transformationsparameter_berechne()\n", - "koordinaten_transformiert = trafos.Helmerttransformation(transformationsparameter)\n", "\n", - "db_zugriff.set_koordinaten(koordinaten_transformiert, \"naeherung_us\")\n", - "#print(koordinaten_transformiert)" - ], - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Anzahl gemeinsame Punkte: 9\n", - "\n", - "Erste Zielpunkte:\n", - "10001 [3794901.5252, 546745.559, 5080065.7672]\n", - "10008 [3794783.8568, 546746.6344, 5080152.7393]\n", - "10014 [3794838.7449, 546812.3649, 5080105.1973]\n", - "10026 [3794753.8595, 546827.4296, 5080167.0938]\n", - "10028 [3794889.7348, 546908.7636, 5080056.9381]\n", - "\n", - "Erste Ausgangspunkte:\n", - "10001 [833.9439, 1978.3737, 99.8946]\n", - "10008 [979.7022, 1991.401, 99.732]\n", - "10014 [913.9706, 1918.7731, 99.8872]\n", - "10026 [1020.0059, 1913.8703, 100.3059]\n", - "10028 [853.9608, 1815.7417, 99.7793]\n", - "min/mean/max: 0.9986498495467658 0.9999392670797006 1.0004164038548047\n", - "R ist Orthonormal!\n", - "Iteration Nr.1 abgeschlossen\n", - "Matrix([[-6.76], [7.55], [6.58], [-0.0290], [-0.307], [0.0134], [0.234]])\n", - "Iteration Nr.2 abgeschlossen\n", - "Matrix([[6.15], [-7.61], [-7.09], [0.0289], [-0.00505], [-0.0136], [0.00365]])\n", - "Iteration Nr.3 abgeschlossen\n", - "Matrix([[-0.0243], [0.0707], [0.0244], [3.93e-5], [0.000178], [0.000391], [-0.000178]])\n", - "Iteration Nr.4 abgeschlossen\n", - "Matrix([[-0.000135], [3.88e-5], [-0.000108], [4.32e-8], [-9.51e-9], [1.05e-7], [-4.78e-8]])\n", - "Iteration Nr.5 abgeschlossen\n", - "Matrix([[-2.12e-8], [-2.01e-9], [-2.31e-8], [1.55e-13], [-3.26e-12], [3.39e-11], [6.52e-12]])\n", - "Iteration Nr.6 abgeschlossen\n", - "Matrix([[-1.58e-10], [1.28e-10], [-1.48e-10], [-1.30e-13], [8.21e-13], [9.65e-13], [4.70e-14]])\n", - "Matrix([[3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6]])\n", - "Matrix([[3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6], [3.79e+6], [5.47e+5], [5.08e+6]])\n", - "x = Matrix([[3.80e+6], [5.49e+5], [5.08e+6], [1.00], [-0.156], [0.627], [3.26]])\n", - "\n", - "l_berechnet_final:\n", - "10001: 3794901.521, 546745.584, 5080065.755\n", - "10008: 3794783.870, 546746.646, 5080152.758\n", - "10014: 3794838.746, 546812.367, 5080105.181\n", - "10026: 3794753.858, 546827.445, 5080167.092\n", - "10028: 3794889.671, 546908.764, 5080056.920\n", - "10037: 3794800.626, 546960.749, 5080117.709\n", - "10044: 3794752.686, 546958.324, 5080154.237\n", - "10054: 3794889.163, 547086.949, 5080038.116\n", - "10059: 3794736.830, 547079.447, 5080152.362\n", - "Streckendifferenzen:\n", - "[0.027793, 0.025879, 0.016527, 0.01604, 0.066139, 0.07164, 0.025138, 0.125881, 0.142477]\n", - "\n", - "Differenz Schwerpunkt (Vektor):\n", - "Matrix([[3.10e-10], [1.16e-10], [1.03e-10]])\n", - "Betrag der Schwerpunkt-Differenz:\n", - "0.000m\n" - ] - } - ], - "execution_count": 9 - }, - { - "cell_type": "code", - "id": "c2db29680c53f8c4", - "metadata": { - "ExecuteTime": { - "end_time": "2026-01-30T17:57:36.693071Z", - "start_time": "2026-01-30T17:57:36.662996Z" - } - }, - "source": [ "#Importieren der apriori Genauigkeitsinformationen\n", "#Zulässige Beobachtungsarten = \"Tachymeter_Richtung\", \"Tachymeter_Strecke\"\n", "# Wenn Beobachtungsart = \"Tachymeter_Richtung\" --> Übergabe in Milligon und nur Stabw_apriori_konst\n", "# Wenn Beobachtungsart = \"Tachymeter_Strecke\" --> Übergabe Stabw_apriori_konst in Millimeter und Stabw_apriori_streckenprop in ppm\n", "\n", - "importlib.reload(Datenbank)\n", - "db_zugriff = Datenbank.Datenbankzugriff(pfad_datenbank)\n", - "\n", - "\n", "db_zugriff.set_genauigkeiten(1, \"Tachymeter_Richtung\", 0.15)\n", "db_zugriff.set_genauigkeiten(1, \"Tachymeter_Strecke\", 0.8, 1)\n", "db_zugriff.set_genauigkeiten(1, \"Tachymeter_Zenitwinkel\", 0.15)\n", @@ -346,159 +115,320 @@ "name": "stdout", "output_type": "stream", "text": [ - "Die Genauigkeitsangabe für die Beobachtungsart Tachymeter_Richtung des Instrumentes Trimble S9 wurde erfolgreich hinzugefügt.\n", - "Die Genauigkeitsangabe für die Beobachtungsart Tachymeter_Strecke des Instrumentes Trimble S9 wurde erfolgreich hinzugefügt.\n", - "Die Genauigkeitsangabe für die Beobachtungsart Tachymeter_Zenitwinkel des Instrumentes Trimble S9 wurde erfolgreich hinzugefügt.\n", - "Die Genauigkeitsangabe für die Beobachtungsart Geometrisches_Nivellement des Instrumentes Trimble DiNi 0.3 wurde erfolgreich hinzugefügt.\n" + "Das Instrument Trimble S9 ist bereits in der Datenbank vorhanden.\n", + "Es hat die ID 1\n", + "Das Instrument Trimble DiNi 0.3 ist bereits in der Datenbank vorhanden.\n", + "Es hat die ID 3\n", + "Das Instrument GNSS-Rover ist bereits in der Datenbank vorhanden.\n", + "Es hat die ID 4\n", + "Die Genauigkeitsangabe ist bereits in der Datenbank vorhanden.\n", + "Die Genauigkeitsangabe ist bereits in der Datenbank vorhanden.\n", + "Die Genauigkeitsangabe ist bereits in der Datenbank vorhanden.\n", + "Die Genauigkeitsangabe ist bereits in der Datenbank vorhanden.\n" + ] + } + ], + "execution_count": 4 + }, + { + "cell_type": "code", + "id": "b28afe0c64aa59d6", + "metadata": { + "ExecuteTime": { + "end_time": "2026-02-02T18:14:09.940498Z", + "start_time": "2026-02-02T18:14:09.690332Z" + } + }, + "source": [ + "# Zelle 5: Import Tachymeterdatensätze\n", + "\n", + "# CSV-Datei mit den Koordinaten im Lokalen-Horizontsystem aus dem Tachymeterexport\n", + "pfad_datei_tachymeter_koordinaten = r\"Daten\\campsnetz_koordinaten_plus_nachmessungen.csv\"\n", + "\n", + "# CSV-Datei mit den Beobachtungen aus dem Tachymeterexport\n", + "pfad_datei_tachymeter_beobachtungen_csv = r\"Daten\\campsnetz_beobachtungen_plus_nachmessungen.csv\"\n", + "\n", + "# JXL-Datei mit den Beobachtungen aus dem Tachymeterexport\n", + "pfad_datei_tachymeter_beobachtungen_jxl = r\"Daten\\campusnetz_bereinigt_plus_nachmessung_neu.jxl\"\n", + "\n", + "# Festlegen des Dateinamens der korrigierten und erweiterten CSV-Datei mit den Tachymeterbeobachtungen\n", + "pfad_datei_tachymeterbeobachtungen_korrigiert = r\"Daten\\campsnetz_beobachtungen_plus_nachmessungen_korrigiert.csv\"\n", + "\n", + "# InstrumentenID des Tachymeters zu den übergebenen Dateien übergeben\n", + "instrumentenID_Tachymeter = 1\n", + "\n", + "# Verarbeitung und Import der Tachymeterdatensätze\n", + "imp.import_koordinaten_lh_tachymeter(pfad_datei_tachymeter_koordinaten)\n", + "imp.korrigiere_beobachtungen_tachymeter_csv_mit_jxl(pfad_datei_tachymeter_beobachtungen_csv, pfad_datei_tachymeter_beobachtungen_jxl, pfad_datei_tachymeterbeobachtungen_korrigiert)\n", + "imp.import_beobachtungen_tachymeter(pfad_datei_tachymeterbeobachtungen_korrigiert, instrumentenID_Tachymeter)" + ], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Der Import wurde abgebrochen, weil mindestens ein Teil der Punktnummern aus der Datei Daten\\campsnetz_koordinaten_plus_nachmessungen.csv bereits in der Datenbank vorhanden ist. Bitte in der Datei ändern und Import wiederholen.\n", + "Korrektur erfolgreich abgeschlossen. Ausgabe: Daten\\campsnetz_beobachtungen_plus_nachmessungen_korrigiert.csv\n", + "Ersetzungen in der CSV-Datei (Rundung -> JXL volle Nachkommastellen): {'Hz': 1639, 'Z': 1838, 'SD': 747}\n", + "Der Import wurde abgebrochen, weil die Beobachtungen aus der Datei Daten\\campsnetz_beobachtungen_plus_nachmessungen_korrigiert.csv bereits in der Datenbank vorhanden sind.\n" + ] + } + ], + "execution_count": 5 + }, + { + "metadata": { + "ExecuteTime": { + "end_time": "2026-02-02T18:14:11.128406Z", + "start_time": "2026-02-02T18:14:11.090217Z" + } + }, + "cell_type": "code", + "source": [ + "# Zelle 6: Import der GNSS-Datensätze\n", + "\n", + "# CSV-Datei mit den Koordinaten der statischen GNSS-Messung als export aus LeicaGeoOffice\n", + "pfad_koordinaten_gnss = r\"Daten\\Koordinaten_ohne0648und10002.csv\"\n", + "\n", + "# Txt-Datei mit den Basislinien und den Kovarianzen als export aus LeicaGeoOffice\n", + "pfad_basislinien_gnss = r\"Daten\\Basislinien_ohne0648und10002.asc.txt\"\n", + "\n", + "# Standardabweichung apriori der Koordinaten der SAPOS-Referenzstationen in X, Y und Z für die weiche Lagerung\n", + "genauigkeit_sapos_referenzstationen = [0.005, 0.005, 0.008]\n", + "\n", + "# InstrumentenID aller GNSS-Empfänger\n", + "instrumentenID_GNSS_Empfaenger = 4\n", + "\n", + "# Import ausführen\n", + "imp.import_koordinaten_gnss(pfad_koordinaten_gnss, genauigkeit_sapos_referenzstationen)\n", + "imp.import_basislinien_gnss(pfad_basislinien_gnss, instrumentenID_GNSS_Empfaenger)" + ], + "id": "75d9d9edbbbc7bb7", + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Der Import wurde abgebrochen, weil die Beobachtungen aus der Datei Daten\\Basislinien_ohne0648und10002.asc.txt bereits in der Datenbank vorhanden sind.\n" + ] + } + ], + "execution_count": 6 + }, + { + "cell_type": "code", + "id": "2d8a0533726304a8", + "metadata": { + "ExecuteTime": { + "end_time": "2026-02-02T18:14:31.159180Z", + "start_time": "2026-02-02T18:14:12.231983Z" + } + }, + "source": [ + "# Zelle 7: Helmerttransformation\n", + "\n", + "# Transformationsparameter zwischen lokalem-Horizontsystem aus dem Tachymeterexport und ETRS89 / DREF 91 (Realisierung 2025) berechnen\n", + "transformationsparameter = trafos.Helmerttransformation_Euler_Transformationsparameter_berechnen()\n", + "\n", + "# Transformationsparameter anwenden und Koordinaten im Zielsystem berechnen\n", + "koordinaten_transformiert = trafos.Helmerttransformation(transformationsparameter)\n", + "\n", + "# Koordinaten als Näherungen für die Ausgleichung in die Datenbank speichern\n", + "db_zugriff.set_koordinaten(koordinaten_transformiert, \"naeherung_us\")" + ], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Anzahl verwendete Punkte für die Helmerttransformation: 68\n", + "Iteration Nr.1 abgeschlossen\n", + "Iteration Nr.2 abgeschlossen\n", + "Iteration Nr.3 abgeschlossen\n", + "Iteration Nr.4 abgeschlossen\n", + "Iteration Nr.5 abgeschlossen\n", + "l_berechnet_final:\n", + "10001: 3794901.521, 546745.584, 5080065.755\n", + "10002: 3794867.011, 546729.617, 5080092.695\n", + "10003: 3794841.061, 546735.120, 5080111.557\n", + "10004: 3794803.469, 546714.145, 5080141.394\n", + "10005: 3794793.850, 546722.325, 5080147.942\n", + "10006: 3794766.364, 546707.643, 5080169.743\n", + "10007: 3794831.055, 546758.730, 5080116.675\n", + "10008: 3794783.870, 546746.646, 5080152.758\n", + "10009: 3794767.479, 546740.091, 5080165.961\n", + "10010: 3794758.643, 546767.670, 5080169.471\n", + "10011: 3794894.930, 546833.119, 5080061.164\n", + "10012: 3794853.608, 546805.240, 5080094.900\n", + "10013: 3794849.615, 546826.872, 5080095.440\n", + "10014: 3794838.746, 546812.367, 5080105.181\n", + "10015: 3794839.472, 546793.520, 5080106.782\n", + "10016: 3794826.666, 546788.731, 5080116.878\n", + "10017: 3794825.022, 546831.703, 5080113.383\n", + "10018: 3794762.253, 546797.694, 5080163.986\n", + "10019: 3794800.100, 546833.327, 5080131.731\n", + "10020: 3794782.615, 546834.473, 5080145.041\n", + "10021: 3794776.034, 546833.743, 5080150.018\n", + "10022: 3794778.341, 546841.753, 5080147.280\n", + "10023: 3794780.799, 546848.104, 5080144.929\n", + "10024: 3794772.819, 546857.098, 5080149.838\n", + "10025: 3794774.211, 546871.813, 5080147.362\n", + "10026: 3794753.858, 546827.445, 5080167.092\n", + "10027: 3794757.593, 546874.333, 5080159.319\n", + "10028: 3794889.671, 546908.764, 5080056.920\n", + "10029: 3794845.029, 546914.918, 5080089.105\n", + "10030: 3794845.357, 546901.029, 5080090.362\n", + "10031: 3794821.763, 546877.550, 5080110.752\n", + "10032: 3794807.851, 546888.488, 5080119.750\n", + "10033: 3794800.019, 546874.654, 5080127.209\n", + "10034: 3794886.107, 546965.700, 5080053.411\n", + "10035: 3794845.950, 546961.514, 5080084.091\n", + "10036: 3794815.055, 546969.597, 5080106.065\n", + "10037: 3794800.626, 546960.749, 5080117.709\n", + "10038: 3794806.325, 546929.732, 5080116.901\n", + "10039: 3794804.164, 546914.733, 5080120.142\n", + "10040: 3794780.721, 546956.425, 5080133.161\n", + "10041: 3794778.154, 546925.879, 5080138.723\n", + "10042: 3794758.957, 546937.061, 5080151.609\n", + "10043: 3794747.274, 546919.151, 5080162.149\n", + "10044: 3794752.686, 546958.324, 5080154.237\n", + "10045: 3794881.901, 547019.784, 5080050.718\n", + "10046: 3794846.580, 547012.997, 5080077.441\n", + "10047: 3794831.534, 547018.239, 5080088.124\n", + "10048: 3794809.105, 547017.302, 5080105.013\n", + "10049: 3794786.888, 547021.076, 5080121.441\n", + "10050: 3794766.769, 547012.526, 5080137.481\n", + "10051: 3794767.056, 546988.699, 5080139.995\n", + "10052: 3794743.624, 546984.416, 5080157.827\n", + "10053: 3794748.143, 547017.574, 5080150.924\n", + "10054: 3794889.163, 547086.949, 5080038.116\n", + "10055: 3794838.849, 547081.903, 5080075.695\n", + "10056: 3794825.037, 547094.810, 5080084.484\n", + "10057: 3794800.815, 547078.670, 5080104.567\n", + "10058: 3794766.103, 547091.752, 5080129.113\n", + "10059: 3794736.830, 547079.447, 5080152.362\n", + "666: 3794868.128, 547082.279, 5080054.295\n", + "812: 3794850.535, 547010.934, 5080075.089\n", + "816: 3794817.790, 547004.825, 5080100.040\n", + "FH11: 3794853.321, 546973.225, 5080077.224\n", + "FH13: 3794832.559, 546754.704, 5080116.651\n", + "FH14: 3794853.863, 546972.809, 5080076.935\n", + "FH15: 3794794.213, 546870.696, 5080132.914\n", + "FH3: 3794810.977, 547013.441, 5080105.068\n", + "FH4: 3794773.597, 546985.341, 5080135.930\n", + "Streckendifferenzen zwischen Näherungskoordinate aus statischer GNSS-Messung und ergebnis der Helmerttransformation:\n", + "[0.027793, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.025879, 0.0, 0.0, 0.0, 0.0, 0.0, 0.016527, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.01604, 0.0, 0.066139, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.07164, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.025138, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.125881, 0.0, 0.0, 0.0, 0.0, 0.142477, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]\n", + "\n", + "Differenz Schwerpunkt zwischen Näherungskoordinate aus statischer GNSS-Messung und ergebnis der Helmerttransformation::\n", + "Matrix([[-2.59e-10], [6.85e-12], [-2.32e-10]])\n", + "Betrag der Schwerpunkt-Differenz zwischen Näherungskoordinate aus statischer GNSS-Messung und ergebnis der Helmerttransformation::\n", + "0.000m\n" + ] + } + ], + "execution_count": 7 + }, + { + "cell_type": "code", + "id": "ed9be38e35cfc619", + "metadata": { + "ExecuteTime": { + "end_time": "2026-02-02T18:14:31.181067Z", + "start_time": "2026-02-02T18:14:31.176248Z" + } + }, + "source": [ + "# Zelle 8: Anschlusspunke für die weiche Lagerung festlegen\n", + "\n", + "# X-Koordinate der Punkte verwenden\n", + "liste_koordinaten_x = []\n", + "\n", + "# Y-Koordinate der Punkte verwenden\n", + "liste_koordinaten_y = []\n", + "\n", + "# Z-Koordinate der Punkte verwenden\n", + "liste_koordinaten_z = []\n", + "\n", + "# X, Y und Z-Koordinate der Punkte verwenden\n", + "liste_koordinaten_x_y_z = [\"0645\", \"0656\", \"0995\", \"1675\", \"ESTE\", \"GNA2\"]\n", + "\n", + "# Änderungen der zu verwendenden Anschlusspunkte in die Datenbank übernehmen\n", + "db_zugriff.set_datumskoordinaten(liste_koordinaten_x, liste_koordinaten_y, liste_koordinaten_z, liste_koordinaten_x_y_z)" + ], + "outputs": [], + "execution_count": 8 + }, + { + "cell_type": "code", + "id": "2d2156381d974d94", + "metadata": { + "ExecuteTime": { + "end_time": "2026-02-02T18:14:31.215674Z", + "start_time": "2026-02-02T18:14:31.208664Z" + } + }, + "source": [ + "# Zelle 9: Anschlusspunkte für die weiche Lagerung entfenen\n", + "\n", + "# X-Koordinate der Punkte entfernen\n", + "liste_koordinaten_x = []\n", + "\n", + "# Y-Koordinate der Punkte verwenden\n", + "liste_koordinaten_y = []\n", + "\n", + "# Z-Koordinate der Punkte verwenden\n", + "liste_koordinaten_z = []\n", + "\n", + "# X, Y und Z-Koordinate der Punkte verwenden\n", + "liste_koordinaten_x_y_z = []\n", + "\n", + "# Änderungen der zu verwendenden Anschlusspunkte in die Datenbank übernehmen\n", + "db_zugriff.set_datumskoordinaten_to_neupunkte(liste_koordinaten_x, liste_koordinaten_y, liste_koordinaten_z, liste_koordinaten_x_y_z)" + ], + "outputs": [], + "execution_count": 9 + }, + { + "cell_type": "code", + "id": "c2db29680c53f8c4", + "metadata": { + "ExecuteTime": { + "end_time": "2026-02-02T18:14:31.240214Z", + "start_time": "2026-02-02T18:14:31.234007Z" + } + }, + "source": [ + "# Zelle 10: Nivellement-Beobachtungen Importieren\n", + "\n", + "# CSV-Datei mit den Beobachtungen des geometrischen Nivellements\n", + "pfad_datei_nivellement = r\"Daten\\Niv_bereinigt.DAT.csv\"\n", + "\n", + "# InstrumentenID des Nivelliers zu den importierenden Datensätzen\n", + "instrumentenID_Nivellier = 3\n", + "\n", + "# Datenvorverarbeitung und Import in die Datenbank ausführen\n", + "dict_punkthoehen_naeherung_niv, liste_punkte_in_db = imp.vorbereitung_import_beobachtungen_nivellement_naeherung_punkthoehen(pfad_datei_nivellement, instrumentenID_Nivellier)\n", + "imp.import_beobachtungen_nivellement_RVVR(pfad_datei_nivellement, instrumentenID_Nivellier)" + ], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Der Import wurde abgebrochen, weil die Beobachtungen aus der Datei Daten\\Niv_bereinigt.DAT.csv bereits in der Datenbank vorhanden sind.\n", + "Der Import wurde abgebrochen, weil die Beobachtungen aus der Datei Daten\\Niv_bereinigt.DAT.csv bereits in der Datenbank vorhanden sind.\n" ] } ], "execution_count": 10 }, - { - "metadata": { - "ExecuteTime": { - "end_time": "2026-01-30T17:57:36.988461Z", - "start_time": "2026-01-30T17:57:36.784074Z" - } - }, - "cell_type": "code", - "source": [ - "# CSV-Datei an JXL-Datei anpassen\n", - "\n", - "importlib.reload(Import)\n", - "imp = Import.Import(pfad_datenbank)\n", - "\n", - "pfad_datei_csv = r\"C:\\Users\\miche\\PycharmProjects\\Masterprojekt_V3\\Daten\\campsnetz_beobachtungen_plus_nachmessungen.csv\"\n", - "pfad_datei_jxl = r\"C:\\Users\\miche\\PycharmProjects\\Masterprojekt_V3\\Daten\\campusnetz_bereinigt_plus_nachmessung_neu.jxl\"\n", - "pfad_datei_csv_out = r\"C:\\Users\\miche\\PycharmProjects\\Masterprojekt_V3\\Daten\\campsnetz_beobachtungen_plus_nachmessungen_korrigiert.csv\"\n", - "\n", - "imp.korrigiere_beobachtungen_tachymeter_csv_mit_jxl(pfad_datei_csv, pfad_datei_jxl, pfad_datei_csv_out)" - ], - "id": "958a1b2988166350", - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Korrektur erfolgreich abgeschlossen. Ausgabe: C:\\Users\\miche\\PycharmProjects\\Masterprojekt_V3\\Daten\\campsnetz_beobachtungen_plus_nachmessungen_korrigiert.csv\n", - "Ersetzungen (Rundung -> JXL volle Nachkommastellen): {'Hz': 1639, 'Z': 1838, 'SD': 747}\n", - "\n", - "--- Fehlende IH ---\n", - "Anzahl: 0\n", - "\n", - "--- Fehlende ZH ---\n", - "Anzahl: 0\n", - "\n", - "--- Standpunkt in CSV, aber kein StationRecord in JXL ---\n", - "Anzahl: 0\n" - ] - }, - { - "data": { - "text/plain": [ - "{'Import_fortsetzen': True,\n", - " 'dict_ersetzungen': {'Hz': 1639, 'Z': 1838, 'SD': 747},\n", - " 'liste_zeilen_ohne_IH': [],\n", - " 'liste_zeilen_ohne_ZH': [],\n", - " 'liste_zeilen_standpunkt_nicht_in_jxl': [],\n", - " 'pfad_datei_csv_out': 'C:\\\\Users\\\\miche\\\\PycharmProjects\\\\Masterprojekt_V3\\\\Daten\\\\campsnetz_beobachtungen_plus_nachmessungen_korrigiert.csv'}" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 11 - }, - { - "cell_type": "code", - "id": "3d074282dffbbfd0", - "metadata": { - "ExecuteTime": { - "end_time": "2026-01-30T17:57:37.159871Z", - "start_time": "2026-01-30T17:57:37.124135Z" - } - }, - "source": [ - "# Importieren der tachymetrischen Beobachtungen\n", - "a = 6378137.0 #m\n", - "b = 6356752.314 #m\n", - "\n", - "importlib.reload(Import)\n", - "imp = Import.Import(pfad_datenbank)\n", - "\n", - "pfad_datei_tachymeterbeobachtungen = r\"Daten\\campsnetz_beobachtungen_plus_nachmessungen_korrigiert.csv\"\n", - "\n", - "imp.import_beobachtungen_tachymeter(pfad_datei_tachymeterbeobachtungen, 1, a, b)" - ], - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Der Import der Datei Daten\\campsnetz_beobachtungen_plus_nachmessungen_korrigiert.csv wurde erfolgreich abgeschlossen.\n" - ] - } - ], - "execution_count": 12 - }, - { - "cell_type": "code", - "id": "1f61a51b2a7366e7", - "metadata": { - "ExecuteTime": { - "end_time": "2026-01-30T17:57:37.819051Z", - "start_time": "2026-01-30T17:57:37.789691Z" - } - }, - "source": [ - "# Nivellement-Beobachtungen Importieren\n", - "\n", - "importlib.reload(Import)\n", - "imp = Import.Import(pfad_datenbank)\n", - "dict_punkthoehen_naeherung_niv, liste_punkte_in_db = imp.vorbereitung_import_beobachtungen_nivellement_naeherung_punkthoehen(r\"Daten\\Niv_bereinigt.DAT.csv\", 3)\n", - "\n", - "#liste_hoehenpunkte_hinzufuegen = ['FH14', 'FH11', 'FH13', 'FH3', 'FH4', 'FH15', 'FH5']\n", - "liste_hoehenpunkte_hinzufuegen = []\n", - "imp.import_beobachtungen_nivellement_naeherung_punkthoehen(dict_punkthoehen_naeherung_niv, liste_punkte_in_db, liste_hoehenpunkte_hinzufuegen)\n", - "\n", - "imp.import_beobachtungen_nivellement_RVVR(r\"Daten\\Niv_bereinigt.DAT.csv\", 3)" - ], - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Für folgende Nivellementpunkte werden die Höhen in der Ausgleichung berechnet: ['812', '10047', '10046', '10045', '10034', 'FH14', 'FH11', '10035', '10029', '10030', '10031', '10017', '10013', '10012', '10014', '10015', '10016', '10007', 'FH13', '666', '10054', '10056', '10058', '10052', '10043', '10026', '10010', '10006', '816', '10048', 'FH3', '10049', '10053', '10050', '10051', 'FH4', '10040', '10037', '10038', '10039', '10032', 'FH15', '10033', '10025', '10024', '10023', '10022', '10021', '10020', '10019', '10036', '10028', '10011', '10001', '10003', '10008', '10005', '10004', '10002', '10055', '10057', '10059', '10044', '10041', '10042', '10027', '10018', '10009']\n", - "Für folgende Punkte wird aktuell keine Höhe in der Ausgleichung berechnet: ['80001', '80002', '90001', '90002', '90003', '90004', '90005', '90006', '90007', '90008', '90009', '90010', '90011', '90012', '90013', '90014', '70001', '70002', '60001', 'FH5', '60002', '60003', '60004', '60005', '60006', '60007', '60008', '60009', '60010', '30001', '30002', '30003', '30004', '30005', '30006', '30007', '30008']. Bei Bedarf im folgenden Schritt ändern!\n", - "Neu hinzugefügt (0): []\n", - "Bereits vorhanden (0): []\n", - "Geändert (68): ['812', '10047', '10046', '10045', '10034', 'FH14', 'FH11', '10035', '10029', '10030', '10031', '10017', '10013', '10012', '10014', '10015', '10016', '10007', 'FH13', '666', '10054', '10056', '10058', '10052', '10043', '10026', '10010', '10006', '816', '10048', 'FH3', '10049', '10053', '10050', '10051', 'FH4', '10040', '10037', '10038', '10039', '10032', 'FH15', '10033', '10025', '10024', '10023', '10022', '10021', '10020', '10019', '10036', '10028', '10011', '10001', '10003', '10008', '10005', '10004', '10002', '10055', '10057', '10059', '10044', '10041', '10042', '10027', '10018', '10009']\n", - "\n" - ] - }, - { - "data": { - "text/plain": [ - "'Die Beobachtungen aus der Datei Daten\\\\Niv_bereinigt.DAT.csv wurden erfolgreich importiert.'" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 13 - }, { "cell_type": "code", "id": "3ef1aade29f46eee", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T18:40:58.060182Z", - "start_time": "2026-01-30T18:39:59.616352Z" + "end_time": "2026-02-02T18:15:54.217540Z", + "start_time": "2026-02-02T18:14:31.255827Z" } }, "source": [ @@ -510,35 +440,31 @@ "importlib.reload(Datenbank)\n", "importlib.reload(Funktionales_Modell)\n", "\n", - "\n", - "pfad_tif_quasigeoidundolation = r\"Daten\\GCG2016v2023.tif\"\n", - "\n", - "\n", "fm = Funktionales_Modell.FunktionalesModell(pfad_datenbank, a, b, pfad_tif_quasigeoidundolation)\n", "\n", "Jacobimatrix_symbolisch, Jacobimatrix_symbolisch_liste_unbekannte, Jacobimatrix_symbolisch_liste_beobachtungsvektor= fm.jacobi_matrix_symbolisch(datumfestlegung, db_zugriff.get_datumskoordinate())\n", "\n", - "stoch_modell = Stochastisches_Modell.StochastischesModell(int(len(Jacobimatrix_symbolisch_liste_beobachtungsvektor)))\n", + "stoch_modell = Stochastisches_Modell.StochastischesModell(pfad_datenbank)\n", "\n", "beobachtungsvektor_naeherung_symbolisch = fm.beobachtungsvektor_naeherung_symbolisch(Jacobimatrix_symbolisch_liste_beobachtungsvektor)\n", "\n", - "Qll_matrix_symbolisch = stoch_modell.Qll_symbolisch(pfad_datenbank, Jacobimatrix_symbolisch_liste_beobachtungsvektor)\n", + "Qll_matrix_symbolisch = stoch_modell.Qll_symbolisch(Jacobimatrix_symbolisch_liste_beobachtungsvektor)\n", "\n", "if datumfestlegung == \"weiche Lagerung\":\n", - " QAA_matrix_symbolisch = stoch_modell.QAA_symbolisch(Jacobimatrix_symbolisch_liste_beobachtungsvektor, pfad_datenbank)\n", + " QAA_matrix_symbolisch = stoch_modell.QAA_symbolisch(Jacobimatrix_symbolisch_liste_beobachtungsvektor)\n", "\n", - "unbekanntenvektor_symbolisch = (fm.unbekanntenvektor_symbolisch(Jacobimatrix_symbolisch_liste_unbekannte))\n" + "unbekanntenvektor_symbolisch = (fm.unbekanntenvektor_symbolisch(Jacobimatrix_symbolisch_liste_unbekannte))" ], "outputs": [], - "execution_count": 42 + "execution_count": 11 }, { "cell_type": "code", "id": "d262fab8404bf542", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T18:50:10.686735Z", - "start_time": "2026-01-30T18:40:58.075360Z" + "end_time": "2026-02-02T18:30:30.030473Z", + "start_time": "2026-02-02T18:17:30.180781Z" } }, "source": [ @@ -561,7 +487,7 @@ "importlib.reload(Datumsfestlegung)\n", "\n", "n_beob = len(Jacobimatrix_symbolisch_liste_beobachtungsvektor)\n", - "stoch_modell = Stochastisches_Modell.StochastischesModell(n_beob=n_beob)\n", + "stoch_modell = Stochastisches_Modell.StochastischesModell(pfad_datenbank)\n", "\n", "from Export import Export as Exporter\n", "\n", @@ -581,18 +507,6 @@ "dict_indizes_beobachtungsgruppen = Datumsfestlegung.Datumsfestlegung.indizes_beobachtungsvektor_nach_beobachtungsgruppe(\n", " Jacobimatrix_symbolisch_liste_beobachtungsvektor)\n", "\n", - "def first_bad(name, M, labels=None):\n", - " M = np.asarray(M, float)\n", - " bad = ~np.isfinite(M)\n", - " if not np.any(bad):\n", - " return None\n", - " idx = np.argwhere(bad)[0]\n", - " i = int(idx[0]); j = int(idx[1]) if M.ndim == 2 else 0\n", - " info = f\"{name}: erstes nicht-finites Element bei [{i},{j}] = {M[i,j] if M.ndim==2 else M[i]}\"\n", - " if labels is not None and i < len(labels):\n", - " info += f\" | zeile-label: {labels[i]}\"\n", - " return info\n", - "\n", "def val(symname):\n", " return fm.substitutionen_dict.get(sp.Symbol(symname), None)\n", "\n", @@ -629,7 +543,6 @@ "\n", "# Qll einmalig\n", "Qll_matrix_numerisch = stoch_modell.Qll_numerisch(\n", - " pfad_datenbank,\n", " Qll_matrix_symbolisch,\n", " Jacobimatrix_symbolisch_liste_beobachtungsvektor\n", ")\n", @@ -637,7 +550,6 @@ "# Q_ext einmalig (nur bei weicher Lagerung)\n", "if datumfestlegung == \"weiche Lagerung\":\n", " QAA_matrix_numerisch = stoch_modell.QAA_numerisch(\n", - " pfad_datenbank,\n", " QAA_matrix_symbolisch,\n", " Jacobimatrix_symbolisch_liste_beobachtungsvektor\n", " )\n", @@ -646,11 +558,6 @@ "\n", " Q_ext, P = Datumsfestlegung.Datumsfestlegung.weiches_datum(Qll_matrix_numerisch, QAA_matrix_numerisch, varianzkomponentenschaetzung_erfolgt, dict_indizes_beobachtungsgruppen)\n", "\n", - " # Sanity: Q_ext muss in LL+AA Reihenfolge sein ODER deine Beobachtungen müssen bereits so sortiert sein\n", - " if Q_ext.shape[0] != len(labels_perm):\n", - " raise ValueError(f\"Q_ext shape {Q_ext.shape} passt nicht zu Anzahl Beobachtungen {len(labels_perm)}\")\n", - "\n", - "\n", "A_prev = None\n", "l0_prev = None\n", "l_ref = beobachtungsvektor_numerisch.copy()\n", @@ -677,7 +584,7 @@ "\n", " print(\" -> berechne A(x_k)\")\n", "\n", - " A_matrix_numerisch_iteration0 = fm.jacobi_matrix_zahlen_iteration_0(\n", + " A_matrix_numerisch_iteration0 = fm.jacobi_matrix_numerisch(\n", " Jacobimatrix_symbolisch,\n", " \"naeherung_us\",\n", " Jacobimatrix_symbolisch_liste_unbekannte,\n", @@ -688,26 +595,9 @@ " if datumfestlegung == \"weiche Lagerung\":\n", " beobachtungsvektor_numerisch[mask_lA] = lA_prior\n", "\n", - " print(\" -> berechne l0(x_k)\")\n", - "\n", " labels = [str(s) for s in Jacobimatrix_symbolisch_liste_beobachtungsvektor]\n", " A = np.asarray(A_matrix_numerisch_iteration0, float)\n", "\n", - " for symname in [\"X812\",\"Y812\",\"Z812\"]:\n", - " j = idx(symname)\n", - " if j is None:\n", - " print(symname, \"j=\", j, \"-> nicht im Unbekanntenvektor (Niv aktuell entfernt) -> skip\")\n", - " continue\n", - "\n", - " col = np.asarray(A[:, j], float).reshape(-1) # <- garantiert 1D\n", - " nz = np.sum(np.abs(col) > 1e-12)\n", - " print(symname, \"j=\", j, \"nnz=\", int(nz), \"maxabs=\", float(np.max(np.abs(col))))\n", - " top = np.argsort(-np.abs(col))[:15]\n", - " for i in top:\n", - " if abs(float(col[i])) > 1e-12: # <- garantiert Skalar\n", - " print(\" \", i, labels[i], \"A=\", float(col[i]))\n", - "\n", - "\n", " labels = [str(s).strip() for s in Jacobimatrix_symbolisch_liste_beobachtungsvektor]\n", " unk = [str(s).strip() for s in Jacobimatrix_symbolisch_liste_unbekannte]\n", "\n", @@ -724,28 +614,12 @@ " else:\n", " check.append((labels[r], -1, \"MULTI/EMPTY\", float(nz.size)))\n", "\n", - " print(\"lA-check (erste 10):\")\n", - " for row in check[:10]:\n", - " print(row)\n", - "\n", - " for pn in [\"10009\", \"10006\"]:\n", - " for c in [\"X\", \"Y\", \"Z\"]:\n", - " v = val(f\"{c}{pn}\")\n", - " print(f\"{c}{pn} =\", v, \"| finite:\", (v is not None and np.isfinite(float(v))))\n", - "\n", - " # 2) Strecke aus den Näherungskoordinaten prüfen\n", - " Xsp, Ysp, Zsp = float(val(\"X10009\")), float(val(\"Y10009\")), float(val(\"Z10009\"))\n", - " Xzp, Yzp, Zzp = float(val(\"X10006\")), float(val(\"Y10006\")), float(val(\"Z10006\"))\n", - "\n", - " s0 = np.sqrt((Xzp-Xsp)**2 + (Yzp-Ysp)**2 + (Zzp-Zsp)**2)\n", - " print(\"s0(10009-10006) =\", s0, \"| finite:\", np.isfinite(s0))\n", - "\n", " # weiche Lagerung: lA-Beobachtungen fix halten (sonst dl=0 und keine Wirkung)\n", " if datumfestlegung == \"weiche Lagerung\":\n", " beobachtungsvektor_numerisch[mask_lA] = lA_prior\n", "\n", " print(\" -> berechne l0(x_k)\")\n", - " beobachtungsvektor_naeherung_numerisch_iteration0 = fm.beobachtungsvektor_naeherung_numerisch_iteration0(\n", + " beobachtungsvektor_naeherung_numerisch_iteration0 = fm.beobachtungsvektor_naeherung_numerisch(\n", " Jacobimatrix_symbolisch_liste_beobachtungsvektor,\n", " beobachtungsvektor_naeherung_symbolisch,\n", " iteration\n", @@ -793,16 +667,6 @@ " labels = [str(s).strip() for s in Jacobimatrix_symbolisch_liste_beobachtungsvektor]\n", " labels = [l for l in labels if not l.startswith(\"lA_\")]\n", "\n", - " mask_SD = np.array([\"_SD_\" in l for l in labels])\n", - "\n", - " mask_R = np.array([\"_R_\" in l for l in labels])\n", - " mask_ZW = np.array([\"_ZW_\" in l for l in labels])\n", - " mask_niv = np.array([\"_niv_\" in l for l in labels])\n", - " mask_gx = np.array([\"_gnssbx_\" in l for l in labels])\n", - " mask_gy = np.array([\"_gnssby_\" in l for l in labels])\n", - " mask_gz = np.array([\"_gnssbz_\" in l for l in labels])\n", - "\n", - "\n", " import pandas as pd\n", " ref_l = pd.read_csv(r\"Zwischenergebnisse\\Beobachtungsvektor_Numerisch.csv\", sep=\";\", decimal=\",\", header=None, names=[\"label\",\"value\"]).iloc[1:]\n", " ref_l0 = pd.read_csv(\n", @@ -810,9 +674,6 @@ " sep=\";\", decimal=\",\", header=None, names=[\"label\",\"value\"]\n", " ).iloc[1:]\n", "\n", - " ref_l_dict = dict(zip(ref_l[\"label\"], ref_l[\"value\"]))\n", - " ref_l0_dict = dict(zip(ref_l0[\"label\"], ref_l0[\"value\"]))\n", - "\n", " # Q für Solver wählen\n", " if datumfestlegung == \"weiche Lagerung\":\n", " Q_k = Q_ext\n", @@ -827,18 +688,8 @@ " iteration\n", " )\n", "\n", - " if A_matrix_numerisch_iteration0.shape[0] != dl_k.shape[0] or Q_k.shape[0] != dl_k.shape[0]:\n", - " raise ValueError(\n", - " f\"Iter {iteration}: Dimensionen passen nicht: \"\n", - " f\"A={A_matrix_numerisch_iteration0.shape}, dl={dl_k.shape}, Q={Q_k.shape}\"\n", - " )\n", - "\n", " labels = [str(s) for s in Jacobimatrix_symbolisch_liste_beobachtungsvektor]\n", "\n", - " print(first_bad(\"A\", A_matrix_numerisch_iteration0, labels))\n", - " print(first_bad(\"dl\", dl_k, labels))\n", - " print(first_bad(\"Q_k\", Q_k, labels))\n", - "\n", "\n", " print(\" -> löse Ausgleichung\")\n", "\n", @@ -850,12 +701,6 @@ "\n", " Q_solve = Q_k\n", "\n", - " if datumfestlegung == \"weiche Lagerung\" and not perm_is_identity:\n", - " A_solve = A_solve[perm, :]\n", - " dl_solve = dl_solve[perm, :]\n", - " Q_solve = Q_solve[np.ix_(perm, perm)]\n", - " labels_solve = labels_perm\n", - "\n", " res, dx = Parameterschaetzung.ausgleichung_global(A_solve, dl_solve, Q_solve, P)\n", "\n", " Exporter.matrix_to_csv(fr\"Zwischenergebnisse\\{iteration}_Qxx.csv\",\n", @@ -865,9 +710,6 @@ " N = np.asarray(res[\"N\"], float)\n", " n = np.asarray(res[\"n\"], float) if \"n\" in res else None\n", "\n", - " A = np.asarray(A_matrix_numerisch_iteration0, float)\n", - " print(\"cond(A) =\", np.linalg.cond(A))\n", - "\n", " dx = np.asarray(dx, float).reshape(-1, 1)\n", "\n", " Exporter.matrix_to_csv(fr\"Zwischenergebnisse\\{iteration}_dl.csv\",\n", @@ -881,16 +723,14 @@ " Jacobimatrix_symbolisch_liste_unbekannte,\n", " unbekanntenvektor_symbolisch,\n", " dX_Vektor=dx,\n", - " unbekanntenvektor_neumerisch_vorherige_Iteration=x,\n", + " unbekanntenvektor_numerisch_vorherige_Iteration=x,\n", " iterationsnummer=iteration\n", " )\n", "\n", - " dx_flat = np.asarray(dx, float).reshape(-1)\n", - "\n", " idx_xyz = [i for i,s in enumerate(Jacobimatrix_symbolisch_liste_unbekannte)\n", " if str(s).startswith((\"X\",\"Y\",\"Z\"))]\n", "\n", - " max_dx_xyz = float(np.max(np.abs(dx_flat[idx_xyz])))\n", + " max_dx_xyz = float(np.max(np.abs(dx[idx_xyz])))\n", " print(\" -> max|dx_xyz| [m] =\", max_dx_xyz)\n", "\n", " tol_dx = tol_dx_abs\n", @@ -908,22 +748,13 @@ "\n", " if stag_count >= stag_max:\n", " print(\"\\nABBRUCH: STAGNATION (XYZ)\")\n", - " break\n", - "\n", - "\n", - " for symname in [\"X10009\",\"Y10009\",\"Z10009\"]:\n", - " j = idx(symname)\n", - " xv = float(np.asarray(x, float).reshape(-1)[j])\n", - " dv = float(val(symname))\n", - " print(symname, \"x=\", xv, \" dict=\", dv, \" diff=\", xv-dv)" + " break\n" ], "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "DEBUG stabw_apriori_konstant_niv_3 = 0.0001\n", - "DEBUG stabw_apriori_streckenprop_niv_3 = 0.0003\n", "sigma(QAA) min/med/max = 0.005 0.005 0.008\n", "Varianzkomponentenschätzung wurde durchgeführt\n", "\n", @@ -932,259 +763,299 @@ "max|Δl| = 0.0\n", " -> berechne A(x_k)\n", " -> berechne l0(x_k)\n", - "X812 j= 177 nnz= 37 maxabs= 0.804440145172459\n", - " 898 952_SD_62_10048_812 A= 0.804440145172459\n", - " 902 956_SD_62_10048_812 A= 0.804440145172459\n", - " 906 960_SD_62_10048_812 A= 0.804440145172459\n", - " 881 935_SD_60_10047_812 A= 0.7860629905568308\n", - " 885 939_SD_60_10047_812 A= 0.7860629905568308\n", - " 877 931_SD_60_10047_812 A= 0.7860629905568308\n", - " 890 944_SD_61_10046_812 A= 0.784272555410827\n", - " 896 950_SD_61_10046_812 A= 0.784272555410827\n", - " 893 947_SD_61_10046_812 A= 0.784272555410827\n", - " 3161 1085_niv_10047_812 A= 0.5936974246614407\n", - " 3179 1103_niv_10048_812 A= 0.5936974246614407\n", - " 3126 1050_niv_812_10047 A= -0.5936974246614407\n", - " 3257 1181_niv_10045_812 A= 0.5936974246614407\n", - " 3258 1182_niv_812_816 A= -0.5936974246614407\n", - " 3225 1149_niv_FH3_812 A= 0.5936974246614407\n", - "Y812 j= 178 nnz= 37 maxabs= 0.4090704435134159\n", - " 896 950_SD_61_10046_812 A= -0.4090704435134159\n", - " 893 947_SD_61_10046_812 A= -0.4090704435134159\n", - " 890 944_SD_61_10046_812 A= -0.4090704435134159\n", - " 885 939_SD_60_10047_812 A= -0.3022054693020904\n", - " 881 935_SD_60_10047_812 A= -0.3022054693020904\n", - " 877 931_SD_60_10047_812 A= -0.3022054693020904\n", - " 1889 947_R_61_10046_812 A= -0.17992569798749025\n", - " 1892 950_R_61_10046_812 A= -0.17992569798749025\n", - " 1886 944_R_61_10046_812 A= -0.17992569798749025\n", - " 898 952_SD_62_10048_812 A= -0.12364474010825566\n", - " 902 956_SD_62_10048_812 A= -0.12364474010825566\n", - " 906 960_SD_62_10048_812 A= -0.12364474010825566\n", - " 3161 1085_niv_10047_812 A= 0.08557886002453727\n", - " 3258 1182_niv_812_816 A= -0.08557886002453727\n", - " 3225 1149_niv_FH3_812 A= 0.08557886002453727\n", - "Z812 j= 179 nnz= 37 maxabs= 0.8001247569393624\n", - " 3257 1181_niv_10045_812 A= 0.8001247569393624\n", - " 3258 1182_niv_812_816 A= -0.8001247569393624\n", - " 3225 1149_niv_FH3_812 A= 0.8001247569393624\n", - " 3226 1150_niv_812_10048 A= -0.8001247569393624\n", - " 3228 1152_niv_816_812 A= 0.8001247569393624\n", - " 3229 1153_niv_812_10045 A= -0.8001247569393624\n", - " 3179 1103_niv_10048_812 A= 0.8001247569393624\n", - " 3180 1104_niv_812_FH3 A= -0.8001247569393624\n", - " 3161 1085_niv_10047_812 A= 0.8001247569393624\n", - " 3126 1050_niv_812_10047 A= -0.8001247569393624\n", - " 898 952_SD_62_10048_812 A= -0.5810232620803362\n", - " 906 960_SD_62_10048_812 A= -0.5810232620803362\n", - " 902 956_SD_62_10048_812 A= -0.5810232620803362\n", - " 877 931_SD_60_10047_812 A= -0.5392372661461328\n", - " 885 939_SD_60_10047_812 A= -0.5392372661461328\n", - "lA-check (erste 10):\n", - "('lA_X0645', 279, 'X0645', 1.0)\n", - "('lA_X0656', 280, 'X0656', 1.0)\n", - "('lA_X0995', 281, 'X0995', 1.0)\n", - "('lA_X1675', 282, 'X1675', 1.0)\n", - "('lA_XESTE', 283, 'XESTE', 1.0)\n", - "('lA_XGNA2', 284, 'XGNA2', 1.0)\n", - "('lA_Y0645', 285, 'Y0645', 1.0)\n", - "('lA_Y0656', 286, 'Y0656', 1.0)\n", - "('lA_Y0995', 287, 'Y0995', 1.0)\n", - "('lA_Y1675', 288, 'Y1675', 1.0)\n", - "X10009 = 3794767.479327345 | finite: True\n", - "Y10009 = 546740.0910416279 | finite: True\n", - "Z10009 = 5080165.960632112 | finite: True\n", - "X10006 = 3794766.3643246326 | finite: True\n", - "Y10006 = 546707.6430623308 | finite: True\n", - "Z10006 = 5080169.7434314005 | finite: True\n", - "s0(10009-10006) = 32.68675820533385 | finite: True\n", - " -> berechne l0(x_k)\n", - "None\n", - "None\n", - "None\n", " -> löse Ausgleichung\n", - "cond(A) = 50.18510377536581\n", " -> max|dx_xyz| [m] = 0.7602518574422905\n", - "X10009 x= 3794767.458663473 dict= 3794767.458663473 diff= 0.0\n", - "Y10009 x= 546740.0728581925 dict= 546740.0728581925 diff= 0.0\n", - "Z10009 x= 5080165.933684419 dict= 5080165.933684419 diff= 0.0\n", "\n", "============================================================\n", "ITERATION 1\n", "max|Δl| = 0.0\n", " -> berechne A(x_k)\n", " -> berechne l0(x_k)\n", - "X812 j= 177 nnz= 37 maxabs= 0.8047748825525017\n", - " 898 952_SD_62_10048_812 A= 0.8047748825525017\n", - " 902 956_SD_62_10048_812 A= 0.8047748825525017\n", - " 906 960_SD_62_10048_812 A= 0.8047748825525017\n", - " 896 950_SD_61_10046_812 A= 0.7951743316904518\n", - " 890 944_SD_61_10046_812 A= 0.7951743316904518\n", - " 893 947_SD_61_10046_812 A= 0.7951743316904518\n", - " 881 935_SD_60_10047_812 A= 0.7885566816207866\n", - " 885 939_SD_60_10047_812 A= 0.7885566816207866\n", - " 877 931_SD_60_10047_812 A= 0.7885566816207866\n", - " 3161 1085_niv_10047_812 A= 0.5936974452811924\n", - " 3179 1103_niv_10048_812 A= 0.5936974452811924\n", - " 3126 1050_niv_812_10047 A= -0.5936974452811924\n", - " 3257 1181_niv_10045_812 A= 0.5936974452811924\n", - " 3258 1182_niv_812_816 A= -0.5936974452811924\n", - " 3225 1149_niv_FH3_812 A= 0.5936974452811924\n", - "Y812 j= 178 nnz= 37 maxabs= 0.3914815748808958\n", - " 896 950_SD_61_10046_812 A= -0.3914815748808958\n", - " 893 947_SD_61_10046_812 A= -0.3914815748808958\n", - " 890 944_SD_61_10046_812 A= -0.3914815748808958\n", - " 885 939_SD_60_10047_812 A= -0.2973643707650606\n", - " 881 935_SD_60_10047_812 A= -0.2973643707650606\n", - " 877 931_SD_60_10047_812 A= -0.2973643707650606\n", - " 1889 947_R_61_10046_812 A= -0.17593888913082087\n", - " 1892 950_R_61_10046_812 A= -0.17593888913082087\n", - " 1886 944_R_61_10046_812 A= -0.17593888913082087\n", - " 898 952_SD_62_10048_812 A= -0.11451027400623207\n", - " 902 956_SD_62_10048_812 A= -0.11451027400623207\n", - " 906 960_SD_62_10048_812 A= -0.11451027400623207\n", - " 3161 1085_niv_10047_812 A= 0.08557889188849953\n", - " 3258 1182_niv_812_816 A= -0.08557889188849953\n", - " 3225 1149_niv_FH3_812 A= 0.08557889188849953\n", - "Z812 j= 179 nnz= 37 maxabs= 0.8001247382313098\n", - " 3257 1181_niv_10045_812 A= 0.8001247382313098\n", - " 3258 1182_niv_812_816 A= -0.8001247382313098\n", - " 3225 1149_niv_FH3_812 A= 0.8001247382313098\n", - " 3226 1150_niv_812_10048 A= -0.8001247382313098\n", - " 3228 1152_niv_816_812 A= 0.8001247382313098\n", - " 3229 1153_niv_812_10045 A= -0.8001247382313098\n", - " 3179 1103_niv_10048_812 A= 0.8001247382313098\n", - " 3180 1104_niv_812_FH3 A= -0.8001247382313098\n", - " 3161 1085_niv_10047_812 A= 0.8001247382313098\n", - " 3126 1050_niv_812_10047 A= -0.8001247382313098\n", - " 898 952_SD_62_10048_812 A= -0.5824300692440465\n", - " 906 960_SD_62_10048_812 A= -0.5824300692440465\n", - " 902 956_SD_62_10048_812 A= -0.5824300692440465\n", - " 877 931_SD_60_10047_812 A= -0.538286903863277\n", - " 885 939_SD_60_10047_812 A= -0.538286903863277\n", - "lA-check (erste 10):\n", - "('lA_X0645', 279, 'X0645', 1.0)\n", - "('lA_X0656', 280, 'X0656', 1.0)\n", - "('lA_X0995', 281, 'X0995', 1.0)\n", - "('lA_X1675', 282, 'X1675', 1.0)\n", - "('lA_XESTE', 283, 'XESTE', 1.0)\n", - "('lA_XGNA2', 284, 'XGNA2', 1.0)\n", - "('lA_Y0645', 285, 'Y0645', 1.0)\n", - "('lA_Y0656', 286, 'Y0656', 1.0)\n", - "('lA_Y0995', 287, 'Y0995', 1.0)\n", - "('lA_Y1675', 288, 'Y1675', 1.0)\n", - "X10009 = 3794767.458663473 | finite: True\n", - "Y10009 = 546740.0728581925 | finite: True\n", - "Z10009 = 5080165.933684419 | finite: True\n", - "X10006 = 3794766.3357015415 | finite: True\n", - "Y10006 = 546707.622157196 | finite: True\n", - "Z10006 = 5080169.708421569 | finite: True\n", - "s0(10009-10006) = 32.688800516608524 | finite: True\n", - " -> berechne l0(x_k)\n", "max|ΔA| = 0.027849616798255622\n", "max|Δl0| = 1.0252049119539706\n", - "None\n", - "None\n", - "None\n", " -> löse Ausgleichung\n", - "cond(A) = 50.44851768445092\n", " -> max|dx_xyz| [m] = 0.008033054545604386\n", - "X10009 x= 3794767.4585716673 dict= 3794767.4585716673 diff= 0.0\n", - "Y10009 x= 546740.0729154458 dict= 546740.0729154458 diff= 0.0\n", - "Z10009 x= 5080165.933765841 dict= 5080165.933765841 diff= 0.0\n", "\n", "============================================================\n", "ITERATION 2\n", "max|Δl| = 0.0\n", " -> berechne A(x_k)\n", " -> berechne l0(x_k)\n", - "X812 j= 177 nnz= 37 maxabs= 0.8047762709994336\n", - " 898 952_SD_62_10048_812 A= 0.8047762709994336\n", - " 902 956_SD_62_10048_812 A= 0.8047762709994336\n", - " 906 960_SD_62_10048_812 A= 0.8047762709994336\n", - " 896 950_SD_61_10046_812 A= 0.7952934592257777\n", - " 890 944_SD_61_10046_812 A= 0.7952934592257777\n", - " 893 947_SD_61_10046_812 A= 0.7952934592257777\n", - " 881 935_SD_60_10047_812 A= 0.7885777798502293\n", - " 885 939_SD_60_10047_812 A= 0.7885777798502293\n", - " 877 931_SD_60_10047_812 A= 0.7885777798502293\n", - " 3161 1085_niv_10047_812 A= 0.5936974451560035\n", - " 3179 1103_niv_10048_812 A= 0.5936974451560035\n", - " 3126 1050_niv_812_10047 A= -0.5936974451560035\n", - " 3257 1181_niv_10045_812 A= 0.5936974451560035\n", - " 3258 1182_niv_812_816 A= -0.5936974451560035\n", - " 3225 1149_niv_FH3_812 A= 0.5936974451560035\n", - "Y812 j= 178 nnz= 37 maxabs= 0.3911076464085029\n", - " 896 950_SD_61_10046_812 A= -0.3911076464085029\n", - " 893 947_SD_61_10046_812 A= -0.3911076464085029\n", - " 890 944_SD_61_10046_812 A= -0.3911076464085029\n", - " 885 939_SD_60_10047_812 A= -0.29726085778607914\n", - " 881 935_SD_60_10047_812 A= -0.29726085778607914\n", - " 877 931_SD_60_10047_812 A= -0.29726085778607914\n", - " 1889 947_R_61_10046_812 A= -0.17600369680250255\n", - " 1892 950_R_61_10046_812 A= -0.17600369680250255\n", - " 1886 944_R_61_10046_812 A= -0.17600369680250255\n", - " 898 952_SD_62_10048_812 A= -0.1144783090817612\n", - " 902 956_SD_62_10048_812 A= -0.1144783090817612\n", - " 906 960_SD_62_10048_812 A= -0.1144783090817612\n", - " 3161 1085_niv_10047_812 A= 0.08557889237835081\n", - " 3258 1182_niv_812_816 A= -0.08557889237835081\n", - " 3225 1149_niv_FH3_812 A= 0.08557889237835081\n", - "Z812 j= 179 nnz= 37 maxabs= 0.8001247382718076\n", - " 3257 1181_niv_10045_812 A= 0.8001247382718076\n", - " 3258 1182_niv_812_816 A= -0.8001247382718076\n", - " 3225 1149_niv_FH3_812 A= 0.8001247382718076\n", - " 3226 1150_niv_812_10048 A= -0.8001247382718076\n", - " 3228 1152_niv_816_812 A= 0.8001247382718076\n", - " 3229 1153_niv_812_10045 A= -0.8001247382718076\n", - " 3179 1103_niv_10048_812 A= 0.8001247382718076\n", - " 3180 1104_niv_812_FH3 A= -0.8001247382718076\n", - " 3161 1085_niv_10047_812 A= 0.8001247382718076\n", - " 3126 1050_niv_812_10047 A= -0.8001247382718076\n", - " 898 952_SD_62_10048_812 A= -0.5824344344095966\n", - " 906 960_SD_62_10048_812 A= -0.5824344344095966\n", - " 902 956_SD_62_10048_812 A= -0.5824344344095966\n", - " 877 931_SD_60_10047_812 A= -0.538313168661856\n", - " 885 939_SD_60_10047_812 A= -0.538313168661856\n", - "lA-check (erste 10):\n", - "('lA_X0645', 279, 'X0645', 1.0)\n", - "('lA_X0656', 280, 'X0656', 1.0)\n", - "('lA_X0995', 281, 'X0995', 1.0)\n", - "('lA_X1675', 282, 'X1675', 1.0)\n", - "('lA_XESTE', 283, 'XESTE', 1.0)\n", - "('lA_XGNA2', 284, 'XGNA2', 1.0)\n", - "('lA_Y0645', 285, 'Y0645', 1.0)\n", - "('lA_Y0656', 286, 'Y0656', 1.0)\n", - "('lA_Y0995', 287, 'Y0995', 1.0)\n", - "('lA_Y1675', 288, 'Y1675', 1.0)\n", - "X10009 = 3794767.4585716673 | finite: True\n", - "Y10009 = 546740.0729154458 | finite: True\n", - "Z10009 = 5080165.933765841 | finite: True\n", - "X10006 = 3794766.335594839 | finite: True\n", - "Y10006 = 546707.6222191707 | finite: True\n", - "Z10006 = 5080169.70851348 | finite: True\n", - "s0(10009-10006) = 32.688797552585875 | finite: True\n", - " -> berechne l0(x_k)\n", "max|ΔA| = 0.0003739284723929259\n", "max|Δl0| = 0.003272388995270603\n", - "None\n", - "None\n", - "None\n", " -> löse Ausgleichung\n", - "cond(A) = 50.45389525315293\n", " -> max|dx_xyz| [m] = 1.890182047618103e-05\n", "\n", "KONVERGENZ ERREICHT (XYZ)\n" ] } ], - "execution_count": 43 + "execution_count": 12 }, { "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T18:51:18.153647Z", - "start_time": "2026-01-30T18:51:18.076283Z" + "end_time": "2026-02-02T18:30:34.418184Z", + "start_time": "2026-02-02T18:30:34.393289Z" + } + }, + "cell_type": "code", + "source": [ + "dict_koordinaten_ausgleichungsergebnis = {}\n", + "dict_index = {str(u): i for i, u in enumerate(Jacobimatrix_symbolisch_liste_unbekannte)}\n", + "\n", + "for index, unbekannte in enumerate(Jacobimatrix_symbolisch_liste_unbekannte):\n", + " unbekannte = str(unbekannte)\n", + "\n", + " if unbekannte.startswith(\"X\"):\n", + " key_y = f\"Y{unbekannte[1:]}\"\n", + " key_z = f\"Z{unbekannte[1:]}\"\n", + "\n", + " index_y = dict_index[key_y]\n", + " index_z = dict_index[key_z]\n", + "\n", + " dict_koordinaten_ausgleichungsergebnis[unbekannte[1:]] = sp.Matrix([x[index], x[index_y], x[index_z]])\n", + "print(dict_koordinaten_ausgleichungsergebnis)" + ], + "id": "98f8a073cc649580", + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'10009': Matrix([\n", + "[3794767.45857997],\n", + "[546740.072916559],\n", + "[5080165.93378438]]), '10006': Matrix([\n", + "[3794766.33560315],\n", + "[546707.622220282],\n", + "[5080169.70853201]]), '10010': Matrix([\n", + "[3794758.61864388],\n", + "[546767.651223014],\n", + "[5080169.44384441]]), '10018': Matrix([\n", + "[3794762.23550084],\n", + "[546797.681034507],\n", + "[5080163.96178266]]), '10008': Matrix([\n", + "[3794783.84964947],\n", + "[ 546746.62830626],\n", + "[5080152.72914192]]), '10005': Matrix([\n", + "[3794793.82961457],\n", + "[546722.305120126],\n", + "[5080147.91158562]]), '10003': Matrix([\n", + "[3794841.05396908],\n", + "[546735.099805104],\n", + "[5080111.53670663]]), '10004': Matrix([\n", + "[ 3794803.4496988],\n", + "[546714.123654588],\n", + "[5080141.36517086]]), '10007': Matrix([\n", + "[3794831.04422744],\n", + "[546758.710785346],\n", + "[5080116.65159004]]), '10001': Matrix([\n", + "[3794901.52354471],\n", + "[546745.559386064],\n", + "[5080065.73753857]]), '10002': Matrix([\n", + "[3794867.00675097],\n", + "[546729.595489341],\n", + "[5080092.67719902]]), '10016': Matrix([\n", + "[3794826.66511607],\n", + "[546788.717061813],\n", + "[5080116.86538231]]), '10011': Matrix([\n", + "[3794894.95143467],\n", + "[546833.103102351],\n", + "[5080061.15107472]]), '10026': Matrix([\n", + "[3794753.83754421],\n", + "[546827.430132917],\n", + "[5080167.06844425]]), '10027': Matrix([\n", + "[ 3794757.5777348],\n", + "[546874.323547442],\n", + "[5080159.31164754]]), '10043': Matrix([\n", + "[3794747.28941533],\n", + "[546919.151285297],\n", + "[5080162.13312824]]), '10044': Matrix([\n", + "[3794752.66222079],\n", + "[546958.320774105],\n", + "[5080154.24336701]]), '10021': Matrix([\n", + "[3794776.01737899],\n", + "[546833.733220445],\n", + "[5080149.99939563]]), '10020': Matrix([\n", + "[3794782.59721465],\n", + "[ 546834.46427484],\n", + "[ 5080145.0222165]]), '10024': Matrix([\n", + "[3794772.80203633],\n", + "[546857.089901853],\n", + "[5080149.82617831]]), '10025': Matrix([\n", + "[3794774.19840906],\n", + "[ 546871.8066184],\n", + "[5080147.35633368]]), '10022': Matrix([\n", + "[3794778.32277555],\n", + "[546841.744496186],\n", + "[5080147.26623654]]), '10023': Matrix([\n", + "[3794780.78232886],\n", + "[546848.096367927],\n", + "[ 5080144.9159831]]), '10019': Matrix([\n", + "[3794800.08748261],\n", + "[546833.322559561],\n", + "[5080131.71545231]]), '10033': Matrix([\n", + "[3794800.00252322],\n", + "[546874.655165856],\n", + "[5080127.20631163]]), '10017': Matrix([\n", + "[3794825.01887846],\n", + "[546831.706385078],\n", + "[5080113.38011446]]), '10052': Matrix([\n", + "[3794743.68190553],\n", + "[546984.421825024],\n", + "[5080157.79194664]]), '10042': Matrix([\n", + "[3794758.98427842],\n", + "[546937.052603474],\n", + "[5080151.59017742]]), '10053': Matrix([\n", + "[3794748.11387834],\n", + "[547017.577398696],\n", + "[ 5080150.942951]]), '10037': Matrix([\n", + "[3794800.61194814],\n", + "[546960.754484854],\n", + "[5080117.71744007]]), '10040': Matrix([\n", + "[ 3794780.7022387],\n", + "[546956.427361059],\n", + "[5080133.16805592]]), '10041': Matrix([\n", + "[3794778.17868094],\n", + "[546925.856003976],\n", + "[5080138.71139302]]), '10038': Matrix([\n", + "[3794806.35766666],\n", + "[546929.688837962],\n", + "[5080116.89478888]]), '10051': Matrix([\n", + "[3794767.03393897],\n", + "[ 546988.6992254],\n", + "[5080140.00596588]]), '10036': Matrix([\n", + "[3794815.04036819],\n", + "[546969.606997663],\n", + "[ 5080106.0746542]]), '10035': Matrix([\n", + "[3794845.94275259],\n", + "[546961.527564143],\n", + "[5080084.10279795]]), '10039': Matrix([\n", + "[3794804.15194955],\n", + "[546914.734987638],\n", + "[5080120.14045146]]), '10059': Matrix([\n", + "[3794736.94788152],\n", + "[547079.463858788],\n", + "[5080152.30375318]]), '10050': Matrix([\n", + "[3794766.85122128],\n", + "[547012.513597483],\n", + "[5080137.44267548]]), '10013': Matrix([\n", + "[3794849.62885474],\n", + "[546826.861825325],\n", + "[5080095.42435945]]), '10028': Matrix([\n", + "[3794889.71077764],\n", + "[546908.751829073],\n", + "[5080056.91416242]]), '10012': Matrix([\n", + "[3794853.60465328],\n", + "[ 546805.23467147],\n", + "[5080094.90575063]]), '10014': Matrix([\n", + "[3794838.73767897],\n", + "[546812.364498566],\n", + "[5080105.17878686]]), '10031': Matrix([\n", + "[3794821.77351837],\n", + "[546877.558211579],\n", + "[5080110.74940974]]), '10015': Matrix([\n", + "[3794839.46799937],\n", + "[546793.504911318],\n", + "[5080106.76259218]]), '10032': Matrix([\n", + "[3794807.83293115],\n", + "[546888.492925329],\n", + "[5080119.75589931]]), '10030': Matrix([\n", + "[3794845.37643343],\n", + "[546901.036193956],\n", + "[5080090.36587049]]), '10029': Matrix([\n", + "[3794845.02484949],\n", + "[546914.896435078],\n", + "[5080089.10798665]]), '10034': Matrix([\n", + "[3794886.10621442],\n", + "[546965.720373845],\n", + "[5080053.42839291]]), '10045': Matrix([\n", + "[ 3794881.8668147],\n", + "[547019.807886262],\n", + "[5080050.76866366]]), '10049': Matrix([\n", + "[3794786.86735264],\n", + "[547021.089519093],\n", + "[5080121.46297731]]), '10047': Matrix([\n", + "[3794831.51469374],\n", + "[547018.381555154],\n", + "[5080088.12717808]]), '10046': Matrix([\n", + "[ 3794846.570254],\n", + "[547013.181260511],\n", + "[ 5080077.4350311]]), '10048': Matrix([\n", + "[3794809.25629884],\n", + "[547017.043075428],\n", + "[5080105.02458728]]), '10057': Matrix([\n", + "[3794801.20326581],\n", + "[547078.444624753],\n", + "[5080104.40715682]]), '10055': Matrix([\n", + "[3794838.32915244],\n", + "[ 547082.04262688],\n", + "[5080076.08224052]]), '10054': Matrix([\n", + "[3794889.08668073],\n", + "[547086.990528699],\n", + "[5080038.20389162]]), '10058': Matrix([\n", + "[3794766.25876919],\n", + "[547091.675112945],\n", + "[5080129.04610542]]), '10056': Matrix([\n", + "[3794825.22305169],\n", + "[547094.541329896],\n", + "[5080084.43633654]]), '812': Matrix([\n", + "[3794850.70737255],\n", + "[547011.146716654],\n", + "[5080075.02552605]]), '816': Matrix([\n", + "[ 3794818.0136524],\n", + "[547004.657976372],\n", + "[5080099.97373497]]), 'FH3': Matrix([\n", + "[3794811.14976135],\n", + "[547013.202452658],\n", + "[5080105.04658753]]), '666': Matrix([\n", + "[3794868.24267086],\n", + "[547081.510950167],\n", + "[5080054.35357103]]), 'FH11': Matrix([\n", + "[3794853.31513868],\n", + "[ 546973.23477211],\n", + "[ 5080077.2280398]]), 'FH14': Matrix([\n", + "[3794853.84848223],\n", + "[546972.828446561],\n", + "[5080076.94341708]]), 'FH4': Matrix([\n", + "[3794773.57253126],\n", + "[ 546985.34465218],\n", + "[5080135.92967585]]), 'FH13': Matrix([\n", + "[3794832.53949589],\n", + "[546754.689450773],\n", + "[5080116.61616975]]), 'FH15': Matrix([\n", + "[3794794.18760033],\n", + "[546870.692402764],\n", + "[5080132.90079964]]), '0645': Matrix([\n", + "[3793994.44893587],\n", + "[495758.008508574],\n", + "[ 5085958.1945227]]), '0656': Matrix([\n", + "[3794838.57363193],\n", + "[546995.308981159],\n", + "[5080116.53320468]]), '0995': Matrix([\n", + "[ 3794519.9146947],\n", + "[ 588539.91218344],\n", + "[5075743.92886209]]), '1675': Matrix([\n", + "[3813621.04565343],\n", + "[566004.897501564],\n", + "[5064056.92962525]]), 'ESTE': Matrix([\n", + "[3816914.71619701],\n", + "[507636.817086487],\n", + "[5067733.46399483]]), 'GNA2': Matrix([\n", + "[ 3767530.626098],\n", + "[597990.092696976],\n", + "[5094563.49814063]])}\n" + ] + } + ], + "execution_count": 13 + }, + { + "metadata": { + "ExecuteTime": { + "end_time": "2026-02-02T18:30:34.518029Z", + "start_time": "2026-02-02T18:30:34.454926Z" } }, "cell_type": "code", @@ -1210,30 +1081,30 @@ ] } ], - "execution_count": 44 + "execution_count": 14 }, { "cell_type": "code", "id": "eb8342d747a577db", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T18:51:18.165223Z", - "start_time": "2026-01-30T18:51:18.162151Z" + "end_time": "2026-02-02T18:30:34.534253Z", + "start_time": "2026-02-02T18:30:34.530557Z" } }, "source": [ "# ------------------------------- Netzqualitätsmaße -------------------------------" ], "outputs": [], - "execution_count": 45 + "execution_count": 15 }, { "cell_type": "code", "id": "7117d4492b8784da", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T18:51:18.205632Z", - "start_time": "2026-01-30T18:51:18.194229Z" + "end_time": "2026-02-02T18:30:34.607338Z", + "start_time": "2026-02-02T18:30:34.578153Z" } }, "source": [ @@ -1254,20 +1125,20 @@ "" ] }, - "execution_count": 46, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], - "execution_count": 46 + "execution_count": 16 }, { "cell_type": "code", "id": "84075bea1f2c44d7", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T18:51:18.220347Z", - "start_time": "2026-01-30T18:51:18.216037Z" + "end_time": "2026-02-02T18:30:34.680472Z", + "start_time": "2026-02-02T18:30:34.675279Z" } }, "source": [ @@ -1286,15 +1157,15 @@ ] } ], - "execution_count": 47 + "execution_count": 17 }, { "cell_type": "code", "id": "1797726c5b3af9bf", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T18:51:18.242981Z", - "start_time": "2026-01-30T18:51:18.235470Z" + "end_time": "2026-02-02T18:30:34.714492Z", + "start_time": "2026-02-02T18:30:34.706087Z" } }, "source": [ @@ -1311,15 +1182,15 @@ ] } ], - "execution_count": 48 + "execution_count": 18 }, { "cell_type": "code", "id": "a2fe23d9a19ac2f9", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T18:51:19.253515Z", - "start_time": "2026-01-30T18:51:18.270843Z" + "end_time": "2026-02-02T18:30:36.301221Z", + "start_time": "2026-02-02T18:30:34.778879Z" } }, "source": [ @@ -21171,15 +21042,15 @@ } } ], - "execution_count": 49 + "execution_count": 19 }, { "cell_type": "code", "id": "14db90a3d4d9118b", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T18:52:44.855917Z", - "start_time": "2026-01-30T18:52:39.848773Z" + "end_time": "2026-02-02T18:32:26.670514Z", + "start_time": "2026-02-02T18:32:20.125044Z" } }, "source": [ @@ -21272,15 +21143,15 @@ ] } ], - "execution_count": 50 + "execution_count": 20 }, { "cell_type": "code", "id": "1a84fbfb3db101c9", "metadata": { "ExecuteTime": { - "end_time": "2026-01-30T18:52:50.119781Z", - "start_time": "2026-01-30T18:52:44.908151Z" + "end_time": "2026-02-02T18:32:32.880131Z", + "start_time": "2026-02-02T18:32:26.793913Z" } }, "source": [ @@ -21642,12 +21513,12 @@ { "data": { "text/plain": [ - "VBox(children=(, HBox(children=(Button(description='Auswah…" + "VBox(children=(, HBox(children=(Button(description='Auswah…" ], "application/vnd.jupyter.widget-view+json": { "version_major": 2, "version_minor": 0, - "model_id": "9ad0ee197ec2414c90bd55951592e0ae" + "model_id": "a057dea453ae4a4c8ec2816307c236f7" } }, "metadata": {}, @@ -21657,7 +21528,7 @@ } } ], - "execution_count": 51 + "execution_count": 21 }, { "cell_type": "code", @@ -21787,37 +21658,71 @@ }, "cell_type": "code", "source": [ - "# Varianzkomponten für nächste Iteration anpassen\n", - "# InstrumenteID, beobachtungsgruppe, varianzkomponte\n", - "# Varianzkomponente = None bewirkt, dass diese nicht geändert wird\n", + "# Varianzkompontenschätzung durchführen\n", "\n", - "#ToDo: Bei Importmethode fehlerüberprüfung implementieren!\n", + "import pandas as pd\n", + "import ipywidgets as widgets\n", + "from IPython.display import display, clear_output\n", + "import importlib\n", "\n", "importlib.reload(Datenbank)\n", "db_zugriff = Datenbank.Datenbankzugriff(pfad_datenbank)\n", "\n", - "anschlusspunkte = (2, \"Anschlusspunkte\", None)\n", - "tachymeter_streckenbeobachtungen = (1, \"Tachymeter_Streckenbeobachtungen\", None)\n", - "tachymeter_richtungsbeobachtungen = (1, \"Tachymeter_Richtungsbeobachtungen\", None)\n", - "tachymeter_zenitwinkelbeobachtungen = (1, \"Tachymeter_Zenitwinkelbeobachtungen\", 20)\n", - "nivellier_hoehendifferenzbeobachtungen = (3, \"Nivellier_Hoehendifferenzbeobachtungen\", None)\n", - "gnssrover_basislinienbeobachtungen = (4, \"GNSS-Rover_Basislinienbeobachtungen\", 2)\n", + "rohdaten = db_zugriff.get_varianzkomponentenschaetzung()\n", + "columns = ['ID', 'InstrumentenID', 'Beobachtungsgruppe', 'Varianzfaktor_aktuelle_iteration']\n", + "df = pd.DataFrame(rohdaten, columns=columns)\n", "\n", - "liste_varianzkomponten_anpassen = []\n", - "if anschlusspunkte[2] != None:\n", - " liste_varianzkomponten_anpassen.append(anschlusspunkte)\n", - "if tachymeter_streckenbeobachtungen[2] != None:\n", - " liste_varianzkomponten_anpassen.append(tachymeter_streckenbeobachtungen)\n", - "if tachymeter_richtungsbeobachtungen[2] != None:\n", - " liste_varianzkomponten_anpassen.append(tachymeter_richtungsbeobachtungen)\n", - "if tachymeter_zenitwinkelbeobachtungen[2] != None:\n", - " liste_varianzkomponten_anpassen.append(tachymeter_zenitwinkelbeobachtungen)\n", - "if nivellier_hoehendifferenzbeobachtungen[2] != None:\n", - " liste_varianzkomponten_anpassen.append(nivellier_hoehendifferenzbeobachtungen)\n", - "if gnssrover_basislinienbeobachtungen[2] != None:\n", - " liste_varianzkomponten_anpassen.append(gnssrover_basislinienbeobachtungen)\n", + "neue_werte_widgets = [\n", + " widgets.FloatText(value=1.0, step=0.1, layout=widgets.Layout(width='100px'))\n", + " for _ in range(len(df))\n", + "]\n", "\n", - "db_zugriff.set_varianzkomponente(liste_varianzkomponten_anpassen)" + "log_output = widgets.Output()\n", + "\n", + "btn_save = widgets.Button(\n", + " description=\"Varianzkomponten anpassen\",\n", + " icon=\"check\",\n", + " layout=widgets.Layout(width='300px', height='40px')\n", + ")\n", + "btn_save.style.button_color = '#3c3f41'\n", + "btn_save.style.text_color = '#afb1b3'\n", + "\n", + "def buttondefinition(_):\n", + " # Benutzereingaben abfragen\n", + " liste_varianzkomponten_anpassen = [\n", + " (int(df.iat[i, 1]), str(df.iat[i, 2]), w.value)\n", + " for i, w in enumerate(neue_werte_widgets)\n", + " if w.value != 1.0\n", + " ]\n", + "\n", + " # Tabelle aktualisieren\n", + " btn_save.disabled = True\n", + " for w in neue_werte_widgets:\n", + " w.disabled = True\n", + "\n", + " # Varinazkompontenen in Datenbank anpassen\n", + " if liste_varianzkomponten_anpassen:\n", + " db_zugriff.set_varianzkomponente(liste_varianzkomponten_anpassen)\n", + "\n", + "# Button verbinden\n", + "btn_save.on_click(buttondefinition)\n", + "\n", + "# Tabellendarstellung\n", + "def zeige_vks_tabelle():\n", + " header = widgets.HBox([\n", + " widgets.Label(col, layout=widgets.Layout(width='200px', font_weight='bold'))\n", + " for col in columns\n", + " ] + [widgets.Label('Varianzmultiplikator', layout=widgets.Layout(width='100px', font_weight='bold'))])\n", + "\n", + " zeilen = []\n", + " for i, row in enumerate(df.itertuples(index=False)):\n", + " zellen = [widgets.Label(str(val), layout=widgets.Layout(width='200px')) for val in row]\n", + " zellen.append(neue_werte_widgets[i])\n", + " zeilen.append(widgets.HBox(zellen))\n", + "\n", + " display(widgets.VBox([header] + zeilen + [widgets.HTML(\"
\"), btn_save, log_output]))\n", + "\n", + "zeige_vks_tabelle()" ], "id": "edb14958ee00130c", "outputs": [ @@ -21834,14 +21739,20 @@ { "cell_type": "code", "id": "256f4a0805b69e14", - "metadata": {}, + "metadata": { + "ExecuteTime": { + "end_time": "2026-02-01T18:45:41.387453Z", + "start_time": "2026-02-01T18:45:30.595757Z" + } + }, "source": [ "# Äußere Zuverlässigkeit: Einfluss auf die Punktlage (EP)\n", "from Netzqualität_Zuverlässigkeit import Zuverlaessigkeit\n", "import Netzqualität_Zuverlässigkeit\n", + "importlib.reload(Netzqualität_Zuverlässigkeit)\n", "labels = [str(s) for s in Jacobimatrix_symbolisch_liste_beobachtungsvektor]\n", "\n", - "Aussen = Netzqualität_Zuverlässigkeit.Zuverlaessigkeit.aeussere_zuverlaessigkeit_EF_EP_stabil(\n", + "Aussen = Netzqualität_Zuverlässigkeit.Zuverlaessigkeit.aeussere_zuverlaessigkeit_excelstyle_3d(\n", " Lokaltest=Lokaltest,\n", " labels=labels,\n", " Qxx=res[\"Q_xx\"],\n", @@ -21855,8 +21766,36153 @@ "display(HTML(Aussen.to_html(index=False)))\n", "Aussen.to_excel(r\"Zwischenergebnisse\\Aeussere_Zuverlaessigkeit.xlsx\", index=False)" ], - "outputs": [], - "execution_count": null + "outputs": [ + { + "data": { + "text/plain": [ + "" + ], + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
BeobachtungStand-PktZiel-Pktr_iEP_hat [mm]EP_grzw [mm]EF [-]SP_loc_3D [mm]EF*SP_loc_3D [mm]
54_SD_1_10009_1000610009100060.92640.0155300.3171420.6901518.0081445.526831
55_SD_1_10009_1001010009100100.92770.1527700.3112520.6835637.8625535.374550
56_SD_1_10009_1001810009100180.92480.0401570.3248640.6981637.8625535.489341
57_SD_1_10009_1000810009100080.90460.0405450.4157530.7952947.8625536.253039
58_SD_1_10009_1000610009100060.92640.0393760.3171420.6901518.0081445.526831
59_SD_1_10009_1001010009100100.92770.1256570.3112520.6835637.8625535.374550
60_SD_1_10009_1001810009100180.92480.0482780.3248640.6981637.8625535.489341
61_SD_1_10009_1000810009100080.90460.0353930.4157530.7952947.8625536.253039
62_SD_1_10009_1000610009100060.92640.0083170.3171420.6901518.0081445.526832
63_SD_1_10009_1001010009100100.92770.1220420.3112520.6835637.8625535.374550
64_SD_1_10009_1001810009100180.92480.0360960.3248640.6981637.8625535.489341
65_SD_1_10009_1000810009100080.90460.0090630.4157530.7952947.8625536.253039
66_SD_2_10006_1000910006100090.92640.0987710.3171420.6901528.0081445.526832
67_SD_2_10006_1000510006100050.94200.0341620.2478920.6076858.0081444.866430
68_SD_2_10006_1000310006100030.94220.0475120.2485980.6065928.0081444.857674
69_SD_2_10006_1000410006100040.93170.0248610.2936900.6628728.0081445.308370
70_SD_2_10006_1001010006100100.92200.1526460.3375840.7122478.0081445.703774
71_SD_2_10006_1001810006100180.91390.1584240.3755680.7515778.0081446.018738
72_SD_2_10006_1000910006100090.92640.1075300.3171420.6901528.0081445.526832
73_SD_2_10006_1000510006100050.94200.0588120.2478920.6076858.0081444.866430
74_SD_2_10006_1000310006100030.94220.0533490.2485980.6065928.0081444.857674
75_SD_2_10006_1000410006100040.93170.0813450.2936900.6628728.0081445.308371
76_SD_2_10006_1001010006100100.92200.1609920.3375840.7122478.0081445.703774
77_SD_2_10006_1001810006100180.91390.1819290.3755680.7515778.0081446.018739
78_SD_2_10006_1000910006100090.92640.1036290.3171420.6901528.0081445.526832
79_SD_2_10006_1000510006100050.94200.0372360.2478920.6076858.0081444.866430
80_SD_2_10006_1000310006100030.94220.0656610.2485980.6065928.0081444.857674
81_SD_2_10006_1000410006100040.93170.0406390.2936900.6628728.0081445.308370
82_SD_2_10006_1001010006100100.92200.1525680.3375840.7122478.0081445.703774
83_SD_2_10006_1001810006100180.91390.1820150.3755680.7515778.0081446.018739
84_SD_3_10008_1000910008100090.90460.1182960.4157530.7952947.8625536.253040
85_SD_3_10008_1000710008100070.93490.0219390.2798000.6463367.8079655.046566
86_SD_3_10008_1000510008100050.90700.0353400.4048290.7840117.8997306.193475
87_SD_3_10008_1000910008100090.90460.1294580.4157530.7952947.8625536.253040
88_SD_3_10008_1000710008100070.93490.0149080.2798000.6463367.8079655.046566
89_SD_3_10008_1000510008100050.90700.0218550.4048290.7840117.8997306.193475
90_SD_3_10008_1000910008100090.90460.0926330.4157530.7952947.8625536.253040
91_SD_3_10008_1000710008100070.93490.0079420.2798000.6463367.8079655.046566
92_SD_3_10008_1000510008100050.90700.0298530.4048290.7840117.8997306.193475
93_SD_4_10005_1000810005100080.90700.0190650.4048290.7840117.8997306.193475
94_SD_4_10005_1000310005100030.95170.0268550.2057580.5514567.8997304.356353
95_SD_4_10005_1000110005100010.93320.0317970.2907140.6550568.0077395.245517
96_SD_4_10005_1000210005100020.94380.0408010.2412670.5976657.9562544.755177
97_SD_4_10005_1000410005100040.93470.0200470.2799410.6473927.9406025.140681
98_SD_4_10005_1000610005100060.94200.0191980.2478920.6076858.0081444.866429
99_SD_4_10005_1000810005100080.90700.0139500.4048290.7840117.8997306.193475
100_SD_4_10005_1000310005100030.95170.0369980.2057580.5514567.8997304.356353
101_SD_4_10005_1000110005100010.93320.0424850.2907140.6550568.0077395.245517
102_SD_4_10005_1000210005100020.94380.0349000.2412670.5976657.9562544.755177
103_SD_4_10005_1000410005100040.93470.0385270.2799410.6473927.9406025.140681
104_SD_4_10005_1000610005100060.94200.0099180.2478920.6076858.0081444.866430
105_SD_4_10005_1000810005100080.90700.0498480.4048290.7840117.8997306.193475
106_SD_4_10005_1000310005100030.95170.0242470.2057580.5514567.8997304.356353
107_SD_4_10005_1000110005100010.93320.0496990.2907140.6550568.0077395.245517
108_SD_4_10005_1000210005100020.94380.0730600.2412670.5976657.9562544.755176
109_SD_4_10005_1000410005100040.93470.0186110.2799410.6473927.9406025.140681
110_SD_4_10005_1000610005100060.94200.0160660.2478920.6076858.0081444.866429
111_SD_5_10004_1000510004100050.93470.0120150.2799410.6473927.9406025.140681
112_SD_5_10004_1000310004100030.93940.0453890.2596100.6218037.9406024.937489
113_SD_5_10004_1000210004100020.93380.0126440.2853220.6518107.9562545.185965
114_SD_5_10004_1000610004100060.93170.0036880.2936900.6628718.0081445.308370
115_SD_5_10004_1000510004100050.93470.0140400.2799410.6473927.9406025.140681
116_SD_5_10004_1000310004100030.93940.0324820.2596100.6218037.9406024.937489
117_SD_5_10004_1000210004100020.93380.0180060.2853220.6518107.9562545.185965
118_SD_5_10004_1000610004100060.93170.0036880.2936900.6628718.0081445.308370
119_SD_5_10004_1000510004100050.93470.0140400.2799410.6473927.9406025.140681
120_SD_5_10004_1000310004100030.93940.0325420.2596100.6218037.9406024.937489
121_SD_5_10004_1000210004100020.93380.0126440.2853220.6518107.9562545.185965
122_SD_5_10004_1000610004100060.93170.0036880.2936900.6628718.0081445.308370
123_SD_6_10003_1000410003100040.93940.0053930.2596100.6218037.9406024.937488
124_SD_6_10003_1000610003100060.94220.0209240.2485980.6065928.0081444.857673
125_SD_6_10003_1000510003100050.95170.0280140.2057580.5514567.8997304.356353
126_SD_6_10003_1000710003100070.92860.0364140.3071630.6789667.8580855.335370
127_SD_6_10003_1001610003100160.92640.0655040.3175840.6902437.8580855.423987
128_SD_6_10003_1000110003100010.93440.0070850.2824740.6487848.0077395.195296
129_SD_6_10003_1000210003100020.94270.0365570.2447280.6039467.9562544.805144
130_SD_6_10003_1000410003100040.93940.0207250.2596100.6218037.9406024.937488
131_SD_6_10003_1000610003100060.94220.0128320.2485980.6065928.0081444.857672
132_SD_6_10003_1000510003100050.95170.0381570.2057580.5514567.8997304.356353
133_SD_6_10003_1000710003100070.92860.0352720.3071630.6789667.8580855.335370
134_SD_6_10003_1001610003100160.92640.0814020.3175840.6902437.8580855.423987
135_SD_6_10003_1000110003100010.93440.0278140.2824740.6487848.0077395.195296
136_SD_6_10003_1000210003100020.94270.0487050.2447280.6039467.9562544.805144
137_SD_6_10003_1000410003100040.93940.0046060.2596100.6218037.9406024.937488
138_SD_6_10003_1000610003100060.94220.0117910.2485980.6065928.0081444.857673
139_SD_6_10003_1000510003100050.95170.0152630.2057580.5514567.8997304.356353
140_SD_6_10003_1000710003100070.92860.0109960.3071630.6789667.8580855.335370
141_SD_6_10003_1001610003100160.92640.0774270.3175840.6902437.8580855.423987
142_SD_6_10003_1000110003100010.93440.0111520.2824740.6487848.0077395.195296
143_SD_6_10003_1000210003100020.94270.0456680.2447280.6039467.9562544.805144
144_SD_7_10002_1000310002100030.94270.0092830.2447280.6039467.9562544.805144
145_SD_7_10002_1000110002100010.92590.0326040.3195930.6927428.0077395.547301
146_SD_7_10002_1000410002100040.93380.0271420.2853220.6518107.9562545.185966
147_SD_7_10002_1000610002100060.92790.0160060.3141400.6826858.0081445.467040
148_SD_7_10002_1000510002100050.94380.0058450.2412670.5976657.9562544.755178
149_SD_7_10002_1000310002100030.94270.0034950.2447280.6039467.9562544.805144
150_SD_7_10002_1000110002100010.92590.0205260.3195930.6927428.0077395.547301
151_SD_7_10002_1000410002100040.93380.0307170.2853220.6518107.9562545.185966
152_SD_7_10002_1000610002100060.92790.0074260.3141400.6826858.0081445.467040
153_SD_7_10002_1000510002100050.94380.0078680.2412670.5976657.9562544.755178
154_SD_7_10002_1000310002100030.94270.0062460.2447280.6039467.9562544.805144
155_SD_7_10002_1000110002100010.92590.0325300.3195930.6927428.0077395.547301
156_SD_7_10002_1000410002100040.93380.0011920.2853220.6518107.9562545.185965
157_SD_7_10002_1000610002100060.92790.0236490.3141400.6826858.0081445.467041
158_SD_7_10002_1000510002100050.94380.0048890.2412670.5976657.9562544.755178
159_SD_8_10001_1000210001100020.92590.0354200.3195930.6927428.0077395.547300
160_SD_8_10001_1000510001100050.93320.0023380.2907140.6550568.0077395.245516
161_SD_8_10001_1000310001100030.93440.0150220.2824740.6487848.0077395.195296
162_SD_8_10001_1001110001100110.87220.0522700.5704990.9376478.0077397.508432
163_SD_8_10001_1000210001100020.92590.0112630.3195930.6927428.0077395.547300
164_SD_8_10001_1000510001100050.93320.0525050.2907140.6550568.0077395.245517
165_SD_8_10001_1000310001100030.93440.0152190.2824740.6487848.0077395.195296
166_SD_8_10001_1001110001100110.87220.0668390.5704990.9376478.0077397.508432
167_SD_8_10001_1000210001100020.92590.0118560.3195930.6927428.0077395.547300
168_SD_8_10001_1000510001100050.93320.0237140.2907140.6550568.0077395.245516
169_SD_8_10001_1000310001100030.93440.0270930.2824740.6487848.0077395.195297
170_SD_8_10001_1001110001100110.87220.0737410.5704990.9376478.0077397.508432
171_SD_9_10010_1000610010100060.92200.0450840.3375840.7122478.0081445.703776
172_SD_9_10010_1002610010100260.93460.0679510.2810890.6480167.7753865.038577
173_SD_9_10010_1002710010100270.93590.0138460.2769760.6408637.7753864.982958
174_SD_9_10010_1001810010100180.94300.0551760.2433900.6019557.7753864.680431
175_SD_9_10010_1000910010100090.92770.0002170.3112520.6835637.8625535.374551
176_SD_9_10010_1000610010100060.92200.0518700.3375840.7122478.0081445.703776
177_SD_9_10010_1002610010100260.93460.0606260.2810890.6480167.7753865.038577
178_SD_9_10010_1002710010100270.93590.0067950.2769760.6408637.7753864.982959
179_SD_9_10010_1001810010100180.94300.0612180.2433900.6019557.7753864.680431
180_SD_9_10010_1000910010100090.92770.0146050.3112520.6835637.8625535.374551
181_SD_9_10010_1000610010100060.92200.0112320.3375840.7122478.0081445.703776
182_SD_9_10010_1002610010100260.93460.0886170.2810890.6480167.7753865.038576
183_SD_9_10010_1002710010100270.93590.0203200.2769760.6408637.7753864.982959
184_SD_9_10010_1001810010100180.94300.0642390.2433900.6019557.7753864.680431
185_SD_9_10010_1000910010100090.92770.0184370.3112520.6835637.8625535.374551
186_SD_10_10018_1001010018100100.94300.1245450.2433900.6019557.7753864.680430
187_SD_10_10018_1002610018100260.93850.0914500.2632200.6266407.6847714.815587
188_SD_10_10018_1004310018100430.91930.1192750.3528200.7257207.6847715.576995
189_SD_10_10018_1002710018100270.94030.0334320.2562920.6169387.6847714.741027
190_SD_10_10018_1000910018100090.92480.0366220.3248640.6981637.8625535.489341
191_SD_10_10018_1001010018100100.94300.1299600.2433900.6019557.7753864.680430
192_SD_10_10018_1002610018100260.93850.1058420.2632200.6266407.6847714.815587
193_SD_10_10018_1004310018100430.91930.1016820.3528200.7257207.6847715.576995
194_SD_10_10018_1002710018100270.94030.0368950.2562920.6169387.6847714.741027
195_SD_10_10018_1000910018100090.92480.0406830.3248640.6981637.8625535.489341
196_SD_10_10018_1001010018100100.94300.1333230.2433900.6019557.7753864.680430
197_SD_10_10018_1002610018100260.93850.0939100.2632200.6266407.6847714.815587
198_SD_10_10018_1004310018100430.91930.1191940.3528200.7257207.6847715.576995
199_SD_10_10018_1002710018100270.94030.0208350.2562920.6169387.6847714.741027
200_SD_10_10018_1000910018100090.92480.0325620.3248640.6981637.8625535.489341
201_SD_11_10026_1001810026100180.93850.0646360.2632200.6266407.6847714.815588
202_SD_11_10026_1001010026100100.93460.0249170.2810890.6480167.7753865.038577
203_SD_11_10026_1004310026100430.93720.0028260.2705420.6339157.6512034.850215
204_SD_11_10026_1004410026100440.92910.0021270.3088400.6765317.7026825.211100
205_SD_11_10026_1002710026100270.95110.0161860.2081180.5551247.6360524.238952
206_SD_11_10026_1002110026100210.93340.0030640.2858470.6543107.6360524.996348
207_SD_11_10026_1002010026100200.93270.0794810.2890540.6578927.6360525.023694
208_SD_11_10026_1001810026100180.93850.0745380.2632200.6266407.6847714.815588
209_SD_11_10026_1001010026100100.93460.0074560.2810890.6480167.7753865.038577
210_SD_11_10026_1004310026100430.93720.0138790.2705420.6339157.6512034.850216
211_SD_11_10026_1004410026100440.92910.0135420.3088400.6765317.7026825.211100
212_SD_11_10026_1002710026100270.95110.0160880.2081180.5551247.6360524.238952
213_SD_11_10026_1002110026100210.93340.0030640.2858470.6543107.6360524.996348
214_SD_11_10026_1002010026100200.93270.0849330.2890540.6578927.6360525.023694
215_SD_11_10026_1001810026100180.93850.0712170.2632200.6266407.6847714.815588
216_SD_11_10026_1001010026100100.93460.0249830.2810890.6480167.7753865.038577
217_SD_11_10026_1004310026100430.93720.0095460.2705420.6339157.6512034.850215
218_SD_11_10026_1004410026100440.92910.0097840.3088400.6765317.7026825.211100
219_SD_11_10026_1002710026100270.95110.0341320.2081180.5551247.6360524.238952
220_SD_11_10026_1002110026100210.93340.0137860.2858470.6543107.6360524.996348
221_SD_11_10026_1002010026100200.93270.0921340.2890540.6578927.6360525.023694
222_SD_12_10021_1002610021100260.93340.0102560.2858470.6543107.6360524.996348
223_SD_12_10021_1002410021100240.94730.0325690.2244490.5774337.5982924.387505
224_SD_12_10021_1002510021100250.95560.0148740.1884340.5281607.5982924.013111
225_SD_12_10021_1002210021100220.94790.0426700.2217380.5742357.5982924.363202
226_SD_12_10021_1002310021100230.94760.0004190.2231190.5761897.5982924.378049
227_SD_12_10021_1002010021100200.95420.0826230.1942840.5362817.5982924.074823
228_SD_12_10021_1001910021100190.93150.0470600.2942760.6639087.5982925.044568
229_SD_12_10021_1002610021100260.93340.0116550.2858470.6543107.6360524.996348
230_SD_12_10021_1002410021100240.94730.0353620.2244490.5774337.5982924.387505
231_SD_12_10021_1002510021100250.95560.0172270.1884340.5281607.5982924.013111
232_SD_12_10021_1002210021100220.94790.0560080.2217380.5742357.5982924.363202
233_SD_12_10021_1002310021100230.94760.0134670.2231190.5761897.5982924.378049
234_SD_12_10021_1002010021100200.95420.0749290.1942840.5362817.5982924.074823
235_SD_12_10021_1001910021100190.93150.0511010.2942760.6639087.5982925.044568
236_SD_12_10021_1002610021100260.93340.0101900.2858470.6543107.6360524.996348
237_SD_12_10021_1002410021100240.94730.0269820.2244490.5774337.5982924.387505
238_SD_12_10021_1002510021100250.95560.0148300.1884340.5281607.5982924.013111
239_SD_12_10021_1002210021100220.94790.0555910.2217380.5742357.5982924.363202
240_SD_12_10021_1002310021100230.94760.0271960.2231190.5761897.5982924.378049
241_SD_12_10021_1002010021100200.95420.0773100.1942840.5362817.5982924.074823
242_SD_12_10021_1001910021100190.93150.0535670.2942760.6639087.5982925.044568
243_SD_13_10020_1002110020100210.95420.0616010.1942840.5362817.5982924.074823
244_SD_13_10020_1002210020100220.94810.0201370.2208860.5728967.5952794.351308
245_SD_13_10020_1002410020100240.94870.0049760.2183330.5693637.5930834.323221
246_SD_13_10020_1002510020100250.95550.0129490.1888580.5283397.5893914.009770
247_SD_13_10020_1002310020100230.94690.0247980.2261530.5797127.5893914.399664
248_SD_13_10020_1001910020100190.93220.0429850.2910650.6604237.5893915.012205
249_SD_13_10020_1002610020100260.93270.0440140.2890540.6578927.6360525.023695
250_SD_13_10020_1002110020100210.95420.0618300.1942840.5362817.5982924.074823
251_SD_13_10020_1002210020100220.94810.0121960.2208860.5728967.5952794.351308
252_SD_13_10020_1002410020100240.94870.0080030.2183330.5693637.5930834.323221
253_SD_13_10020_1002510020100250.95550.0152190.1888580.5283397.5893914.009770
254_SD_13_10020_1002310020100230.94690.0276120.2261530.5797127.5893914.399664
255_SD_13_10020_1001910020100190.93220.0444770.2910650.6604237.5893915.012205
256_SD_13_10020_1002610020100260.93270.0476480.2890540.6578927.6360525.023695
257_SD_13_10020_1002110020100210.95420.0447010.1942840.5362817.5982924.074823
258_SD_13_10020_1002210020100220.94810.0037370.2208860.5728967.5952794.351308
259_SD_13_10020_1002410020100240.94870.0052330.2183330.5693637.5930834.323221
260_SD_13_10020_1002510020100250.95550.0129050.1888580.5283397.5893914.009770
261_SD_13_10020_1002310020100230.94690.0388160.2261530.5797127.5893914.399664
262_SD_13_10020_1001910020100190.93220.0502400.2910650.6604237.5893915.012205
263_SD_13_10020_1002610020100260.93270.0692520.2890540.6578927.6360525.023694
264_SD_14_10019_1002010019100200.93220.0570200.2910650.6604237.5893915.012205
265_SD_14_10019_1003310019100330.92090.0539460.3420280.7178447.5776765.439589
266_SD_14_10019_1001710019100170.90560.2803680.4113950.7909627.5776765.993655
267_SD_14_10019_1002610019100260.92070.0058680.3433690.7187267.6360525.488227
268_SD_14_10019_1002110019100210.93150.0094530.2942760.6639087.5982925.044568
269_SD_14_10019_1002010019100200.93220.0678680.2910650.6604237.5893915.012205
270_SD_14_10019_1003310019100330.92090.0495960.3420280.7178447.5776765.439589
271_SD_14_10019_1001710019100170.90560.2544080.4113950.7909627.5776765.993655
272_SD_14_10019_1002610019100260.92070.0091990.3433690.7187267.6360525.488227
273_SD_14_10019_1002110019100210.93150.0072610.2942760.6639087.5982925.044568
274_SD_14_10019_1002010019100200.93220.0569520.2910650.6604237.5893915.012205
275_SD_14_10019_1003310019100330.92090.0669190.3420280.7178447.5776765.439589
276_SD_14_10019_1001710019100170.90560.3147300.4113950.7909627.5776765.993655
277_SD_14_10019_1002610019100260.92070.0382230.3433690.7187267.6360525.488226
278_SD_14_10019_1002110019100210.93150.0207560.2942760.6639087.5982925.044568
279_SD_15_10027_1002610027100260.95110.0510520.2081180.5551247.6360524.238953
280_SD_15_10027_1001010027100100.93590.0398700.2769760.6408637.7753864.982958
281_SD_15_10027_1001810027100180.94030.0667450.2562920.6169387.6847714.741025
282_SD_15_10027_1004310027100430.94050.0459340.2546600.6162317.6512034.714909
283_SD_15_10027_1004410027100440.93540.0215120.2782970.6433677.7026824.955648
284_SD_15_10027_1002510027100250.90850.1308450.3979340.7773817.5970135.905773
285_SD_15_10027_1002610027100260.95110.0356480.2081180.5551247.6360524.238953
286_SD_15_10027_1001010027100100.93590.0502540.2769760.6408637.7753864.982958
287_SD_15_10027_1001810027100180.94030.0226860.2562920.6169387.6847714.741026
288_SD_15_10027_1004310027100430.94050.0553350.2546600.6162317.6512034.714909
289_SD_15_10027_1004410027100440.93540.0215120.2782970.6433677.7026824.955648
290_SD_15_10027_1002510027100250.90850.1258130.3979340.7773817.5970135.905773
291_SD_15_10027_1002610027100260.95110.0211250.2081180.5551247.6360524.238953
292_SD_15_10027_1001010027100100.93590.0501900.2769760.6408637.7753864.982958
293_SD_15_10027_1001810027100180.94030.0385060.2562920.6169387.6847714.741026
294_SD_15_10027_1004310027100430.94050.0709840.2546600.6162317.6512034.714909
295_SD_15_10027_1004410027100440.93540.0146640.2782970.6433677.7026824.955648
296_SD_15_10027_1002510027100250.90850.0905850.3979340.7773817.5970135.905773
297_SD_16_10022_1002110022100210.94790.0118790.2217380.5742357.5982924.363202
298_SD_16_10022_1002410022100240.94420.0253890.2379870.5954007.5952794.522232
299_SD_16_10022_1002510022100250.94800.0143000.2214680.5737317.5952794.357650
300_SD_16_10022_1002310022100230.94280.0030890.2441300.6034517.5952794.583379
301_SD_16_10022_1002010022100200.94810.0182690.2208860.5728967.5952794.351308
302_SD_16_10022_1002110022100210.94790.0226640.2217380.5742357.5982924.363202
303_SD_16_10022_1002410022100240.94420.0488810.2379870.5954007.5952794.522232
304_SD_16_10022_1002510022100250.94800.0087880.2214680.5737317.5952794.357650
305_SD_16_10022_1002310022100230.94280.0030320.2441300.6034517.5952794.583379
306_SD_16_10022_1002010022100200.94810.0045670.2208860.5728967.5952794.351308
307_SD_16_10022_1002110022100210.94790.0208400.2217380.5742357.5982924.363202
308_SD_16_10022_1002410022100240.94420.0638350.2379870.5954007.5952794.522232
309_SD_16_10022_1002510022100250.94800.0148200.2214680.5737317.5952794.357650
310_SD_16_10022_1002310022100230.94280.0172740.2441300.6034517.5952794.583379
311_SD_16_10022_1002010022100200.94810.0101200.2208860.5728967.5952794.351308
312_SD_17_10023_1002210023100220.94280.0065780.2441300.6034517.5952794.583379
313_SD_17_10023_1002410023100240.94330.0663390.2419390.6006237.5930834.560577
314_SD_17_10023_1002510023100250.94650.0063660.2279630.5824507.5867274.418886
315_SD_17_10023_1002010023100200.94690.0175760.2261530.5797127.5893914.399664
316_SD_17_10023_1002110023100210.94760.0145150.2231190.5761897.5982924.378049
317_SD_17_10023_1002210023100220.94280.0296300.2441300.6034517.5952794.583379
318_SD_17_10023_1002410023100240.94330.0451330.2419390.6006237.5930834.560577
319_SD_17_10023_1002510023100250.94650.0077040.2279630.5824507.5867274.418886
320_SD_17_10023_1002010023100200.94690.0175760.2261530.5797127.5893914.399664
321_SD_17_10023_1002110023100210.94760.0061310.2231190.5761897.5982924.378049
322_SD_17_10023_1002210023100220.94280.0340910.2441300.6034517.5952794.583379
323_SD_17_10023_1002410023100240.94330.0590250.2419390.6006237.5930834.560577
324_SD_17_10023_1002510023100250.94650.0077570.2279630.5824507.5867274.418886
325_SD_17_10023_1002010023100200.94690.0036640.2261530.5797127.5893914.399664
326_SD_17_10023_1002110023100210.94760.0060780.2231190.5761897.5982924.378049
327_SD_18_10024_1002310024100230.94330.0475710.2419390.6006237.5930834.560577
328_SD_18_10024_1002010024100200.94870.0327290.2183330.5693637.5930834.323221
329_SD_18_10024_1002210024100220.94420.0690250.2379870.5954007.5952794.522232
330_SD_18_10024_1002110024100210.94730.0245050.2244490.5774337.5982924.387505
331_SD_18_10024_1002510024100250.94430.0034530.2375600.5946857.5930834.515493
332_SD_18_10024_1002310024100230.94330.0474580.2419390.6006237.5930834.560577
333_SD_18_10024_1002010024100200.94870.0553530.2183330.5693637.5930834.323220
334_SD_18_10024_1002210024100220.94420.0406780.2379870.5954007.5952794.522232
335_SD_18_10024_1002110024100210.94730.0328320.2244490.5774337.5982924.387505
336_SD_18_10024_1002510024100250.94430.0214440.2375600.5946857.5930834.515493
337_SD_18_10024_1002310024100230.94330.0430920.2419390.6006237.5930834.560577
338_SD_18_10024_1002010024100200.94870.0407320.2183330.5693637.5930834.323220
339_SD_18_10024_1002210024100220.94420.0575300.2379870.5954007.5952794.522232
340_SD_18_10024_1002110024100210.94730.0300390.2244490.5774337.5982924.387505
341_SD_18_10024_1002510024100250.94430.0155960.2375600.5946857.5930834.515493
342_SD_19_10025_1002410025100240.94430.0260120.2375600.5946857.5930834.515493
343_SD_19_10025_1002110025100210.95560.0441780.1884340.5281607.5982924.013111
344_SD_19_10025_1002210025100220.94800.0135720.2214680.5737317.5952794.357650
345_SD_19_10025_1002010025100200.95550.0318170.1888580.5283397.5893914.009771
346_SD_19_10025_1002310025100230.94650.0221490.2279630.5824507.5867274.418886
347_SD_19_10025_1003310025100330.90680.3088650.4058860.7849587.5782345.948598
348_SD_19_10025_1002710025100270.90850.1721120.3979340.7773817.5970135.905773
349_SD_19_10025_1002410025100240.94430.0440590.2375600.5946857.5930834.515493
350_SD_19_10025_1002110025100210.95560.0582530.1884340.5281607.5982924.013112
351_SD_19_10025_1002210025100220.94800.0053040.2214680.5737317.5952794.357651
352_SD_19_10025_1002010025100200.95550.0089890.1888580.5283397.5893914.009770
353_SD_19_10025_1002310025100230.94650.0061520.2279630.5824507.5867274.418886
354_SD_19_10025_1003310025100330.90680.2885470.4058860.7849587.5782345.948598
355_SD_19_10025_1002710025100270.90850.1972740.3979340.7773817.5970135.905772
356_SD_19_10025_1002410025100240.94430.0231710.2375600.5946857.5930834.515493
357_SD_19_10025_1002110025100210.95560.0629590.1884340.5281607.5982924.013112
358_SD_19_10025_1002210025100220.94800.0129480.2214680.5737317.5952794.357650
359_SD_19_10025_1002010025100200.95550.0177550.1888580.5283397.5893914.009771
360_SD_19_10025_1002310025100230.94650.0023540.2279630.5824507.5867274.418886
361_SD_19_10025_1003310025100330.90680.3245220.4058860.7849587.5782345.948598
362_SD_19_10025_1002710025100270.90850.1872090.3979340.7773817.5970135.905772
363_SD_20_10043_1002710043100270.94050.1311970.2546600.6162317.6512034.714908
364_SD_20_10043_1002610043100260.93720.1190690.2705420.6339167.6512034.850218
365_SD_20_10043_1005210043100520.92100.0082160.3422280.7173037.8159535.606410
366_SD_20_10043_1004410043100440.94860.0588530.2189640.5700927.7026824.391238
367_SD_20_10043_1004210043100420.92540.0699000.3214510.6954087.6620005.328217
368_SD_20_10043_1002710043100270.94050.1639820.2546600.6162317.6512034.714908
369_SD_20_10043_1002610043100260.93720.1084560.2705420.6339167.6512034.850218
370_SD_20_10043_1005210043100520.92100.0005530.3422280.7173037.8159535.606410
371_SD_20_10043_1004410043100440.94860.0547920.2189640.5700927.7026824.391238
372_SD_20_10043_1004210043100420.92540.0413280.3214510.6954087.6620005.328217
373_SD_20_10043_1002710043100270.94050.1567230.2546600.6162317.6512034.714908
374_SD_20_10043_1002610043100260.93720.0987840.2705420.6339167.6512034.850217
375_SD_20_10043_1005210043100520.92100.0049770.3422280.7173037.8159535.606410
376_SD_20_10043_1004410043100440.94860.0493440.2189640.5700927.7026824.391238
377_SD_20_10043_1004210043100420.92540.0736300.3214510.6954087.6620005.328217
378_SD_21_10044_1002710044100270.93540.0692510.2782970.6433667.7026824.955647
379_SD_21_10044_1004310044100430.94860.0393210.2189640.5700927.7026824.391238
380_SD_21_10044_1005210044100520.93810.0550910.2649940.6290617.8159534.916710
381_SD_21_10044_1005310044100530.92800.1979280.3105360.6823307.9302615.411055
382_SD_21_10044_1003710044100370.94260.1211140.2456720.6043317.7026824.654967
383_SD_21_10044_1004010044100400.94040.0513160.2549090.6162627.7026824.746873
384_SD_21_10044_1004210044100420.93760.0033070.2671340.6318227.7026824.866728
385_SD_21_10044_1002710044100270.93540.0626620.2782970.6433667.7026824.955647
386_SD_21_10044_1004310044100430.94860.0117710.2189640.5700927.7026824.391238
387_SD_21_10044_1005210044100520.93810.0625810.2649940.6290617.8159534.916710
388_SD_21_10044_1005310044100530.92800.1746720.3105360.6823307.9302615.411054
389_SD_21_10044_1003710044100370.94260.1405150.2456720.6043317.7026824.654968
390_SD_21_10044_1004010044100400.94040.0575740.2549090.6162627.7026824.746874
391_SD_21_10044_1004210044100420.93760.0024340.2671340.6318227.7026824.866728
392_SD_21_10044_1002710044100270.93540.0456080.2782970.6433667.7026824.955647
393_SD_21_10044_1004310044100430.94860.0178360.2189640.5700927.7026824.391238
394_SD_21_10044_1005210044100520.93810.0656760.2649940.6290617.8159534.916710
395_SD_21_10044_1005310044100530.92800.1824480.3105360.6823307.9302615.411054
396_SD_21_10044_1003710044100370.94260.1254760.2456720.6043317.7026824.654967
397_SD_21_10044_1004010044100400.94040.0290850.2549090.6162627.7026824.746873
398_SD_21_10044_1004210044100420.93760.0231500.2671340.6318237.7026824.866728
399_SD_22_10042_1004310042100430.92540.1010080.3214510.6954087.6620005.328217
400_SD_22_10042_1004410042100440.93760.0396240.2671340.6318227.7026824.866728
401_SD_22_10042_1004010042100400.93270.0083450.2889860.6575357.6740065.045927
402_SD_22_10042_1004110042100410.91800.0857720.3548140.7320487.6620005.608953
403_SD_22_10042_1004310042100430.92540.1005610.3214510.6954087.6620005.328217
404_SD_22_10042_1004410042100440.93760.0002500.2671340.6318227.7026824.866728
405_SD_22_10042_1004010042100400.93270.0227470.2889860.6575357.6740065.045927
406_SD_22_10042_1004110042100410.91800.0951200.3548140.7320487.6620005.608953
407_SD_22_10042_1004310042100430.92540.0889230.3214510.6954087.6620005.328217
408_SD_22_10042_1004410042100440.93760.0062400.2671340.6318227.7026824.866728
409_SD_22_10042_1004010042100400.93270.0047110.2889860.6575357.6740065.045927
410_SD_22_10042_1004110042100410.91800.0996300.3548140.7320487.6620005.608953
411_SD_23_10041_1004210041100420.91800.0824920.3548140.7320487.6620005.608953
412_SD_23_10041_1004410041100440.92230.0052840.3357420.7105747.7026825.473329
413_SD_23_10041_1004010041100400.94080.0152740.2530800.6140417.6740064.712154
414_SD_23_10041_1003810041100380.90210.1460670.4275290.8068027.6221596.149576
415_SD_23_10041_1004210041100420.91800.0824920.3548140.7320487.6620005.608953
416_SD_23_10041_1004410041100440.92230.0052060.3357420.7105747.7026825.473329
417_SD_23_10041_1004010041100400.94080.0196540.2530800.6140417.6740064.712154
418_SD_23_10041_1003810041100380.90210.1461650.4275290.8068027.6221596.149576
419_SD_23_10041_1004210041100420.91800.0601880.3548140.7320487.6620005.608954
420_SD_23_10041_1004410041100440.92230.0624710.3357420.7105747.7026825.473329
421_SD_23_10041_1004010041100400.94080.0058020.2530800.6140417.6740064.712154
422_SD_23_10041_1003810041100380.90210.1352980.4275290.8068027.6221596.149576
423_SD_24_10037_1004410037100440.94260.1037790.2456720.6043317.7026824.654967
424_SD_24_10037_1005110037100510.91410.0044670.3729780.7509107.7909135.850271
425_SD_24_10037_1003610037100360.94990.0176350.2130750.5624377.7114104.337179
426_SD_24_10037_1003510037100350.95230.0222760.2030590.5482127.7371164.241579
427_SD_24_10037_1003810037100380.94510.0243760.2342030.5903167.6734934.529787
428_SD_24_10037_1003910037100390.93450.0110040.2811920.6482577.6734934.974392
429_SD_24_10037_1004010037100400.94220.1249640.2468640.6064867.6740064.654173
430_SD_24_10037_1004410037100440.94260.0854110.2456720.6043317.7026824.654967
431_SD_24_10037_1005110037100510.91410.0039510.3729780.7509107.7909135.850271
432_SD_24_10037_1003610037100360.94990.0121240.2130750.5624377.7114104.337179
433_SD_24_10037_1003510037100350.95230.0315300.2030590.5482127.7371164.241579
434_SD_24_10037_1003810037100380.94510.0322260.2342030.5903167.6734934.529787
435_SD_24_10037_1003910037100390.93450.0110040.2811920.6482577.6734934.974392
436_SD_24_10037_1004010037100400.94220.1342120.2468640.6064867.6740064.654173
437_SD_24_10037_1004410037100440.94260.0846080.2456720.6043317.7026824.654967
438_SD_24_10037_1005110037100510.91410.0182110.3729780.7509107.7909135.850271
439_SD_24_10037_1003610037100360.94990.0018040.2130750.5624377.7114104.337179
440_SD_24_10037_1003510037100350.95230.0240410.2030590.5482127.7371164.241579
441_SD_24_10037_1003810037100380.94510.0270110.2342030.5903167.6734934.529787
442_SD_24_10037_1003910037100390.93450.0611110.2811920.6482577.6734934.974392
443_SD_24_10037_1004010037100400.94220.1127100.2468640.6064867.6740064.654173
444_SD_25_10052_1004310052100430.92100.1251360.3422280.7173047.8159535.606412
445_SD_25_10052_1005910052100590.91170.1690060.3858710.7622748.2892666.318690
446_SD_25_10052_1005310052100530.94730.0763620.2245550.5774247.9302614.579124
447_SD_25_10052_1005010052100500.93720.0327190.2691610.6339557.8854104.998994
448_SD_25_10052_1005110052100510.93490.0413390.2791490.6463247.8159535.051636
449_SD_25_10052_1004410052100440.93810.0323740.2649940.6290617.8159534.916710
450_SD_25_10052_1004310052100430.92100.1079930.3422280.7173047.8159535.606411
451_SD_25_10052_1005910052100590.91170.1546130.3858710.7622748.2892666.318689
452_SD_25_10052_1005310052100530.94730.0678250.2245550.5774247.9302614.579124
453_SD_25_10052_1005010052100500.93720.0259990.2691610.6339557.8854104.998994
454_SD_25_10052_1005110052100510.93490.0272770.2791490.6463247.8159535.051635
455_SD_25_10052_1004410052100440.93810.0154130.2649940.6290617.8159534.916710
456_SD_25_10052_1004310052100430.92100.0993030.3422280.7173047.8159535.606411
457_SD_25_10052_1005910052100590.91170.1739510.3858710.7622748.2892666.318690
458_SD_25_10052_1005310052100530.94730.0568630.2245550.5774247.9302614.579124
459_SD_25_10052_1005010052100500.93720.0377430.2691610.6339557.8854104.998994
460_SD_25_10052_1005110052100510.93490.0203760.2791490.6463247.8159535.051635
461_SD_25_10052_1004410052100440.93810.0037140.2649940.6290617.8159534.916710
462_SD_26_10040_1003710040100370.94220.1083750.2468640.6064867.6740064.654173
463_SD_26_10040_1004110040100410.94080.0864320.2530800.6140417.6740064.712153
464_SD_26_10040_1004210040100420.93270.0036340.2889860.6575357.6740065.045926
465_SD_26_10040_1004410040100440.94040.0247940.2549090.6162627.7026824.746873
466_SD_26_10040_1003710040100370.94220.1146750.2468640.6064867.6740064.654173
467_SD_26_10040_1004110040100410.94080.0644100.2530800.6140417.6740064.712153
468_SD_26_10040_1004210040100420.93270.0044420.2889860.6575357.6740065.045926
469_SD_26_10040_1004410040100440.94040.0469650.2549090.6162627.7026824.746873
470_SD_26_10040_1003710040100370.94220.1195880.2468640.6064867.6740064.654173
471_SD_26_10040_1004110040100410.94080.0802160.2530800.6140417.6740064.712153
472_SD_26_10040_1004210040100420.93270.0027590.2889860.6575357.6740065.045927
473_SD_26_10040_1004410040100440.94040.0185360.2549090.6162627.7026824.746873
474_SD_27_10051_1003710051100370.91410.0940600.3729780.7509107.7909135.850272
475_SD_27_10051_1005210051100520.93490.0173820.2791490.6463247.8159535.051635
476_SD_27_10051_1005310051100530.93660.0786790.2717320.6373797.9302615.054582
477_SD_27_10051_1005010051100500.92840.1262310.3080230.6798837.8854105.361154
478_SD_27_10051_1003710051100370.91410.0797150.3729780.7509107.7909135.850272
479_SD_27_10051_1005210051100520.93490.0139970.2791490.6463247.8159535.051635
480_SD_27_10051_1005310051100530.93660.0641610.2717320.6373797.9302615.054582
481_SD_27_10051_1005010051100500.92840.1295960.3080230.6798837.8854105.361154
482_SD_27_10051_1003710051100370.91410.0890780.3729780.7509107.7909135.850272
483_SD_27_10051_1005210051100520.93490.0070310.2791490.6463247.8159535.051635
484_SD_27_10051_1005310051100530.93660.0634630.2717320.6373797.9302615.054582
485_SD_27_10051_1005010051100500.92840.1379020.3080230.6798837.8854105.361154
486_SD_28_10011_1000110011100010.87220.0076680.5704990.9376478.0077397.508431
487_SD_28_10011_1001310011100130.91090.0145230.3877630.7657337.7760235.954360
488_SD_28_10011_1001710011100170.92610.0075380.3200610.6918297.7760235.379676
489_SD_28_10011_1002810011100280.86470.4290360.6056030.9687777.7760237.533235
490_SD_28_10011_1000110011100010.87220.0215980.5704990.9376478.0077397.508431
491_SD_28_10011_1001310011100130.91090.0343930.3877630.7657337.7760235.954360
492_SD_28_10011_1001710011100170.92610.0196570.3200610.6918297.7760235.379677
493_SD_28_10011_1002810011100280.86470.3665280.6056030.9687777.7760237.533236
494_SD_28_10011_1000110011100010.87220.0217260.5704990.9376478.0077397.508431
495_SD_28_10011_1001310011100130.91090.0294920.3877630.7657337.7760235.954360
496_SD_28_10011_1001710011100170.92610.0235740.3200610.6918297.7760235.379677
497_SD_28_10011_1002810011100280.86470.4210540.6056030.9687777.7760237.533235
498_SD_29_10017_1001110017100110.92610.0260870.3200610.6918297.7760235.379677
499_SD_29_10017_1001310017100130.92620.0583020.3180040.6912137.6405385.281241
500_SD_29_10017_1001210017100120.94310.0344240.2431340.6017027.6739704.617440
501_SD_29_10017_1001410017100140.93510.0192750.2782260.6452047.6214094.917366
502_SD_29_10017_1000710017100070.94010.0172510.2570310.6181457.7553304.793921
503_SD_29_10017_1001610017100160.95020.0460650.2119990.5604957.6601564.293481
504_SD_29_10017_1001910017100190.90560.0734430.4113950.7909627.5776765.993657
505_SD_29_10017_1003110017100310.92220.0425570.3362520.7115217.5772665.391387
506_SD_29_10017_1001110017100110.92610.0540210.3200610.6918297.7760235.379677
507_SD_29_10017_1001310017100130.92620.0491510.3180040.6912137.6405385.281241
508_SD_29_10017_1001210017100120.94310.0706130.2431340.6017027.6739704.617440
509_SD_29_10017_1001410017100140.93510.0014930.2782260.6452047.6214094.917366
510_SD_29_10017_1000710017100070.94010.0172510.2570310.6181457.7553304.793921
511_SD_29_10017_1001610017100160.95020.0381970.2119990.5604957.6601564.293481
512_SD_29_10017_1001910017100190.90560.0630590.4113950.7909627.5776765.993657
513_SD_29_10017_1003110017100310.92220.0383550.3362520.7115217.5772665.391387
514_SD_29_10017_1001110017100110.92610.0420490.3200610.6918297.7760235.379677
515_SD_29_10017_1001310017100130.92620.0702580.3180040.6912137.6405385.281241
516_SD_29_10017_1001210017100120.94310.0660040.2431340.6017027.6739704.617440
517_SD_29_10017_1001410017100140.93510.0123960.2782260.6452047.6214094.917366
518_SD_29_10017_1000710017100070.94010.0109020.2570310.6181457.7553304.793920
519_SD_29_10017_1001610017100160.95020.0329680.2119990.5604957.6601564.293481
520_SD_29_10017_1001910017100190.90560.0891140.4113950.7909627.5776765.993657
521_SD_29_10017_1003110017100310.92220.0214730.3362520.7115217.5772665.391387
522_SD_30_10013_1001710013100170.92620.0456820.3180040.6912137.6405385.281241
523_SD_30_10013_1001110013100110.91090.0319870.3877630.7657337.7760235.954360
524_SD_30_10013_1001210013100120.90960.0333580.3928780.7721457.6739705.925417
525_SD_30_10013_1001710013100170.92620.0536530.3180040.6912137.6405385.281241
526_SD_30_10013_1001110013100110.91090.0025840.3877630.7657337.7760235.954360
527_SD_30_10013_1001210013100120.90960.0457420.3928780.7721457.6739705.925417
528_SD_30_10013_1001710013100170.92620.0495940.3180040.6912137.6405385.281241
529_SD_30_10013_1001110013100110.91090.0564000.3877630.7657337.7760235.954360
530_SD_30_10013_1001210013100120.90960.0556860.3928780.7721457.6739705.925417
531_SD_31_10007_1000810007100080.93490.2201030.2798000.6463367.8079655.046569
532_SD_31_10007_1001610007100160.94670.0436530.2271650.5809567.7553304.505503
533_SD_31_10007_1001710007100170.94010.0347420.2570310.6181457.7553304.793921
534_SD_31_10007_1001510007100150.95290.0592990.2001280.5445957.7553304.223515
535_SD_31_10007_1000310007100030.92860.1031020.3071630.6789667.8580855.335369
536_SD_31_10007_1000810007100080.93490.2200380.2798000.6463367.8079655.046569
537_SD_31_10007_1001610007100160.94670.0408280.2271650.5809567.7553304.505503
538_SD_31_10007_1001710007100170.94010.0251580.2570310.6181457.7553304.793921
539_SD_31_10007_1001510007100150.95290.0642440.2001280.5445957.7553304.223515
540_SD_31_10007_1000310007100030.92860.0916060.3071630.6789667.8580855.335370
541_SD_31_10007_1000810007100080.93490.2201030.2798000.6463367.8079655.046569
542_SD_31_10007_1001610007100160.94670.0408280.2271650.5809567.7553304.505503
543_SD_31_10007_1001710007100170.94010.0188090.2570310.6181457.7553304.793921
544_SD_31_10007_1001510007100150.95290.0469120.2001280.5445957.7553304.223515
545_SD_31_10007_1000310007100030.92860.1031730.3071630.6789667.8580855.335369
546_SD_32_10016_1000710016100070.94670.0317670.2271650.5809567.7553304.505504
547_SD_32_10016_1003110016100310.90550.0061430.4140050.7911987.6601566.060699
548_SD_32_10016_1001710016100170.95020.0338140.2119990.5604957.6601564.293481
549_SD_32_10016_1001410016100140.94070.0364700.2535080.6148707.6601564.710004
550_SD_32_10016_1001210016100120.94040.0432700.2549690.6165557.6739704.731423
551_SD_32_10016_1001510016100150.94230.0336390.2463210.6057737.6704664.646558
552_SD_32_10016_1000310016100030.92640.1079710.3175840.6902437.8580855.423985
553_SD_32_10016_1000710016100070.94670.0148710.2271650.5809567.7553304.505504
554_SD_32_10016_1003110016100310.90550.0218300.4140050.7911987.6601566.060698
555_SD_32_10016_1001710016100170.95020.0023900.2119990.5604957.6601564.293481
556_SD_32_10016_1001410016100140.94070.0426960.2535080.6148717.6601564.710004
557_SD_32_10016_1001210016100120.94040.0369520.2549690.6165557.6739704.731423
558_SD_32_10016_1001510016100150.94230.0152900.2463210.6057727.6704664.646558
559_SD_32_10016_1000310016100030.92640.1170980.3175840.6902437.8580855.423985
560_SD_32_10016_1000710016100070.94670.0289420.2271650.5809567.7553304.505504
561_SD_32_10016_1003110016100310.90550.0219240.4140050.7911987.6601566.060698
562_SD_32_10016_1001710016100170.95020.0050800.2119990.5604957.6601564.293481
563_SD_32_10016_1001410016100140.94070.0394940.2535080.6148717.6601564.710004
564_SD_32_10016_1001210016100120.94040.0369520.2549690.6165557.6739704.731423
565_SD_32_10016_1001510016100150.94230.0266000.2463210.6057737.6704664.646558
566_SD_32_10016_1000310016100030.92640.1051740.3175840.6902437.8580855.423985
567_SD_33_10015_1000710015100070.95290.0413540.2001280.5445957.7553304.223515
568_SD_33_10015_1001610015100160.94230.0267730.2463210.6057727.6704664.646557
569_SD_33_10015_1001410015100140.93380.0107910.2839320.6519437.6704665.000706
570_SD_33_10015_1001210015100120.93230.0503690.2906360.6599987.6739705.064804
571_SD_33_10015_1000710015100070.95290.0655630.2001280.5445957.7553304.223515
572_SD_33_10015_1001610015100160.94230.0023080.2463210.6057727.6704664.646558
573_SD_33_10015_1001410015100140.93380.0105260.2839320.6519437.6704665.000706
574_SD_33_10015_1001210015100120.93230.0256580.2906360.6599987.6739705.064804
575_SD_33_10015_1000710015100070.95290.0680120.2001280.5445957.7553304.223515
576_SD_33_10015_1001610015100160.94230.0145980.2463210.6057727.6704664.646558
577_SD_33_10015_1001410015100140.93380.0246930.2839320.6519437.6704665.000706
578_SD_33_10015_1001210015100120.93230.0285020.2906360.6599987.6739705.064804
579_SD_34_10014_1001710014100170.93510.0136290.2782260.6452047.6214094.917366
580_SD_34_10014_1001210014100120.93450.0159820.2808640.6483917.6739704.975736
581_SD_34_10014_1001510014100150.93380.0567330.2839320.6519437.6704665.000706
582_SD_34_10014_1001610014100160.94070.0104960.2535080.6148707.6601564.710004
583_SD_34_10014_1001710014100170.93510.0274530.2782260.6452047.6214094.917366
584_SD_34_10014_1001210014100120.93450.0195190.2808640.6483917.6739704.975736
585_SD_34_10014_1001510014100150.93380.0758650.2839320.6519437.6704665.000706
586_SD_34_10014_1001610014100160.94070.0394940.2535080.6148707.6601564.710004
587_SD_34_10014_1001710014100170.93510.0205080.2782260.6452047.6214094.917366
588_SD_34_10014_1001210014100120.93450.0412650.2808640.6483917.6739704.975736
589_SD_34_10014_1001510014100150.93380.0814920.2839320.6519437.6704665.000706
590_SD_34_10014_1001610014100160.94070.0174340.2535080.6148707.6601564.710004
591_SD_35_10012_1001510012100150.93230.0000680.2906360.6599987.6739705.064804
592_SD_35_10012_1001610012100160.94040.0486930.2549690.6165557.6739704.731423
593_SD_35_10012_1001410012100140.93450.0605880.2808640.6483917.6739704.975736
594_SD_35_10012_1001710012100170.94310.0334000.2431340.6017027.6739704.617440
595_SD_35_10012_1001310012100130.90960.0367930.3928780.7721457.6739705.925417
596_SD_35_10012_1001510012100150.93230.0069050.2906360.6599987.6739705.064804
597_SD_35_10012_1001610012100160.94040.0232440.2549690.6165557.6739704.731423
598_SD_35_10012_1001410012100140.93450.0570510.2808640.6483917.6739704.975736
599_SD_35_10012_1001710012100170.94310.0287340.2431340.6017027.6739704.617440
600_SD_35_10012_1001310012100130.90960.0244980.3928780.7721457.6739705.925417
601_SD_35_10012_1001510012100150.93230.0106970.2906360.6599987.6739705.064804
602_SD_35_10012_1001610012100160.94040.0327800.2549690.6165557.6739704.731423
603_SD_35_10012_1001410012100140.93450.0711330.2808640.6483917.6739704.975736
604_SD_35_10012_1001710012100170.94310.0371560.2431340.6017027.6739704.617440
605_SD_35_10012_1001310012100130.90960.0437540.3928780.7721457.6739705.925417
606_SD_36_10033_1001910033100190.92090.0814730.3420280.7178447.5776765.439588
607_SD_36_10033_1002510033100250.90680.1702760.4058860.7849587.5782345.948599
608_SD_36_10033_1003910033100390.93090.0538290.2971300.6670937.5886285.062320
609_SD_36_10033_1003210033100320.95340.0938990.1978170.5417427.5670064.099367
610_SD_36_10033_1003110033100310.92730.0382400.3129730.6854047.5654535.185389
611_SD_36_10033_1001910033100190.92090.0470640.3420280.7178447.5776765.439589
612_SD_36_10033_1002510033100250.90680.1548980.4058860.7849587.5782345.948599
613_SD_36_10033_1003910033100390.93090.0278470.2971300.6670937.5886285.062320
614_SD_36_10033_1003210033100320.95340.1035920.1978170.5417427.5670064.099367
615_SD_36_10033_1003110033100310.92730.0106870.3129730.6854047.5654535.185390
616_SD_36_10033_1001910033100190.92090.0687380.3420280.7178447.5776765.439588
617_SD_36_10033_1002510033100250.90680.1499590.4058860.7849587.5782345.948599
618_SD_36_10033_1003910033100390.93090.0738680.2971300.6670937.5886285.062319
619_SD_36_10033_1003210033100320.95340.1132380.1978170.5417427.5670064.099366
620_SD_36_10033_1003110033100310.92730.0144670.3129730.6854047.5654535.185390
621_SD_37_10032_1003310032100330.95340.0575980.1978170.5417427.5670064.099367
622_SD_37_10032_1003910032100390.93420.0531660.2822160.6497547.5886284.930740
623_SD_37_10032_1003810032100380.92360.1227750.3298190.7040677.6137745.360607
624_SD_37_10032_1003110032100310.91830.0014710.3533520.7302287.5670065.525638
625_SD_37_10032_1003310032100330.95340.0559670.1978170.5417427.5670064.099367
626_SD_37_10032_1003910032100390.93420.0602730.2822160.6497547.5886284.930740
627_SD_37_10032_1003810032100380.92360.1434790.3298190.7040677.6137745.360607
628_SD_37_10032_1003110032100310.91830.0070260.3533520.7302287.5670065.525638
629_SD_37_10032_1003310032100330.95340.0404950.1978170.5417427.5670064.099367
630_SD_37_10032_1003910032100390.93420.0746830.2822160.6497547.5886284.930740
631_SD_37_10032_1003810032100380.92360.1311790.3298190.7040677.6137745.360607
632_SD_37_10032_1003110032100310.91830.0029410.3533520.7302287.5670065.525638
633_SD_38_10031_1001710031100170.92220.0574160.3362520.7115217.5772665.391386
634_SD_38_10031_1003310031100330.92730.0122860.3129730.6854047.5654535.185390
635_SD_38_10031_1003210031100320.91830.0989390.3533520.7302287.5670065.525637
636_SD_38_10031_1003010031100300.90440.0521980.4170070.7962627.6260036.072293
637_SD_38_10031_1001710031100170.92220.0320540.3362520.7115217.5772665.391387
638_SD_38_10031_1003310031100330.92730.0044350.3129730.6854047.5654535.185390
639_SD_38_10031_1003210031100320.91830.0772060.3533520.7302287.5670065.525637
640_SD_38_10031_1003010031100300.90440.0627140.4170070.7962627.6260036.072293
641_SD_38_10031_1001710031100170.92220.0405340.3362520.7115217.5772665.391387
642_SD_38_10031_1003310031100330.92730.0230460.3129730.6854047.5654535.185390
643_SD_38_10031_1003210031100320.91830.0727950.3533520.7302287.5670065.525638
644_SD_38_10031_1003010031100300.90440.0786790.4170070.7962627.6260036.072292
645_SD_39_10038_1004110038100410.90210.2315330.4275290.8068027.6221596.149575
646_SD_39_10038_1003710038100370.94510.0736760.2342030.5903167.6734934.529788
647_SD_39_10038_1003610038100360.92750.0118180.3123300.6846537.7114105.279643
648_SD_39_10038_1003210038100320.92360.0309420.3298190.7040677.6137745.360605
649_SD_39_10038_1003910038100390.93410.0441530.2825790.6503547.6137744.951651
650_SD_39_10038_1004110038100410.90210.2422050.4275290.8068027.6221596.149575
651_SD_39_10038_1003710038100370.94510.0939340.2342030.5903167.6734934.529788
652_SD_39_10038_1003610038100360.92750.0263180.3123300.6846537.7114105.279643
653_SD_39_10038_1003210038100320.92360.0226910.3298190.7040677.6137745.360605
654_SD_39_10038_1003910038100390.93410.0442850.2825790.6503547.6137744.951651
655_SD_39_10038_1004110038100410.90210.2635470.4275290.8068027.6221596.149575
656_SD_39_10038_1003710038100370.94510.0765850.2342030.5903167.6734934.529788
657_SD_39_10038_1003610038100360.92750.0237080.3123300.6846537.7114105.279644
658_SD_39_10038_1003210038100320.92360.0185650.3298190.7040677.6137745.360605
659_SD_39_10038_1003910038100390.93410.0266890.2825790.6503547.6137744.951651
660_SD_40_10039_1003210039100320.93420.0351370.2822160.6497547.5886284.930740
661_SD_40_10039_1003310039100330.93090.0329610.2971300.6670937.5886285.062320
662_SD_40_10039_1003710039100370.93450.0505660.2811920.6482577.6734934.974393
663_SD_40_10039_1003810039100380.93410.0570030.2825790.6503547.6137744.951652
664_SD_40_10039_1002910039100290.91510.0016980.3684660.7456607.6414025.697885
665_SD_40_10039_1003210039100320.93420.0173710.2822160.6497547.5886284.930740
666_SD_40_10039_1003310039100330.93090.0094670.2971300.6670937.5886285.062320
667_SD_40_10039_1003710039100370.93450.0715260.2811920.6482577.6734934.974393
668_SD_40_10039_1003810039100380.93410.0504790.2825790.6503547.6137744.951652
669_SD_40_10039_1002910039100290.91510.0073010.3684660.7456607.6414025.697885
670_SD_40_10039_1003210039100320.93420.0280970.2822160.6497547.5886284.930740
671_SD_40_10039_1003310039100330.93090.0058040.2971300.6670937.5886285.062320
672_SD_40_10039_1003710039100370.93450.0820060.2811920.6482577.6734934.974393
673_SD_40_10039_1003810039100380.93410.0682060.2825790.6503547.6137744.951652
674_SD_40_10039_1002910039100290.91510.0072160.3684660.7456607.6414025.697885
675_SD_41_10035_1003710035100370.95230.1288850.2030590.5482127.7371164.241581
676_SD_41_10035_1003610035100360.94670.0477040.2272710.5812937.7371164.497529
677_SD_41_10035_1003410035100340.94830.0447200.2204490.5718857.8921324.513394
678_SD_41_10035_1003010035100300.92310.0486010.3325920.7067777.7371165.468417
679_SD_41_10035_1002910035100290.92610.0130800.3187310.6915317.7371165.350459
680_SD_41_10035_1003710035100370.95230.1138600.2030590.5482127.7371164.241581
681_SD_41_10035_1003610035100360.94670.0561780.2272710.5812937.7371164.497529
682_SD_41_10035_1003410035100340.94830.0447200.2204490.5718857.8921324.513394
683_SD_41_10035_1003010035100300.92310.0402190.3325920.7067777.7371165.468417
684_SD_41_10035_1002910035100290.92610.0204700.3187310.6915317.7371165.350459
685_SD_41_10035_1003710035100370.95230.1138600.2030590.5482127.7371164.241581
686_SD_41_10035_1003610035100360.94670.0534600.2272710.5812937.7371164.497529
687_SD_41_10035_1003410035100340.94830.0419800.2204490.5718857.8921324.513394
688_SD_41_10035_1003010035100300.92310.0276840.3325920.7067777.7371165.468417
689_SD_41_10035_1002910035100290.92610.0244610.3187310.6915317.7371165.350459
690_SD_42_10036_1003810036100380.92750.0827230.3123300.6846547.7114105.279644
691_SD_42_10036_1003710036100370.94990.0879260.2130750.5624377.7114104.337179
692_SD_42_10036_1003410036100340.93880.0506740.2633440.6255577.8921324.936982
693_SD_42_10036_1003510036100350.94670.0454120.2272710.5812937.7371164.497529
694_SD_42_10036_1003810036100380.92750.1021530.3123300.6846547.7114105.279644
695_SD_42_10036_1003710036100370.94990.0710920.2130750.5624377.7114104.337179
696_SD_42_10036_1003410036100340.93880.0571610.2633440.6255587.8921324.936982
697_SD_42_10036_1003510036100350.94670.0426400.2272710.5812937.7371164.497529
698_SD_42_10036_1003810036100380.92750.1059950.3123300.6846547.7114105.279644
699_SD_42_10036_1003710036100370.94990.0633770.2130750.5624377.7114104.337179
700_SD_42_10036_1003410036100340.93880.0410650.2633440.6255577.8921324.936982
701_SD_42_10036_1003510036100350.94670.0398680.2272710.5812937.7371164.497529
702_SD_43_10028_1001110028100110.86470.3619270.6056030.9687787.7760237.533244
703_SD_43_10028_1003010028100300.92060.0277900.3437230.7192967.7739835.591792
704_SD_43_10028_1002910028100290.92240.0626230.3356200.7105487.7739835.523789
705_SD_43_10028_1003410028100340.88300.0451620.5172570.8915817.8921327.036475
706_SD_43_10028_1001110028100110.86470.3305380.6056030.9687787.7760237.533244
707_SD_43_10028_1003010028100300.92060.0234230.3437230.7192967.7739835.591792
708_SD_43_10028_1002910028100290.92240.0751170.3356200.7105487.7739835.523789
709_SD_43_10028_1003410028100340.88300.0120510.5172570.8915817.8921327.036474
710_SD_43_10028_1001110028100110.86470.2601820.6056030.9687787.7760237.533243
711_SD_43_10028_1003010028100300.92060.0019060.3437230.7192967.7739835.591791
712_SD_43_10028_1002910028100290.92240.0625460.3356200.7105487.7739835.523789
713_SD_43_10028_1003410028100340.88300.0451620.5172570.8915817.8921327.036475
714_SD_44_10034_1002810034100280.88300.1977300.5172570.8915817.8921327.036472
715_SD_44_10034_1003510034100350.94830.0116840.2204490.5718857.8921324.513395
716_SD_44_10034_1003710034100370.93940.1224730.2613680.6220097.8921324.908974
717_SD_44_10034_1003610034100360.93880.0634640.2633440.6255587.8921324.936982
718_SD_44_10034_1004510034100450.84600.1655500.6953101.0446738.1088748.471121
719_SD_44_10034_1002810034100280.88300.2160990.5172570.8915817.8921327.036472
720_SD_44_10034_1003510034100350.94830.0008270.2204490.5718857.8921324.513395
721_SD_44_10034_1003710034100370.93940.1321690.2613680.6220097.8921324.908974
722_SD_44_10034_1003610034100360.93880.0406980.2633440.6255577.8921324.936982
723_SD_44_10034_1004510034100450.84600.1292060.6953101.0446738.1088748.471120
724_SD_44_10034_1002810034100280.88300.1466010.5172570.8915817.8921327.036473
725_SD_44_10034_1003510034100350.94830.0018610.2204490.5718857.8921324.513395
726_SD_44_10034_1003710034100370.93940.1418040.2613680.6220097.8921324.908974
727_SD_44_10034_1003610034100360.93880.0505510.2633440.6255577.8921324.936982
728_SD_44_10034_1004510034100450.84600.1473780.6953101.0446738.1088748.471120
729_SD_45_10030_1002810030100280.92060.0132600.3437230.7192967.7739835.591792
730_SD_45_10030_1003110030100310.90440.0924450.4170070.7962627.6260036.072292
731_SD_45_10030_1002910030100290.92630.0128970.3173520.6907657.6414025.278415
732_SD_45_10030_1003510030100350.92310.0168410.3325920.7067777.7371165.468417
733_SD_45_10030_1002810030100280.92060.0219140.3437230.7192967.7739835.591792
734_SD_45_10030_1003110030100310.90440.0818340.4170070.7962627.6260036.072292
735_SD_45_10030_1002910030100290.92630.0098020.3173520.6907657.6414025.278415
736_SD_45_10030_1003510030100350.92310.0126880.3325920.7067777.7371165.468417
737_SD_45_10030_1002810030100280.92060.0132600.3437230.7192967.7739835.591792
738_SD_45_10030_1003110030100310.90440.0660600.4170070.7962627.6260036.072293
739_SD_45_10030_1002910030100290.92630.0046430.3173520.6907657.6414025.278415
740_SD_45_10030_1003510030100350.92310.0209940.3325920.7067777.7371165.468417
741_SD_46_10029_1003010029100300.92630.0067070.3173520.6907657.6414025.278415
742_SD_46_10029_1003910029100390.91510.0497510.3684660.7456607.6414025.697884
743_SD_46_10029_1003510029100350.92610.0096810.3187310.6915317.7371165.350459
744_SD_46_10029_1002810029100280.92240.0206420.3356200.7105487.7739835.523788
745_SD_46_10029_1003010029100300.92630.0250580.3173520.6907657.6414025.278415
746_SD_46_10029_1003910029100390.91510.0219040.3684660.7456607.6414025.697885
747_SD_46_10029_1003510029100350.92610.0216530.3187310.6915317.7371165.350459
748_SD_46_10029_1002810029100280.92240.0164510.3356200.7105487.7739835.523788
749_SD_46_10029_1003010029100300.92630.0067800.3173520.6907657.6414025.278415
750_SD_46_10029_1003910029100390.91510.0442330.3684660.7456607.6414025.697884
751_SD_46_10029_1003510029100350.92610.0255690.3187310.6915317.7371165.350459
752_SD_46_10029_1002810029100280.92240.0248320.3356200.7105487.7739835.523788
753_SD_47_10053_1004410053100440.92800.1632240.3105360.6823297.9302615.411050
754_SD_47_10053_1005210053100520.94730.0140710.2245550.5774247.9302614.579123
755_SD_47_10053_1005910053100590.91650.0336510.3624740.7388678.2892666.124662
756_SD_47_10053_1004910053100490.92740.1020760.3129790.6851417.9302615.433349
757_SD_47_10053_1005010053100500.94270.0732290.2446710.6039327.9302614.789340
758_SD_47_10053_1005110053100510.93660.0128070.2717320.6373797.9302615.054581
759_SD_47_10053_1004410053100440.92800.1527120.3105360.6823297.9302615.411050
760_SD_47_10053_1005210053100520.94730.0278780.2245550.5774247.9302614.579123
761_SD_47_10053_1005910053100590.91650.0050100.3624740.7388678.2892666.124663
762_SD_47_10053_1004910053100490.92740.0801500.3129790.6851417.9302615.433348
763_SD_47_10053_1005010053100500.94270.0798760.2446710.6039327.9302614.789340
764_SD_47_10053_1005110053100510.93660.0263110.2717320.6373797.9302615.054581
765_SD_47_10053_1004410053100440.92800.1430640.3105360.6823297.9302615.411050
766_SD_47_10053_1005210053100520.94730.0113300.2245550.5774247.9302614.579123
767_SD_47_10053_1005910053100590.91650.0241320.3624740.7388678.2892666.124662
768_SD_47_10053_1004910053100490.92740.0860310.3129790.6851417.9302615.433348
769_SD_47_10053_1005010053100500.94270.0704790.2446710.6039327.9302614.789340
770_SD_47_10053_1005110053100510.93660.0083690.2717320.6373797.9302615.054581
771_SD_48_10049_1005010049100500.93240.0728050.2902070.6591417.9159305.217710
772_SD_48_10049_1005310049100530.92740.0923470.3129790.6851417.9302615.433349
773_SD_48_10049_1004710049100470.93460.1008470.2810240.6479447.9496045.150899
774_SD_48_10049_1004610049100460.92990.1111790.3025520.6726757.9633355.356738
775_SD_48_10049_1004810049100480.94280.0811100.2442440.6032537.9159304.775307
776_SD_48_10049_1005010049100500.93240.0953840.2902070.6591417.9159305.217710
777_SD_48_10049_1005310049100530.92740.0755770.3129790.6851417.9302615.433348
778_SD_48_10049_1004710049100470.93460.1062100.2810240.6479447.9496045.150899
779_SD_48_10049_1004610049100460.92990.1101270.3025520.6726757.9633355.356738
780_SD_48_10049_1004810049100480.94280.0927210.2442440.6032537.9159304.775307
781_SD_48_10049_1005010049100500.93240.1003860.2902070.6591417.9159305.217710
782_SD_48_10049_1005310049100530.92740.0924200.3129790.6851417.9302615.433349
783_SD_48_10049_1004710049100470.93460.1020240.2810240.6479447.9496045.150899
784_SD_48_10049_1004610049100460.92990.0867840.3025520.6726757.9633355.356737
785_SD_48_10049_1004810049100480.94280.0874590.2442440.6032537.9159304.775307
786_SD_49_10050_1005110050100510.92840.0898580.3080230.6798837.8854105.361154
787_SD_49_10050_1005210050100520.93720.0990980.2691610.6339557.8854104.998995
788_SD_49_10050_1005310050100530.94270.0079070.2446710.6039327.9302614.789341
789_SD_49_10050_1004910050100490.93240.0082470.2902070.6591417.9159305.217711
790_SD_49_10050_1004810050100480.92840.0539860.3085960.6800007.9083375.377667
791_SD_49_10050_1005110050100510.92840.0612180.3080230.6798837.8854105.361154
792_SD_49_10050_1005210050100520.93720.0732880.2691610.6339557.8854104.998995
793_SD_49_10050_1005310050100530.94270.0093970.2446710.6039327.9302614.789341
794_SD_49_10050_1004910050100490.93240.0161560.2902070.6591417.9159305.217711
795_SD_49_10050_1004810050100480.92840.0587120.3085960.6800007.9083375.377667
796_SD_49_10050_1005110050100510.92840.0837000.3080230.6798837.8854105.361154
797_SD_49_10050_1005210050100520.93720.0648100.2691610.6339557.8854104.998995
798_SD_49_10050_1005310050100530.94270.0161010.2446710.6039327.9302614.789341
799_SD_49_10050_1004910050100490.93240.0035150.2902070.6591417.9159305.217711
800_SD_49_10050_1004810050100480.92840.0589270.3085960.6800007.9083375.377667
801_SD_50_10048_1005010048100500.92840.1065410.3085960.6800007.9083375.377667
802_SD_50_10048_1004910048100490.94280.1015300.2442440.6032537.9159304.775307
803_SD_50_10048_1005710048100570.91040.1432700.3902980.7683328.2378896.329435
804_SD_50_10048_1004710048100470.95640.1059040.1848200.5226087.9496044.154528
805_SD_50_10048_1004610048100460.95880.1302330.1746470.5078457.9633354.044139
806_SD_50_10048_1005010048100500.92840.1211470.3085960.6800007.9083375.377667
807_SD_50_10048_1004910048100490.94280.0945520.2442440.6032537.9159304.775307
808_SD_50_10048_1005710048100570.91040.1606530.3902980.7683328.2378896.329435
809_SD_50_10048_1004710048100470.95640.1104390.1848200.5226087.9496044.154528
810_SD_50_10048_1004610048100460.95880.1438290.1746470.5078457.9633354.044139
811_SD_50_10048_1005010048100500.92840.1008840.3085960.6800007.9083375.377667
812_SD_50_10048_1004910048100490.94280.0886030.2442440.6032537.9159304.775307
813_SD_50_10048_1005710048100570.91040.1647740.3902980.7683328.2378896.329435
814_SD_50_10048_1004710048100470.95640.1154090.1848200.5226087.9496044.154528
815_SD_50_10048_1004610048100460.95880.1419750.1746470.5078457.9633354.044139
816_SD_51_10047_1004810047100480.95640.1369480.1848200.5226087.9496044.154528
817_SD_51_10047_1004910047100490.93460.0955490.2810240.6479447.9496045.150899
818_SD_51_10047_1004510047100450.92420.0037900.3276830.7011928.1088745.685874
819_SD_51_10047_1004610047100460.94940.0079440.2152520.5651477.9633354.500452
820_SD_51_10047_1004810047100480.95640.1331110.1848200.5226087.9496044.154528
821_SD_51_10047_1004910047100490.93460.0934570.2810240.6479447.9496045.150899
822_SD_51_10047_1004510047100450.92420.0174340.3276830.7011928.1088745.685874
823_SD_51_10047_1004610047100460.94940.0121950.2152520.5651477.9633354.500452
824_SD_51_10047_1004810047100480.95640.1429640.1848200.5226087.9496044.154528
825_SD_51_10047_1004910047100490.93460.1179160.2810240.6479447.9496045.150899
826_SD_51_10047_1004510047100450.92420.0030320.3276830.7011928.1088745.685874
827_SD_51_10047_1004610047100460.94940.0084500.2152520.5651477.9633354.500452
828_SD_52_10046_1004810046100480.95880.1381020.1746470.5078457.9633354.044139
829_SD_52_10046_1004710046100470.94940.0202400.2152520.5651477.9633354.500452
830_SD_52_10046_1005510046100550.90950.0681470.3946710.7723348.3221816.427505
831_SD_52_10046_1004510046100450.92510.0547520.3231930.6967148.1088745.649567
832_SD_52_10046_1004810046100480.95880.1415220.1746470.5078457.9633354.044139
833_SD_52_10046_1004710046100470.94940.0157870.2152520.5651477.9633354.500452
834_SD_52_10046_1005510046100550.90950.0823550.3946710.7723348.3221816.427506
835_SD_52_10046_1004510046100450.92510.0409700.3231930.6967148.1088745.649568
836_SD_52_10046_1004810046100480.95880.1456420.1746470.5078457.9633354.044139
837_SD_52_10046_1004710046100470.94940.0072860.2152520.5651477.9633354.500452
838_SD_52_10046_1005510046100550.90950.0495940.3946710.7723348.3221816.427505
839_SD_52_10046_1004510046100450.92510.0329560.3231930.6967148.1088745.649568
840_SD_53_10045_1003410045100340.84600.3138520.6953101.0446728.1088748.471117
841_SD_53_10045_1004610045100460.92510.0791690.3231930.6967148.1088745.649567
842_SD_53_10045_1004710045100470.92420.0380520.3276830.7011928.1088745.685874
843_SD_53_10045_1005410045100540.87630.0603660.5495990.9202538.5511817.869253
844_SD_53_10045_1003410045100340.84600.2808960.6953101.0446728.1088748.471117
845_SD_53_10045_1004610045100460.92510.0961720.3231930.6967148.1088745.649567
846_SD_53_10045_1004710045100470.92420.0329730.3276830.7011928.1088745.685874
847_SD_53_10045_1005410045100540.87630.0888170.5495990.9202538.5511817.869254
848_SD_53_10045_1003410045100340.84600.3354120.6953101.0446728.1088748.471117
849_SD_53_10045_1004610045100460.92510.0823900.3231930.6967148.1088745.649567
850_SD_53_10045_1004710045100470.92420.0198600.3276830.7011928.1088745.685874
851_SD_53_10045_1005410045100540.87630.1084850.5495990.9202548.5511817.869254
852_SD_54_10059_1005310059100530.91650.0349030.3624740.7388678.2892666.124662
853_SD_54_10059_1005210059100520.91170.0106840.3858710.7622738.2892666.318687
854_SD_54_10059_1005810059100580.91550.0299130.3663920.7438758.3375206.202069
855_SD_54_10059_1005610059100560.91310.0506630.3805350.7555628.3789576.330823
856_SD_54_10059_1005710059100570.92890.0549600.3072230.6777668.2892665.618181
857_SD_54_10059_1005310059100530.91650.0636270.3624740.7388678.2892666.124662
858_SD_54_10059_1005210059100520.91170.0124500.3858710.7622738.2892666.318686
859_SD_54_10059_1005810059100580.91550.0204490.3663920.7438758.3375206.202069
860_SD_54_10059_1005610059100560.91310.0216380.3805350.7555628.3789576.330823
861_SD_54_10059_1005710059100570.92890.0361900.3072230.6777668.2892665.618181
862_SD_54_10059_1005310059100530.91650.0501000.3624740.7388678.2892666.124662
863_SD_54_10059_1005210059100520.91170.0486530.3858710.7622738.2892666.318685
864_SD_54_10059_1005810059100580.91550.0353210.3663920.7438758.3375206.202069
865_SD_54_10059_1005610059100560.91310.0420600.3805350.7555628.3789576.330823
866_SD_54_10059_1005710059100570.92890.0344840.3072230.6777668.2892665.618181
867_SD_55_10058_1005910058100590.91550.0512070.3663920.7438758.3375206.202068
868_SD_55_10058_1005610058100560.93570.0536910.2766190.6421708.3789575.380711
869_SD_55_10058_1005510058100550.93600.0491520.2758400.6403168.3375205.338645
870_SD_55_10058_1005710058100570.93580.0611830.2754180.6416298.3375205.349596
871_SD_55_10058_1005910058100590.91550.0410670.3663920.7438758.3375206.202069
872_SD_55_10058_1005610058100560.93570.0539480.2766190.6421708.3789575.380711
873_SD_55_10058_1005510058100550.93600.0556160.2758400.6403168.3375205.338645
874_SD_55_10058_1005710058100570.93580.0687580.2754180.6416298.3375205.349596
875_SD_55_10058_1005910058100590.91550.0510380.3663920.7438758.3375206.202068
876_SD_55_10058_1005610058100560.93570.0336930.2766190.6421708.3789575.380712
877_SD_55_10058_1005510058100550.93600.0282880.2758400.6403168.3375205.338645
878_SD_55_10058_1005710058100570.93580.0879540.2754180.6416298.3375205.349596
879_SD_56_10057_1005910057100590.92890.0076080.3072230.6777668.2892665.618182
880_SD_56_10057_1005810057100580.93580.0294040.2754180.6416298.3375205.349596
881_SD_56_10057_1005610057100560.93840.0646180.2637100.6273368.3789575.256424
882_SD_56_10057_1005510057100550.94070.0257960.2537450.6145968.3221815.114781
883_SD_56_10057_1004810057100480.91040.1017860.3902980.7683328.2378896.329435
884_SD_56_10057_1005910057100590.92890.0282980.3072230.6777668.2892665.618182
885_SD_56_10057_1005810057100580.93580.0062270.2754180.6416298.3375205.349597
886_SD_56_10057_1005610057100560.93840.0514360.2637100.6273368.3789575.256424
887_SD_56_10057_1005510057100550.94070.0242540.2537450.6145968.3221815.114781
888_SD_56_10057_1004810057100480.91040.0829700.3902980.7683328.2378896.329436
889_SD_56_10057_1005910057100590.92890.0203350.3072230.6777668.2892665.618181
890_SD_56_10057_1005810057100580.93580.0005140.2754180.6416298.3375205.349597
891_SD_56_10057_1005610057100560.93840.0760760.2637100.6273368.3789575.256424
892_SD_56_10057_1005510057100550.94070.0251430.2537450.6145968.3221815.114781
893_SD_56_10057_1004810057100480.91040.0839550.3902980.7683328.2378896.329436
894_SD_57_10055_1005710055100570.94070.0078870.2537450.6145968.3221815.114781
895_SD_57_10055_1005810055100580.93600.0631680.2758400.6403168.3375205.338645
896_SD_57_10055_1005610055100560.95690.0715030.1826150.5199028.3789574.356240
897_SD_57_10055_1005410055100540.94110.0678530.2523860.6128888.5511815.240920
898_SD_57_10055_1004610055100460.90950.0204530.3946710.7723348.3221816.427505
899_SD_57_10055_1005710055100570.94070.0054560.2537450.6145968.3221815.114781
900_SD_57_10055_1005810055100580.93600.0663040.2758400.6403168.3375205.338645
901_SD_57_10055_1005610055100560.95690.0779680.1826150.5199028.3789574.356240
902_SD_57_10055_1005410055100540.94110.0587230.2523860.6128888.5511815.240920
903_SD_57_10055_1004610055100460.90950.0378290.3946710.7723348.3221816.427505
904_SD_57_10055_1005710055100570.94070.0096660.2537450.6145968.3221815.114781
905_SD_57_10055_1005810055100580.93600.0625280.2758400.6403168.3375205.338645
906_SD_57_10055_1005610055100560.95690.0726240.1826150.5199028.3789574.356240
907_SD_57_10055_1005410055100540.94110.0562490.2523860.6128888.5511815.240920
908_SD_57_10055_1004610055100460.90950.0358380.3946710.7723348.3221816.427505
909_SD_58_10056_1005810056100580.93570.0705370.2766190.6421708.3789575.380713
910_SD_58_10056_1005710056100570.93840.0266110.2637100.6273368.3789575.256424
911_SD_58_10056_1005410056100540.92880.0662160.3075840.6778278.5511815.796224
912_SD_58_10056_1005510056100550.95690.0175420.1826150.5199038.3789574.356241
913_SD_58_10056_1005810056100580.93570.0484820.2766190.6421708.3789575.380713
914_SD_58_10056_1005710056100570.93840.0061600.2637100.6273368.3789575.256424
915_SD_58_10056_1005410056100540.92880.0624420.3075840.6778278.5511815.796224
916_SD_58_10056_1005510056100550.95690.0152140.1826150.5199038.3789574.356241
917_SD_58_10056_1005810056100580.93570.0805040.2766190.6421708.3789575.380714
918_SD_58_10056_1005710056100570.93840.0129980.2637100.6273368.3789575.256424
919_SD_58_10056_1005410056100540.92880.0609470.3075840.6778278.5511815.796224
920_SD_58_10056_1005510056100550.95690.0220240.1826150.5199038.3789574.356241
921_SD_59_10054_1004510054100450.87630.0311720.5495990.9202538.5511817.869252
922_SD_59_10054_1005510054100550.94110.0610200.2523860.6128888.5511815.240920
923_SD_59_10054_1005610054100560.92880.0046280.3075840.6778278.5511815.796223
924_SD_59_10054_1004510054100450.87630.0258530.5495990.9202538.5511817.869252
925_SD_59_10054_1005510054100550.94110.0503590.2523860.6128888.5511815.240920
926_SD_59_10054_1005610054100560.92880.0027060.3075840.6778278.5511815.796223
927_SD_59_10054_1004510054100450.87630.0137310.5495990.9202538.5511817.869252
928_SD_59_10054_1005510054100550.94110.0509480.2523860.6128888.5511815.240920
929_SD_59_10054_1005610054100560.92880.0049840.3075840.6778278.5511815.796223
930_SD_60_10047_1004810047100480.95640.1100460.1848200.5226087.9496044.154528
931_SD_60_10047_812100478120.87120.1298300.5720010.9415758.0122387.544121
932_SD_60_10047_816100478160.81951.4120520.8265101.1493567.9496049.136928
933_SD_60_10047_FH310047FH30.87350.5385100.5611540.9317687.9496047.407188
934_SD_60_10047_1004810047100480.95640.0872000.1848200.5226087.9496044.154528
935_SD_60_10047_812100478120.87120.1199130.5720010.9415758.0122387.544121
936_SD_60_10047_816100478160.81951.4228810.8265101.1493567.9496049.136928
937_SD_60_10047_FH310047FH30.87350.5171320.5611540.9317687.9496047.407188
938_SD_60_10047_1004810047100480.95640.0926060.1848200.5226087.9496044.154528
939_SD_60_10047_812100478120.87120.1463170.5720010.9415758.0122387.544121
940_SD_60_10047_816100478160.81951.4411120.8265101.1493567.9496049.136928
941_SD_60_10047_FH310047FH30.87350.4971450.5611540.9317687.9496047.407189
942_SD_61_10046_1004810046100480.95880.0051500.1746470.5078457.9633354.044137
943_SD_61_10046_FH310046FH30.87411.0897900.5588700.9294057.9633357.401167
944_SD_61_10046_812100468120.87130.0133850.5712990.9410738.0122387.540103
945_SD_61_10046_1004810046100480.95880.0132660.1746470.5078457.9633354.044137
946_SD_61_10046_FH310046FH30.87411.0919310.5588700.9294057.9633357.401167
947_SD_61_10046_812100468120.87130.0119690.5712990.9410738.0122387.540103
948_SD_61_10046_1004810046100480.95880.0031720.1746470.5078457.9633354.044137
949_SD_61_10046_FH310046FH30.87411.0973440.5588700.9294057.9633357.401167
950_SD_61_10046_812100468120.87130.0021880.5712990.9410738.0122387.540103
951_SD_62_10048_1004610048100460.95880.0072510.1746470.5078457.9633354.044137
952_SD_62_10048_812100488120.87570.0385330.5515190.9226388.0122387.392395
953_SD_62_10048_816100488160.80631.7299350.8939251.2000797.9302549.516929
954_SD_62_10048_FH310048FH30.85002.2506000.6741001.0287677.9388438.167220
955_SD_62_10048_1004610048100460.95880.0183340.1746470.5078457.9633354.044137
956_SD_62_10048_812100488120.87570.0307020.5515190.9226388.0122387.392395
957_SD_62_10048_816100488160.80631.7192810.8939251.2000797.9302549.516929
958_SD_62_10048_FH310048FH30.85002.2170000.6741001.0287677.9388438.167220
959_SD_62_10048_1004610048100460.95880.0307350.1746470.5078457.9633354.044137
960_SD_62_10048_812100488120.87570.0017400.5515190.9226388.0122387.392394
961_SD_62_10048_816100488160.80631.7628640.8939251.2000797.9302549.516928
962_SD_62_10048_FH310048FH30.85002.1897000.6741001.0287677.9388438.167220
963_SD_63_10056_1005510056100550.95690.0040510.1826150.5199038.3789574.356241
964_SD_63_10056_666100566660.86860.2931530.5855180.9525008.4810018.078151
965_SD_63_10056_1005510056100550.95690.0112490.1826150.5199038.3789574.356241
966_SD_63_10056_666100566660.86860.2797510.5855180.9525008.4810018.078151
967_SD_63_10056_1005510056100550.95690.0038360.1826150.5199038.3789574.356241
968_SD_63_10056_666100566660.86860.2944670.5855180.9525008.4810018.078151
969_SD_64_10055_1005610055100560.95690.0034050.1826150.5199038.3789574.356241
970_SD_64_10055_666100556660.87220.1419860.5675600.9371688.4810017.948121
971_SD_64_10055_1005610055100560.95690.0011640.1826150.5199038.3789574.356241
972_SD_64_10055_666100556660.87220.1378960.5675600.9371688.4810017.948121
973_SD_64_10055_1005610055100560.95690.0000860.1826150.5199038.3789574.356241
974_SD_64_10055_666100556660.87220.1565550.5675600.9371688.4810017.948121
975_SD_65_10054_1005510054100550.94110.0673230.2523860.6128888.5511815.240920
976_SD_65_10054_666100546660.84930.5209700.6779991.0316578.5511818.821884
977_SD_65_10054_1005510054100550.94110.0444690.2523860.6128888.5511815.240920
978_SD_65_10054_666100546660.84930.5010770.6779991.0316578.5511818.821884
979_SD_65_10054_1005510054100550.94110.0516550.2523860.6128888.5511815.240920
980_SD_65_10054_666100546660.84930.5386020.6779991.0316578.5511818.821884
981_SD_66_10035_1003710035100370.95230.1215400.2030590.5482127.7371164.241581
982_SD_66_10035_FH1110035FH110.83700.0575390.7383901.0806157.8503208.483178
983_SD_66_10035_FH1410035FH140.84950.1679580.6767981.0310277.8442788.087662
984_SD_66_10035_1003710035100370.95230.1182480.2030590.5482127.7371164.241581
985_SD_66_10035_FH1110035FH110.83700.0650370.7383901.0806157.8503208.483178
986_SD_66_10035_FH1410035FH140.84950.1313860.6767981.0310277.8442788.087662
987_SD_66_10035_1003710035100370.95230.1255460.2030590.5482127.7371164.241581
988_SD_66_10035_FH1110035FH110.83700.0839450.7383901.0806157.8503208.483178
989_SD_66_10035_FH1410035FH140.84950.0960190.6767981.0310277.8442788.087662
990_SD_67_10036_1003710036100370.94990.0000000.2130750.5624377.7114104.337179
991_SD_67_10036_FH1110036FH110.86990.4349240.5790750.9471567.8503207.435479
992_SD_67_10036_FH1410036FH140.86740.1381690.5909980.9573667.8442787.509842
993_SD_67_10036_1003710036100370.94990.0053610.2130750.5624377.7114104.337179
994_SD_67_10036_FH1110036FH110.86990.4358350.5790750.9471567.8503207.435479
995_SD_67_10036_FH1410036FH140.86740.0501230.5909980.9573657.8442787.509841
996_SD_67_10036_1003710036100370.94990.0111220.2130750.5624377.7114104.337179
997_SD_67_10036_FH1110036FH110.86990.4609440.5790750.9471567.8503207.435478
998_SD_67_10036_FH1410036FH140.86740.0815490.5909980.9573667.8442787.509842
999_SD_68_10034_1003510034100350.94830.0796180.2204490.5718857.8921324.513394
1000_SD_68_10034_FH1410034FH140.86400.2650640.6071040.9717797.8921327.669408
1001_SD_68_10034_1003510034100350.94830.0946110.2204490.5718857.8921324.513394
1002_SD_68_10034_FH1410034FH140.86400.2910400.6071040.9717797.8921327.669407
1003_SD_68_10034_1003510034100350.94830.0727940.2204490.5718857.8921324.513394
1004_SD_68_10034_FH1410034FH140.86400.2705040.6071040.9717797.8921327.669408
1005_SD_69_10037_1004010037100400.94220.0469910.2468640.6064857.6740064.654172
1006_SD_69_10037_FH410037FH40.75610.5004831.1636471.3908197.85586010.926076
1007_SD_69_10037_FH1110037FH110.87320.3610000.5642600.9331377.8503207.325426
1008_SD_69_10037_1004010037100400.94220.0476270.2468640.6064857.6740064.654172
1009_SD_69_10037_FH410037FH40.75610.5170681.1636471.3908197.85586010.926076
1010_SD_69_10037_FH1110037FH110.87320.4008150.5642600.9331377.8503207.325426
1011_SD_69_10037_1004010037100400.94220.0246230.2468640.6064857.6740064.654172
1012_SD_69_10037_FH410037FH40.75610.5353611.1636471.3908197.85586010.926076
1013_SD_69_10037_FH1110037FH110.87320.3826820.5642600.9331377.8503207.325426
1014_SD_70_10041_1004010041100400.94080.0535760.2530800.6140417.6740064.712153
1015_SD_70_10041_FH410041FH40.79710.0734500.9442971.2356617.8558609.707181
1016_SD_70_10041_1004010041100400.94080.0561220.2530800.6140417.6740064.712153
1017_SD_70_10041_FH410041FH40.79710.0115650.9442971.2356617.8558609.707182
1018_SD_70_10041_1004010041100400.94080.0611540.2530800.6140417.6740064.712153
1019_SD_70_10041_FH410041FH40.79710.0387540.9442971.2356617.8558609.707181
1020_SD_71_10007_1001510007100150.95290.0261880.2001280.5445957.7553304.223515
1021_SD_71_10007_FH1310007FH130.85171.2311870.6658671.0218347.8193647.990090
1022_SD_71_10007_1001510007100150.95290.0382450.2001280.5445957.7553304.223515
1023_SD_71_10007_FH1310007FH130.85171.2372670.6658671.0218347.8193647.990090
1024_SD_71_10007_1001510007100150.95290.0274120.2001280.5445957.7553304.223515
1025_SD_71_10007_FH1310007FH130.85171.2903580.6658671.0218347.8193647.990090
1026_SD_72_10015_1000710015100070.95290.0060290.2001280.5445957.7553304.223515
1027_SD_72_10015_FH1310015FH130.85090.6371040.6706521.0251497.8193648.016017
1028_SD_72_10015_1000710015100070.95290.0110210.2001280.5445957.7553304.223515
1029_SD_72_10015_FH1310015FH130.85090.6251760.6706521.0251497.8193648.016017
1030_SD_72_10015_1000710015100070.95290.0102680.2001280.5445957.7553304.223515
1031_SD_72_10015_FH1310015FH130.85090.6165290.6706521.0251497.8193648.016017
1032_SD_73_10008_1000710008100070.93490.0054680.2798000.6463367.8079655.046566
1033_SD_73_10008_FH1310008FH130.84330.5935800.7090671.0555757.8193648.253925
1034_SD_73_10008_1000710008100070.93490.0004560.2798000.6463367.8079655.046566
1035_SD_73_10008_FH1310008FH130.84330.5779100.7090671.0555757.8193648.253925
1036_SD_73_10008_1000710008100070.93490.0057940.2798000.6463367.8079655.046566
1037_SD_73_10008_FH1310008FH130.84330.5840210.7090671.0555757.8193648.253925
1038_SD_74_10033_1003210033100320.95340.0603940.1978170.5417427.5670064.099367
1039_SD_74_10033_FH1510033FH150.81610.0719050.8435491.1626527.6532688.898086
1040_SD_74_10033_1003210033100320.95340.0582970.1978170.5417427.5670064.099367
1041_SD_74_10033_FH1510033FH150.81610.0391710.8435491.1626527.6532688.898086
1042_SD_74_10033_1003210033100320.95340.0526580.1978170.5417427.5670064.099367
1043_SD_74_10033_FH1510033FH150.81610.0514920.8435491.1626527.6532688.898086
1044_SD_75_10032_1003310032100330.95340.0958100.1978170.5417427.5670064.099367
1045_SD_75_10032_FH1510032FH150.82020.0149230.8231241.1466327.6532688.775479
1046_SD_75_10032_1003310032100330.95340.0884930.1978170.5417427.5670064.099367
1047_SD_75_10032_FH1510032FH150.82020.0598730.8231241.1466327.6532688.775480
1048_SD_75_10032_1003310032100330.95340.0938990.1978170.5417427.5670064.099367
1049_SD_75_10032_FH1510032FH150.82020.0424330.8231241.1466327.6532688.775480
54_R_1_10009_1000610009100060.83590.2467550.7456280.5745788.0081444.601305
55_R_1_10009_1001010009100100.90200.2830300.4288340.3878877.8625533.049782
56_R_1_10009_1001810009100180.78500.1742131.0203890.1363257.8625531.071860
57_R_1_10009_1000810009100080.88350.0256830.5136600.6345237.8625534.988970
58_R_1_10009_1000610009100060.83590.2467550.7456280.5745898.0081444.601389
59_R_1_10009_1001010009100100.90200.2858890.4288340.3878787.8625533.049710
60_R_1_10009_1001810009100180.78500.1866571.0203890.1363247.8625531.071856
61_R_1_10009_1000810009100080.88350.0077050.5136600.6345207.8625534.988947
62_R_1_10009_1000610009100060.83590.2467550.7456280.5745688.0081444.601221
63_R_1_10009_1001010009100100.90200.2858890.4288340.3878777.8625533.049700
64_R_1_10009_1001810009100180.78500.1866571.0203890.1363257.8625531.071861
65_R_1_10009_1000810009100080.88350.0077050.5136600.6345067.8625534.988835
66_R_2_10006_1000910006100090.92760.0449670.3124000.4312148.0081443.453223
67_R_2_10006_1000510006100050.93340.0557280.2862390.3236788.0081442.592064
68_R_2_10006_1000310006100030.82890.1518330.8097760.1612728.0081441.291490
69_R_2_10006_1000410006100040.91870.0843320.3564920.2957468.0081442.368376
70_R_2_10006_1001010006100100.90471.1478110.4210560.2556048.0081442.046913
71_R_2_10006_1001810006100180.85160.8981840.6836920.1810958.0081441.450233
72_R_2_10006_1000910006100090.92760.0520670.3124000.4312118.0081443.453199
73_R_2_10006_1000510006100050.93340.0278640.2862390.3236728.0081442.592010
74_R_2_10006_1000310006100030.82890.3036660.8097760.1612728.0081441.291487
75_R_2_10006_1000410006100040.91870.0881650.3564920.2957368.0081442.368300
76_R_2_10006_1001010006100100.90470.9401670.4210560.2556058.0081442.046920
77_R_2_10006_1001810006100180.85160.6434750.6836920.1810948.0081441.450225
78_R_2_10006_1000910006100090.92760.0568000.3124000.4312128.0081443.453210
79_R_2_10006_1000510006100050.93340.0379960.2862390.3236788.0081442.592057
80_R_2_10006_1000310006100030.82890.3036660.8097760.1612718.0081441.291482
81_R_2_10006_1000410006100040.91870.1456640.3564920.2957438.0081442.368355
82_R_2_10006_1001010006100100.90470.9401670.4210560.2556048.0081442.046913
83_R_2_10006_1001810006100180.85160.6702860.6836920.1810948.0081441.450225
84_R_3_10008_1000910008100090.85390.2029130.6570520.7316947.8625535.752979
85_R_3_10008_1000710008100070.72490.4502751.3675000.1824097.8079651.424242
86_R_3_10008_1000510008100050.88820.0418360.4930650.4744747.8997303.748219
87_R_3_10008_1000910008100090.85390.1191710.6570520.7316877.8625535.752924
88_R_3_10008_1000710008100070.72490.4169211.3675000.1824097.8079651.424246
89_R_3_10008_1000510008100050.88820.0418360.4930650.4744797.8997303.748255
90_R_3_10008_1000910008100090.85390.1191710.6570520.7317107.8625535.753106
91_R_3_10008_1000710008100070.72490.3001831.3675000.1824107.8079651.424251
92_R_3_10008_1000510008100050.88820.0687300.4930650.4744767.8997303.748234
93_R_4_10005_1000810005100080.90700.0969450.4051810.5756377.8997304.547378
94_R_4_10005_1000310005100030.92890.0086700.3121020.1664257.8997301.314710
95_R_4_10005_1000110005100010.79980.3026830.9905990.0354018.0077390.283480
96_R_4_10005_1000210005100020.87970.0663860.5532130.1542157.9562541.226976
97_R_4_10005_1000410005100040.93820.0263720.2646020.5513797.9406024.378282
98_R_4_10005_1000610005100060.89370.1253350.4689940.4727608.0081443.785930
99_R_4_10005_1000810005100080.90700.1491460.4051810.5756357.8997304.547361
100_R_4_10005_1000310005100030.92890.0086700.3121020.1664247.8997301.314701
101_R_4_10005_1000110005100010.79980.2751660.9905990.0354018.0077390.283479
102_R_4_10005_1000210005100020.87970.2766060.5532130.1542157.9562541.226974
103_R_4_10005_1000410005100040.93820.0017580.2646020.5514007.9406024.378445
104_R_4_10005_1000610005100060.89370.1293780.4689940.4727568.0081443.785900
105_R_4_10005_1000810005100080.90700.1093740.4051810.5756507.8997304.547479
106_R_4_10005_1000310005100030.92890.0000000.3121020.1664257.8997301.314712
107_R_4_10005_1000110005100010.79980.2751660.9905990.0354018.0077390.283479
108_R_4_10005_1000210005100020.87970.0774500.5532130.1542177.9562541.226989
109_R_4_10005_1000410005100040.93820.0237350.2646020.5513787.9406024.378269
110_R_4_10005_1000610005100060.89370.1293780.4689940.4727598.0081443.785920
111_R_5_10004_1000510004100050.92710.0331830.3142020.5872897.9406024.663427
112_R_5_10004_1000310004100030.88330.0427900.5195980.2190867.9406021.739675
113_R_5_10004_1000210004100020.78980.9255881.0112900.1693787.9562541.347617
114_R_5_10004_1000610004100060.84200.3277830.7226130.4187158.0081443.353129
115_R_5_10004_1000510004100050.92710.0383680.3142020.5872867.9406024.663408
116_R_5_10004_1000310004100030.88330.0550160.5195980.2190887.9406021.739688
117_R_5_10004_1000210004100020.78980.0514221.0112900.1693797.9562541.347620
118_R_5_10004_1000610004100060.84200.2160390.7226130.4187178.0081443.353143
119_R_5_10004_1000510004100050.92710.0394050.3142020.5872867.9406024.663408
120_R_5_10004_1000310004100030.88330.1405970.5195980.2190887.9406021.739688
121_R_5_10004_1000210004100020.78980.0342811.0112900.1693787.9562541.347617
122_R_5_10004_1000610004100060.84200.2607360.7226130.4187158.0081443.353129
123_R_6_10003_1000410003100040.91480.0714060.3748840.2812077.9406022.232956
124_R_6_10003_1000610003100060.84570.3194910.7302660.1351118.0081441.081987
125_R_6_10003_1000510003100050.91220.1445280.3854090.2047327.8997301.617331
126_R_6_10003_1000710003100070.93060.0235930.2994460.4631087.8580853.639144
127_R_6_10003_1001610003100160.89500.0468460.4684640.3003097.8580852.359853
128_R_6_10003_1000110003100010.84590.3540000.7080010.2635788.0077392.110663
129_R_6_10003_1000210003100020.91270.1818650.3807810.4776987.9562543.800684
130_R_6_10003_1000410003100040.91480.0714060.3748840.2812037.9406022.232922
131_R_6_10003_1000610003100060.84570.3194910.7302660.1351128.0081441.081998
132_R_6_10003_1000510003100050.91220.1391750.3854090.2047317.8997301.617320
133_R_6_10003_1000710003100070.93060.0598890.2994460.4631097.8580853.639148
134_R_6_10003_1001610003100160.89500.0409910.4684640.3003077.8580852.359836
135_R_6_10003_1000110003100010.84590.3422000.7080010.2635808.0077392.110679
136_R_6_10003_1000210003100020.91270.1932320.3807810.4777037.9562543.800730
137_R_6_10003_1000410003100040.91480.0714060.3748840.2812067.9406022.232943
138_R_6_10003_1000610003100060.84570.3194910.7302660.1351118.0081441.081990
139_R_6_10003_1000510003100050.91220.1391750.3854090.2047347.8997301.617344
140_R_6_10003_1000710003100070.93060.0598890.2994460.4631207.8580853.639235
141_R_6_10003_1001610003100160.89500.0409910.4684640.3003077.8580852.359840
142_R_6_10003_1000110003100010.84590.3422000.7080010.2635768.0077392.110649
143_R_6_10003_1000210003100020.91270.1847070.3807810.4777027.9562543.800719
144_R_7_10002_1000310002100030.94140.0476860.2517830.3722497.9562542.961710
145_R_7_10002_1000110002100010.84930.1615370.6812630.5450438.0077394.364564
146_R_7_10002_1000410002100040.90130.0160970.4426610.1702137.9562541.354259
147_R_7_10002_1000610002100060.82820.7293800.8398920.0695798.0081440.557199
148_R_7_10002_1000510002100050.89260.1185340.4840130.1129927.9562540.898991
149_R_7_10002_1000310002100030.94140.0362420.2517830.3722447.9562542.961672
150_R_7_10002_1000110002100010.84930.2036770.6812630.5450478.0077394.364592
151_R_7_10002_1000410002100040.90130.0241450.4426610.1702137.9562541.354257
152_R_7_10002_1000610002100060.82820.4641510.8398920.0695798.0081440.557198
153_R_7_10002_1000510002100050.89260.4445020.4840130.1129917.9562540.898987
154_R_7_10002_1000310002100030.94140.0362420.2517830.3722487.9562542.961701
155_R_7_10002_1000110002100010.84930.2036770.6812630.5450438.0077394.364564
156_R_7_10002_1000410002100040.90130.0241450.4426610.1702157.9562541.354272
157_R_7_10002_1000610002100060.82820.4199460.8398920.0695798.0081440.557195
158_R_7_10002_1000510002100050.89260.4445020.4840130.1129927.9562540.898991
159_R_8_10001_1000210001100020.91800.1261120.3592290.3566468.0077392.855928
160_R_8_10001_1000510001100050.79820.0277370.9985150.1132258.0077390.906678
161_R_8_10001_1000310001100030.90840.0841700.4068210.1604478.0077391.284819
162_R_8_10001_1001110001100110.82240.3590940.8430900.3980188.0077393.187228
163_R_8_10001_1000210001100020.91800.1299340.3592290.3566418.0077392.855891
164_R_8_10001_1000510001100050.79820.0277370.9985150.1132248.0077390.906670
165_R_8_10001_1000310001100030.90840.0911840.4068210.1604458.0077391.284805
166_R_8_10001_1001110001100110.82240.2810300.8430900.3980188.0077393.187221
167_R_8_10001_1000210001100020.91800.1299340.3592290.3566428.0077392.855892
168_R_8_10001_1000510001100050.79820.0277370.9985150.1132258.0077390.906675
169_R_8_10001_1000310001100030.90840.0981980.4068210.1604458.0077391.284800
170_R_8_10001_1001110001100110.82240.2810300.8430900.3980178.0077393.187218
171_R_9_10010_1000610010100060.83190.2238280.7732250.4388448.0081443.514323
172_R_9_10010_1002610010100260.90050.2030370.4419040.2164197.7753861.682743
173_R_9_10010_1002710010100270.78910.6101871.0395780.1036217.7753860.805690
174_R_9_10010_1001810010100180.93380.1383770.2848950.3749627.7753862.915471
175_R_9_10010_1000910010100090.90570.3631260.4126430.5309057.8625534.174270
176_R_9_10010_1000610010100060.83190.2340020.7732250.4388428.0081443.514314
177_R_9_10010_1002610010100260.90050.2149800.4419040.2164197.7753861.682738
178_R_9_10010_1002710010100270.78910.6101871.0395780.1036207.7753860.805686
179_R_9_10010_1001810010100180.93380.1383770.2848950.3749647.7753862.915489
180_R_9_10010_1000910010100090.90570.3686280.4126430.5308987.8625534.174216
181_R_9_10010_1000610010100060.83190.2340020.7732250.4388498.0081443.514368
182_R_9_10010_1002610010100260.90050.2149800.4419040.2164217.7753861.682759
183_R_9_10010_1002710010100270.78910.6101871.0395780.1036207.7753860.805683
184_R_9_10010_1001810010100180.93380.1383770.2848950.3749657.7753862.915499
185_R_9_10010_1000910010100090.90570.3686280.4126430.5308977.8625534.174202
186_R_10_10018_1001010018100100.91410.3723150.3749560.4626387.7753863.597187
187_R_10_10018_1002610018100260.93470.0669470.2819900.3953887.6847713.038467
188_R_10_10018_1004310018100430.79240.6606661.0164090.0745817.6847710.573139
189_R_10_10018_1002710018100270.88970.7042370.5006020.1566827.6847711.204062
190_R_10_10018_1000910018100090.84580.0446240.7050580.4258457.8625533.348225
191_R_10_10018_1001010018100100.91410.3960800.3749560.4626407.7753863.597208
192_R_10_10018_1002610018100260.93470.0730330.2819900.3953947.6847713.038509
193_R_10_10018_1004310018100430.79240.6606661.0164090.0745817.6847710.573141
194_R_10_10018_1002710018100270.88970.5090870.5006020.1566817.6847711.204060
195_R_10_10018_1000910018100090.84580.0535490.7050580.4258447.8625533.348220
196_R_10_10018_1001010018100100.91410.3960800.3749560.4626427.7753863.597221
197_R_10_10018_1002610018100260.93470.0649190.2819900.3953897.6847713.038474
198_R_10_10018_1004310018100430.79240.5590251.0164090.0745817.6847710.573139
199_R_10_10018_1002710018100270.88970.7127220.5006020.1566827.6847711.204067
200_R_10_10018_1000910018100090.84580.3302170.7050580.4258457.8625533.348231
201_R_11_10026_1001810026100180.91400.0721390.3740520.4875737.6847713.746886
202_R_11_10026_1001010026100100.87150.2776380.5784120.3644697.7753862.833886
203_R_11_10026_1004310026100430.88750.2589950.5076290.1307527.6512031.000407
204_R_11_10026_1004410026100440.81780.7668300.8866470.0830557.7026820.639744
205_R_11_10026_1002710026100270.93600.2166470.2776740.2442337.6360521.864979
206_R_11_10026_1002110026100210.93320.0306620.2874580.4201977.6360523.208646
207_R_11_10026_1002010026100200.92280.0655440.3362710.3929787.6360523.000801
208_R_11_10026_1001810026100180.91400.0721390.3740520.4875687.6847713.746850
209_R_11_10026_1001010026100100.87150.2622140.5784120.3644667.7753862.833864
210_R_11_10026_1004310026100430.88750.0207200.5076290.1307517.6512031.000402
211_R_11_10026_1004410026100440.81780.1917080.8866470.0830557.7026820.639743
212_R_11_10026_1002710026100270.93600.2532630.2776740.2442337.6360521.864979
213_R_11_10026_1002110026100210.93320.0306620.2874580.4201977.6360523.208646
214_R_11_10026_1002010026100200.92280.0626950.3362710.3929807.6360523.000813
215_R_11_10026_1001810026100180.91400.0721390.3740520.4875707.6847713.746862
216_R_11_10026_1001010026100100.87150.2776380.5784120.3644697.7753862.833886
217_R_11_10026_1004310026100430.88750.0207200.5076290.1307527.6512031.000409
218_R_11_10026_1004410026100440.81780.1917080.8866470.0830557.7026820.639743
219_R_11_10026_1002710026100270.93600.2166470.2776740.2442377.6360521.865006
220_R_11_10026_1002110026100210.93320.0306620.2874580.4202017.6360523.208679
221_R_11_10026_1002010026100200.92280.0598450.3362710.3929827.6360523.000829
222_R_12_10021_1002610021100260.85250.0930940.6643520.4555727.6360523.478773
223_R_12_10021_1002410021100240.91230.0703040.3804670.3920087.5982922.978589
224_R_12_10021_1002510021100250.85620.3131790.6483350.2122507.5982921.612739
225_R_12_10021_1002210021100220.94640.1946760.2285330.5092607.5982923.869503
226_R_12_10021_1002310021100230.93890.0829080.2614060.4149557.5982923.152952
227_R_12_10021_1002010021100200.95370.0049850.1963430.4660027.5982923.540821
228_R_12_10021_1001910021100190.86080.0631200.6227820.4066827.5982923.090088
229_R_12_10021_1002610021100260.85250.0550100.6643520.4555727.6360523.478768
230_R_12_10021_1002410021100240.91230.0268810.3804670.3920067.5982922.978576
231_R_12_10021_1002510021100250.85620.1868080.6483350.2122507.5982921.612735
232_R_12_10021_1002210021100220.94640.1937360.2285330.5092887.5982923.869717
233_R_12_10021_1002310021100230.93890.0848590.2614060.4149687.5982923.153052
234_R_12_10021_1002010021100200.95380.0045920.1959190.4659847.5982923.540684
235_R_12_10021_1001910021100190.86080.0589120.6227820.4066837.5982923.090099
236_R_12_10021_1002610021100260.85250.0423150.6643520.4555727.6360523.478773
237_R_12_10021_1002410021100240.91230.0268810.3804670.3920117.5982922.978614
238_R_12_10021_1002510021100250.85620.3461450.6483350.2122507.5982921.612739
239_R_12_10021_1002210021100220.94640.1937360.2285330.5092877.5982923.869711
240_R_12_10021_1002310021100230.93890.1004660.2614060.4149817.5982923.153149
241_R_12_10021_1002010021100200.95380.0045920.1959190.4659907.5982923.540726
242_R_12_10021_1001910021100190.86080.0589120.6227820.4066847.5982923.090106
243_R_13_10020_1002110020100210.95520.0656770.1899820.4585167.5982923.483940
244_R_13_10020_1002210020100220.94650.0729060.2280650.5103497.5952793.876245
245_R_13_10020_1002410020100240.90840.1863700.4003500.3826437.5930832.905442
246_R_13_10020_1002510020100250.85780.9542480.6379830.2207967.5893911.675710
247_R_13_10020_1002310020100230.94320.1062380.2421590.4374717.5893913.320134
248_R_13_10020_1001910020100190.87530.2003270.5543290.5683157.5893914.313161
249_R_13_10020_1002610020100260.83690.4936940.7405400.3105437.6360522.371324
250_R_13_10020_1002110020100210.95520.0660490.1899820.4585177.5982923.483944
251_R_13_10020_1002210020100220.94650.0729060.2280650.5103667.5952793.876374
252_R_13_10020_1002410020100240.90840.1886710.4003500.3826457.5930832.905455
253_R_13_10020_1002510020100250.85780.9487950.6379830.2207977.5893911.675714
254_R_13_10020_1002310020100230.94320.1054560.2429400.4388787.5893913.330820
255_R_13_10020_1001910020100190.87530.1975830.5543290.5683147.5893914.313153
256_R_13_10020_1002610020100260.83690.4997140.7405400.3105447.6360522.371331
257_R_13_10020_1002110020100210.95520.0660490.1899820.4584777.5982923.483644
258_R_13_10020_1002210020100220.94650.0729060.2280650.5103847.5952793.876511
259_R_13_10020_1002410020100240.90840.1886710.4003500.3826437.5930832.905443
260_R_13_10020_1002510020100250.85780.9487950.6379830.2207967.5893911.675710
261_R_13_10020_1002310020100230.94320.1054560.2429400.4388667.5893913.330723
262_R_13_10020_1001910020100190.87530.1975830.5543290.5683097.5893914.313122
263_R_13_10020_1002610020100260.83690.4997140.7405400.3105497.6360522.371369
264_R_14_10019_1002010019100200.92990.1079860.3023600.4343987.5893913.296815
265_R_14_10019_1003310019100330.85450.1754380.6594050.3840567.5776762.910252
266_R_14_10019_1001710019100170.84610.2956990.6963230.6004177.5776764.549764
267_R_14_10019_1002610019100260.81510.0865500.8655040.2080467.6360521.588651
268_R_14_10019_1002110019100210.91670.0579170.3626130.3558997.5982922.704223
269_R_14_10019_1002010019100200.92990.1079860.3023600.4343927.5893913.296770
270_R_14_10019_1003310019100330.85450.1754380.6594050.3840577.5776762.910259
271_R_14_10019_1001710019100170.84610.2956990.6963230.6004077.5776764.549692
272_R_14_10019_1002610019100260.81510.0865500.8655040.2080467.6360521.588649
273_R_14_10019_1002110019100210.91670.0579170.3626130.3558987.5982922.704218
274_R_14_10019_1002010019100200.92990.1095280.3023600.4343987.5893913.296815
275_R_14_10019_1003310019100330.85450.1633390.6594050.3840537.5776762.910232
276_R_14_10019_1001710019100170.84610.2956990.6963230.6004297.5776764.549860
277_R_14_10019_1002610019100260.81510.0865500.8655040.2080507.6360521.588678
278_R_14_10019_1002110019100210.91670.0579170.3626130.3559027.5982922.704250
279_R_15_10027_1002610027100260.92790.3540680.3128170.2550817.6360521.947814
280_R_15_10027_1001010027100100.83680.3672500.7694770.1335007.7753861.038016
281_R_15_10027_1001810027100180.88930.9026490.5024180.1971107.6847711.514747
282_R_15_10027_1004310027100430.90930.1379210.3970460.3292267.6512032.518973
283_R_15_10027_1004410027100440.83601.0644580.7603270.2188807.7026821.685962
284_R_15_10027_1002510027100250.92170.0500700.3391850.5640127.5970134.284807
285_R_15_10027_1002610027100260.92790.3540680.3128170.2550847.6360521.947838
286_R_15_10027_1001010027100100.83680.3672500.7694770.1335017.7753861.038019
287_R_15_10027_1001810027100180.88930.9026490.5024180.1971077.6847711.514721
288_R_15_10027_1004310027100430.90930.1379210.3970460.3292287.6512032.518989
289_R_15_10027_1004410027100440.83601.0644580.7603270.2188807.7026821.685962
290_R_15_10027_1002510027100250.92170.0533000.3391850.5640097.5970134.284787
291_R_15_10027_1002610027100260.92790.3540680.3128170.2550877.6360521.947861
292_R_15_10027_1001010027100100.83680.3672500.7694770.1335017.7753861.038019
293_R_15_10027_1001810027100180.88930.9026490.5024180.1971087.6847711.514730
294_R_15_10027_1004310027100430.90930.1379210.3970460.3292317.6512032.519015
295_R_15_10027_1004410027100440.83601.0644580.7603270.2188807.7026821.685966
296_R_15_10027_1002510027100250.92170.0533000.3391850.5639907.5970134.284642
297_R_16_10022_1002110022100210.91150.3074590.3843230.6166457.5982924.685450
298_R_16_10022_1002410022100240.89650.3177950.4527730.3988887.5952793.029665
299_R_16_10022_1002510022100250.76810.3588741.0977320.1060257.5952790.805290
300_R_16_10022_1002310022100230.93900.0465910.2610840.5219817.5952793.964594
301_R_16_10022_1002010022100200.91080.3529790.3872630.6209317.5952794.716146
302_R_16_10022_1002110022100210.91150.3082350.3843230.6166737.5982924.685659
303_R_16_10022_1002410022100240.89650.3195040.4527730.3989077.5952793.029811
304_R_16_10022_1002510022100250.76810.3659111.0977320.1060247.5952790.805285
305_R_16_10022_1002310022100230.93900.0470300.2610840.5219817.5952793.964594
306_R_16_10022_1002010022100200.91080.3631080.3872630.6209677.5952794.716416
307_R_16_10022_1002110022100210.91150.3082350.3843230.6166687.5982924.685624
308_R_16_10022_1002410022100240.89650.3195040.4527730.3989197.5952793.029903
309_R_16_10022_1002510022100250.76810.3659111.0977320.1060257.5952790.805290
310_R_16_10022_1002310022100230.93900.0470300.2610840.5220157.5952793.964852
311_R_16_10022_1002010022100200.91080.3631080.3872630.6209527.5952794.716306
312_R_17_10023_1002210023100220.93350.0407290.2851040.5477567.5952794.160360
313_R_17_10023_1002410023100240.90610.0231710.4085460.4896967.5930833.718300
314_R_17_10023_1002510023100250.79390.1477970.9632310.3595547.5867272.727838
315_R_17_10023_1002010023100200.89700.2393950.4504590.4796747.5893913.640436
316_R_17_10023_1002110023100210.88960.3401460.4846640.4090497.5982923.108077
317_R_17_10023_1002210023100220.93350.0402500.2851040.5478147.5952794.160798
318_R_17_10023_1002410023100240.90600.0231960.4089810.4897227.5930833.718502
319_R_17_10023_1002510023100250.79390.1477970.9632310.3595477.5867272.727783
320_R_17_10023_1002010023100200.89700.2393950.4504590.4796747.5893913.640436
321_R_17_10023_1002110023100210.88960.3419080.4864260.4105297.5982923.119320
322_R_17_10023_1002210023100220.93350.0402500.2851040.5478257.5952794.160883
323_R_17_10023_1002410023100240.90610.0231710.4085460.4897057.5930833.718370
324_R_17_10023_1002510023100250.79390.1477970.9632310.3595477.5867272.727783
325_R_17_10023_1002010023100200.89700.2393950.4504590.4796927.5893913.640568
326_R_17_10023_1002110023100210.88960.3419080.4864260.4105297.5982923.119320
327_R_18_10024_1002310024100230.93220.2351100.2914660.4055457.5930833.079334
328_R_18_10024_1002010024100200.86900.2731140.5824240.1509847.5930831.146435
329_R_18_10024_1002210024100220.91800.2016940.3546570.3511707.5952792.667238
330_R_18_10024_1002110024100210.87760.0865770.5425490.2164137.5982921.644371
331_R_18_10024_1002510024100250.85970.2144830.6266280.6623907.5930835.029581
332_R_18_10024_1002310024100230.93220.2359910.2914660.4055457.5930833.079335
333_R_18_10024_1002010024100200.86900.2665330.5824240.1509897.5930831.146473
334_R_18_10024_1002210024100220.91800.2044020.3546570.3511507.5952792.667083
335_R_18_10024_1002110024100210.87760.0923490.5425490.2164117.5982921.644350
336_R_18_10024_1002510024100250.85970.2165860.6266280.6623637.5930835.029378
337_R_18_10024_1002310024100230.93220.2351100.2914660.4055497.5930833.079369
338_R_18_10024_1002010024100200.86900.2665330.5824240.1509867.5930831.146449
339_R_18_10024_1002210024100220.91800.2044020.3546570.3511627.5952792.667175
340_R_18_10024_1002110024100210.87760.0923490.5425490.2164117.5982921.644357
341_R_18_10024_1002510024100250.85970.2144830.6266280.6623727.5930835.029444
342_R_19_10025_1002410025100240.94310.0162030.2430480.4383957.5930833.328767
343_R_19_10025_1002110025100210.89880.1624010.4446690.1689107.5982921.283424
344_R_19_10025_1002210025100220.91790.1395090.3562460.2822847.5952792.144026
345_R_19_10025_1002010025100200.89860.1205380.4471560.1646977.5893911.249948
346_R_19_10025_1002310025100230.93420.2343040.2831170.3039047.5867272.305636
347_R_19_10025_1003310025100330.85360.0288670.6591310.4558497.5782343.454532
348_R_19_10025_1002710025100270.88740.3065970.4970590.5964717.5970134.531396
349_R_19_10025_1002410025100240.94310.0162030.2430480.4384137.5930833.328903
350_R_19_10025_1002110025100210.89880.1662670.4446690.1689077.5982921.283404
351_R_19_10025_1002210025100220.91790.1370180.3562460.2822817.5952792.144005
352_R_19_10025_1002010025100200.89860.1166490.4471560.1647017.5893911.249980
353_R_19_10025_1002310025100230.93420.2359310.2831170.3039167.5867272.305729
354_R_19_10025_1003310025100330.85360.0288670.6591310.4558447.5782343.454491
355_R_19_10025_1002710025100270.88740.3112420.4970590.5964857.5970134.531506
356_R_19_10025_1002410025100240.94310.0162030.2430480.4383927.5930833.328746
357_R_19_10025_1002110025100210.89880.1662670.4446690.1689067.5982921.283397
358_R_19_10025_1002210025100220.91790.1370180.3562460.2822847.5952792.144025
359_R_19_10025_1002010025100200.89860.1166490.4471560.1646997.5893911.249968
360_R_19_10025_1002310025100230.93420.2359310.2831170.3039137.5867272.305701
361_R_19_10025_1003310025100330.85360.0288670.6591310.4558537.5782343.454564
362_R_19_10025_1002710025100270.88740.3112420.4970590.5964797.5970134.531462
363_R_20_10043_1002710043100270.90770.2764550.4040500.2849237.6512032.180007
364_R_20_10043_1002610043100260.78900.0388611.0103780.1839587.6512031.407496
365_R_20_10043_1005210043100520.84520.1216990.7099110.2986227.8159532.334017
366_R_20_10043_1004410043100440.91460.0964030.3718410.3083347.7026822.374998
367_R_20_10043_1004210043100420.91670.2144810.3614400.5383837.6620004.125087
368_R_20_10043_1002710043100270.90770.1190880.4040500.2849307.6512032.180056
369_R_20_10043_1002610043100260.78900.6023411.0103780.1839587.6512031.407501
370_R_20_10043_1005210043100520.84520.1216990.7099110.2986237.8159532.334024
371_R_20_10043_1004410043100440.91460.0998460.3718410.3083337.7026822.374990
372_R_20_10043_1004210043100420.91670.2124950.3614400.5383677.6620004.124966
373_R_20_10043_1002710043100270.90770.1190880.4040500.2849287.6512032.180045
374_R_20_10043_1002610043100260.78900.6023411.0103780.1839597.6512031.407505
375_R_20_10043_1005210043100520.84520.1216990.7099110.2986237.8159532.334027
376_R_20_10043_1004410043100440.91460.0998460.3718410.3083317.7026822.374978
377_R_20_10043_1004210043100420.91670.2124950.3614400.5383857.6620004.125103
378_R_21_10044_1002710044100270.82360.1933020.8326840.1635127.7026821.259478
379_R_21_10044_1004310044100430.92460.0577560.3283000.2828117.7026822.178401
380_R_21_10044_1005210044100520.92470.0670590.3248170.4436857.8159533.467824
381_R_21_10044_1005310044100530.86030.3076660.6319620.3495577.9302612.772077
382_R_21_10044_1003710044100370.88540.2696220.5115900.2154137.7026821.659257
383_R_21_10044_1004010044100400.92010.0505210.3480370.3884957.7026822.992453
384_R_21_10044_1004210044100420.93380.1109480.2840260.4688527.7026823.611418
385_R_21_10044_1002710044100270.82360.1933020.8326840.1635117.7026821.259475
386_R_21_10044_1004310044100430.92460.0547170.3283000.2827987.7026822.178301
387_R_21_10044_1005210044100520.92470.0670590.3248170.4436897.8159533.467852
388_R_21_10044_1005310044100530.86030.3159810.6319620.3495607.9302612.772104
389_R_21_10044_1003710044100370.88540.2765350.5115900.2154117.7026821.659240
390_R_21_10044_1004010044100400.92010.0505210.3480370.3884937.7026822.992436
391_R_21_10044_1004210044100420.93380.1139060.2840260.4688567.7026823.611446
392_R_21_10044_1002710044100270.82360.1933020.8326840.1635107.7026821.259468
393_R_21_10044_1004310044100430.92460.0547170.3283000.2828057.7026822.178359
394_R_21_10044_1005210044100520.92470.0670590.3248170.4436907.8159533.467863
395_R_21_10044_1005310044100530.86030.3159810.6319620.3495597.9302612.772095
396_R_21_10044_1003710044100370.88540.2765350.5115900.2154127.7026821.659253
397_R_21_10044_1004010044100400.92010.0505210.3480370.3885037.7026822.992512
398_R_21_10044_1004210044100420.93380.1139060.2840260.4688407.7026823.611322
399_R_22_10042_1004310042100430.84100.0833950.7202290.5933807.6620004.546476
400_R_22_10042_1004410042100440.88270.2044520.5189940.4564957.7026823.516234
401_R_22_10042_1004010042100400.83060.0758540.7760420.2967727.6740062.277428
402_R_22_10042_1004110042100410.86950.2078070.5832000.4566137.6620003.498569
403_R_22_10042_1004310042100430.84100.0833950.7202290.5933797.6620004.546474
404_R_22_10042_1004410042100440.88270.2018310.5189940.4564707.7026823.516046
405_R_22_10042_1004010042100400.83060.0758540.7760420.2967687.6740062.277402
406_R_22_10042_1004110042100410.86950.2078070.5832000.4566177.6620003.498597
407_R_22_10042_1004310042100430.84100.0833950.7202290.5933727.6620004.546419
408_R_22_10042_1004410042100440.88270.2018310.5189940.4564747.7026823.516077
409_R_22_10042_1004010042100400.83060.0641840.7760420.2967737.6740062.277434
410_R_22_10042_1004110042100410.86950.2078070.5832000.4566187.6620003.498611
411_R_23_10041_1004210041100420.90010.0513160.4387520.4425467.6620003.390787
412_R_23_10041_1004410041100440.83420.1755500.7607150.2448967.7026821.886353
413_R_23_10041_1004010041100400.89320.0166460.4694160.3339427.6740062.562671
414_R_23_10041_1003810041100380.82160.2813520.8184790.4948817.6221593.772063
415_R_23_10041_1004210041100420.90010.0538820.4387520.4425467.6620003.390787
416_R_23_10041_1004410041100440.83420.1755500.7607150.2448967.7026821.886353
417_R_23_10041_1004010041100400.89320.0199750.4694160.3339437.6740062.562682
418_R_23_10041_1003810041100380.82160.2621690.8184790.4948817.6221593.772063
419_R_23_10041_1004210041100420.90010.0538820.4387520.4425377.6620003.390722
420_R_23_10041_1004410041100440.83420.1755500.7607150.2449037.7026821.886410
421_R_23_10041_1004010041100400.89320.0199750.4694160.3339397.6740062.562646
422_R_23_10041_1003810041100380.82160.2877460.8184790.4948787.6221593.772042
423_R_24_10037_1004410037100440.86770.2154910.5985860.1940207.7026821.494475
424_R_24_10037_1005110037100510.87320.1616830.5658920.3607407.7909132.810491
425_R_24_10037_1003610037100360.94070.0950290.2534110.4212497.7114103.248426
426_R_24_10037_1003510037100350.85950.0158600.6343810.2647457.7371162.048365
427_R_24_10037_1003810037100380.92490.1352840.3251560.3556677.6734932.729206
428_R_24_10037_1003910037100390.89040.0759840.4862980.3032727.6734932.327155
429_R_24_10037_1004010037100400.93190.0626880.2925450.4116887.6740063.159296
430_R_24_10037_1004410037100440.86770.2154910.5985860.1940227.7026821.494489
431_R_24_10037_1005110037100510.87320.1616830.5658920.3607417.7909132.810501
432_R_24_10037_1003610037100360.94070.0962480.2534110.4212457.7114103.248393
433_R_24_10037_1003510037100350.85950.0158600.6343810.2647477.7371162.048378
434_R_24_10037_1003810037100380.92490.1352840.3251560.3556707.6734932.729229
435_R_24_10037_1003910037100390.89040.0810500.4862980.3032727.6734932.327155
436_R_24_10037_1004010037100400.93190.0609470.2925450.4116837.6740063.159259
437_R_24_10037_1004410037100440.86770.1755850.5985860.1940227.7026821.494490
438_R_24_10037_1005110037100510.87320.1616830.5658920.3607437.7909132.810518
439_R_24_10037_1003610037100360.94070.0962480.2534110.4212377.7114103.248332
440_R_24_10037_1003510037100350.85950.0158600.6343810.2647467.7371162.048367
441_R_24_10037_1003810037100380.92490.1352840.3251560.3556687.6734932.729214
442_R_24_10037_1003910037100390.89040.0810500.4862980.3032817.6734932.327226
443_R_24_10037_1004010037100400.93190.0609470.2925450.4116947.6740063.159346
444_R_25_10052_1004310052100430.83620.2038930.7511850.2846647.8159532.224919
445_R_25_10052_1005910052100590.78880.7054791.0279840.2353048.2892661.950500
446_R_25_10052_1005310052100530.93450.1945720.2817940.3153027.9302612.500425
447_R_25_10052_1005010052100500.91510.0212490.3718590.3255247.8854102.566892
448_R_25_10052_1005110052100510.92620.2035960.3196240.4084837.8159533.192684
449_R_25_10052_1004410052100440.92690.3844950.3153270.4165567.8159533.255785
450_R_25_10052_1004310052100430.83620.2038930.7511850.2846667.8159532.224932
451_R_25_10052_1005910052100590.78880.7054791.0279840.2353058.2892661.950506
452_R_25_10052_1005310052100530.93450.1945720.2817940.3153057.9302612.500447
453_R_25_10052_1005010052100500.91510.0212490.3718590.3255237.8854102.566880
454_R_25_10052_1005110052100510.92620.2035960.3196240.4084897.8159533.192727
455_R_25_10052_1004410052100440.92690.3865290.3153270.4165647.8159533.255845
456_R_25_10052_1004310052100430.83620.2038930.7511850.2846667.8159532.224939
457_R_25_10052_1005910052100590.78880.7054791.0279840.2353048.2892661.950498
458_R_25_10052_1005310052100530.93450.1945720.2817940.3153087.9302612.500476
459_R_25_10052_1005010052100500.91510.0212490.3718590.3255257.8854102.566901
460_R_25_10052_1005110052100510.92620.2035960.3196240.4084917.8159533.192748
461_R_25_10052_1004410052100440.92690.3865290.3153270.4165737.8159533.255912
462_R_26_10040_1003710040100370.85680.5748830.6444540.5287457.6740064.057589
463_R_26_10040_1004110040100410.87280.1348130.5670090.3770657.6740062.893596
464_R_26_10040_1004210040100420.86980.0627850.5830080.2837817.6740062.177739
465_R_26_10040_1004410040100440.85770.2149460.6398410.2856567.7026822.200319
466_R_26_10040_1003710040100370.85680.5748830.6444540.5287407.6740064.057556
467_R_26_10040_1004110040100410.87280.1348130.5670090.3770567.6740062.893532
468_R_26_10040_1004210040100420.86980.0583010.5830080.2837817.6740062.177740
469_R_26_10040_1004410040100440.85770.2199450.6398410.2856517.7026822.200276
470_R_26_10040_1003710040100370.85680.5748830.6444540.5287377.6740064.057531
471_R_26_10040_1004110040100410.87280.1348130.5670090.3770627.6740062.893578
472_R_26_10040_1004210040100420.86980.0583010.5830080.2837807.6740062.177728
473_R_26_10040_1004410040100440.85770.2199450.6398410.2856587.7026822.200331
474_R_27_10051_1003710051100370.77090.4044831.0898570.3490867.7909132.719699
475_R_27_10051_1005210051100520.88390.2961830.5131550.4166277.8159533.256340
476_R_27_10051_1005310051100530.86620.1550590.6008520.3484607.9302612.763378
477_R_27_10051_1005010051100500.90100.1731060.4339500.4954437.8854103.906772
478_R_27_10051_1003710051100370.77090.4044831.0898570.3490887.7909132.719715
479_R_27_10051_1005210051100520.88390.2961830.5131550.4166297.8159533.256350
480_R_27_10051_1005310051100530.86620.1550590.6008520.3484647.9302612.763410
481_R_27_10051_1005010051100500.90100.1731060.4339500.4954457.8854103.906786
482_R_27_10051_1003710051100370.77090.3932481.0898570.3490877.7909132.719705
483_R_27_10051_1005210051100520.88390.2961830.5131550.4166377.8159533.256416
484_R_27_10051_1005310051100530.86620.1550590.6008520.3484647.9302612.763412
485_R_27_10051_1005010051100500.90100.1731060.4339500.4954497.8854103.906821
486_R_28_10011_1000110011100010.80750.1692260.9138220.3431428.0077392.747792
487_R_28_10011_1001310011100130.88520.1574990.5118710.3623487.7760232.817624
488_R_28_10011_1001710011100170.85250.2961480.6824270.1740737.7760231.353592
489_R_28_10011_1002810011100280.81480.0703280.8720690.4051337.7760233.150325
490_R_28_10011_1000110011100010.80760.1691380.9133480.3431418.0077392.747780
491_R_28_10011_1001310011100130.88520.1443740.5118710.3623547.7760232.817672
492_R_28_10011_1001710011100170.85250.3090240.6824270.1740727.7760231.353588
493_R_28_10011_1002810011100280.81480.0562630.8720690.4051297.7760233.150294
494_R_28_10011_1000110011100010.80760.1860520.9133480.3431418.0077392.747780
495_R_28_10011_1001310011100130.88520.1443740.5118710.3623537.7760232.817668
496_R_28_10011_1001710011100170.85250.2961480.6824270.1740727.7760231.353586
497_R_28_10011_1002810011100280.81480.0562630.8720690.4051337.7760233.150321
498_R_29_10017_1001110017100110.82360.0615950.8315360.2047167.7760231.591874
499_R_29_10017_1001310017100130.92150.0895950.3414290.4427667.6405383.382968
500_R_29_10017_1001210017100120.91630.0000000.3645100.3422347.6739702.626293
501_R_29_10017_1001410017100140.93440.1053440.2814650.4334437.6214093.303449
502_R_29_10017_1000710017100070.86510.0098900.6132080.2293877.7553301.778973
503_R_29_10017_1001610017100160.92770.0842560.3120600.2732977.6601562.093497
504_R_29_10017_1001910017100190.89020.0340270.4831810.5474637.5776764.148498
505_R_29_10017_1003110017100310.87300.0994040.5671880.4164507.5772663.155552
506_R_29_10017_1001110017100110.82360.0461960.8315360.2047147.7760231.591862
507_R_29_10017_1001310017100130.92150.0799090.3414290.4427697.6405383.382993
508_R_29_10017_1001210017100120.91630.0000000.3645100.3422437.6739702.626365
509_R_29_10017_1001410017100140.93440.1053440.2814650.4334547.6214093.303528
510_R_29_10017_1000710017100070.86510.0098900.6132080.2293877.7553301.778973
511_R_29_10017_1001610017100160.92770.0873770.3120600.2732957.6601562.093482
512_R_29_10017_1001910017100190.89020.0306240.4831810.5474677.5776764.148524
513_R_29_10017_1003110017100310.87300.0994040.5671880.4164517.5772663.155559
514_R_29_10017_1001110017100110.82360.0461960.8315360.2047157.7760231.591867
515_R_29_10017_1001310017100130.92150.0799090.3414290.4427617.6405383.382936
516_R_29_10017_1001210017100120.91630.0000000.3645100.3422427.6739702.626356
517_R_29_10017_1001410017100140.93440.1053440.2814650.4334477.6214093.303475
518_R_29_10017_1000710017100070.86510.0098900.6132080.2293887.7553301.778978
519_R_29_10017_1001610017100160.92770.0873770.3120600.2732947.6601562.093473
520_R_29_10017_1001910017100190.89020.0306240.4831810.5474587.5776764.148458
521_R_29_10017_1003110017100310.87300.0994040.5671880.4164547.5772663.155586
522_R_30_10013_1001710013100170.83310.1647470.7619550.5584107.6405384.266549
523_R_30_10013_1001110013100110.73310.2746281.3121130.2519877.7760231.959456
524_R_30_10013_1001210013100120.88340.1205410.5155040.6028147.6739704.625977
525_R_30_10013_1001710013100170.83310.1390050.7619550.5584067.6405384.266522
526_R_30_10013_1001110013100110.73310.2898851.3121130.2519847.7760231.959436
527_R_30_10013_1001210013100120.88340.1154110.5155040.6028217.6739704.626029
528_R_30_10013_1001710013100170.83310.1493020.7619550.5584087.6405384.266536
529_R_30_10013_1001110013100110.73310.2898851.3121130.2519897.7760231.959472
530_R_30_10013_1001210013100120.88340.1154110.5155040.6028267.6739704.626071
531_R_31_10007_1000810007100080.80880.0927260.8924860.3685737.8079652.877806
532_R_31_10007_1001610007100160.93270.0918390.2898030.3336167.7553302.587301
533_R_31_10007_1001710007100170.81410.2453330.8722950.1581147.7553301.226225
534_R_31_10007_1001510007100150.90380.0428740.4215990.3906017.7553303.029238
535_R_31_10007_1000310007100030.89660.0054080.4542610.5498197.8580854.320522
536_R_31_10007_1000810007100080.80880.0927260.8924860.3685737.8079652.877807
537_R_31_10007_1001610007100160.93270.0938800.2898030.3336157.7553302.587293
538_R_31_10007_1001710007100170.81410.2453330.8722950.1581147.7553301.226230
539_R_31_10007_1001510007100150.90380.0500200.4215990.3905997.7553303.029222
540_R_31_10007_1000310007100030.89660.0081120.4542610.5498127.8580854.320473
541_R_31_10007_1000810007100080.80880.0927260.8924860.3685737.8079652.877806
542_R_31_10007_1001610007100160.93270.0938800.2898030.3336157.7553302.587293
543_R_31_10007_1001710007100170.81410.2453330.8722950.1581157.7553301.226233
544_R_31_10007_1001510007100150.90380.0500200.4215990.3906067.7553303.029278
545_R_31_10007_1000310007100030.89660.0081120.4542610.5498197.8580854.320522
546_R_32_10016_1000710016100070.91410.0833570.3725020.4331267.7553303.359033
547_R_32_10016_1003110016100310.79630.5813480.9810240.1605057.6601561.229495
548_R_32_10016_1001710016100170.92300.0498520.3356690.2519307.6601561.929820
549_R_32_10016_1001410016100140.92590.0494400.3202860.4250927.6601563.256271
550_R_32_10016_1001210016100120.91200.0982040.3826560.3779947.6739702.900712
551_R_32_10016_1001510016100150.94190.0602400.2488590.4810527.6704663.689894
552_R_32_10016_1000310016100030.84810.1948420.6946550.3506027.8580852.755062
553_R_32_10016_1000710016100070.91410.0807520.3725020.4331347.7553303.359099
554_R_32_10016_1003110016100310.79630.5813480.9810240.1605067.6601561.229499
555_R_32_10016_1001710016100170.92300.0465280.3356690.2519237.6601561.929767
556_R_32_10016_1001410016100140.92590.0902820.3202860.4250897.6601563.256249
557_R_32_10016_1001210016100120.91200.1015900.3826560.3779967.6739702.900727
558_R_32_10016_1001510016100150.94190.0592520.2488590.4810697.6704663.690023
559_R_32_10016_1000310016100030.84810.1863710.6946550.3506047.8580852.755073
560_R_32_10016_1000710016100070.91410.0833570.3725020.4331277.7553303.359044
561_R_32_10016_1003110016100310.79630.5813480.9810240.1605067.6601561.229499
562_R_32_10016_1001710016100170.92300.0465280.3356690.2519237.6601561.929772
563_R_32_10016_1001410016100140.92590.0902820.3202860.4250917.6601563.256260
564_R_32_10016_1001210016100120.91200.0982040.3826560.3779967.6739702.900727
565_R_32_10016_1001510016100150.94190.0592520.2488590.4810597.6704663.689944
566_R_32_10016_1000310016100030.84810.1863710.6946550.3506027.8580852.755059
567_R_33_10015_1000710015100070.77470.0167351.0710600.2981287.7553302.312082
568_R_33_10015_1001610015100160.91210.0224110.3824770.4504257.6704663.454973
569_R_33_10015_1001410015100140.88170.0179250.5220620.5525977.6704664.238677
570_R_33_10015_1001210015100120.86080.0030430.6239000.5459037.6739704.189243
571_R_33_10015_1000710015100070.77470.0251031.0710600.2981207.7553302.312022
572_R_33_10015_1001610015100160.91210.0239050.3824770.4504047.6704663.454811
573_R_33_10015_1001410015100140.88170.0156840.5220620.5526157.6704664.238811
574_R_33_10015_1001210015100120.86080.0517380.6239000.5458867.6739704.189113
575_R_33_10015_1000710015100070.77470.0251031.0710600.2981207.7553302.312016
576_R_33_10015_1001610015100160.91210.0239050.3824770.4504157.6704663.454892
577_R_33_10015_1001410015100140.88170.0156840.5220620.5526267.6704664.238900
578_R_33_10015_1001210015100120.86080.0517380.6239000.5458887.6739704.189128
579_R_34_10014_1001710014100170.82860.0903140.7827200.4923967.6214093.752754
580_R_34_10014_1001210014100120.87310.0394440.5645420.5534437.6739704.247106
581_R_34_10014_1001510014100150.89870.0844200.4432030.4449077.6704663.412645
582_R_34_10014_1001610014100160.84190.0550360.7154670.2745827.6601562.103339
583_R_34_10014_1001710014100170.82860.0903140.7827200.4924047.6214093.752814
584_R_34_10014_1001210014100120.87310.0394440.5645420.5534407.6739704.247084
585_R_34_10014_1001510014100150.89870.0844200.4432030.4449207.6704663.412742
586_R_34_10014_1001610014100160.84190.0550360.7154670.2745907.6601562.103405
587_R_34_10014_1001710014100170.82860.0860130.7827200.4924007.6214093.752784
588_R_34_10014_1001210014100120.87310.0394440.5645420.5534237.6739704.246949
589_R_34_10014_1001510014100150.89870.0844200.4432030.4449237.6704663.412770
590_R_34_10014_1001610014100160.84190.0550360.7154670.2745847.6601562.103355
591_R_35_10012_1001510012100150.91860.0462720.3523800.4098607.6739703.145256
592_R_35_10012_1001610012100160.86210.3608450.6208660.2581697.6739701.981181
593_R_35_10012_1001410012100140.92920.0770230.3053410.4153077.6739703.187057
594_R_35_10012_1001710012100170.84360.4788040.7080910.1712067.6739701.313831
595_R_35_10012_1001310012100130.89430.1650710.4649890.5276917.6739704.049487
596_R_35_10012_1001510012100150.91860.0480520.3523800.4098647.6739703.145283
597_R_35_10012_1001610012100160.86210.3608450.6208660.2581747.6739701.981221
598_R_35_10012_1001410012100140.92920.0756480.3053410.4153107.6739703.187073
599_R_35_10012_1001710012100170.84360.4720610.7080910.1712067.6739701.313826
600_R_35_10012_1001310012100130.89430.1650710.4649890.5276857.6739704.049441
601_R_35_10012_1001510012100150.91860.0462720.3523800.4098667.6739703.145299
602_R_35_10012_1001610012100160.86210.3608450.6208660.2581727.6739701.981206
603_R_35_10012_1001410012100140.92920.0742720.3053410.4153017.6739703.187007
604_R_35_10012_1001710012100170.84360.4720610.7080910.1712077.6739701.313834
605_R_35_10012_1001310012100130.89430.1650710.4649890.5276957.6739704.049513
606_R_36_10033_1001910033100190.82730.5816210.7898560.3804857.5776762.883195
607_R_36_10033_1002510033100250.85970.3688570.6316670.4690817.5782343.554809
608_R_36_10033_1003910033100390.83970.1901730.7279040.3451417.5886282.619150
609_R_36_10033_1003210033100320.91870.0842240.3525980.5390177.5670064.078747
610_R_36_10033_1003110033100310.89170.0594460.4755690.4411947.5654533.337831
611_R_36_10033_1001910033100190.82730.6677870.7898560.3804787.5776762.883140
612_R_36_10033_1002510033100250.85970.3688570.6316670.4690777.5782343.554777
613_R_36_10033_1003910033100390.83970.1901730.7279040.3451367.5886282.619106
614_R_36_10033_1003210033100320.91870.1099190.3525980.5390297.5670064.078839
615_R_36_10033_1003110033100310.89170.0624180.4755690.4411837.5654533.337746
616_R_36_10033_1001910033100190.82730.9262860.7898560.3804837.5776762.883175
617_R_36_10033_1002510033100250.85970.3688570.6316670.4690767.5782343.554766
618_R_36_10033_1003910033100390.83970.1901730.7279040.3451467.5886282.619184
619_R_36_10033_1003210033100320.91870.0328330.3525980.5390417.5670064.078930
620_R_36_10033_1003110033100310.89170.0624180.4755690.4411847.5654533.337758
621_R_37_10032_1003310032100330.87760.3030350.5415940.6372747.5670064.822256
622_R_37_10032_1003910032100390.88680.1500000.5010000.3325637.5886282.523699
623_R_37_10032_1003810032100380.79520.2115660.9562780.1958867.6137741.491430
624_R_37_10032_1003110032100310.88030.2474230.5305320.5558327.5670064.205986
625_R_37_10032_1003310032100330.87760.1891280.5415940.6372717.5670064.822237
626_R_37_10032_1003910032100390.88680.2310000.5010000.3325617.5886282.523680
627_R_37_10032_1003810032100380.79520.2792670.9562780.1958837.6137741.491412
628_R_37_10032_1003110032100310.88030.2450440.5305320.5558387.5670064.206026
629_R_37_10032_1003310032100330.87760.2579020.5415940.6372497.5670064.822064
630_R_37_10032_1003910032100390.88680.1380000.5010000.3325567.5886282.523641
631_R_37_10032_1003810032100380.79520.1015520.9562780.1958857.6137741.491423
632_R_37_10032_1003110032100310.88030.2450440.5305320.5558357.5670064.206007
633_R_38_10031_1001710031100170.79820.6596770.9477050.3068447.5772662.325040
634_R_38_10031_1003310031100330.88850.0306010.4926810.4311007.5654533.261466
635_R_38_10031_1003210031100320.90730.0755400.4034930.5245787.5670063.969484
636_R_38_10031_1003010031100300.81570.4964080.8489290.4416997.6260033.368399
637_R_38_10031_1001710031100170.79820.6596770.9477050.3068407.5772662.325011
638_R_38_10031_1003310031100330.88850.0306010.4926810.4311037.5654533.261490
639_R_38_10031_1003210031100320.90730.1252860.4034930.5245657.5670063.969387
640_R_38_10031_1003010031100300.81570.4964080.8489290.4417017.6260033.368415
641_R_38_10031_1001710031100170.79820.6596770.9477050.3068427.5772662.325021
642_R_38_10031_1003310031100330.88850.0306010.4926810.4311147.5654533.261572
643_R_38_10031_1003210031100320.90730.0755400.4034930.5245627.5670063.969367
644_R_38_10031_1003010031100300.81570.6618770.8489290.4417057.6260033.368441
645_R_39_10038_1004110038100410.86150.1439630.6205290.4206317.6221593.206119
646_R_39_10038_1003710038100370.89710.0227640.4520240.3296017.6734932.529189
647_R_39_10038_1003610038100360.84540.2678700.6990770.3204167.7114102.470856
648_R_39_10038_1003210038100320.82790.5831370.7893690.4297967.6137743.272368
649_R_39_10038_1003910038100390.92280.1468040.3329940.5541837.6137744.219424
650_R_39_10038_1004110038100410.86150.1936050.6205290.4206347.6221593.206136
651_R_39_10038_1003710038100370.89710.1170710.4520240.3295947.6734932.529134
652_R_39_10038_1003610038100360.84540.3658720.6990770.3204187.7114102.470877
653_R_39_10038_1003210038100320.82790.5902490.7893690.4297947.6137743.272353
654_R_39_10038_1003910038100390.92280.1491910.3329940.5541837.6137744.219425
655_R_39_10038_1004110038100410.86150.1389990.6205290.4206387.6221593.206171
656_R_39_10038_1003710038100370.89710.1170710.4520240.3296007.6734932.529181
657_R_39_10038_1003610038100360.84540.2940040.6990770.3204097.7114102.470803
658_R_39_10038_1003210038100320.82790.5902490.7893690.4297937.6137743.272345
659_R_39_10038_1003910038100390.92280.1623200.3329940.5541657.6137744.219289
660_R_40_10039_1003210039100320.90400.2874910.4197880.4714157.5886283.577397
661_R_40_10039_1003310039100330.85660.1935890.6452970.3826447.5886282.903741
662_R_40_10039_1003710039100370.84080.4046940.7284490.3240727.6734932.486765
663_R_40_10039_1003810039100380.92700.0507870.3148770.5488307.6137744.178666
664_R_40_10039_1002910039100290.82980.2445660.7861040.2852307.6414022.179561
665_R_40_10039_1003210039100320.90400.2900350.4197880.4714247.5886283.577464
666_R_40_10039_1003310039100330.85660.1877230.6452970.3826337.5886282.903661
667_R_40_10039_1003710039100370.84080.4046940.7284490.3240687.6734932.486734
668_R_40_10039_1003810039100380.92700.0507870.3148770.5488367.6137744.178716
669_R_40_10039_1002910039100290.82980.5764760.7861040.2852297.6414022.179553
670_R_40_10039_1003210039100320.90400.2900350.4197880.4714197.5886283.577424
671_R_40_10039_1003310039100330.85660.1877230.6452970.3826347.5886282.903668
672_R_40_10039_1003710039100370.84080.4046940.7284490.3240667.6734932.486718
673_R_40_10039_1003810039100380.92700.0496580.3148770.5488187.6137744.178580
674_R_40_10039_1002910039100290.82980.5764760.7861040.2852297.6414022.179553
675_R_41_10035_1003710035100370.87030.0585620.5856170.2184557.7371161.690214
676_R_41_10035_1003610035100360.90520.1359840.4153040.3433607.7371162.656617
677_R_41_10035_1003410035100340.84210.3683340.7206540.4307677.8921323.399671
678_R_41_10035_1003010035100300.86100.2028870.6340210.2358257.7371161.824608
679_R_41_10035_1002910035100290.89770.0575840.4510760.2806377.7371162.171325
680_R_41_10035_1003710035100370.87030.0732020.5856170.2184587.7371161.690231
681_R_41_10035_1003610035100360.90520.1359840.4153040.3433587.7371162.656597
682_R_41_10035_1003410035100340.84210.3763410.7206540.4307677.8921323.399671
683_R_41_10035_1003010035100300.86100.2028870.6340210.2358257.7371161.824602
684_R_41_10035_1002910035100290.89770.0479870.4510760.2806337.7371162.171286
685_R_41_10035_1003710035100370.87030.0366010.5856170.2184587.7371161.690231
686_R_41_10035_1003610035100360.90520.0110260.4153040.3433587.7371162.656604
687_R_41_10035_1003410035100340.84210.3683340.7206540.4307667.8921323.399664
688_R_41_10035_1003010035100300.86100.4142270.6340210.2358237.7371161.824593
689_R_41_10035_1002910035100290.89770.2063430.4510760.2806327.7371162.171282
690_R_42_10036_1003810036100380.87880.3482920.5378030.3496627.7114102.696387
691_R_42_10036_1003710036100370.92930.0769850.3050330.4605517.7114103.551497
692_R_42_10036_1003410036100340.75490.5207531.2150910.1634107.8921321.289654
693_R_42_10036_1003510036100350.91440.3451330.3716810.2771567.7371162.144387
694_R_42_10036_1003810036100380.87880.3380480.5378030.3496587.7114102.696356
695_R_42_10036_1003710036100370.92930.1031300.3050330.4605657.7114103.551607
696_R_42_10036_1003410036100340.75490.3471691.2150910.1634107.8921321.289651
697_R_42_10036_1003510036100350.91440.3949120.3716810.2771567.7371162.144392
698_R_42_10036_1003810036100380.87880.2817060.5378030.3496577.7114102.696349
699_R_42_10036_1003710036100370.92930.1336330.3050330.4605727.7114103.551657
700_R_42_10036_1003410036100340.75490.1952821.2150910.1634117.8921321.289658
701_R_42_10036_1003510036100350.91440.4347350.3716810.2771577.7371162.144397
702_R_43_10028_1001110028100110.78890.1442941.0100590.3596427.7760232.796583
703_R_43_10028_1003010028100300.87730.1444810.5504040.2940867.7739832.286218
704_R_43_10028_1002910028100290.88070.3041170.5355100.2834807.7739832.203771
705_R_43_10028_1003410028100340.84060.6381130.7292720.4121997.8921323.253130
706_R_43_10028_1001110028100110.78890.5932091.0100590.3596447.7760232.796597
707_R_43_10028_1003010028100300.87730.0619200.5504040.2940867.7739832.286222
708_R_43_10028_1002910028100290.88070.0330560.5355100.2834797.7739832.203760
709_R_43_10028_1003410028100340.84060.2370130.7292720.4122037.8921323.253158
710_R_43_10028_1001110028100110.78890.4649481.0100590.3596487.7760232.796628
711_R_43_10028_1003010028100300.87730.0137600.5504040.2940897.7739832.286242
712_R_43_10028_1002910028100290.88070.0330560.5355100.2834807.7739832.203771
713_R_43_10028_1003410028100340.84060.0911590.7292720.4121997.8921323.253130
714_R_44_10034_1002810034100280.86950.4253990.5895880.4216497.8921323.327706
715_R_44_10034_1003510034100350.92440.0996770.3297020.2874377.8921322.268487
716_R_44_10034_1003710034100370.84700.3112940.7208900.0527537.8921320.416337
717_R_44_10034_1003610034100360.87830.1185120.5602360.1526447.8921321.204686
718_R_44_10034_1004510034100450.84400.0762630.7117900.5214318.1088744.228221
719_R_44_10034_1002810034100280.86950.4403250.5895880.4216517.8921323.327722
720_R_44_10034_1003510034100350.92440.0575060.3297020.2874397.8921322.268505
721_R_44_10034_1003710034100370.84700.0327680.7208900.0527537.8921320.416336
722_R_44_10034_1003610034100360.87830.3124400.5602360.1526457.8921321.204695
723_R_44_10034_1004510034100450.84400.1525270.7117900.5214358.1088744.228251
724_R_44_10034_1002810034100280.86950.2537470.5895880.4216437.8921323.327662
725_R_44_10034_1003510034100350.92440.0498390.3297020.2874397.8921322.268509
726_R_44_10034_1003710034100370.84700.3112940.7208900.0527537.8921320.416335
727_R_44_10034_1003610034100360.87830.0646430.5602360.1526457.8921321.204691
728_R_44_10034_1004510034100450.84400.0338950.7117900.5214338.1088744.228236
729_R_45_10030_1002810030100280.82170.0899790.8298060.3073027.7739832.388961
730_R_45_10030_1003110030100310.83610.2303270.7485640.5186397.6260033.955145
731_R_45_10030_1002910030100290.92680.0234380.3148910.5856567.6414024.475231
732_R_45_10030_1003510030100350.81650.0446400.8593190.2249187.7371161.740217
733_R_45_10030_1002810030100280.82170.1899550.8298060.3073017.7739832.388953
734_R_45_10030_1003110030100310.83610.1663480.7485640.5186377.6260033.955125
735_R_45_10030_1002910030100290.92680.0132480.3148910.5856537.6414024.475206
736_R_45_10030_1003510030100350.81650.0111600.8593190.2249187.7371161.740215
737_R_45_10030_1002810030100280.82170.2099510.8298060.3073027.7739832.388961
738_R_45_10030_1003110030100310.83610.2303270.7485640.5186337.6260033.955095
739_R_45_10030_1002910030100290.92680.0275150.3148910.5856477.6414024.475164
740_R_45_10030_1003510030100350.81650.0111600.8593190.2249187.7371161.740220
741_R_46_10029_1003010029100300.91440.0393260.3718080.6442007.6414024.922588
742_R_46_10029_1003910029100390.81840.2609470.8387570.3602297.6414022.752655
743_R_46_10029_1003510029100350.85210.2566940.6729560.3256567.7371162.519637
744_R_46_10029_1002810029100280.80860.6364070.8909700.3202527.7739832.489637
745_R_46_10029_1003010029100300.91440.0119170.3718080.6442217.6414024.922750
746_R_46_10029_1003910029100390.81840.2609470.8387570.3602257.6414022.752624
747_R_46_10029_1003510029100350.85210.0901900.6729560.3256587.7371162.519653
748_R_46_10029_1002810029100280.80860.3288110.8909700.3202537.7739832.489641
749_R_46_10029_1003010029100300.91440.0297920.3718080.6441847.6414024.922468
750_R_46_10029_1003910029100390.81840.2609470.8387570.3602287.6414022.752649
751_R_46_10029_1003510029100350.85210.1387540.6729560.3256597.7371162.519658
752_R_46_10029_1002810029100280.80860.4348780.8909700.3202527.7739832.489632
753_R_47_10053_1004410053100440.86060.3650870.6306050.2223687.9302611.763438
754_R_47_10053_1005210053100520.92320.2255170.3330310.3218677.9302612.552486
755_R_47_10053_1005910053100590.81140.2609870.8778640.3634728.2892663.012920
756_R_47_10053_1004910053100490.87900.2185600.5375390.3189427.9302612.529296
757_R_47_10053_1005010053100500.93690.0313290.2700280.4091777.9302613.244884
758_R_47_10053_1005110053100510.91440.0620000.3720020.3459777.9302612.743689
759_R_47_10053_1004410053100440.86060.3236000.6306050.2223677.9302611.763430
760_R_47_10053_1005210053100520.92320.2150280.3330310.3218717.9302612.552522
761_R_47_10053_1005910053100590.81140.4745210.8778640.3634698.2892663.012891
762_R_47_10053_1004910053100490.87900.2303740.5375390.3189467.9302612.529325
763_R_47_10053_1005010053100500.93690.0417720.2700280.4091817.9302613.244914
764_R_47_10053_1005110053100510.91440.0713000.3720020.3459817.9302612.743718
765_R_47_10053_1004410053100440.86060.3236000.6306050.2223667.9302611.763423
766_R_47_10053_1005210053100520.92320.3120530.3330310.3218667.9302612.552478
767_R_47_10053_1005910053100590.81140.2253970.8778640.3634718.2892663.012910
768_R_47_10053_1004910053100490.87900.1890250.5375390.3189457.9302612.529317
769_R_47_10053_1005010053100500.93690.0119350.2700280.4091767.9302613.244872
770_R_47_10053_1005110053100510.91440.0093000.3720020.3459767.9302612.743679
771_R_48_10049_1005010049100500.90350.0834070.4222480.5064127.9159304.008721
772_R_48_10049_1005310049100530.83550.2248580.7548790.4106287.9302613.256387
773_R_48_10049_1004710049100470.88270.2290260.5234890.2137637.9496041.699334
774_R_48_10049_1004610049100460.82220.5305680.8356450.1628307.9633351.296669
775_R_48_10049_1004810049100480.92870.1781160.3082010.3991257.9159303.159449
776_R_48_10049_1005010049100500.90350.0130320.4222480.5064247.9159304.008813
777_R_48_10049_1005310049100530.83550.2248580.7548790.4106327.9302613.256415
778_R_48_10049_1004710049100470.88270.0719800.5234890.2137637.9496041.699329
779_R_48_10049_1004610049100460.82220.1459060.8356450.1628307.9633351.296669
780_R_48_10049_1004810049100480.92870.1761150.3082010.3991317.9159303.159492
781_R_48_10049_1005010049100500.90350.0130320.4222480.5064267.9159304.008834
782_R_48_10049_1005310049100530.83550.2248580.7548790.4106287.9302613.256387
783_R_48_10049_1004710049100470.88270.3795290.5234890.2137637.9496041.699333
784_R_48_10049_1004610049100460.82220.1193780.8356450.1628317.9633351.296679
785_R_48_10049_1004810049100480.92870.1761150.3082010.3991287.9159303.159473
786_R_49_10050_1005110050100510.90820.0461760.4001910.4805397.8854103.789251
787_R_49_10050_1005210050100520.85400.0182710.6577460.3073417.8854102.423511
788_R_49_10050_1005310050100530.90860.0864390.3976170.4611577.9302613.657093
789_R_49_10050_1004910050100490.90610.1927550.4108710.4282687.9159303.390142
790_R_49_10050_1004810050100480.80460.0732720.9106630.2577777.9083372.038587
791_R_49_10050_1005110050100510.90820.0615680.4001910.4805257.8854103.789134
792_R_49_10050_1005210050100520.85400.1766170.6577460.3073477.8854102.423555
793_R_49_10050_1005310050100530.90860.0626680.3976170.4611587.9302613.657100
794_R_49_10050_1004910050100490.90610.1192030.4108710.4282657.9159303.390115
795_R_49_10050_1004810050100480.80460.0732720.9106630.2577787.9083372.038592
796_R_49_10050_1005110050100510.90820.0549710.4001910.4805367.8854103.789226
797_R_49_10050_1005210050100520.85400.0365410.6577460.3073497.8854102.423570
798_R_49_10050_1005310050100530.90860.0907600.3976170.4611627.9302613.657134
799_R_49_10050_1004910050100490.90610.0405800.4108710.4282707.9159303.390159
800_R_49_10050_1004810050100480.80460.0732720.9106630.2577787.9083372.038592
801_R_50_10048_1005010048100500.84300.3280030.7148780.3153517.9083372.493905
802_R_50_10048_1004910048100490.91220.0197160.3819890.4487197.9159303.552027
803_R_50_10048_1005710048100570.82490.0108440.8133020.2557228.2378892.106606
804_R_50_10048_1004710048100470.91660.0373330.3616670.4147647.9496043.297211
805_R_50_10048_1004610048100460.86380.1712430.6152070.3436797.9633352.736834
806_R_50_10048_1005010048100500.84300.0084100.7148780.3153537.9083372.493922
807_R_50_10048_1004910048100490.91220.0616110.3819890.4487157.9159303.551998
808_R_50_10048_1005710048100570.82490.0542200.8133020.2557238.2378892.106617
809_R_50_10048_1004710048100470.91660.0280000.3616670.4147617.9496043.297187
810_R_50_10048_1004610048100460.86380.0824500.6152070.3436757.9633352.736797
811_R_50_10048_1005010048100500.84300.2270790.7148780.3153507.9083372.493898
812_R_50_10048_1004910048100490.91220.0024640.3819890.4487127.9159303.551973
813_R_50_10048_1005710048100570.82490.0216880.8133020.2557238.2378892.106620
814_R_50_10048_1004710048100470.91660.0093330.3616670.4147587.9496043.297162
815_R_50_10048_1004610048100460.86380.2092970.6152070.3436757.9633352.736802
816_R_51_10047_1004810047100480.91380.0168820.3738100.3999797.9496043.179671
817_R_51_10047_1004910047100490.81050.6871350.8879900.3040017.9496042.416686
818_R_51_10047_1004510047100450.77781.0172571.0590620.2837108.1088742.300565
819_R_51_10047_1004610047100460.93150.1721500.2943630.4666777.9633353.716306
820_R_51_10047_1004810047100480.91380.0723500.3738100.3999817.9496043.179690
821_R_51_10047_1004910047100490.81050.3065680.8879900.3040017.9496042.416688
822_R_51_10047_1004510047100450.77781.0869321.0590620.2837128.1088742.300583
823_R_51_10047_1004610047100460.93150.1406110.2943630.4666737.9633353.716275
824_R_51_10047_1004810047100480.91380.0072350.3738100.3999757.9496043.179641
825_R_51_10047_1004910047100490.81050.8245620.8879900.3039977.9496042.416659
826_R_51_10047_1004510047100450.77780.5852711.0590620.2837108.1088742.300566
827_R_51_10047_1004610047100460.93150.1721500.2943630.4666777.9633353.716302
828_R_52_10046_1004810046100480.86460.8007460.6115940.3140367.9633352.500773
829_R_52_10046_1004710046100470.93650.0889290.2728770.4495067.9633353.579567
830_R_52_10046_1005510046100550.79790.3084150.9532820.1762718.3221811.466955
831_R_52_10046_1004510046100450.84500.8943950.7071960.4373688.1088743.546558
832_R_52_10046_1004810046100480.86460.7818310.6115940.3140357.9633352.500765
833_R_52_10046_1004710046100470.93650.0828380.2728770.4495107.9633353.579598
834_R_52_10046_1005510046100550.79790.8972070.9532820.1762708.3221811.466949
835_R_52_10046_1004510046100450.84500.8666610.7071960.4373648.1088743.546532
836_R_52_10046_1004810046100480.86460.7250850.6115940.3140347.9633352.500755
837_R_52_10046_1004710046100470.93650.0596920.2728770.4495177.9633353.579657
838_R_52_10046_1005510046100550.79790.5046790.9532820.1762718.3221811.466963
839_R_52_10046_1004510046100450.84500.8666610.7071960.4373628.1088743.546516
840_R_53_10045_1003410045100340.82330.4127180.8158380.4705608.1088743.815709
841_R_53_10045_1004610045100460.89580.3775380.4614350.3380468.1088742.741170
842_R_53_10045_1004710045100470.85650.1889880.6569590.2354368.1088741.909124
843_R_53_10045_1005410045100540.79250.1140880.9840100.4395328.5511813.758521
844_R_53_10045_1003410045100340.82330.1343730.8158380.4705578.1088743.815684
845_R_53_10045_1004610045100460.89580.2703360.4614350.3380498.1088742.741195
846_R_53_10045_1004710045100470.85650.0809950.6569590.2354368.1088741.909120
847_R_53_10045_1005410045100540.79250.4848740.9840100.4395308.5511813.758500
848_R_53_10045_1003410045100340.82330.4223160.8158380.4705628.1088743.815725
849_R_53_10045_1004610045100460.89580.2470310.4614350.3380468.1088742.741175
850_R_53_10045_1004710045100470.85650.0629960.6569590.2354358.1088741.909111
851_R_53_10045_1005410045100540.79250.4848740.9840100.4395288.5511813.758485
852_R_54_10059_1005310059100530.90240.0982250.4358750.2652538.2892662.198757
853_R_54_10059_1005210059100520.84330.3738790.7328030.2334198.2892661.934870
854_R_54_10059_1005810059100580.91410.1183340.3752880.4449978.3375203.710170
855_R_54_10059_1005610059100560.83520.1296240.7962610.1819518.3789571.524560
856_R_54_10059_1005710059100570.89620.1580700.4658910.1791038.2892661.484634
857_R_54_10059_1005310059100530.90240.0429740.4358750.2652568.2892662.198778
858_R_54_10059_1005210059100520.84330.0598210.7328030.2334208.2892661.934879
859_R_54_10059_1005810059100580.91410.0743810.3752880.4449998.3375203.710189
860_R_54_10059_1005610059100560.83520.1481420.7962610.1819508.3789571.524553
861_R_54_10059_1005710059100570.89620.0000000.4658910.1791028.2892661.484626
862_R_54_10059_1005310059100530.90240.1596160.4358750.2652558.2892662.198768
863_R_54_10059_1005210059100520.84330.2093720.7328030.2334218.2892661.934893
864_R_54_10059_1005810059100580.91410.0101430.3752880.4449968.3375203.710159
865_R_54_10059_1005610059100560.83520.1481420.7962610.1819518.3789571.524558
866_R_54_10059_1005710059100570.89620.1497510.4658910.1791028.2892661.484625
867_R_55_10058_1005910058100590.83600.0258200.7487730.6466258.3375205.391252
868_R_55_10058_1005610058100560.87150.3137690.5799980.1364198.3789571.143047
869_R_55_10058_1005510058100550.82890.0769570.8003570.0786208.3375200.655495
870_R_55_10058_1005710058100570.91960.2339030.3490550.2813018.3375202.345350
871_R_55_10058_1005910058100590.83600.1678280.7487730.6466228.3375205.391223
872_R_55_10058_1005610058100560.87150.3803260.5799980.1364198.3789571.143047
873_R_55_10058_1005510058100550.82890.0923490.8003570.0786208.3375200.655494
874_R_55_10058_1005710058100570.91960.2303050.3490550.2813028.3375202.345361
875_R_55_10058_1005910058100590.83600.3227470.7487730.6466258.3375205.391252
876_R_55_10058_1005610058100560.87150.2852450.5799980.1364188.3789571.143038
877_R_55_10058_1005510058100550.82890.1077400.8003570.0786208.3375200.655499
878_R_55_10058_1005710058100570.91960.2303050.3490550.2813058.3375202.345390
879_R_56_10057_1005910057100590.81410.1489970.8790830.2155348.2892661.786619
880_R_56_10057_1005810057100580.89190.1016040.4789910.3878938.3375203.234068
881_R_56_10057_1005610057100560.90940.0127350.3947880.4064968.3789573.406010
882_R_56_10057_1005510057100550.88680.0795270.5036710.3451258.3221812.872196
883_R_56_10057_1004810057100480.85180.3763020.6791790.2988288.2378892.461712
884_R_56_10057_1005910057100590.81410.3426930.8790830.2155338.2892661.786607
885_R_56_10057_1005810057100580.89190.0822510.4789910.3878848.3375203.233994
886_R_56_10057_1005610057100560.90940.0254700.3947880.4064918.3789573.405971
887_R_56_10057_1005510057100550.88680.0636220.5036710.3451268.3221812.872199
888_R_56_10057_1004810057100480.85180.2936990.6791790.2988268.2378892.461697
889_R_56_10057_1005910057100590.81410.1936960.8790830.2155368.2892661.786634
890_R_56_10057_1005810057100580.89190.0870890.4789910.3878868.3375203.234008
891_R_56_10057_1005610057100560.90940.0445730.3947880.4065008.3789573.406043
892_R_56_10057_1005510057100550.88680.0583200.5036710.3451268.3221812.872197
893_R_56_10057_1004810057100480.85180.4772610.6791790.2988268.2378892.461698
894_R_57_10055_1005710055100570.91670.1209440.3628310.2679548.3221812.229959
895_R_57_10055_1005810055100580.81670.7584920.8739140.1973638.3375201.645522
896_R_57_10055_1005610055100560.94470.0595580.2360260.4403798.3789573.689920
897_R_57_10055_1005410055100540.83320.4768280.7735200.4226208.5511813.613901
898_R_57_10055_1004610055100460.84650.1171240.7027460.2762048.3221812.298621
899_R_57_10055_1005710055100570.91670.4642680.3628310.2679538.3221812.229956
900_R_57_10055_1005810055100580.81671.9456960.8739140.1973638.3375201.645520
901_R_57_10055_1005610055100560.94470.0705870.2360260.4403868.3789573.689973
902_R_57_10055_1005410055100540.83320.5086160.7735200.4226228.5511813.613917
903_R_57_10055_1004610055100460.84660.5639590.7022890.2762038.3221812.298610
904_R_57_10055_1005710055100570.91670.0585210.3628310.2679518.3221812.229933
905_R_57_10055_1005810055100580.81670.1484010.8739140.1973638.3375201.645522
906_R_57_10055_1005610055100560.94470.0165440.2360260.4403808.3789573.689929
907_R_57_10055_1005410055100540.83320.0847690.7735200.4226238.5511813.613922
908_R_57_10055_1004610055100460.84660.0532040.7022890.2762038.3221812.298611
909_R_58_10056_1005810056100580.80080.6927560.9433280.2628588.3789572.202477
910_R_58_10056_1005710056100570.91520.0268200.3695140.3534708.3789572.961712
911_R_58_10056_1005410056100540.77660.1769381.0793220.3064468.5511812.620474
912_R_58_10056_1005510056100550.94060.0805590.2547100.4421318.3789573.704597
913_R_58_10056_1005810056100580.80080.2947900.9433280.2628608.3789572.202495
914_R_58_10056_1005710056100570.91520.1817770.3695140.3534768.3789572.961764
915_R_58_10056_1005410056100540.77660.3361821.0793220.3064468.5511812.620477
916_R_58_10056_1005510056100550.94060.0852980.2547100.4421298.3789573.704578
917_R_58_10056_1005810056100580.80080.0442180.9433280.2628578.3789572.202469
918_R_58_10056_1005710056100570.91520.1877370.3695140.3534748.3789572.961746
919_R_58_10056_1005410056100540.77660.4246511.0793220.3064468.5511812.620478
920_R_58_10056_1005510056100550.94060.0805590.2547100.4421358.3789573.704634
921_R_59_10054_1004510054100450.82260.6340000.8290770.3433058.5511812.935661
922_R_59_10054_1005510054100550.88070.2425180.5380860.1850408.5511811.582307
923_R_59_10054_1005610054100560.83190.4526730.7855210.1894328.5511811.619867
924_R_59_10054_1004510054100450.82260.0853460.8290770.3433048.5511812.935658
925_R_59_10054_1005510054100550.88070.3258830.5380860.1850418.5511811.582315
926_R_59_10054_1005610054100560.83190.3195340.7855210.1894328.5511811.619868
927_R_59_10054_1004510054100450.82260.0853460.8290770.3433048.5511812.935651
928_R_59_10054_1005510054100550.88070.1288370.5380860.1850408.5511811.582315
929_R_59_10054_1005610054100560.83190.7322660.7855210.1894328.5511811.619871
930_R_60_10047_1004810047100480.84940.9985850.6783630.1421637.9496041.130139
931_R_60_10047_812100478120.79731.0458770.9422760.7084488.0122385.676252
932_R_60_10047_816100478160.80681.7293940.8909000.7916657.9496046.293427
933_R_60_10047_FH310047FH30.81720.8679620.8383730.5751507.9496044.572216
934_R_60_10047_1004810047100480.84941.0575730.6783630.1421687.9496041.130179
935_R_60_10047_812100478120.79731.0458770.9422760.7084448.0122385.676221
936_R_60_10047_816100478160.80681.6464180.8909000.7916697.9496046.293454
937_R_60_10047_FH310047FH30.81720.7397410.8383730.5751447.9496044.572166
938_R_60_10047_1004810047100480.84941.0533590.6783630.1421677.9496041.130170
939_R_60_10047_812100478120.79731.0458770.9422760.7084548.0122385.676304
940_R_60_10047_816100478160.80681.7337610.8909000.7916757.9496046.293500
941_R_60_10047_FH310047FH30.81720.9419360.8383730.5751387.9496044.572120
942_R_61_10046_1004810046100480.78881.6325800.9933170.0267617.9633350.213105
943_R_61_10046_FH310046FH30.79881.5903570.9397560.3576167.9633352.847819
944_R_61_10046_812100468120.83221.0221610.7620381.0809678.0122388.660969
945_R_61_10046_1004810046100480.78881.6227450.9933170.0267617.9633350.213107
946_R_61_10046_FH310046FH30.79881.3554180.9397560.3576177.9633352.847821
947_R_61_10046_812100468120.83221.0221610.7620381.0809648.0122388.660939
948_R_61_10046_1004810046100480.78881.6325800.9933170.0267617.9633350.213105
949_R_61_10046_FH310046FH30.79881.3554180.9397560.3576177.9633352.847826
950_R_61_10046_812100468120.83221.0221610.7620381.0809368.0122388.660717
951_R_62_10048_1004610048100460.81380.9277610.8670660.0266177.9633350.211957
952_R_62_10048_812100488120.78640.1320211.0121610.3080258.0122382.467968
953_R_62_10048_816100488160.81951.3735950.8253111.0009127.9302547.937485
954_R_62_10048_FH310048FH30.86901.1673380.5805840.9375607.9388437.443139
955_R_62_10048_1004610048100460.81380.9364310.8670660.0266177.9633350.211959
956_R_62_10048_812100488120.78640.3520561.0121610.3080258.0122382.467973
957_R_62_10048_816100488160.81951.3995660.8253111.0009067.9302547.937441
958_R_62_10048_FH310048FH30.86901.1678990.5805840.9374767.9388437.442478
959_R_62_10048_1004610048100460.81380.9277610.8670660.0266177.9633350.211962
960_R_62_10048_812100488120.78640.3520561.0121610.3080288.0122382.467995
961_R_62_10048_816100488160.81951.3937950.8253111.0009297.9302547.937621
962_R_62_10048_FH310048FH30.86901.1678990.5805840.9374097.9388437.441941
963_R_63_10056_1005510056100550.91840.0325490.3531590.2151598.3789571.802805
964_R_63_10056_666100566660.70160.0484191.5009910.0951058.4810010.806587
965_R_63_10056_1005510056100550.91840.0325490.3531590.2151558.3789571.802776
966_R_63_10056_666100566660.70160.0645591.5009910.0951058.4810010.806584
967_R_63_10056_1005510056100550.91840.0325490.3531590.2151598.3789571.802806
968_R_63_10056_666100566660.70160.0645591.5009910.0951058.4810010.806587
969_R_64_10055_1005610055100560.85590.2816510.6466470.2929028.3789572.454217
970_R_64_10055_666100556660.72220.3492471.3661730.2695068.4810012.285682
971_R_64_10055_1005610055100560.85590.2787770.6466470.2929058.3789572.454241
972_R_64_10055_666100556660.72220.3492471.3661730.2695068.4810012.285679
973_R_64_10055_1005610055100560.85590.2787770.6466470.2929058.3789572.454234
974_R_64_10055_666100556660.72220.3492471.3661730.2695088.4810012.285694
975_R_65_10054_1005510054100550.68200.0000001.6161060.0428548.5511810.366452
976_R_65_10054_666100546660.74940.0202471.2013321.1462308.5511819.801619
977_R_65_10054_1005510054100550.68200.0000001.6161060.0428548.5511810.366456
978_R_65_10054_666100546660.74940.0134981.2013321.1462208.5511819.801538
979_R_65_10054_1005510054100550.68200.0202011.6161060.0428548.5511810.366454
980_R_65_10054_666100546660.74940.0134981.2013321.1462388.5511819.801691
981_R_66_10035_1003710035100370.68710.5121381.5893940.0970597.7371160.750954
982_R_66_10035_FH1110035FH110.82111.8407140.8180951.0062167.8503207.899117
983_R_66_10035_FH1410035FH140.84820.7807800.6840670.8889917.8442786.973492
984_R_66_10035_1003710035100370.68710.5827781.5893940.0970597.7371160.750955
985_R_66_10035_FH1110035FH110.82111.8407140.8180951.0062217.8503207.899156
986_R_66_10035_FH1410035FH140.84820.7972920.6840670.8890147.8442786.973677
987_R_66_10035_1003710035100370.68710.4414981.5893940.0970587.7371160.750952
988_R_66_10035_FH1110035FH110.82111.7412160.8180951.0062347.8503207.899256
989_R_66_10035_FH1410035FH140.84820.7100150.6840670.8890377.8442786.973856
990_R_67_10036_1003710036100370.89200.5880000.4748380.4723157.7114103.642215
991_R_67_10036_FH1110036FH110.77311.8322001.0796890.4129667.8503203.241913
992_R_67_10036_FH1410036FH140.77451.0418201.0747200.3392717.8442782.661333
993_R_67_10036_1003710036100370.89200.5902190.4748380.4723207.7114103.642251
994_R_67_10036_FH1110036FH110.77311.6577051.0796890.4129667.8503203.241914
995_R_67_10036_FH1410036FH140.77451.0747201.0747200.3392787.8442782.661394
996_R_67_10036_1003710036100370.89200.6190650.4748380.4723257.7114103.642289
997_R_67_10036_FH1110036FH110.77311.6249871.0796890.4129697.8503203.241936
998_R_67_10036_FH1410036FH140.77451.0308541.0747200.3392767.8442782.661372
999_R_68_10034_1003510034100350.75680.1479951.1716260.0671967.8921320.530321
1000_R_68_10034_FH1410034FH140.80660.1097840.9018010.4975027.8921323.926350
1001_R_68_10034_1003510034100350.75680.0493321.1716260.0671977.8921320.530327
1002_R_68_10034_FH1410034FH140.80660.0470500.9018010.4975067.8921323.926382
1003_R_68_10034_1003510034100350.75680.0863301.1716260.0671967.8921320.530319
1004_R_68_10034_FH1410034FH140.80660.1097840.9018010.4975037.8921323.926357
1005_R_69_10037_1004010037100400.89870.0362640.4429370.3753717.6740062.880596
1006_R_69_10037_FH410037FH40.75890.4627291.1519000.8082997.8558606.349885
1007_R_69_10037_FH1110037FH110.71730.5735051.4146450.2058857.8503201.616267
1008_R_69_10037_1004010037100400.89870.0336740.4429370.3753717.6740062.880598
1009_R_69_10037_FH410037FH40.75890.4331931.1519000.8083017.8558606.349901
1010_R_69_10037_FH1110037FH110.71730.0382341.4146450.2058877.8503201.616280
1011_R_69_10037_1004010037100400.89870.1062010.4429370.3753607.6740062.880514
1012_R_69_10037_FH410037FH40.75890.5119561.1519000.8083037.8558606.349918
1013_R_69_10037_FH1110037FH110.71730.3249861.4146450.2058867.8503201.616274
1014_R_70_10041_1004010041100400.85340.7494540.6580570.2407827.6740061.847765
1015_R_70_10041_FH410041FH40.71870.7897161.3946050.1968617.8558601.546510
1016_R_70_10041_1004010041100400.85340.6671970.6580570.2407837.6740061.847769
1017_R_70_10041_FH410041FH40.71871.0417531.3946050.1968597.8558601.546493
1018_R_70_10041_1004010041100400.85340.7266050.6580570.2407847.6740061.847779
1019_R_70_10041_FH410041FH40.71870.7729141.3946050.1968607.8558601.546503
1020_R_71_10007_1001510007100150.66920.0245721.6831720.0180827.7553300.140232
1021_R_71_10007_FH1310007FH130.85540.3492870.6470810.9827967.8193647.684842
1022_R_71_10007_1001510007100150.66920.1474311.6831720.0180827.7553300.140230
1023_R_71_10007_FH1310007FH130.85540.3499070.6470810.9828127.8193647.684968
1024_R_71_10007_1001510007100150.66920.1842891.6831720.0180827.7553300.140232
1025_R_71_10007_FH1310007FH130.85540.3499070.6470810.9829527.8193647.686057
1026_R_72_10015_1000710015100070.81100.1965450.8774340.0262707.7553300.203734
1027_R_72_10015_FH1310015FH130.78750.1813631.0018150.2938917.8193642.298041
1028_R_72_10015_1000710015100070.81110.2104730.8769690.0262707.7553300.203730
1029_R_72_10015_FH1310015FH130.78750.2590901.0018150.2938907.8193642.298033
1030_R_72_10015_1000710015100070.81110.2174880.8769690.0262707.7553300.203731
1031_R_72_10015_FH1310015FH130.78750.2245451.0018150.2938897.8193642.298028
1032_R_73_10008_1000710008100070.79892.7185660.9508890.0257527.8079650.201071
1033_R_73_10008_FH1310008FH130.79672.5984210.9573130.2635097.8193642.060470
1034_R_73_10008_1000710008100070.79892.6454210.9508890.0257527.8079650.201072
1035_R_73_10008_FH1310008FH130.79672.7103150.9573130.2635087.8193642.060465
1036_R_73_10008_1000710008100070.79892.6819940.9508890.0257527.8079650.201071
1037_R_73_10008_FH1310008FH130.79672.7849110.9573130.2635087.8193642.060467
1038_R_74_10033_1003210033100320.68790.3342841.5618190.0549917.5670060.416119
1039_R_74_10033_FH1510033FH150.74620.4916591.2176601.1634547.6532688.904225
1040_R_74_10033_1003210033100320.68790.3014041.5618190.0549927.5670060.416121
1041_R_74_10033_FH1510033FH150.74620.4939561.2176601.1634917.6532688.904510
1042_R_74_10033_1003210033100320.68780.3782461.5623190.0549927.5670060.416126
1043_R_74_10033_FH1510033FH150.74620.4939561.2176601.1634777.6532688.904403
1044_R_75_10032_1003310032100330.83160.4937990.7658330.0225707.5670060.170790
1045_R_75_10032_FH1510032FH150.74210.6034151.2470590.3694387.6532682.827407
1046_R_75_10032_1003310032100330.83160.4139640.7658330.0225717.5670060.170793
1047_R_75_10032_FH1510032FH150.74220.4155251.2465750.3694287.6532682.827334
1048_R_75_10032_1003310032100330.83160.4228340.7658330.0225707.5670060.170791
1049_R_75_10032_FH1510032FH150.74220.5227571.2465750.3694317.6532682.827351
54_ZW_1_10009_1000610009100060.99950.0022390.0093160.0523638.0081440.419331
55_ZW_1_10009_1001010009100100.99910.0059860.0167510.0738787.8625530.580873
56_ZW_1_10009_1001810009100180.99950.0032700.0094050.0558287.8625530.438952
57_ZW_1_10009_1000810009100080.99880.0071960.0223010.0842427.8625530.662361
58_ZW_1_10009_1000610009100060.99950.0023050.0093160.0523648.0081440.419339
59_ZW_1_10009_1001010009100100.99910.0062750.0167510.0738777.8625530.580859
60_ZW_1_10009_1001810009100180.99950.0032120.0094050.0558287.8625530.438951
61_ZW_1_10009_1000810009100080.99880.0066140.0223010.0842427.8625530.662358
62_ZW_1_10009_1000610009100060.99950.0023370.0093160.0523628.0081440.419324
63_ZW_1_10009_1001010009100100.99910.0054090.0167510.0738767.8625530.580857
64_ZW_1_10009_1001810009100180.99950.0032410.0094050.0558287.8625530.438953
65_ZW_1_10009_1000810009100080.99880.0065610.0223010.0842407.8625530.662343
66_ZW_2_10006_1000910006100090.99950.0027790.0093160.0523598.0081440.419295
67_ZW_2_10006_1000510006100050.99950.0002850.0093180.0524918.0081440.420352
68_ZW_2_10006_1000310006100030.99870.0076910.0251230.0873958.0081440.699873
69_ZW_2_10006_1000410006100040.99950.0010840.0093590.0566658.0081440.453784
70_ZW_2_10006_1001010006100100.99950.0016640.0094110.0548188.0081440.438990
71_ZW_2_10006_1001810006100180.99920.0022400.0153210.0707688.0081440.566719
72_ZW_2_10006_1000910006100090.99950.0028440.0093160.0523588.0081440.419292
73_ZW_2_10006_1000510006100050.99950.0002660.0093180.0524898.0081440.420343
74_ZW_2_10006_1000310006100030.99870.0073060.0251230.0873958.0081440.699872
75_ZW_2_10006_1000410006100040.99950.0012020.0093590.0566648.0081440.453769
76_ZW_2_10006_1001010006100100.99950.0015430.0094110.0548188.0081440.438992
77_ZW_2_10006_1001810006100180.99920.0010840.0153210.0707678.0081440.566716
78_ZW_2_10006_1000910006100090.99950.0028770.0093160.0523588.0081440.419293
79_ZW_2_10006_1000510006100050.99950.0002280.0093180.0524908.0081440.420351
80_ZW_2_10006_1000310006100030.99870.0082030.0251230.0873958.0081440.699869
81_ZW_2_10006_1000410006100040.99950.0012260.0093590.0566658.0081440.453780
82_ZW_2_10006_1001010006100100.99950.0015740.0094110.0548188.0081440.438990
83_ZW_2_10006_1001810006100180.99920.0026020.0153210.0707678.0081440.566716
84_ZW_3_10008_1000910008100090.99880.0059520.0223010.0842317.8625530.662271
85_ZW_3_10008_1000710008100070.99950.0000610.0094270.0552387.8079650.431293
86_ZW_3_10008_1000510008100050.99960.0001070.0074410.0508367.8997300.401588
87_ZW_3_10008_1000910008100090.99880.0071160.0223010.0842307.8625530.662264
88_ZW_3_10008_1000710008100070.99950.0001520.0094270.0552387.8079650.431294
89_ZW_3_10008_1000510008100050.99960.0000430.0074410.0508367.8997300.401592
90_ZW_3_10008_1000910008100090.99880.0073540.0223010.0842337.8625530.662285
91_ZW_3_10008_1000710008100070.99950.0002730.0094270.0552387.8079650.431295
92_ZW_3_10008_1000510008100050.99960.0002670.0074410.0508367.8997300.401589
93_ZW_4_10005_1000810005100080.99960.0007800.0074410.0508387.8997300.401603
94_ZW_4_10005_1000310005100030.99890.0031520.0207230.0829807.8997300.655521
95_ZW_4_10005_1000110005100010.99850.0002060.0301010.0953408.0077390.763458
96_ZW_4_10005_1000210005100020.99810.0083880.0365220.1059407.9562540.842889
97_ZW_4_10005_1000410005100040.99900.0009100.0185490.0773747.9406020.614399
98_ZW_4_10005_1000610005100060.99950.0000190.0093180.0524938.0081440.420371
99_ZW_4_10005_1000810005100080.99960.0008020.0074410.0508377.8997300.401602
100_ZW_4_10005_1000310005100030.99890.0038230.0207230.0829807.8997300.655517
101_ZW_4_10005_1000110005100010.99850.0020620.0301010.0953408.0077390.763457
102_ZW_4_10005_1000210005100020.99810.0129310.0365220.1059407.9562540.842887
103_ZW_4_10005_1000410005100040.99900.0025890.0185490.0773777.9406020.614422
104_ZW_4_10005_1000610005100060.99950.0001140.0093180.0524928.0081440.420367
105_ZW_4_10005_1000810005100080.99960.0007700.0074410.0508397.8997300.401612
106_ZW_4_10005_1000310005100030.99890.0059020.0207230.0829807.8997300.655522
107_ZW_4_10005_1000110005100010.99850.0010310.0301010.0953408.0077390.763456
108_ZW_4_10005_1000210005100020.99810.0146790.0365220.1059427.9562540.842898
109_ZW_4_10005_1000410005100040.99900.0022050.0185490.0773747.9406020.614397
110_ZW_4_10005_1000610005100060.99950.0000570.0093180.0524938.0081440.420370
111_ZW_5_10004_1000510004100050.99900.0021910.0185630.0774297.9406020.614831
112_ZW_5_10004_1000310004100030.99820.0038660.0337550.1053147.9406020.836257
113_ZW_5_10004_1000210004100020.99900.0069310.0190810.0768827.9562540.611691
114_ZW_5_10004_1000610004100060.99950.0004010.0093590.0566668.0081440.453789
115_ZW_5_10004_1000510004100050.99900.0022330.0185630.0774287.9406020.614828
116_ZW_5_10004_1000310004100030.99820.0048090.0337550.1053157.9406020.836263
117_ZW_5_10004_1000210004100020.99900.0066870.0190810.0768827.9562540.611692
118_ZW_5_10004_1000610004100060.99950.0009900.0093590.0566668.0081440.453791
119_ZW_5_10004_1000510004100050.99900.0022620.0185630.0774287.9406020.614828
120_ZW_5_10004_1000310004100030.99820.0069770.0337550.1053157.9406020.836263
121_ZW_5_10004_1000210004100020.99900.0049740.0190810.0768827.9562540.611691
122_ZW_5_10004_1000610004100060.99950.0004010.0093590.0566668.0081440.453789
123_ZW_6_10003_1000410003100040.99820.0056570.0337550.1053177.9406020.836281
124_ZW_6_10003_1000610003100060.99870.0026920.0251230.0873968.0081440.699878
125_ZW_6_10003_1000510003100050.99890.0006710.0207230.0829807.8997300.655521
126_ZW_6_10003_1000710003100070.99960.0007530.0074370.0513637.8580850.403616
127_ZW_6_10003_1001610003100160.99920.0011600.0150350.0704647.8580850.553714
128_ZW_6_10003_1000110003100010.99920.0012250.0151920.0708588.0077390.567410
129_ZW_6_10003_1000210003100020.99720.0203240.0522240.1309827.9562541.042128
130_ZW_6_10003_1000410003100040.99820.0059400.0337550.1053167.9406020.836269
131_ZW_6_10003_1000610003100060.99870.0028200.0251230.0873978.0081440.699886
132_ZW_6_10003_1000510003100050.99890.0010060.0207230.0829807.8997300.655516
133_ZW_6_10003_1000710003100070.99960.0007850.0074370.0513637.8580850.403616
134_ZW_6_10003_1001610003100160.99920.0014280.0150350.0704647.8580850.553711
135_ZW_6_10003_1000110003100010.99920.0011030.0151920.0708588.0077390.567414
136_ZW_6_10003_1000210003100020.99720.0205980.0522240.1309847.9562541.042140
137_ZW_6_10003_1000410003100040.99820.0058460.0337550.1053177.9406020.836277
138_ZW_6_10003_1000610003100060.99870.0015380.0251230.0873968.0081440.699880
139_ZW_6_10003_1000510003100050.99890.0015420.0207230.0829817.8997300.655526
140_ZW_6_10003_1000710003100070.99960.0007950.0074370.0513647.8580850.403626
141_ZW_6_10003_1001610003100160.99920.0012050.0150350.0704647.8580850.553712
142_ZW_6_10003_1000110003100010.99920.0005510.0151920.0708578.0077390.567406
143_ZW_6_10003_1000210003100020.99720.0206890.0522240.1309837.9562541.042137
144_ZW_7_10002_1000310002100030.99720.0109370.0522240.1309797.9562541.042099
145_ZW_7_10002_1000110002100010.99670.0044600.0618260.1408358.0077391.127773
146_ZW_7_10002_1000410002100040.99900.0051370.0190810.0768817.9562540.611683
147_ZW_7_10002_1000610002100060.99860.0055830.0277370.0905108.0081440.724819
148_ZW_7_10002_1000510002100050.99810.0052420.0365220.1059397.9562540.842879
149_ZW_7_10002_1000310002100030.99720.0112100.0522240.1309777.9562541.042086
150_ZW_7_10002_1000110002100010.99670.0056900.0618260.1408368.0077391.127780
151_ZW_7_10002_1000410002100040.99900.0053820.0190810.0768817.9562540.611682
152_ZW_7_10002_1000610002100060.99860.0036020.0277370.0905108.0081440.724818
153_ZW_7_10002_1000510002100050.99810.0048930.0365220.1059397.9562540.842875
154_ZW_7_10002_1000310002100030.99720.0108460.0522240.1309787.9562541.042096
155_ZW_7_10002_1000110002100010.99670.0056900.0618260.1408358.0077391.127773
156_ZW_7_10002_1000410002100040.99900.0047300.0190810.0768827.9562540.611689
157_ZW_7_10002_1000610002100060.99860.0041430.0277370.0905108.0081440.724814
158_ZW_7_10002_1000510002100050.99810.0043690.0365220.1059397.9562540.842878
159_ZW_8_10001_1000210001100020.99670.0089200.0618260.1408408.0077391.127813
160_ZW_8_10001_1000510001100050.99850.0030930.0301010.0953418.0077390.763462
161_ZW_8_10001_1000310001100030.99920.0034310.0151920.0708588.0077390.567411
162_ZW_8_10001_1001110001100110.99910.0003160.0172480.0716748.0077390.573946
163_ZW_8_10001_1000210001100020.99670.0110730.0618260.1408398.0077391.127799
164_ZW_8_10001_1000510001100050.99850.0024740.0301010.0953408.0077390.763455
165_ZW_8_10001_1000310001100030.99920.0007350.0151920.0708578.0077390.567405
166_ZW_8_10001_1001110001100110.99910.0002370.0172480.0716748.0077390.573945
167_ZW_8_10001_1000210001100020.99670.0076900.0618260.1408398.0077391.127799
168_ZW_8_10001_1000510001100050.99850.0043300.0301010.0953408.0077390.763459
169_ZW_8_10001_1000310001100030.99920.0034310.0151920.0708578.0077390.567403
170_ZW_8_10001_1001110001100110.99910.0013450.0172480.0716748.0077390.573944
171_ZW_9_10010_1000610010100060.99950.0010890.0094110.0548148.0081440.438957
172_ZW_9_10010_1002610010100260.99930.0039070.0131920.0668157.7753860.519511
173_ZW_9_10010_1002710010100270.99850.0012860.0290930.0960347.7753860.746701
174_ZW_9_10010_1001810010100180.99870.0005190.0242170.0874797.7753860.680183
175_ZW_9_10010_1000910010100090.99910.0019170.0167510.0738697.8625530.580795
176_ZW_9_10010_1000610010100060.99950.0005450.0094110.0548148.0081440.438956
177_ZW_9_10010_1002610010100260.99930.0039490.0131920.0668157.7753860.519509
178_ZW_9_10010_1002710010100270.99850.0006430.0290930.0960347.7753860.746698
179_ZW_9_10010_1001810010100180.99870.0005590.0242170.0874807.7753860.680187
180_ZW_9_10010_1000910010100090.99910.0020480.0167510.0738687.8625530.580788
181_ZW_9_10010_1000610010100060.99950.0006050.0094110.0548158.0081440.438963
182_ZW_9_10010_1002610010100260.99930.0038230.0131920.0668157.7753860.519516
183_ZW_9_10010_1002710010100270.99850.0017680.0290930.0960337.7753860.746695
184_ZW_9_10010_1001810010100180.99870.0010790.0242170.0874807.7753860.680189
185_ZW_9_10010_1000910010100090.99910.0016280.0167510.0738677.8625530.580786
186_ZW_10_10018_1001010018100100.99870.0068330.0242170.0874857.7753860.680233
187_ZW_10_10018_1002610018100260.99840.0000990.0297750.0972897.6847710.747645
188_ZW_10_10018_1004310018100430.99790.0151650.0413830.1114507.6847710.856468
189_ZW_10_10018_1002710018100270.99920.0035690.0152000.0705807.6847710.542389
190_ZW_10_10018_1000910018100090.99950.0019680.0094050.0558287.8625530.438953
191_ZW_10_10018_1001010018100100.99870.0079120.0242170.0874867.7753860.680237
192_ZW_10_10018_1002610018100260.99840.0002490.0297750.0972917.6847710.747656
193_ZW_10_10018_1004310018100430.99790.0149080.0413830.1114507.6847710.856471
194_ZW_10_10018_1002710018100270.99920.0017230.0152000.0705807.6847710.542389
195_ZW_10_10018_1000910018100090.99950.0021130.0094050.0558287.8625530.438952
196_ZW_10_10018_1001010018100100.99870.0073130.0242170.0874867.7753860.680239
197_ZW_10_10018_1002610018100260.99840.0015910.0297750.0972897.6847710.747647
198_ZW_10_10018_1004310018100430.99790.0118240.0413830.1114507.6847710.856468
199_ZW_10_10018_1002710018100270.99920.0030770.0152000.0705807.6847710.542392
200_ZW_10_10018_1000910018100090.99950.0020550.0094050.0558287.8625530.438953
201_ZW_11_10026_1001810026100180.99840.0040760.0297750.0972747.6847710.747532
202_ZW_11_10026_1001010026100100.99930.0037390.0131920.0668137.7753860.519500
203_ZW_11_10026_1004310026100430.99910.0073760.0173220.0735197.6512030.562507
204_ZW_11_10026_1004410026100440.99850.0031570.0297900.0937787.7026820.722343
205_ZW_11_10026_1002710026100270.99820.0072950.0337270.1038137.6360520.792718
206_ZW_11_10026_1002110026100210.99960.0007800.0074360.0509347.6360520.388935
207_ZW_11_10026_1002010026100200.99960.0002950.0074570.0507387.6360520.387435
208_ZW_11_10026_1001810026100180.99840.0048710.0297750.0972737.6847710.747525
209_ZW_11_10026_1001010026100100.99930.0023530.0131920.0668137.7753860.519496
210_ZW_11_10026_1004310026100430.99910.0058840.0173220.0735187.6512030.562504
211_ZW_11_10026_1004410026100440.99850.0037480.0297900.0937787.7026820.722341
212_ZW_11_10026_1002710026100270.99820.0061790.0337270.1038137.6360520.792718
213_ZW_11_10026_1002110026100210.99960.0007920.0074360.0509347.6360520.388935
214_ZW_11_10026_1002010026100200.99960.0003100.0074570.0507387.6360520.387436
215_ZW_11_10026_1001810026100180.99840.0048710.0297750.0972747.6847710.747527
216_ZW_11_10026_1001010026100100.99930.0032350.0131920.0668137.7753860.519500
217_ZW_11_10026_1004310026100430.99910.0075420.0173220.0735197.6512030.562508
218_ZW_11_10026_1004410026100440.99850.0027620.0297900.0937787.7026820.722342
219_ZW_11_10026_1002710026100270.99820.0063510.0337270.1038147.6360520.792729
220_ZW_11_10026_1002110026100210.99960.0007920.0074360.0509357.6360520.388939
221_ZW_11_10026_1002010026100200.99960.0001180.0074570.0507387.6360520.387438
222_ZW_12_10021_1002610021100260.99960.0002070.0074360.0509337.6360520.388930
223_ZW_12_10021_1002410021100240.99910.0006790.0167210.0739307.5982920.561741
224_ZW_12_10021_1002510021100250.99890.0061780.0205100.0799827.5982920.607723
225_ZW_12_10021_1002210021100220.99960.0003930.0074150.0477897.5982920.363112
226_ZW_12_10021_1002310021100230.99930.0003350.0129850.0637527.5982920.484404
227_ZW_12_10021_1002010021100200.99920.0022530.0148290.0692087.5982920.525865
228_ZW_12_10021_1001910021100190.99900.0014810.0186220.0772667.5982920.587091
229_ZW_12_10021_1002610021100260.99960.0001720.0074360.0509337.6360520.388929
230_ZW_12_10021_1002410021100240.99910.0008060.0167210.0739307.5982920.561739
231_ZW_12_10021_1002510021100250.99890.0059680.0205100.0799817.5982920.607722
232_ZW_12_10021_1002210021100220.99960.0004740.0074150.0477917.5982920.363132
233_ZW_12_10021_1002310021100230.99930.0004130.0129850.0637547.5982920.484419
234_ZW_12_10021_1002010021100200.99920.0022530.0148290.0692067.5982920.525845
235_ZW_12_10021_1001910021100190.99900.0015110.0186220.0772667.5982920.587093
236_ZW_12_10021_1002610021100260.99960.0002520.0074360.0509337.6360520.388930
237_ZW_12_10021_1002410021100240.99910.0007850.0167210.0739317.5982920.561746
238_ZW_12_10021_1002510021100250.99890.0063460.0205100.0799827.5982920.607723
239_ZW_12_10021_1002210021100220.99960.0004070.0074150.0477917.5982920.363131
240_ZW_12_10021_1002310021100230.99930.0003130.0129850.0637567.5982920.484434
241_ZW_12_10021_1002010021100200.99920.0022930.0148290.0692067.5982920.525851
242_ZW_12_10021_1001910021100190.99900.0010880.0186220.0772677.5982920.587094
243_ZW_13_10020_1002110020100210.99920.0016700.0148360.0692327.5982920.526045
244_ZW_13_10020_1002210020100220.99900.0034420.0185450.0788187.5952790.598647
245_ZW_13_10020_1002410020100240.99870.0042450.0241640.0879157.5930830.667547
246_ZW_13_10020_1002510020100250.99870.0110670.0242770.0885207.5893910.671815
247_ZW_13_10020_1002310020100230.99880.0038780.0222630.0847237.5893910.642992
248_ZW_13_10020_1001910020100190.99960.0016020.0074290.0489787.5893910.371715
249_ZW_13_10020_1002610020100260.99960.0010040.0074570.0507367.6360520.387424
250_ZW_13_10020_1002110020100210.99920.0016960.0148290.0692017.5982920.525810
251_ZW_13_10020_1002210020100220.99900.0033460.0185450.0788217.5952790.598667
252_ZW_13_10020_1002410020100240.99870.0032650.0241640.0879157.5930830.667550
253_ZW_13_10020_1002510020100250.99870.0101690.0242770.0885207.5893910.671816
254_ZW_13_10020_1002310020100230.99880.0037630.0222630.0847227.5893910.642988
255_ZW_13_10020_1001910020100190.99960.0015930.0074290.0489787.5893910.371714
256_ZW_13_10020_1002610020100260.99960.0009300.0074570.0507367.6360520.387425
257_ZW_13_10020_1002110020100210.99920.0017490.0148360.0692267.5982920.526000
258_ZW_13_10020_1002210020100220.99900.0035640.0185450.0788247.5952790.598688
259_ZW_13_10020_1002410020100240.99870.0034290.0241640.0879157.5930830.667547
260_ZW_13_10020_1002510020100250.99870.0102190.0242770.0885207.5893910.671815
261_ZW_13_10020_1002310020100230.99880.0036310.0222630.0847197.5893910.642969
262_ZW_13_10020_1001910020100190.99960.0015760.0074290.0489787.5893910.371711
263_ZW_13_10020_1002610020100260.99960.0011220.0074570.0507377.6360520.387432
264_ZW_14_10019_1002010019100200.99960.0001320.0074290.0489777.5893910.371708
265_ZW_14_10019_1003310019100330.99880.0001000.0224020.0849417.5776760.643656
266_ZW_14_10019_1001710019100170.99960.0050080.0074500.0502217.5776760.380562
267_ZW_14_10019_1002610019100260.99930.0005730.0131480.0634337.6360520.484380
268_ZW_14_10019_1002110019100210.99900.0007560.0186220.0772647.5982920.587071
269_ZW_14_10019_1002010019100200.99960.0000180.0074290.0489777.5893910.371703
270_ZW_14_10019_1003310019100330.99880.0008480.0224020.0849417.5776760.643657
271_ZW_14_10019_1001710019100170.99960.0049210.0074500.0502217.5776760.380556
272_ZW_14_10019_1002610019100260.99930.0000820.0131480.0634337.6360520.484379
273_ZW_14_10019_1002110019100210.99900.0008460.0186220.0772637.5982920.587070
274_ZW_14_10019_1002010019100200.99960.0000700.0074290.0489777.5893910.371708
275_ZW_14_10019_1003310019100330.99880.0002490.0224020.0849407.5776760.643651
276_ZW_14_10019_1001710019100170.99960.0051570.0074500.0502237.5776760.380570
277_ZW_14_10019_1002610019100260.99930.0000820.0131480.0634347.6360520.484388
278_ZW_14_10019_1002110019100210.99900.0012700.0186220.0772647.5982920.587077
279_ZW_15_10027_1002610027100260.99820.0073800.0337270.1038077.6360520.792675
280_ZW_15_10027_1001010027100100.99850.0006430.0290930.0960357.7753860.746706
281_ZW_15_10027_1001810027100180.99920.0011690.0152000.0705837.6847710.542411
282_ZW_15_10027_1004310027100430.99750.0057600.0467710.1215467.6512030.929970
283_ZW_15_10027_1004410027100440.99840.0105200.0306150.0972647.7026820.749193
284_ZW_15_10027_1002510027100250.99760.0029210.0446060.1202327.5970130.913403
285_ZW_15_10027_1002610027100260.99820.0070370.0337270.1038087.6360520.792685
286_ZW_15_10027_1001010027100100.99850.0008040.0290930.0960357.7753860.746708
287_ZW_15_10027_1001810027100180.99920.0015380.0152000.0705817.6847710.542401
288_ZW_15_10027_1004310027100430.99750.0051840.0467710.1215467.6512030.929976
289_ZW_15_10027_1004410027100440.99840.0103850.0306150.0972647.7026820.749193
290_ZW_15_10027_1002510027100250.99760.0025250.0446060.1202317.5970130.913399
291_ZW_15_10027_1002610027100260.99820.0062650.0337270.1038097.6360520.792694
292_ZW_15_10027_1001010027100100.99850.0001610.0290930.0960357.7753860.746708
293_ZW_15_10027_1001810027100180.99920.0012310.0152000.0705827.6847710.542405
294_ZW_15_10027_1004310027100430.99750.0038020.0467710.1215487.6512030.929986
295_ZW_15_10027_1004410027100440.99840.0097110.0306150.0972647.7026820.749195
296_ZW_15_10027_1002510027100250.99760.0027720.0446060.1202277.5970130.913368
297_ZW_16_10022_1002110022100210.99960.0002350.0074150.0477837.5982920.363065
298_ZW_16_10022_1002410022100240.99930.0002310.0129880.0641697.5952790.487382
299_ZW_16_10022_1002510022100250.99910.0048880.0167410.0743027.5952790.564345
300_ZW_16_10022_1002310022100230.99960.0000750.0074160.0474937.5952790.360723
301_ZW_16_10022_1002010022100200.99900.0007430.0185450.0788197.5952790.598652
302_ZW_16_10022_1002110022100210.99960.0002460.0074150.0477857.5982920.363082
303_ZW_16_10022_1002410022100240.99930.0003240.0129880.0641727.5952790.487405
304_ZW_16_10022_1002510022100250.99910.0046430.0167410.0743027.5952790.564342
305_ZW_16_10022_1002310022100230.99960.0001180.0074160.0474937.5952790.360723
306_ZW_16_10022_1002010022100200.99900.0007340.0185450.0788237.5952790.598686
307_ZW_16_10022_1002110022100210.99960.0002810.0074150.0477847.5982920.363079
308_ZW_16_10022_1002410022100240.99930.0001960.0129880.0641747.5952790.487420
309_ZW_16_10022_1002510022100250.99910.0046430.0167410.0743027.5952790.564346
310_ZW_16_10022_1002310022100230.99960.0001530.0074160.0474967.5952790.360746
311_ZW_16_10022_1002010022100200.99900.0008740.0185450.0788227.5952790.598672
312_ZW_17_10023_1002210023100220.99960.0009190.0074160.0474947.5952790.360729
313_ZW_17_10023_1002410023100240.99960.0002550.0074190.0484457.5930830.367846
314_ZW_17_10023_1002510023100250.99930.0036000.0130170.0650557.5867270.493553
315_ZW_17_10023_1002010023100200.99880.0016830.0222630.0847247.5893910.643004
316_ZW_17_10023_1002110023100210.99930.0004250.0129850.0637547.5982920.484420
317_ZW_17_10023_1002210023100220.99960.0009280.0074160.0474997.5952790.360767
318_ZW_17_10023_1002410023100240.99960.0001970.0074190.0484477.5930830.367866
319_ZW_17_10023_1002510023100250.99930.0034970.0130170.0650537.5867270.493543
320_ZW_17_10023_1002010023100200.99880.0016830.0222630.0847247.5893910.643004
321_ZW_17_10023_1002110023100210.99930.0003910.0129850.0637537.5982920.484411
322_ZW_17_10023_1002210023100220.99960.0009710.0074160.0475007.5952790.360774
323_ZW_17_10023_1002410023100240.99960.0002230.0074190.0484467.5930830.367853
324_ZW_17_10023_1002510023100250.99930.0037740.0130170.0650537.5867270.493543
325_ZW_17_10023_1002010023100200.99880.0018320.0222630.0847277.5893910.643028
326_ZW_17_10023_1002110023100210.99930.0003460.0129850.0637537.5982920.484411
327_ZW_18_10024_1002310024100230.99960.0020620.0074190.0484477.5930830.367864
328_ZW_18_10024_1002010024100200.99870.0017310.0241640.0879197.5930830.667574
329_ZW_18_10024_1002210024100220.99930.0013060.0129880.0641757.5952790.487425
330_ZW_18_10024_1002110024100210.99910.0031190.0167210.0739317.5982920.561748
331_ZW_18_10024_1002510024100250.99960.0008030.0074220.0488947.5930830.371253
332_ZW_18_10024_1002310024100230.99960.0020100.0074190.0484477.5930830.367864
333_ZW_18_10024_1002010024100200.99870.0023510.0241640.0879227.5930830.667596
334_ZW_18_10024_1002210024100220.99930.0013170.0129880.0641717.5952790.487397
335_ZW_18_10024_1002110024100210.99910.0033950.0167210.0739307.5982920.561741
336_ZW_18_10024_1002510024100250.99960.0006890.0074220.0488927.5930830.371238
337_ZW_18_10024_1002310024100230.99960.0020680.0074190.0484487.5930830.367868
338_ZW_18_10024_1002010024100200.99870.0024820.0241640.0879207.5930830.667582
339_ZW_18_10024_1002210024100220.99930.0012710.0129880.0641737.5952790.487414
340_ZW_18_10024_1002110024100210.99910.0032040.0167210.0739307.5982920.561743
341_ZW_18_10024_1002510024100250.99960.0006650.0074220.0488927.5930830.371243
342_ZW_19_10025_1002410025100240.99960.0012350.0074220.0488977.5930830.371278
343_ZW_19_10025_1002110025100210.99890.0073550.0205100.0799797.5982920.607704
344_ZW_19_10025_1002210025100220.99910.0045060.0167410.0743027.5952790.564345
345_ZW_19_10025_1002010025100200.99870.0055330.0242770.0885167.5893910.671781
346_ZW_19_10025_1002310025100230.99930.0053660.0130170.0650527.5867270.493533
347_ZW_19_10025_1003310025100330.99960.0022740.0074530.0518657.5782340.393046
348_ZW_19_10025_1002710025100270.99760.0091090.0446060.1202377.5970130.913439
349_ZW_19_10025_1002410025100240.99960.0012590.0074220.0488997.5930830.371293
350_ZW_19_10025_1002110025100210.99890.0076490.0205100.0799787.5982920.607694
351_ZW_19_10025_1002210025100220.99910.0043150.0167410.0743017.5952790.564339
352_ZW_19_10025_1002010025100200.99870.0055830.0242770.0885187.5893910.671798
353_ZW_19_10025_1002310025100230.99930.0057120.0130170.0650557.5867270.493553
354_ZW_19_10025_1003310025100330.99960.0024450.0074530.0518647.5782340.393041
355_ZW_19_10025_1002710025100270.99760.0100500.0446060.1202407.5970130.913461
356_ZW_19_10025_1002410025100240.99960.0012710.0074220.0488977.5930830.371276
357_ZW_19_10025_1002110025100210.99890.0074810.0205100.0799777.5982920.607691
358_ZW_19_10025_1002210025100220.99910.0043150.0167410.0743027.5952790.564345
359_ZW_19_10025_1002010025100200.99870.0062310.0242770.0885177.5893910.671792
360_ZW_19_10025_1002310025100230.99930.0054700.0130170.0650547.5867270.493547
361_ZW_19_10025_1003310025100330.99960.0024320.0074530.0518667.5782340.393049
362_ZW_19_10025_1002710025100270.99760.0100000.0446060.1202387.5970130.913453
363_ZW_20_10043_1002710043100270.99750.0009220.0467710.1215537.6512030.930024
364_ZW_20_10043_1002610043100260.99910.0047240.0173220.0735167.6512030.562486
365_ZW_20_10043_1005210043100520.99910.0000000.0169810.0722117.8159530.564399
366_ZW_20_10043_1004410043100440.99780.0062970.0410660.1144707.7026820.881729
367_ZW_20_10043_1004210043100420.99760.0048060.0446300.1206357.6620000.924306
368_ZW_20_10043_1002710043100270.99750.0023040.0467710.1215557.6512030.930044
369_ZW_20_10043_1002610043100260.99910.0069620.0173220.0735167.6512030.562488
370_ZW_20_10043_1005210043100520.99910.0007080.0169810.0722117.8159530.564400
371_ZW_20_10043_1004410043100440.99780.0056760.0410660.1144707.7026820.881726
372_ZW_20_10043_1004210043100420.99760.0036050.0446300.1206327.6620000.924279
373_ZW_20_10043_1002710043100270.99750.0023040.0467710.1215557.6512030.930040
374_ZW_20_10043_1002610043100260.99910.0053870.0173220.0735177.6512030.562490
375_ZW_20_10043_1005210043100520.99910.0010020.0169810.0722117.8159530.564401
376_ZW_20_10043_1004410043100440.99780.0071840.0410660.1144697.7026820.881722
377_ZW_20_10043_1004210043100420.99760.0037760.0446300.1206367.6620000.924310
378_ZW_21_10044_1002710044100270.99840.0006740.0306150.0972677.7026820.749215
379_ZW_21_10044_1004310044100430.99780.0046120.0410660.1144687.7026820.881714
380_ZW_21_10044_1005210044100520.99750.0034090.0465460.1232067.8159530.962975
381_ZW_21_10044_1005310044100530.99960.0006670.0075240.0515487.9302610.408793
382_ZW_21_10044_1003710044100370.99920.0006270.0150570.0674387.7026820.519450
383_ZW_21_10044_1004010044100400.99960.0001260.0074470.0490787.7026820.378033
384_ZW_21_10044_1004210044100420.99880.0012600.0223100.0836307.7026820.644179
385_ZW_21_10044_1002710044100270.99840.0025630.0306150.0972677.7026820.749214
386_ZW_21_10044_1004310044100430.99780.0024830.0410660.1144637.7026820.881673
387_ZW_21_10044_1005210044100520.99750.0018090.0465460.1232077.8159530.962983
388_ZW_21_10044_1005310044100530.99960.0006900.0075240.0515497.9302610.408797
389_ZW_21_10044_1003710044100370.99920.0000970.0150570.0674377.7026820.519445
390_ZW_21_10044_1004010044100400.99960.0000140.0074470.0490787.7026820.378031
391_ZW_21_10044_1004210044100420.99880.0014210.0223100.0836317.7026820.644184
392_ZW_21_10044_1002710044100270.99840.0037760.0306150.0972667.7026820.749209
393_ZW_21_10044_1004310044100430.99780.0053220.0410660.1144667.7026820.881697
394_ZW_21_10044_1005210044100520.99750.0023660.0465460.1232087.8159530.962986
395_ZW_21_10044_1005310044100530.99960.0007140.0075240.0515497.9302610.408796
396_ZW_21_10044_1003710044100370.99920.0002900.0150570.0674377.7026820.519449
397_ZW_21_10044_1004010044100400.99960.0000280.0074470.0490797.7026820.378040
398_ZW_21_10044_1004210044100420.99880.0014480.0223100.0836287.7026820.644162
399_ZW_22_10042_1004310042100430.99760.0076670.0446300.1206397.6620000.924336
400_ZW_22_10042_1004410042100440.99880.0003490.0223100.0836357.7026820.644216
401_ZW_22_10042_1004010042100400.99920.0015160.0149080.0697917.6740060.535578
402_ZW_22_10042_1004110042100410.99960.0006470.0074380.0513447.6620000.393396
403_ZW_22_10042_1004310042100430.99760.0075530.0446300.1206397.6620000.924336
404_ZW_22_10042_1004410042100440.99880.0001610.0223100.0836317.7026820.644182
405_ZW_22_10042_1004010042100400.99920.0017080.0149080.0697907.6740060.535572
406_ZW_22_10042_1004110042100410.99960.0007290.0074380.0513447.6620000.393400
407_ZW_22_10042_1004310042100430.99760.0081250.0446300.1206387.6620000.924325
408_ZW_22_10042_1004410042100440.99880.0005630.0223100.0836327.7026820.644187
409_ZW_22_10042_1004010042100400.99920.0015430.0149080.0697917.6740060.535580
410_ZW_22_10042_1004110042100410.99960.0007090.0074380.0513447.6620000.393401
411_ZW_23_10041_1004210041100420.99960.0001540.0074380.0513447.6620000.393395
412_ZW_23_10041_1004410041100440.99920.0012350.0149640.0701867.7026820.540620
413_ZW_23_10041_1004010041100400.99950.0000940.0093050.0521877.6740060.400482
414_ZW_23_10041_1003810041100380.99890.0019710.0205020.0824447.6221590.628401
415_ZW_23_10041_1004210041100420.99960.0001640.0074380.0513447.6620000.393395
416_ZW_23_10041_1004410041100440.99920.0013060.0149640.0701867.7026820.540620
417_ZW_23_10041_1004010041100400.99950.0001560.0093050.0521877.6740060.400484
418_ZW_23_10041_1003810041100380.99890.0025230.0205020.0824447.6221590.628401
419_ZW_23_10041_1004210041100420.99960.0000720.0074380.0513437.6620000.393388
420_ZW_23_10041_1004410041100440.99920.0014120.0149640.0701887.7026820.540637
421_ZW_23_10041_1004010041100400.99950.0002180.0093050.0521867.6740060.400478
422_ZW_23_10041_1003810041100380.99890.0021290.0205020.0824447.6221590.628398
423_ZW_24_10037_1004410037100440.99920.0010620.0150570.0674387.7026820.519455
424_ZW_24_10037_1005110037100510.99890.0024280.0206080.0812077.7909130.632677
425_ZW_24_10037_1003610037100360.99790.0055660.0390460.1110707.7114100.856506
426_ZW_24_10037_1003510037100350.99850.0004230.0281920.0956307.7371160.739902
427_ZW_24_10037_1003810037100380.99960.0000510.0074460.0513597.6734930.394106
428_ZW_24_10037_1003910037100390.99930.0000000.0131030.0663047.6734930.508782
429_ZW_24_10037_1004010037100400.99960.0005320.0074360.0503457.6740060.386347
430_ZW_24_10037_1004410037100440.99920.0016890.0150570.0674397.7026820.519460
431_ZW_24_10037_1005110037100510.99890.0028590.0206080.0812077.7909130.632679
432_ZW_24_10037_1003610037100360.99790.0061270.0390460.1110697.7114100.856497
433_ZW_24_10037_1003510037100350.99850.0008470.0281920.0956317.7371160.739907
434_ZW_24_10037_1003810037100380.99960.0000510.0074460.0513607.6734930.394110
435_ZW_24_10037_1003910037100390.99930.0001290.0131030.0663047.6734930.508782
436_ZW_24_10037_1004010037100400.99960.0006650.0074360.0503447.6740060.386343
437_ZW_24_10037_1004410037100440.99920.0011100.0150570.0674397.7026820.519460
438_ZW_24_10037_1005110037100510.99890.0019960.0206080.0812087.7909130.632683
439_ZW_24_10037_1003610037100360.99790.0060400.0390460.1110677.7114100.856481
440_ZW_24_10037_1003510037100350.99850.0006770.0281920.0956307.7371160.739903
441_ZW_24_10037_1003810037100380.99960.0000130.0074460.0513607.6734930.394107
442_ZW_24_10037_1003910037100390.99930.0000970.0131030.0663067.6734930.508798
443_ZW_24_10037_1004010037100400.99960.0005830.0074360.0503467.6740060.386353
444_ZW_25_10052_1004310052100430.99910.0022410.0169810.0722087.8159530.564376
445_ZW_25_10052_1005910052100590.99760.0103070.0462680.1207358.2892661.000807
446_ZW_25_10052_1005310052100530.99760.0006560.0447430.1198757.9302610.950636
447_ZW_25_10052_1005010052100500.99740.0030370.0485880.1257887.8854100.991889
448_ZW_25_10052_1005110052100510.99720.0014950.0521610.1293597.8159531.011062
449_ZW_25_10052_1004410052100440.99750.0026440.0465460.1231957.8159530.962884
450_ZW_25_10052_1004310052100430.99910.0021820.0169810.0722097.8159530.564379
451_ZW_25_10052_1005910052100590.99760.0050390.0462680.1207368.2892661.000810
452_ZW_25_10052_1005310052100530.99760.0028680.0447430.1198767.9302610.950645
453_ZW_25_10052_1005010052100500.99740.0030370.0485880.1257877.8854100.991885
454_ZW_25_10052_1005110052100510.99720.0026580.0521610.1293607.8159531.011076
455_ZW_25_10052_1004410052100440.99750.0032700.0465460.1231977.8159530.962901
456_ZW_25_10052_1004310052100430.99910.0027710.0169810.0722097.8159530.564381
457_ZW_25_10052_1005910052100590.99760.0057260.0462680.1207358.2892661.000806
458_ZW_25_10052_1005310052100530.99760.0011470.0447430.1198777.9302610.950656
459_ZW_25_10052_1005010052100500.99740.0040130.0485880.1257887.8854100.991893
460_ZW_25_10052_1005110052100510.99720.0024090.0521610.1293617.8159531.011082
461_ZW_25_10052_1004410052100440.99750.0034790.0465460.1231997.8159530.962921
462_ZW_26_10040_1003710040100370.99960.0000610.0074360.0503467.6740060.386355
463_ZW_26_10040_1004110040100410.99950.0004360.0093050.0521917.6740060.400511
464_ZW_26_10040_1004210040100420.99920.0003580.0149080.0697927.6740060.535583
465_ZW_26_10040_1004410040100440.99960.0012650.0074470.0490797.7026820.378042
466_ZW_26_10040_1003710040100370.99960.0002450.0074360.0503467.6740060.386352
467_ZW_26_10040_1004110040100410.99950.0004360.0093050.0521897.6740060.400502
468_ZW_26_10040_1004210040100420.99920.0007720.0149080.0697927.6740060.535584
469_ZW_26_10040_1004410040100440.99960.0012080.0074470.0490787.7026820.378034
470_ZW_26_10040_1003710040100370.99960.0002250.0074360.0503457.6740060.386350
471_ZW_26_10040_1004110040100410.99950.0005460.0093050.0521907.6740060.400508
472_ZW_26_10040_1004210040100420.99920.0007160.0149080.0697927.6740060.535580
473_ZW_26_10040_1004410040100440.99960.0013350.0074470.0490807.7026820.378044
474_ZW_27_10051_1003710051100370.99890.0017260.0206080.0812047.7909130.632653
475_ZW_27_10051_1005210051100520.99720.0021600.0521610.1293627.8159531.011085
476_ZW_27_10051_1005310051100530.99940.0012170.0111900.0623737.9302610.494633
477_ZW_27_10051_1005010051100500.99960.0000100.0074350.0489317.8854100.385843
478_ZW_27_10051_1003710051100370.99890.0011330.0206080.0812047.7909130.632657
479_ZW_27_10051_1005210051100520.99720.0026580.0521610.1293627.8159531.011088
480_ZW_27_10051_1005310051100530.99940.0013250.0111900.0623747.9302610.494638
481_ZW_27_10051_1005010051100500.99960.0001530.0074350.0489317.8854100.385845
482_ZW_27_10051_1003710051100370.99890.0010790.0206080.0812047.7909130.632654
483_ZW_27_10051_1005210051100520.99720.0021600.0521610.1293657.8159531.011109
484_ZW_27_10051_1005310051100530.99940.0012170.0111900.0623747.9302610.494639
485_ZW_27_10051_1005010051100500.99960.0001050.0074350.0489327.8854100.385848
486_ZW_28_10011_1000110011100010.99910.0013450.0172480.0716758.0077390.573951
487_ZW_28_10011_1001310011100130.99800.0026300.0376140.1093657.7760230.850421
488_ZW_28_10011_1001710011100170.99820.0017280.0344120.1026957.7760230.798561
489_ZW_28_10011_1002810011100280.99920.0021270.0151900.0709847.7760230.551971
490_ZW_28_10011_1000110011100010.99910.0009490.0172480.0716748.0077390.573949
491_ZW_28_10011_1001310011100130.99800.0025150.0376140.1093667.7760230.850436
492_ZW_28_10011_1001710011100170.99820.0029850.0344120.1026957.7760230.798559
493_ZW_28_10011_1002810011100280.99920.0018840.0151900.0709837.7760230.551966
494_ZW_28_10011_1000110011100010.99910.0008700.0172480.0716748.0077390.573949
495_ZW_28_10011_1001310011100130.99800.0025150.0376140.1093667.7760230.850434
496_ZW_28_10011_1001710011100170.99820.0028280.0344120.1026957.7760230.798558
497_ZW_28_10011_1002810011100280.99920.0026130.0151900.0709847.7760230.551970
498_ZW_29_10017_1001110017100110.99820.0072280.0344120.1026957.7760230.798557
499_ZW_29_10017_1001310017100130.99960.0007530.0074400.0515207.6405380.393638
500_ZW_29_10017_1001210017100120.99920.0050710.0149360.0675677.6739700.518506
501_ZW_29_10017_1001410017100140.99900.0023330.0185930.0778697.6214090.593474
502_ZW_29_10017_1000710017100070.99880.0002640.0227870.0851817.7553300.660605
503_ZW_29_10017_1001610017100160.99880.0011390.0224270.0861067.6601560.659583
504_ZW_29_10017_1001910017100190.99960.0007560.0074500.0502117.5776760.380480
505_ZW_29_10017_1003110017100310.99960.0002760.0074770.0514297.5772660.389694
506_ZW_29_10017_1001110017100110.99820.0076990.0344120.1026947.7760230.798551
507_ZW_29_10017_1001310017100130.99960.0008020.0074400.0515207.6405380.393641
508_ZW_29_10017_1001210017100120.99920.0049330.0149360.0675697.6739700.518520
509_ZW_29_10017_1001410017100140.99900.0020830.0185930.0778717.6214090.593489
510_ZW_29_10017_1000710017100070.99880.0010560.0227870.0851817.7553300.660605
511_ZW_29_10017_1001610017100160.99880.0017090.0224270.0861057.6601560.659579
512_ZW_29_10017_1001910017100190.99960.0007810.0074500.0502117.5776760.380482
513_ZW_29_10017_1003110017100310.99960.0001110.0074770.0514297.5772660.389695
514_ZW_29_10017_1001110017100110.99820.0069140.0344120.1026947.7760230.798554
515_ZW_29_10017_1001310017100130.99960.0008270.0074400.0515197.6405380.393634
516_ZW_29_10017_1001210017100120.99920.0044500.0149360.0675687.6739700.518518
517_ZW_29_10017_1001410017100140.99900.0018570.0185930.0778707.6214090.593479
518_ZW_29_10017_1000710017100070.99880.0009680.0227870.0851817.7553300.660607
519_ZW_29_10017_1001610017100160.99880.0012430.0224270.0861057.6601560.659576
520_ZW_29_10017_1001910017100190.99960.0006320.0074500.0502107.5776760.380476
521_ZW_29_10017_1003110017100310.99960.0001470.0074770.0514307.5772660.389698
522_ZW_30_10013_1001710013100170.99960.0011350.0074400.0515207.6405380.393642
523_ZW_30_10013_1001110013100110.99800.0028580.0376140.1093667.7760230.850435
524_ZW_30_10013_1001210013100120.99960.0027270.0074260.0501907.6739700.385153
525_ZW_30_10013_1001710013100170.99960.0010730.0074400.0515207.6405380.393640
526_ZW_30_10013_1001110013100110.99800.0036590.0376140.1093657.7760230.850426
527_ZW_30_10013_1001210013100120.99960.0026750.0074260.0501907.6739700.385158
528_ZW_30_10013_1001710013100170.99960.0010240.0074400.0515207.6405380.393641
529_ZW_30_10013_1001110013100110.99800.0035440.0376140.1093677.7760230.850442
530_ZW_30_10013_1001210013100120.99960.0026390.0074260.0501917.6739700.385161
531_ZW_31_10007_1000810007100080.99950.0009400.0094270.0552327.8079650.431253
532_ZW_31_10007_1001610007100160.99960.0004730.0074480.0514317.7553300.398864
533_ZW_31_10007_1001710007100170.99880.0026390.0227870.0851807.7553300.660601
534_ZW_31_10007_1001510007100150.99920.0005940.0149150.0671427.7553300.520710
535_ZW_31_10007_1000310007100030.99960.0003350.0074370.0513707.8580850.403671
536_ZW_31_10007_1000810007100080.99950.0012430.0094270.0552327.8079650.431253
537_ZW_31_10007_1001610007100160.99960.0002060.0074480.0514317.7553300.398862
538_ZW_31_10007_1001710007100170.99880.0023750.0227870.0851817.7553300.660603
539_ZW_31_10007_1001510007100150.99920.0006830.0149150.0671427.7553300.520707
540_ZW_31_10007_1000310007100030.99960.0005440.0074370.0513707.8580850.403667
541_ZW_31_10007_1000810007100080.99950.0010910.0094270.0552327.8079650.431253
542_ZW_31_10007_1001610007100160.99960.0004370.0074480.0514317.7553300.398862
543_ZW_31_10007_1001710007100170.99880.0025510.0227870.0851817.7553300.660605
544_ZW_31_10007_1001510007100150.99920.0009210.0149150.0671437.7553300.520717
545_ZW_31_10007_1000310007100030.99960.0005330.0074370.0513707.8580850.403671
546_ZW_32_10016_1000710016100070.99960.0003520.0074480.0514267.7553300.398829
547_ZW_32_10016_1003110016100310.99870.0013910.0249270.0896647.6601560.686841
548_ZW_32_10016_1001710016100170.99880.0036260.0224270.0861057.6601560.659576
549_ZW_32_10016_1001410016100140.99930.0006700.0130160.0661767.6601560.506920
550_ZW_32_10016_1001210016100120.99900.0043870.0186630.0764677.6739700.586808
551_ZW_32_10016_1001510016100150.99960.0003260.0074240.0492907.6704660.378076
552_ZW_32_10016_1000310016100030.99920.0003120.0150350.0704707.8580850.553757
553_ZW_32_10016_1000710016100070.99960.0003280.0074480.0514277.7553300.398836
554_ZW_32_10016_1003110016100310.99870.0005800.0249270.0896647.6601560.686843
555_ZW_32_10016_1001710016100170.99880.0033670.0224270.0861027.6601560.659558
556_ZW_32_10016_1001410016100140.99930.0009540.0130160.0661767.6601560.506916
557_ZW_32_10016_1001210016100120.99900.0040790.0186630.0764687.6739700.586811
558_ZW_32_10016_1001510016100150.99960.0003330.0074240.0492927.6704660.378090
559_ZW_32_10016_1000310016100030.99920.0000450.0150350.0704707.8580850.553759
560_ZW_32_10016_1000710016100070.99960.0003280.0074480.0514277.7553300.398830
561_ZW_32_10016_1003110016100310.99870.0002320.0249270.0896647.6601560.686843
562_ZW_32_10016_1001710016100170.99880.0027970.0224270.0861037.6601560.659560
563_ZW_32_10016_1001410016100140.99930.0010360.0130160.0661767.6601560.506918
564_ZW_32_10016_1001210016100120.99900.0039640.0186630.0764687.6739700.586811
565_ZW_32_10016_1001510016100150.99960.0002720.0074240.0492917.6704660.378081
566_ZW_32_10016_1000310016100030.99920.0001340.0150350.0704707.8580850.553756
567_ZW_33_10015_1000710015100070.99920.0002670.0149150.0671447.7553300.520720
568_ZW_33_10015_1001610015100160.99960.0000480.0074240.0492967.6704660.378120
569_ZW_33_10015_1001410015100140.99960.0004770.0074250.0496657.6704660.380956
570_ZW_33_10015_1001210015100120.99930.0032290.0130090.0666697.6739700.511617
571_ZW_33_10015_1000710015100070.99920.0002670.0149150.0671427.7553300.520707
572_ZW_33_10015_1001610015100160.99960.0000000.0074240.0492937.6704660.378102
573_ZW_33_10015_1001410015100140.99960.0005080.0074250.0496677.6704660.380968
574_ZW_33_10015_1001210015100120.99930.0032750.0130090.0666677.6739700.511601
575_ZW_33_10015_1000710015100070.99920.0000000.0149150.0671427.7553300.520705
576_ZW_33_10015_1001610015100160.99960.0000750.0074240.0492947.6704660.378111
577_ZW_33_10015_1001410015100140.99960.0004770.0074250.0496687.6704660.380976
578_ZW_33_10015_1001210015100120.99930.0030460.0130090.0666677.6739700.511603
579_ZW_34_10014_1001710014100170.99900.0026600.0185930.0778727.6214090.593497
580_ZW_34_10014_1001210014100120.99960.0016090.0074290.0498317.6739700.382403
581_ZW_34_10014_1001510014100150.99960.0001290.0074250.0496707.6704660.380994
582_ZW_34_10014_1001610014100160.99930.0004260.0130160.0661807.6601560.506946
583_ZW_34_10014_1001710014100170.99900.0027350.0185930.0778747.6214090.593506
584_ZW_34_10014_1001210014100120.99960.0015540.0074290.0498317.6739700.382401
585_ZW_34_10014_1001510014100150.99960.0001140.0074250.0496727.6704660.381005
586_ZW_34_10014_1001610014100160.99930.0005080.0130160.0661827.6601560.506962
587_ZW_34_10014_1001710014100170.99900.0028350.0185930.0778737.6214090.593501
588_ZW_34_10014_1001210014100120.99960.0015620.0074290.0498297.6739700.382389
589_ZW_34_10014_1001510014100150.99960.0001670.0074250.0496727.6704660.381008
590_ZW_34_10014_1001610014100160.99930.0005080.0130160.0661807.6601560.506949
591_ZW_35_10012_1001510012100150.99930.0017140.0130090.0666657.6739700.511585
592_ZW_35_10012_1001610012100160.99900.0033860.0186630.0764677.6739700.586806
593_ZW_35_10012_1001410012100140.99960.0014840.0074290.0498287.6739700.382378
594_ZW_35_10012_1001710012100170.99920.0000690.0149360.0675677.6739700.518505
595_ZW_35_10012_1001310012100130.99960.0003430.0074260.0501907.6739700.385155
596_ZW_35_10012_1001510012100150.99930.0012700.0130090.0666667.6739700.511589
597_ZW_35_10012_1001610012100160.99900.0035790.0186630.0764697.6739700.586818
598_ZW_35_10012_1001410012100140.99960.0014840.0074290.0498287.6739700.382380
599_ZW_35_10012_1001710012100170.99920.0002410.0149360.0675677.6739700.518503
600_ZW_35_10012_1001310012100130.99960.0002640.0074260.0501897.6739700.385150
601_ZW_35_10012_1001510012100150.99930.0015300.0130090.0666667.6739700.511592
602_ZW_35_10012_1001610012100160.99900.0034630.0186630.0764687.6739700.586813
603_ZW_35_10012_1001410012100140.99960.0014530.0074290.0498277.6739700.382372
604_ZW_35_10012_1001710012100170.99920.0004140.0149360.0675677.6739700.518507
605_ZW_35_10012_1001310012100130.99960.0002990.0074260.0501907.6739700.385157
606_ZW_36_10033_1001910033100190.99880.0011970.0224020.0849477.5776760.643704
607_ZW_36_10033_1002510033100250.99960.0034180.0074530.0518617.5782340.393014
608_ZW_36_10033_1003910033100390.99860.0011450.0261730.0911837.5886280.691956
609_ZW_36_10033_1003210033100320.99890.0024140.0204150.0813577.5670060.615628
610_ZW_36_10033_1003110033100310.99930.0029200.0130250.0663567.5654530.502015
611_ZW_36_10033_1001910033100190.99880.0014970.0224020.0849467.5776760.643692
612_ZW_36_10033_1002510033100250.99960.0034310.0074530.0518607.5782340.393010
613_ZW_36_10033_1003910033100390.99860.0007450.0261730.0911827.5886280.691944
614_ZW_36_10033_1003210033100320.99890.0027620.0204150.0813597.5670060.615642
615_ZW_36_10033_1003110033100310.99930.0032850.0130250.0663557.5654530.502002
616_ZW_36_10033_1001910033100190.99880.0002000.0224020.0849477.5776760.643699
617_ZW_36_10033_1002510033100250.99960.0031150.0074530.0518607.5782340.393009
618_ZW_36_10033_1003910033100390.99860.0006870.0261730.0911847.5886280.691965
619_ZW_36_10033_1003210033100320.99890.0032260.0204150.0813617.5670060.615656
620_ZW_36_10033_1003110033100310.99930.0038420.0130250.0663557.5654530.502004
621_ZW_37_10032_1003310032100330.99890.0011200.0204150.0813507.5670060.615576
622_ZW_37_10032_1003910032100390.99960.0019720.0074420.0506417.5886280.384300
623_ZW_37_10032_1003810032100380.99930.0004630.0130740.0658797.6137740.501587
624_ZW_37_10032_1003110032100310.99960.0001030.0074250.0494647.5670060.374296
625_ZW_37_10032_1003310032100330.99890.0002120.0204150.0813507.5670060.615574
626_ZW_37_10032_1003910032100390.99960.0021840.0074420.0506417.5886280.384297
627_ZW_37_10032_1003810032100380.99930.0005210.0130740.0658787.6137740.501581
628_ZW_37_10032_1003110032100310.99960.0002460.0074250.0494657.5670060.374300
629_ZW_37_10032_1003310032100330.99890.0007150.0204150.0813477.5670060.615552
630_ZW_37_10032_1003910032100390.99960.0020780.0074420.0506407.5886280.384291
631_ZW_37_10032_1003810032100380.99930.0000580.0130740.0658797.6137740.501585
632_ZW_37_10032_1003110032100310.99960.0000160.0074250.0494647.5670060.374298
633_ZW_38_10031_1001710031100170.99960.0003500.0074770.0514327.5772660.389714
634_ZW_38_10031_1003310031100330.99930.0006720.0130250.0663537.5654530.501992
635_ZW_38_10031_1003210031100320.99960.0011130.0074250.0494707.5670060.374339
636_ZW_38_10031_1003010031100300.99950.0008390.0093300.0524357.6260030.399869
637_ZW_38_10031_1001710031100170.99960.0000920.0074770.0514317.5772660.389709
638_ZW_38_10031_1003310031100330.99930.0007110.0130250.0663547.5654530.501995
639_ZW_38_10031_1003210031100320.99960.0011050.0074250.0494697.5670060.374329
640_ZW_38_10031_1003010031100300.99950.0011520.0093300.0524357.6260030.399871
641_ZW_38_10031_1001710031100170.99960.0003500.0074770.0514327.5772660.389710
642_ZW_38_10031_1003310031100330.99930.0007300.0130250.0663557.5654530.502008
643_ZW_38_10031_1003210031100320.99960.0011450.0074250.0494687.5670060.374328
644_ZW_38_10031_1003010031100300.99950.0008780.0093300.0524367.6260030.399874
645_ZW_39_10038_1004110038100410.99890.0009460.0205020.0824487.6221590.628429
646_ZW_39_10038_1003710038100370.99960.0003790.0074460.0513547.6734930.394065
647_ZW_39_10038_1003610038100360.99800.0008450.0373580.1100297.7114100.848480
648_ZW_39_10038_1003210038100320.99930.0000580.0130740.0658857.6137740.501632
649_ZW_39_10038_1003910038100390.99960.0006370.0074210.0488647.6137740.372043
650_ZW_39_10038_1004110038100410.99890.0015770.0205020.0824487.6221590.628432
651_ZW_39_10038_1003710038100370.99960.0005060.0074460.0513537.6734930.394056
652_ZW_39_10038_1003610038100360.99800.0002540.0373580.1100307.7114100.848488
653_ZW_39_10038_1003210038100320.99930.0001450.0130740.0658847.6137740.501629
654_ZW_39_10038_1003910038100390.99960.0005320.0074210.0488647.6137740.372043
655_ZW_39_10038_1004110038100410.99890.0026020.0205020.0824497.6221590.628439
656_ZW_39_10038_1003710038100370.99960.0003410.0074460.0513547.6734930.394063
657_ZW_39_10038_1003610038100360.99800.0005070.0373580.1100277.7114100.848462
658_ZW_39_10038_1003210038100320.99930.0005210.0130740.0658847.6137740.501628
659_ZW_39_10038_1003910038100390.99960.0005380.0074210.0488637.6137740.372031
660_ZW_40_10039_1003210039100320.99960.0002230.0074420.0506427.5886280.384307
661_ZW_40_10039_1003310039100330.99860.0012030.0261730.0911827.5886280.691946
662_ZW_40_10039_1003710039100370.99930.0002260.0131030.0663017.6734930.508763
663_ZW_40_10039_1003810039100380.99960.0001550.0074210.0488557.6137740.371974
664_ZW_40_10039_1002910039100290.99870.0002000.0243510.0877937.6414020.670861
665_ZW_40_10039_1003210039100320.99960.0003290.0074420.0506437.5886280.384314
666_ZW_40_10039_1003310039100330.99860.0004010.0261730.0911807.5886280.691927
667_ZW_40_10039_1003710039100370.99930.0002590.0131030.0663017.6734930.508757
668_ZW_40_10039_1003810039100380.99960.0000680.0074210.0488567.6137740.371978
669_ZW_40_10039_1002910039100290.99870.0012010.0243510.0877937.6414020.670858
670_ZW_40_10039_1003210039100320.99960.0002120.0074420.0506437.5886280.384310
671_ZW_40_10039_1003310039100330.99860.0000570.0261730.0911807.5886280.691929
672_ZW_40_10039_1003710039100370.99930.0003560.0131030.0663007.6734930.508754
673_ZW_40_10039_1003810039100380.99960.0001240.0074210.0488547.6137740.371966
674_ZW_40_10039_1002910039100290.99870.0015340.0243510.0877937.6414020.670858
675_ZW_41_10035_1003710035100370.99850.0004230.0281920.0956207.7371160.739825
676_ZW_41_10035_1003610035100360.99950.0000970.0093240.0553637.7371160.428350
677_ZW_41_10035_1003410035100340.99960.0005680.0075050.0478667.8921320.377768
678_ZW_41_10035_1003010035100300.99930.0003830.0131970.0668357.7371160.517106
679_ZW_41_10035_1002910035100290.99950.0006100.0093580.0533377.7371160.412675
680_ZW_41_10035_1003710035100370.99850.0016090.0281920.0956217.7371160.739833
681_ZW_41_10035_1003610035100360.99950.0001360.0093240.0553637.7371160.428346
682_ZW_41_10035_1003410035100340.99960.0004870.0075050.0478667.8921320.377768
683_ZW_41_10035_1003010035100300.99930.0002550.0131970.0668347.7371160.517105
684_ZW_41_10035_1002910035100290.99950.0004690.0093580.0533367.7371160.412668
685_ZW_41_10035_1003710035100370.99850.0021160.0281920.0956217.7371160.739833
686_ZW_41_10035_1003610035100360.99950.0001940.0093240.0553637.7371160.428347
687_ZW_41_10035_1003410035100340.99960.0006290.0075050.0478667.8921320.377767
688_ZW_41_10035_1003010035100300.99930.0000000.0131970.0668347.7371160.517102
689_ZW_41_10035_1002910035100290.99950.0004690.0093580.0533367.7371160.412667
690_ZW_42_10036_1003810036100380.99800.0020280.0373580.1100237.7114100.848433
691_ZW_42_10036_1003710036100370.99790.0011650.0390460.1110487.7114100.856339
692_ZW_42_10036_1003410036100340.99920.0025500.0152980.0710117.8921320.560430
693_ZW_42_10036_1003510036100350.99950.0007170.0093240.0553637.7371160.428351
694_ZW_42_10036_1003810036100380.99800.0008450.0373580.1100227.7114100.848423
695_ZW_42_10036_1003710036100370.99790.0009060.0390460.1110527.7114100.856366
696_ZW_42_10036_1003410036100340.99920.0025500.0152980.0710117.8921320.560429
697_ZW_42_10036_1003510036100350.99950.0009300.0093240.0553637.7371160.428352
698_ZW_42_10036_1003810036100380.99800.0000850.0373580.1100217.7114100.848421
699_ZW_42_10036_1003710036100370.99790.0015530.0390460.1110537.7114100.856378
700_ZW_42_10036_1003410036100340.99920.0002830.0152980.0710117.8921320.560432
701_ZW_42_10036_1003510036100350.99950.0011050.0093240.0553637.7371160.428353
702_ZW_43_10028_1001110028100110.99920.0040710.0151900.0709757.7760230.551901
703_ZW_43_10028_1003010028100300.99870.0011660.0244190.0887997.7739830.690320
704_ZW_43_10028_1002910028100290.99880.0026600.0225440.0835027.7739830.649144
705_ZW_43_10028_1003410028100340.99950.0000860.0094080.0559787.8921320.441783
706_ZW_43_10028_1001110028100110.99920.0042530.0151900.0709757.7760230.551904
707_ZW_43_10028_1003010028100300.99870.0017490.0244190.0887997.7739830.690321
708_ZW_43_10028_1002910028100290.99880.0032590.0225440.0835027.7739830.649141
709_ZW_43_10028_1003410028100340.99950.0001720.0094080.0559787.8921320.441787
710_ZW_43_10028_1001110028100110.99920.0041320.0151900.0709767.7760230.551910
711_ZW_43_10028_1003010028100300.99870.0012390.0244190.0888007.7739830.690327
712_ZW_43_10028_1002910028100290.99880.0031920.0225440.0835027.7739830.649144
713_ZW_43_10028_1003410028100340.99950.0003150.0094080.0559787.8921320.441783
714_ZW_44_10034_1002810034100280.99950.0006580.0094080.0559817.8921320.441810
715_ZW_44_10034_1003510034100350.99960.0023730.0075050.0478657.8921320.377753
716_ZW_44_10034_1003710034100370.99860.0034480.0272850.0920507.8921320.726467
717_ZW_44_10034_1003610034100360.99920.0036830.0152980.0710117.8921320.560428
718_ZW_44_10034_1004510034100450.99970.0003420.0056380.0401438.1088740.325514
719_ZW_44_10034_1002810034100280.99950.0002290.0094080.0559817.8921320.441812
720_ZW_44_10034_1003510034100350.99960.0021100.0075050.0478657.8921320.377756
721_ZW_44_10034_1003710034100370.99860.0041980.0272850.0920497.8921320.726465
722_ZW_44_10034_1003610034100360.99920.0035410.0152980.0710117.8921320.560432
723_ZW_44_10034_1004510034100450.99970.0002770.0056380.0401438.1088740.325517
724_ZW_44_10034_1002810034100280.99950.0004290.0094080.0559807.8921320.441805
725_ZW_44_10034_1003510034100350.99960.0021300.0075050.0478657.8921320.377757
726_ZW_44_10034_1003710034100370.99860.0043480.0272850.0920497.8921320.726463
727_ZW_44_10034_1003610034100360.99920.0029750.0152980.0710117.8921320.560430
728_ZW_44_10034_1004510034100450.99970.0003420.0056380.0401438.1088740.325515
729_ZW_45_10030_1002810030100280.99870.0005830.0244190.0887997.7739830.690324
730_ZW_45_10030_1003110030100310.99950.0004880.0093300.0524367.6260030.399877
731_ZW_45_10030_1002910030100290.99960.0011970.0074170.0485457.6414020.370949
732_ZW_45_10030_1003510030100350.99930.0037890.0131970.0668347.7371160.517100
733_ZW_45_10030_1002810030100280.99870.0004370.0244190.0887997.7739830.690321
734_ZW_45_10030_1003110030100310.99950.0003900.0093300.0524367.6260030.399875
735_ZW_45_10030_1002910030100290.99960.0013030.0074170.0485447.6414020.370947
736_ZW_45_10030_1003510030100350.99930.0037890.0131970.0668347.7371160.517099
737_ZW_45_10030_1002810030100280.99870.0008020.0244190.0887997.7739830.690324
738_ZW_45_10030_1003110030100310.99950.0006440.0093300.0524357.6260030.399872
739_ZW_45_10030_1002910030100290.99960.0012750.0074170.0485447.6414020.370943
740_ZW_45_10030_1003510030100350.99930.0039590.0131970.0668347.7371160.517101
741_ZW_46_10029_1003010029100300.99960.0015700.0074170.0485447.6414020.370945
742_ZW_46_10029_1003910029100390.99870.0015340.0243510.0877957.6414020.670874
743_ZW_46_10029_1003510029100350.99950.0013130.0093580.0533377.7371160.412674
744_ZW_46_10029_1002810029100280.99880.0037910.0225440.0835047.7739830.649156
745_ZW_46_10029_1003010029100300.99960.0014480.0074170.0485467.6414020.370957
746_ZW_46_10029_1003910029100390.99870.0020010.0243510.0877947.6414020.670866
747_ZW_46_10029_1003510029100350.99950.0012430.0093580.0533377.7371160.412677
748_ZW_46_10029_1002810029100280.99880.0039900.0225440.0835047.7739830.649157
749_ZW_46_10029_1003010029100300.99960.0016090.0074170.0485437.6414020.370936
750_ZW_46_10029_1003910029100390.99870.0015340.0243510.0877947.6414020.670873
751_ZW_46_10029_1003510029100350.99950.0014540.0093580.0533377.7371160.412678
752_ZW_46_10029_1002810029100280.99880.0048550.0225440.0835037.7739830.649155
753_ZW_47_10053_1004410053100440.99960.0010950.0075240.0515567.9302610.408855
754_ZW_47_10053_1005210053100520.99760.0010650.0447430.1198867.9302610.950726
755_ZW_47_10053_1005910053100590.99910.0013020.0169830.0721588.2892660.598135
756_ZW_47_10053_1004910053100490.99950.0004390.0093730.0542617.9302610.430305
757_ZW_47_10053_1005010053100500.99960.0009080.0074330.0487777.9302610.386815
758_ZW_47_10053_1005110053100510.99940.0005210.0111900.0623777.9302610.494669
759_ZW_47_10053_1004410053100440.99960.0008330.0075240.0515567.9302610.408853
760_ZW_47_10053_1005210053100520.99760.0025400.0447430.1198887.9302610.950740
761_ZW_47_10053_1005910053100590.99910.0018680.0169830.0721578.2892660.598129
762_ZW_47_10053_1004910053100490.99950.0000980.0093730.0542627.9302610.430310
763_ZW_47_10053_1005010053100500.99960.0009360.0074330.0487777.9302610.386818
764_ZW_47_10053_1005110053100510.99940.0004780.0111900.0623787.9302610.494674
765_ZW_47_10053_1004410053100440.99960.0012380.0075240.0515567.9302610.408852
766_ZW_47_10053_1005210053100520.99760.0012290.0447430.1198857.9302610.950723
767_ZW_47_10053_1005910053100590.99910.0009620.0169830.0721588.2892660.598133
768_ZW_47_10053_1004910053100490.99950.0005610.0093730.0542627.9302610.430308
769_ZW_47_10053_1005010053100500.99960.0008610.0074330.0487777.9302610.386813
770_ZW_47_10053_1005110053100510.99940.0004350.0111900.0623777.9302610.494667
771_ZW_48_10049_1005010049100500.99910.0078030.0167250.0719147.9159300.569264
772_ZW_48_10049_1005310049100530.99950.0069810.0093730.0542617.9302610.430307
773_ZW_48_10049_1004710049100470.99890.0109840.0206800.0814917.9496040.647819
774_ZW_48_10049_1004610049100460.99880.0123540.0227390.0840147.9633350.669028
775_ZW_48_10049_1004810049100480.99880.0107780.0223320.0841247.9159300.665917
776_ZW_48_10049_1005010049100500.99910.0085570.0167250.0719157.9159300.569277
777_ZW_48_10049_1005310049100530.99950.0065660.0093730.0542627.9302610.430311
778_ZW_48_10049_1004710049100470.99890.0100020.0206800.0814917.9496040.647817
779_ZW_48_10049_1004610049100460.99880.0112800.0227390.0840147.9633350.669028
780_ZW_48_10049_1004810049100480.99880.0103410.0223320.0841257.9159300.665926
781_ZW_48_10049_1005010049100500.99910.0081680.0167250.0719167.9159300.569280
782_ZW_48_10049_1005310049100530.99950.0065660.0093730.0542617.9302610.430307
783_ZW_48_10049_1004710049100470.99890.0098800.0206800.0814917.9496040.647819
784_ZW_48_10049_1004610049100460.99880.0108320.0227390.0840147.9633350.669033
785_ZW_48_10049_1004810049100480.99880.0113510.0223320.0841247.9159300.665922
786_ZW_49_10050_1005110050100510.99960.0008430.0074350.0489297.8854100.385828
787_ZW_49_10050_1005210050100520.99740.0014100.0485880.1257767.8854100.991797
788_ZW_49_10050_1005310050100530.99960.0006050.0074330.0487737.9302610.386780
789_ZW_49_10050_1004910050100490.99910.0006810.0167490.0720127.9159300.570045
790_ZW_49_10050_1004810050100480.99830.0030960.0318740.1019917.9083370.806582
791_ZW_49_10050_1005110050100510.99960.0006610.0074350.0489287.8854100.385816
792_ZW_49_10050_1005210050100520.99740.0017350.0485880.1257797.8854100.991815
793_ZW_49_10050_1005310050100530.99960.0005490.0074330.0487737.9302610.386780
794_ZW_49_10050_1004910050100490.99910.0003160.0167490.0720127.9159300.570040
795_ZW_49_10050_1004810050100480.99830.0045530.0318740.1019927.9083370.806584
796_ZW_49_10050_1005110050100510.99960.0008620.0074350.0489297.8854100.385826
797_ZW_49_10050_1005210050100520.99740.0027110.0485880.1257797.8854100.991821
798_ZW_49_10050_1005310050100530.99960.0004630.0074330.0487737.9302610.386784
799_ZW_49_10050_1004910050100490.99910.0005590.0167490.0720137.9159300.570048
800_ZW_49_10050_1004810050100480.99830.0036430.0318740.1019927.9083370.806584
801_ZW_50_10048_1005010048100500.99830.0050090.0318740.1019947.9083370.806602
802_ZW_50_10048_1004910048100490.99880.0036040.0223320.0841267.9159300.665933
803_ZW_50_10048_1005710048100570.99720.0048550.0528890.1291078.2378891.063571
804_ZW_50_10048_1004710048100470.99930.0002740.0130240.0656407.9496040.521812
805_ZW_50_10048_1004610048100460.99910.0006290.0168480.0724587.9633350.577007
806_ZW_50_10048_1005010048100500.99830.0053730.0318740.1019957.9083370.806608
807_ZW_50_10048_1004910048100490.99880.0035700.0223320.0841257.9159300.665928
808_ZW_50_10048_1005710048100570.99720.0123120.0528890.1291088.2378891.063577
809_ZW_50_10048_1004710048100470.99930.0002350.0130240.0656397.9496040.521808
810_ZW_50_10048_1004610048100460.99910.0019280.0168480.0724577.9633350.576999
811_ZW_50_10048_1005010048100500.99830.0037340.0318740.1019947.9083370.806600
812_ZW_50_10048_1004910048100490.99880.0032340.0223320.0841247.9159300.665923
813_ZW_50_10048_1005710048100570.99720.0081500.0528890.1291088.2378891.063579
814_ZW_50_10048_1004710048100470.99930.0001960.0130240.0656397.9496040.521804
815_ZW_50_10048_1004610048100460.99910.0011730.0168480.0724577.9633350.577000
816_ZW_51_10047_1004810047100480.99930.0003530.0130240.0656377.9496040.521786
817_ZW_51_10047_1004910047100490.99890.0025770.0206800.0814917.9496040.647821
818_ZW_51_10047_1004510047100450.99950.0000630.0094380.0569368.1088740.461684
819_ZW_51_10047_1004610047100460.99960.0010670.0074280.0465877.9633350.370986
820_ZW_51_10047_1004810047100480.99930.0002740.0130240.0656377.9496040.521790
821_ZW_51_10047_1004910047100490.99890.0035590.0206800.0814917.9496040.647822
822_ZW_51_10047_1004510047100450.99950.0011600.0094380.0569368.1088740.461688
823_ZW_51_10047_1004610047100460.99960.0009290.0074280.0465867.9633350.370983
824_ZW_51_10047_1004810047100480.99930.0001180.0130240.0656367.9496040.521782
825_ZW_51_10047_1004910047100490.99890.0012270.0206800.0814907.9496040.647814
826_ZW_51_10047_1004510047100450.99950.0004390.0094380.0569368.1088740.461684
827_ZW_51_10047_1004610047100460.99960.0010360.0074280.0465877.9633350.370986
828_ZW_52_10046_1004810046100480.99910.0015090.0168480.0724577.9633350.577002
829_ZW_52_10046_1004710046100470.99960.0007520.0074280.0465867.9633350.370977
830_ZW_52_10046_1005510046100550.99710.0006030.0549170.1323938.3221811.101801
831_ZW_52_10046_1004510046100450.99960.0003580.0074790.0493268.1088740.399974
832_ZW_52_10046_1004810046100480.99910.0005450.0168480.0724577.9633350.577000
833_ZW_52_10046_1004710046100470.99960.0006140.0074280.0465867.9633350.370980
834_ZW_52_10046_1005510046100550.99710.0042240.0549170.1323938.3221811.101797
835_ZW_52_10046_1004510046100450.99960.0005190.0074790.0493258.1088740.399971
836_ZW_52_10046_1004810046100480.99910.0013830.0168480.0724577.9633350.576998
837_ZW_52_10046_1004710046100470.99960.0005910.0074280.0465877.9633350.370986
838_ZW_52_10046_1005510046100550.99710.0128740.0549170.1323948.3221811.101807
839_ZW_52_10046_1004510046100450.99960.0003040.0074790.0493258.1088740.399970
840_ZW_53_10045_1003410045100340.99970.0004730.0056380.0401478.1088740.325545
841_ZW_53_10045_1004610045100460.99960.0001430.0074790.0493268.1088740.399980
842_ZW_53_10045_1004710045100470.99950.0016620.0094380.0569378.1088740.461692
843_ZW_53_10045_1005410045100540.99690.0059660.0588030.1357448.5511811.160774
844_ZW_53_10045_1003410045100340.99970.0003750.0056380.0401468.1088740.325543
845_ZW_53_10045_1004610045100460.99960.0001250.0074790.0493278.1088740.399983
846_ZW_53_10045_1004710045100470.99950.0006270.0094380.0569368.1088740.461691
847_ZW_53_10045_1005410045100540.99690.0219450.0588030.1357448.5511811.160768
848_ZW_53_10045_1003410045100340.99970.0001630.0056380.0401478.1088740.325546
849_ZW_53_10045_1004610045100460.99960.0000720.0074790.0493268.1088740.399980
850_ZW_53_10045_1004710045100470.99950.0005960.0094380.0569368.1088740.461688
851_ZW_53_10045_1005410045100540.99690.0219450.0588030.1357438.5511811.160763
852_ZW_54_10059_1005310059100530.99910.0014150.0169830.0721588.2892660.598135
853_ZW_54_10059_1005210059100520.99760.0025200.0462680.1207398.2892661.000839
854_ZW_54_10059_1005810059100580.99750.0011810.0467390.1235148.3375201.029799
855_ZW_54_10059_1005610059100560.99790.0139220.0410580.1126038.3789570.943497
856_ZW_54_10059_1005710059100570.99910.0002890.0171680.0732388.2892660.607090
857_ZW_54_10059_1005310059100530.99910.0019250.0169830.0721598.2892660.598141
858_ZW_54_10059_1005210059100520.99760.0002290.0462680.1207408.2892661.000843
859_ZW_54_10059_1005810059100580.99750.0028540.0467390.1235148.3375201.029804
860_ZW_54_10059_1005610059100560.99790.0139220.0410580.1126038.3789570.943492
861_ZW_54_10059_1005710059100570.99910.0000000.0171680.0732388.2892660.607087
862_ZW_54_10059_1005310059100530.99910.0029440.0169830.0721588.2892660.598138
863_ZW_54_10059_1005210059100520.99760.0052680.0462680.1207418.2892661.000850
864_ZW_54_10059_1005810059100580.99750.0003940.0467390.1235138.3375201.029796
865_ZW_54_10059_1005610059100560.99790.0129780.0410580.1126038.3789570.943496
866_ZW_54_10059_1005710059100570.99910.0012980.0171680.0732388.2892660.607087
867_ZW_55_10058_1005910058100590.99750.0051170.0467390.1235198.3375201.029845
868_ZW_55_10058_1005610058100560.99910.0039960.0170480.0727708.3789570.609737
869_ZW_55_10058_1005510058100550.99800.0088160.0383210.1086338.3375200.905732
870_ZW_55_10058_1005710058100570.99770.0074120.0430300.1167228.3375200.973175
871_ZW_55_10058_1005910058100590.99750.0043300.0467390.1235198.3375201.029839
872_ZW_55_10058_1005610058100560.99910.0029970.0170480.0727708.3789570.609737
873_ZW_55_10058_1005510058100550.99800.0089960.0383210.1086338.3375200.905730
874_ZW_55_10058_1005710058100570.99770.0075150.0430300.1167238.3375200.973180
875_ZW_55_10058_1005910058100590.99750.0078720.0467390.1235198.3375201.029844
876_ZW_55_10058_1005610058100560.99910.0029970.0170480.0727698.3789570.609732
877_ZW_55_10058_1005510058100550.99800.0080960.0383210.1086348.3375200.905738
878_ZW_55_10058_1005710058100570.99770.0077210.0430300.1167248.3375200.973192
879_ZW_56_10057_1005910057100590.99910.0032460.0171680.0732378.2892660.607079
880_ZW_56_10057_1005810057100580.99770.0018530.0430300.1167208.3375200.973155
881_ZW_56_10057_1005610057100560.99810.0134200.0354540.1060008.3789570.888166
882_ZW_56_10057_1005510057100550.99950.0016160.0093670.0554708.3221810.461629
883_ZW_56_10057_1004810057100480.99720.0043350.0528890.1291068.2378891.063557
884_ZW_56_10057_1005910057100590.99910.0036790.0171680.0732368.2892660.607075
885_ZW_56_10057_1005810057100580.99770.0052500.0430300.1167178.3375200.973133
886_ZW_56_10057_1005610057100560.99810.0122850.0354540.1059988.3789570.888156
887_ZW_56_10057_1005510057100550.99950.0015690.0093670.0554708.3221810.461630
888_ZW_56_10057_1004810057100480.99720.0048550.0528890.1291058.2378891.063551
889_ZW_56_10057_1005910057100590.99910.0025970.0171680.0732378.2892660.607084
890_ZW_56_10057_1005810057100580.99770.0003090.0430300.1167188.3375200.973137
891_ZW_56_10057_1005610057100560.99810.0130200.0354540.1060018.3789570.888175
892_ZW_56_10057_1005510057100550.99950.0013350.0093670.0554708.3221810.461630
893_ZW_56_10057_1004810057100480.99720.0048550.0528890.1291058.2378891.063551
894_ZW_57_10055_1005710055100570.99950.0004220.0093440.0553328.3221810.460486
895_ZW_57_10055_1005810055100580.99800.0066570.0383210.1086338.3375200.905728
896_ZW_57_10055_1005610055100560.99840.0080730.0297090.0973508.3789570.815689
897_ZW_57_10055_1005410055100540.99910.0001720.0169810.0716728.5511810.612879
898_ZW_57_10055_1004610055100460.99710.0086500.0549170.1323958.3221811.101816
899_ZW_57_10055_1005710055100570.99950.0003510.0093440.0553328.3221810.460485
900_ZW_57_10055_1005810055100580.99800.0050380.0383210.1086338.3375200.905727
901_ZW_57_10055_1005610055100560.99840.0072120.0297090.0973518.3789570.815701
902_ZW_57_10055_1005410055100540.99910.0017150.0169810.0716728.5511810.612882
903_ZW_57_10055_1004610055100460.99710.0050290.0549170.1323948.3221811.101810
904_ZW_57_10055_1005710055100570.99950.0001410.0093440.0553328.3221810.460480
905_ZW_57_10055_1005810055100580.99800.0061170.0383210.1086338.3375200.905728
906_ZW_57_10055_1005610055100560.99840.0078820.0297090.0973508.3789570.815691
907_ZW_57_10055_1005410055100540.99910.0004570.0169810.0716728.5511810.612882
908_ZW_57_10055_1004610055100460.99710.0138800.0549170.1323948.3221811.101811
909_ZW_58_10056_1005810056100580.99910.0025970.0170480.0727678.3789570.609708
910_ZW_58_10056_1005710056100570.99810.0019360.0354540.1059918.3789570.888096
911_ZW_58_10056_1005410056100540.99910.0010690.0171080.0726928.5511810.621604
912_ZW_58_10056_1005510056100550.99840.0012130.0297090.0973388.3789570.815592
913_ZW_58_10056_1005810056100580.99910.0026640.0170480.0727678.3789570.609713
914_ZW_58_10056_1005710056100570.99810.0026040.0354540.1059938.3789570.888112
915_ZW_58_10056_1005410056100540.99910.0007840.0171080.0726928.5511810.621605
916_ZW_58_10056_1005510056100550.99840.0006700.0297090.0973388.3789570.815587
917_ZW_58_10056_1005810056100580.99910.0024640.0170480.0727668.3789570.609706
918_ZW_58_10056_1005710056100570.99810.0028040.0354540.1059938.3789570.888107
919_ZW_58_10056_1005410056100540.99910.0007130.0171080.0726928.5511810.621605
920_ZW_58_10056_1005510056100550.99840.0014040.0297090.0973398.3789570.815600
921_ZW_59_10054_1004510054100450.99690.0019180.0588030.1357478.5511811.160795
922_ZW_59_10054_1005510054100550.99910.0011430.0169810.0716728.5511810.612881
923_ZW_59_10054_1005610054100560.99910.0026370.0171080.0726948.5511810.621616
924_ZW_59_10054_1004510054100450.99690.0117180.0588030.1357478.5511811.160794
925_ZW_59_10054_1005510054100550.99910.0008000.0169810.0716728.5511810.612884
926_ZW_59_10054_1005610054100560.99910.0025660.0171080.0726948.5511810.621616
927_ZW_59_10054_1004510054100450.99690.0125700.0588030.1357468.5511811.160791
928_ZW_59_10054_1005510054100550.99910.0002290.0169810.0716728.5511810.612884
929_ZW_59_10054_1005610054100560.99910.0023520.0171080.0726948.5511810.621618
930_ZW_60_10047_1004810047100480.99930.0025260.0130240.0656407.9496040.521808
931_ZW_60_10047_812100478120.99960.0049360.0074280.0471098.0122380.377447
932_ZW_60_10047_816100478160.99930.0074840.0130070.0657827.9496040.522939
933_ZW_60_10047_FH310047FH30.99920.0032370.0148700.0707527.9496040.562452
934_ZW_60_10047_1004810047100480.99930.0026050.0130240.0656427.9496040.521827
935_ZW_60_10047_812100478120.99960.0050040.0074280.0471098.0122380.377445
936_ZW_60_10047_816100478160.99930.0078480.0130070.0657827.9496040.522942
937_ZW_60_10047_FH310047FH30.99920.0036040.0148700.0707517.9496040.562446
938_ZW_60_10047_1004810047100480.99930.0027420.0130240.0656417.9496040.521822
939_ZW_60_10047_812100478120.99960.0050230.0074280.0471098.0122380.377450
940_ZW_60_10047_816100478160.99930.0076110.0130070.0657837.9496040.522945
941_ZW_60_10047_FH310047FH30.99920.0031290.0148700.0707517.9496040.562440
942_ZW_61_10046_1004810046100480.99910.0039810.0168480.0724687.9633350.577083
943_ZW_61_10046_FH310046FH30.99900.0017520.0186830.0755277.9633350.601444
944_ZW_61_10046_812100468120.99940.0105750.0111240.0585248.0122380.468912
945_ZW_61_10046_1004810046100480.99910.0045680.0168480.0724687.9633350.577088
946_ZW_61_10046_FH310046FH30.99900.0034130.0186830.0755277.9633350.601445
947_ZW_61_10046_812100468120.99940.0106060.0111240.0585248.0122380.468910
948_ZW_61_10046_1004810046100480.99910.0038560.0168480.0724677.9633350.577082
949_ZW_61_10046_FH310046FH30.99900.0024250.0186830.0755277.9633350.601446
950_ZW_61_10046_812100468120.99940.0106530.0111240.0585238.0122380.468898
951_ZW_62_10048_1004610048100460.99910.0031430.0168480.0724687.9633350.577085
952_ZW_62_10048_812100488120.99970.0043730.0056240.0457768.0122380.366768
953_ZW_62_10048_816100488160.99970.0036360.0055640.0436667.9302540.346281
954_ZW_62_10048_FH310048FH30.99890.0106500.0203340.0824837.9388430.654821
955_ZW_62_10048_1004610048100460.99910.0024310.0168480.0724687.9633350.577091
956_ZW_62_10048_812100488120.99970.0040020.0056240.0457768.0122380.366769
957_ZW_62_10048_816100488160.99970.0036070.0055640.0436667.9302540.346279
958_ZW_62_10048_FH310048FH30.99890.0106830.0203390.0824957.9388430.654914
959_ZW_62_10048_1004610048100460.99910.0028080.0168480.0724697.9633350.577098
960_ZW_62_10048_812100488120.99970.0042650.0056240.0457768.0122380.366772
961_ZW_62_10048_816100488160.99970.0035110.0055640.0436677.9302540.346287
962_ZW_62_10048_FH310048FH30.99890.0106780.0203390.0824897.9388430.654867
963_ZW_63_10056_1005510056100550.99840.0011490.0297090.0973338.3789570.815552
964_ZW_63_10056_666100566660.99880.0049330.0225220.0863978.4810010.732732
965_ZW_63_10056_1005510056100550.99840.0018510.0297090.0973328.3789570.815539
966_ZW_63_10056_666100566660.99880.0055170.0225220.0863978.4810010.732730
967_ZW_63_10056_1005510056100550.99840.0011490.0297090.0973338.3789570.815553
968_ZW_63_10056_666100566660.99880.0062960.0225220.0863978.4810010.732733
969_ZW_64_10055_1005610055100560.99840.0041170.0297090.0973348.3789570.815554
970_ZW_64_10055_666100556660.99950.0039190.0093180.0537758.4810010.456068
971_ZW_64_10055_1005610055100560.99840.0044360.0297090.0973358.3789570.815562
972_ZW_64_10055_666100556660.99950.0037160.0093180.0537758.4810010.456068
973_ZW_64_10055_1005610055100560.99840.0034460.0297090.0973348.3789570.815560
974_ZW_64_10055_666100556660.99950.0038460.0093180.0537768.4810010.456071
975_ZW_65_10054_1005510054100550.99910.0028590.0169810.0716728.5511810.612879
976_ZW_65_10054_666100546660.99950.0012390.0092910.0522228.5511810.446558
977_ZW_65_10054_1005510054100550.99910.0029160.0169810.0716738.5511810.612886
978_ZW_65_10054_666100546660.99950.0011040.0092910.0522218.5511810.446554
979_ZW_65_10054_1005510054100550.99910.0031450.0169810.0716728.5511810.612884
980_ZW_65_10054_666100546660.99950.0012120.0092910.0522228.5511810.446561
981_ZW_66_10035_1003710035100370.99850.0039790.0281920.0956217.7371160.739829
982_ZW_66_10035_FH1110035FH110.99960.0033860.0074220.0464127.8503200.364348
983_ZW_66_10035_FH1410035FH140.99940.0058650.0111320.0586817.8442780.460313
984_ZW_66_10035_1003710035100370.99850.0039790.0281920.0956217.7371160.739830
985_ZW_66_10035_FH1110035FH110.99960.0038130.0074220.0464127.8503200.364350
986_ZW_66_10035_FH1410035FH140.99940.0061160.0111320.0586837.8442780.460325
987_ZW_66_10035_1003710035100370.99850.0039790.0281920.0956207.7371160.739827
988_ZW_66_10035_FH1110035FH110.99960.0034670.0074220.0464137.8503200.364355
989_ZW_66_10035_FH1410035FH140.99940.0060420.0111320.0586847.8442780.460337
990_ZW_67_10036_1003710036100370.99790.0065580.0390460.1110667.7114100.856478
991_ZW_67_10036_FH1110036FH110.99910.0089550.0168710.0718147.8503200.563762
992_ZW_67_10036_FH1410036FH140.99890.0111810.0205960.0799317.8442780.627003
993_ZW_67_10036_1003710036100370.99790.0053070.0390460.1110677.7114100.856486
994_ZW_67_10036_FH1110036FH110.99910.0093440.0168710.0718147.8503200.563762
995_ZW_67_10036_FH1410036FH140.99890.0117690.0205960.0799337.8442780.627017
996_ZW_67_10036_1003710036100370.99790.0054360.0390460.1110697.7114100.856495
997_ZW_67_10036_FH1110036FH110.99910.0086950.0168710.0718147.8503200.563766
998_ZW_67_10036_FH1410036FH140.99890.0113940.0205960.0799327.8442780.627012
999_ZW_68_10034_1003510034100350.99960.0006690.0075050.0478687.8921320.377777
1000_ZW_68_10034_FH1410034FH140.99960.0046390.0074610.0492857.8921320.388967
1001_ZW_68_10034_1003510034100350.99960.0004670.0075050.0478687.8921320.377781
1002_ZW_68_10034_FH1410034FH140.99960.0047520.0074610.0492867.8921320.388970
1003_ZW_68_10034_1003510034100350.99960.0003850.0075050.0478677.8921320.377776
1004_ZW_68_10034_FH1410034FH140.99960.0044930.0074610.0492867.8921320.388968
1005_ZW_69_10037_1004010037100400.99960.0004700.0074360.0503567.6740060.386431
1006_ZW_69_10037_FH410037FH40.99900.0139250.0186620.0778727.8558600.611748
1007_ZW_69_10037_FH1110037FH110.99820.0161890.0340820.1027827.8503200.806871
1008_ZW_69_10037_1004010037100400.99960.0003380.0074360.0503567.6740060.386432
1009_ZW_69_10037_FH410037FH40.99900.0138020.0186620.0778727.8558600.611750
1010_ZW_69_10037_FH1110037FH110.99820.0153370.0340820.1027837.8503200.806877
1011_ZW_69_10037_1004010037100400.99960.0005010.0074360.0503547.6740060.386420
1012_ZW_69_10037_FH410037FH40.99900.0135160.0186620.0778727.8558600.611751
1013_ZW_69_10037_FH1110037FH110.99820.0154580.0340820.1027827.8503200.806874
1014_ZW_70_10041_1004010041100400.99950.0008880.0093050.0521897.6740060.400498
1015_ZW_70_10041_FH410041FH40.99900.0110500.0188150.0790837.8558600.621268
1016_ZW_70_10041_1004010041100400.99950.0008420.0093050.0521897.6740060.400499
1017_ZW_70_10041_FH410041FH40.99900.0118870.0188150.0790837.8558600.621261
1018_ZW_70_10041_1004010041100400.99950.0008420.0093050.0521897.6740060.400501
1019_ZW_70_10041_FH410041FH40.99900.0123050.0188150.0790837.8558600.621265
1020_ZW_71_10007_1001510007100150.99920.0004750.0149150.0671457.7553300.520729
1021_ZW_71_10007_FH1310007FH130.99950.0062750.0092520.0555117.8193640.434059
1022_ZW_71_10007_1001510007100150.99920.0007730.0149150.0671447.7553300.520722
1023_ZW_71_10007_FH1310007FH130.99950.0062750.0092520.0555127.8193640.434066
1024_ZW_71_10007_1001510007100150.99920.0004460.0149150.0671457.7553300.520728
1025_ZW_71_10007_FH1310007FH130.99950.0062680.0092520.0555207.8193640.434128
1026_ZW_72_10015_1000710015100070.99920.0023470.0149150.0671477.7553300.520747
1027_ZW_72_10015_FH1310015FH130.99890.0126520.0205200.0829267.8193640.648431
1028_ZW_72_10015_1000710015100070.99920.0024070.0149150.0671467.7553300.520737
1029_ZW_72_10015_FH1310015FH130.99890.0118020.0205200.0829267.8193640.648429
1030_ZW_72_10015_1000710015100070.99920.0018720.0149150.0671467.7553300.520738
1031_ZW_72_10015_FH1310015FH130.99890.0118470.0205200.0829267.8193640.648428
1032_ZW_73_10008_1000710008100070.99950.0000910.0094270.0552387.8079650.431296
1033_ZW_73_10008_FH1310008FH130.99910.0084760.0169520.0734157.8193640.574057
1034_ZW_73_10008_1000710008100070.99950.0003330.0094270.0552387.8079650.431297
1035_ZW_73_10008_FH1310008FH130.99910.0089710.0169520.0734157.8193640.574056
1036_ZW_73_10008_1000710008100070.99950.0002730.0094270.0552387.8079650.431296
1037_ZW_73_10008_FH1310008FH130.99910.0097970.0169520.0734157.8193640.574056
1038_ZW_74_10033_1003210033100320.99890.0035150.0204150.0813287.5670060.615408
1039_ZW_74_10033_FH1510033FH150.99960.0048770.0074160.0517937.6532680.396385
1040_ZW_74_10033_1003210033100320.99890.0038440.0204150.0813287.5670060.615411
1041_ZW_74_10033_FH1510033FH150.99960.0048740.0074160.0517957.6532680.396398
1042_ZW_74_10033_1003210033100320.99890.0038240.0204150.0813297.5670060.615419
1043_ZW_74_10033_FH1510033FH150.99960.0048850.0074160.0517947.6532680.396393
1044_ZW_75_10032_1003310032100330.99890.0011980.0204150.0813217.5670060.615357
1045_ZW_75_10032_FH1510032FH150.99920.0073620.0148700.0713157.6532680.545795
1046_ZW_75_10032_1003310032100330.99890.0011980.0204150.0813227.5670060.615367
1047_ZW_75_10032_FH1510032FH150.99920.0072170.0148700.0713137.6532680.545781
1048_ZW_75_10032_1003310032100330.99890.0011780.0204150.0813217.5670060.615360
1049_ZW_75_10032_FH1510032FH150.99920.0070500.0148700.0713147.6532680.545784
1_gnssbx_0645_100260645100260.95311.0280017.0771161.69050216.18162527.355075
2_gnssbx_0645_100140645100140.92450.3476786.3248620.81864316.18162513.246968
3_gnssbx_0645_100440645100440.80551.50076212.8202732.07662816.18162533.603216
5_gnssbx_0645_100080645100080.92981.5014386.3518360.80497616.18162513.025825
6_gnssbx_0645_100440645100440.91301.4594257.0617031.02382216.18162516.567109
7_gnssbx_0656_100140656100140.83470.0687654.1187802.0337239.15255818.613770
8_gnssbx_0656_100260656100260.97600.7866001.3898161.0290069.1525589.418034
9_gnssbx_0656_100010656100010.96890.4626441.9156361.0580709.1525589.684046
10_gnssbx_0656_100280656100280.96130.9442801.5569400.5272569.1525584.825737
11_gnssbx_0656_100140656100140.87380.1809713.0955601.0126869.1525589.268665
13_gnssbx_0656_100010656100010.93790.4030292.3645200.7205219.1525586.594614
14_gnssbx_0656_100590656100590.89800.9258544.6266181.4298389.15255813.086676
15_gnssbx_0656_100440656100440.73522.8773175.7127952.0335279.15255818.611976
17_gnssbx_0656_100260656100260.97810.1771491.1483050.4428659.1525584.053351
18_gnssbx_0656_100590656100590.86121.1685574.7044871.2692459.15255811.616842
19_gnssbx_0656_100080656100080.83910.0157684.0773671.2243409.15255811.205839
23_gnssbx_0656_100280656100280.96730.3736961.5513860.7300879.1525586.682162
24_gnssbx_0656_100080656100080.93260.3047832.8556030.9610369.1525588.795936
25_gnssbx_0995_100140995100140.84392.25954811.9026252.39199415.60320037.322765
26_gnssbx_0995_100260995100260.94341.8268787.2209151.77745115.60320027.733916
27_gnssbx_0995_100140995100140.90620.4984536.8734760.90087515.60320014.056535
28_gnssbx_0995_100370995100370.98000.7377802.9920000.35743515.6032005.577131
29_gnssbx_0995_100590995100590.90852.2574887.9525401.03673915.60320016.176440
30_gnssbx_0995_100080995100080.92410.4472036.4530180.83208215.60320012.983148
31_gnssbx_1675_100141675100140.89590.9381497.3218731.92980913.60819026.261213
32_gnssbx_1675_100261675100260.96790.6569914.0975331.33672413.60819018.190389
33_gnssbx_1675_100141675100140.91180.1136025.4234180.84909313.60819011.554626
34_gnssbx_1675_100371675100370.95922.2455913.9483790.60283213.6081908.203450
35_gnssbx_1675_100441675100440.77232.58507810.6511232.01271013.60819027.389338
37_gnssbx_1675_100081675100080.94810.2903294.3528530.65985213.6081908.979392
38_gnssbx_1675_100441675100440.88550.9480606.4492131.12761613.60819015.344812
39_gnssbx_ESTE_10014ESTE100140.87830.1221877.8917582.06529113.40931927.694141
40_gnssbx_ESTE_10026ESTE100260.96900.4655583.8795571.26041113.40931916.901252
41_gnssbx_ESTE_10014ESTE100140.91590.2587765.2352250.82763013.40931911.097954
42_gnssbx_ESTE_10037ESTE100370.98370.7730442.2243960.32689613.4093194.383452
43_gnssbx_ESTE_10044ESTE100440.73154.22994911.7130442.23747813.40931930.003062
44_gnssbx_ESTE_10008ESTE100080.94360.3973384.4557130.68377713.4093199.168981
45_gnssbx_ESTE_10044ESTE100440.90801.0918565.7436521.09189013.40931914.641499
46_gnssbx_GNA2_10014GNA2100140.89601.6736727.5075521.86830213.86134025.897169
47_gnssbx_GNA2_10026GNA2100260.96311.0863734.5663011.43248613.86134019.856169
48_gnssbx_GNA2_10014GNA2100140.91580.6545715.9332370.92541013.86134012.827430
49_gnssbx_GNA2_10037GNA2100370.99020.2805841.7842470.25044113.8613403.471445
50_gnssbx_GNA2_10044GNA2100440.75992.74170211.6256422.24392213.86134031.103771
51_gnssbx_GNA2_10059GNA2100590.94392.0277355.0471490.75780313.86134010.504170
52_gnssbx_GNA2_10008GNA2100080.94450.7902644.6097190.68643213.8613409.514870
53_gnssbx_GNA2_10044GNA2100440.94080.1147304.5843890.78538913.86134010.886546
1_gnssby_0645_100260645100260.90940.3363075.0356390.83957716.18162513.585725
2_gnssby_0645_100140645100140.81020.9159757.3334921.18503716.18162519.175819
3_gnssby_0645_100440645100440.78771.4190139.0601151.71344616.18162527.726335
5_gnssby_0645_100080645100080.90180.3269085.1634540.85033616.18162513.759813
6_gnssby_0645_100440645100440.85300.7814526.4543291.07491916.18162517.393930
7_gnssby_0656_100140656100140.79000.3236102.4003001.5103449.15255813.823511
8_gnssby_0656_100260656100260.93200.3831801.4277280.7342859.1525586.720589
9_gnssby_0656_100010656100010.89700.1946702.0884280.9104979.1525588.333374
10_gnssby_0656_100280656100280.89970.9534521.8663820.8176639.1525587.483704
11_gnssby_0656_100140656100140.86430.2068071.6695170.9704409.1525588.882011
13_gnssby_0656_100010656100010.90270.4425201.8815870.8042109.1525587.360575
14_gnssby_0656_100590656100590.96540.0975720.9656510.8658759.1525587.924966
15_gnssby_0656_100440656100440.85590.6890861.9612011.0048609.1525589.197038
17_gnssby_0656_100260656100260.94500.0086351.2557050.6440789.1525585.894961
18_gnssby_0656_100590656100590.83330.4355872.5571781.2480259.15255811.422619
19_gnssby_0656_100080656100080.84410.7157371.9605981.1271429.15255810.316236
23_gnssby_0656_100280656100280.90461.1655972.1154950.9613379.1525588.798688
24_gnssby_0656_100080656100080.93010.2461181.4839770.9163339.1525588.386789
25_gnssby_0995_100140995100140.77810.2523007.9393601.42037015.60320022.162323
26_gnssby_0995_100260995100260.89530.1813405.0771120.89759215.60320014.005302
27_gnssby_0995_100140995100140.77650.4937127.5589941.31763815.60320020.559375
28_gnssby_0995_100370995100370.95760.2745822.9805500.52071915.6032008.124889
29_gnssby_0995_100590995100590.91421.5226934.8211880.89942615.60320014.033920
30_gnssby_0995_100080995100080.90050.7709264.8130140.84641815.60320013.206828
31_gnssby_1675_100141675100140.84310.0006285.0424521.18422713.60819016.115185
32_gnssby_1675_100261675100260.93990.0723602.9015080.66897713.6081909.103562
33_gnssby_1675_100141675100140.81360.3200495.1917991.17190713.60819015.947527
34_gnssby_1675_100371675100370.93900.4666502.7485380.62616113.6081908.520924
35_gnssby_1675_100441675100440.79401.0046626.0393021.54666213.60819021.047273
37_gnssby_1675_100081675100080.94480.4554552.6893440.61818113.6081908.412322
38_gnssby_1675_100441675100440.83870.6976234.8901321.13419213.60819015.434295
39_gnssby_ESTE_10014ESTE100140.82760.4399655.1863091.21531813.40931916.296592
40_gnssby_ESTE_10026ESTE100260.93860.1404222.9119560.67517313.4093199.053616
41_gnssby_ESTE_10014ESTE100140.82520.4050124.9615231.12710113.40931915.113661
42_gnssby_ESTE_10037ESTE100370.96960.3479581.9320420.44590013.4093195.979218
43_gnssby_ESTE_10044ESTE100440.75341.3706036.7225631.72971913.40931923.194356
44_gnssby_ESTE_10008ESTE100080.93850.3394802.8254330.65452413.4093198.776715
45_gnssby_ESTE_10044ESTE100440.85800.7633924.6781901.12055513.40931915.025883
46_gnssby_GNA2_10014GNA2100140.84760.4491235.1854101.13521313.86134015.735579
47_gnssby_GNA2_10026GNA2100260.92730.0833873.4149370.74027013.86134010.261134
48_gnssby_GNA2_10014GNA2100140.82210.1302235.5913971.19435813.86134016.555397
49_gnssby_GNA2_10037GNA2100370.98110.2020411.6056310.34436613.8613404.773378
50_gnssby_GNA2_10044GNA2100440.76260.9410547.3658101.83014813.86134025.368302
51_gnssby_GNA2_10059GNA2100590.95061.0933212.8567530.65367313.8613409.060788
52_gnssby_GNA2_10008GNA2100080.93290.6898553.1740310.68524213.8613409.498373
53_gnssby_GNA2_10044GNA2100440.91020.4219703.7071240.80834613.86134011.204757
1_gnssbz_0645_100260645100260.87143.00744020.0374232.07595316.18162533.592299
2_gnssbz_0645_100140645100140.94301.2957247.4163270.73205816.18162511.845892
3_gnssbz_0645_100440645100440.78964.83751717.1124631.77581316.18162528.735534
5_gnssbz_0645_100080645100080.95490.7216906.8726090.73862216.18162511.952100
6_gnssbz_0645_100440645100440.90821.6734229.9731520.97951416.18162515.850133
7_gnssbz_0656_100140656100140.72090.1618788.5424142.5025309.15255822.904551
8_gnssbz_0656_100260656100260.92341.9959664.3439091.2359619.15255811.312202
9_gnssbz_0656_100010656100010.91340.9544195.0116291.4178379.15255812.976833
10_gnssbz_0656_100280656100280.96700.7931881.8710010.4905699.1525584.489959
11_gnssbz_0656_100140656100140.93220.6776612.6525390.7588659.1525586.945560
13_gnssbz_0656_100010656100010.96540.3607742.0463130.5742409.1525585.255766
14_gnssbz_0656_100590656100590.90860.2767594.3489951.0729139.1525589.819899
15_gnssbz_0656_100440656100440.83812.7937465.0295851.6366329.15255814.979373
17_gnssbz_0656_100260656100260.96380.2651651.9980950.5324509.1525584.873283
18_gnssbz_0656_100590656100590.92670.0829023.9691951.1477019.15255810.504399
19_gnssbz_0656_100080656100080.92410.5615843.0074620.9586589.1525588.774177
23_gnssbz_0656_100280656100280.95690.4079852.2486130.5905249.1525585.404804
24_gnssbz_0656_100080656100080.96900.0459731.9118940.5380919.1525584.924910
25_gnssbz_0995_100140995100140.71776.24475826.2505123.01530015.60320047.048324
26_gnssbz_0995_100260995100260.85904.17204918.8150402.14979215.60320033.543629
27_gnssbz_0995_100140995100140.93631.1480657.1301320.76886615.60320011.996768
28_gnssbz_0995_100370995100370.99120.3345062.6082670.23993415.6032003.743737
29_gnssbz_0995_100590995100590.94600.6740287.0242660.75358515.60320011.758342
30_gnssbz_0995_100080995100080.95850.2372555.8072610.70021415.60320010.925579
31_gnssbz_1675_100141675100140.77912.19397918.1566552.51285013.60819034.195344
32_gnssbz_1675_100261675100260.91091.24045011.5590321.60463813.60819021.836213
33_gnssbz_1675_100141675100140.94110.0038285.5365410.71523013.6081909.732983
34_gnssbz_1675_100371675100370.98820.8909592.3651680.41754413.6081905.682022
35_gnssbz_1675_100441675100440.79460.11420212.3336541.71211313.60819023.298756
37_gnssbz_1675_100081675100080.97370.0571763.7432530.54359513.6081907.397341
38_gnssbz_1675_100441675100440.89210.0050718.0691941.03703713.60819014.112202
39_gnssbz_ESTE_10014ESTE100140.76510.43221618.1070322.63296913.40931935.306316
40_gnssbz_ESTE_10026ESTE100260.91690.78404810.5168871.51300913.40931920.288425
41_gnssbz_ESTE_10014ESTE100140.94770.6737295.0137920.67622513.4093199.067720
42_gnssbz_ESTE_10037ESTE100370.99320.3357771.8400460.21042913.4093192.821708
43_gnssbz_ESTE_10044ESTE100440.76540.97241712.9783071.86553113.40931925.015494
44_gnssbz_ESTE_10008ESTE100080.97220.0899893.7121340.55710813.4093197.470436
45_gnssbz_ESTE_10044ESTE100440.90280.2015937.4692370.97881213.40931913.125206
46_gnssbz_GNA2_10014GNA2100140.79434.39066617.3627262.36528513.86134032.786017
47_gnssbz_GNA2_10026GNA2100260.89942.44910712.7374691.73315313.86134024.023829
48_gnssbz_GNA2_10014GNA2100140.95900.8445594.9855180.76585013.86134010.615709
49_gnssbz_GNA2_10037GNA2100370.99580.1265331.5193420.16636613.8613402.306051
50_gnssbz_GNA2_10044GNA2100440.76463.56325013.7767851.84089813.86134025.517314
51_gnssbz_GNA2_10059GNA2100590.96320.9049864.8969390.63012613.8613408.734396
52_gnssbz_GNA2_10008GNA2100080.97010.0276874.1299970.58726313.8613408.140256
53_gnssbz_GNA2_10044GNA2100440.94420.1197475.7547100.72466713.86134010.044857
1050_niv_812_10047100470.61010.0822690.2854070.3945937.9496043.136858
1051_niv_10047_10046100460.60420.0807430.2857680.2318217.9633351.846069
1052_niv_10046_10045100450.62370.0101600.2923850.0417158.1088740.338260
1053_niv_10045_10034100340.76380.0377920.1707730.0268817.8921320.212152
1054_niv_10034_FH14FH140.61470.0616480.2974520.5320537.8442784.173572
1055_niv_FH14_FH11FH110.68710.0287870.2925610.2289587.8503201.797392
1056_niv_FH11_10035100350.59620.0969120.2891210.0039257.7371160.030365
1057_niv_10035_10029100290.56580.0633930.3564780.8862827.6414026.772439
1058_niv_10029_10030100300.55210.0403110.3309980.6746127.6260035.144590
1059_niv_10030_10031100310.56130.0535210.3527150.6047377.5654534.575106
1060_niv_10031_10017100170.59320.0288830.3254400.5894637.5772664.466519
1061_niv_10017_10013100130.55270.0286270.3520250.6249587.6405384.775015
1062_niv_10013_10012100120.54910.0090180.3449380.5223617.6739704.008579
1063_niv_10012_10014100140.54890.0135330.3423850.4439647.6214093.383631
1064_niv_10014_10015100150.54890.0036090.3410320.3742957.6704662.871014
1065_niv_10015_10016100160.54940.0279370.3379500.3071007.6601562.352431
1066_niv_10016_10007100070.55370.0066950.3503460.2549407.7553301.977144
1067_niv_10007_FH13FH130.50190.0652510.3710840.7336347.8193645.736550
1068_niv_FH13_10007100070.50190.0602700.3710840.0010927.7553300.008465
1069_niv_10007_10016100160.55380.0013390.3502670.4646227.6601563.559080
1070_niv_10016_10015100150.54930.0036060.3380250.3812387.6704662.924270
1071_niv_10015_10014100140.54890.0293210.3410320.3199087.6214092.438151
1072_niv_10014_10012100120.54890.0766870.3423850.2579127.6739701.979208
1073_niv_10012_10013100130.54910.0049600.3449380.1956997.6405381.495243
1074_niv_10013_10017100170.55270.0237070.3520250.1260737.5772660.955289
1075_niv_10017_10031100310.59320.0256280.3254400.1342047.5654531.015317
1076_niv_10031_10030100300.56130.0478180.3527150.2144957.6260031.635742
1077_niv_10030_10029100290.55210.0044790.3309980.1205497.6414020.921166
1078_niv_10029_10035100350.56580.0477620.3564780.0089347.7371160.069120
1079_niv_10035_FH11FH110.59620.0621850.2891210.7358617.8503205.776745
1080_niv_FH11_FH14FH140.68730.0100060.2923740.4992207.8442783.916024
1081_niv_FH14_10034100340.61470.0177240.2974520.2067527.8921321.631712
1082_niv_10034_10045100450.76380.0023620.1707730.3907188.1088743.168287
1083_niv_10045_10046100460.62370.0560690.2923850.6330047.9633355.040821
1084_niv_10046_10047100470.60410.0863060.2858400.4187837.9496043.329156
1085_niv_10047_8128120.61010.0389900.2854070.2544118.0122382.038401
1086_niv_666_10054100540.52960.0592700.3734980.4095598.5511813.502214
1087_niv_10054_10056100560.56250.0634380.4987500.4821838.3789574.040192
1088_niv_10056_10058100580.55490.0151330.5051890.4054288.3375203.380266
1089_niv_10058_10052100520.58010.0713830.5916390.3546867.8159532.772209
1090_niv_10052_10043100430.55400.0945520.4995200.2396947.6512031.833948
1091_niv_10043_10026100260.56430.0644840.5054120.1527497.6360521.166400
1092_niv_10026_10010100100.61440.0555260.4060370.5561837.7753864.324535
1093_niv_10010_10006100060.57260.0034190.3641450.3372348.0081442.700621
1094_niv_10006_10010100100.57260.0106850.3641450.4098977.7753863.187108
1095_niv_10010_10026100260.61440.0636240.4060370.2835637.6360522.165303
1096_niv_10026_10043100430.56430.0296280.5054120.8439757.6512036.457424
1097_niv_10043_10052100520.55400.0338960.4995200.6995987.8159535.468027
1098_niv_10052_10058100580.58010.0335920.5916390.7102978.3375205.922115
1099_niv_10058_10056100560.55480.0231500.5053020.4863828.3789574.075372
1100_niv_10056_10054100540.56270.0559740.4985220.3981538.5511813.404680
1101_niv_10054_6666660.53070.0070400.3726240.2546898.4810012.160016
1102_niv_816_10048100480.64430.0544220.2454330.2671187.9083372.112457
1103_niv_10048_8128120.68780.0543230.2360230.0060388.0122380.048376
1104_niv_812_FH3FH30.55800.0879580.3695120.6234167.9388434.949200
1105_niv_FH3_10049100490.54890.1448030.3559180.4987297.9159303.947901
1106_niv_10049_10053100530.55560.0408850.3706300.4359617.9302613.457285
1107_niv_10053_10050100500.58030.0679910.3143550.5444317.8854104.293064
1108_niv_10050_10051100510.57810.0666600.3168470.4306477.7909133.355130
1109_niv_10051_FH4FH40.56780.0276610.3081590.3203987.8558602.517001
1110_niv_FH4_10040100400.64810.0415240.3459180.1548117.6740061.188019
1111_niv_10040_10037100370.55800.0411060.3398980.4071727.6734933.124428
1112_niv_10037_10038100380.55800.0017680.3474120.3627097.6137742.761581
1113_niv_10038_10039100390.55180.0165830.3334610.2806737.5886282.129921
1114_niv_10039_10032100320.55670.0203920.3422280.2146427.5670061.624199
1115_niv_10032_10031100310.55570.0013330.3350020.1297887.5654530.981907
1116_niv_10031_FH15FH150.55960.0105700.3509990.7213777.6532685.520888
1117_niv_FH15_10033100330.54870.0135390.3280950.5643607.5568244.264770
1118_niv_10033_10025100250.55510.0129020.3519160.5280297.5782344.001526
1119_niv_10025_10024100240.54990.0549120.3348740.4309417.5930833.272167
1120_niv_10024_10023100230.55070.0903090.3311340.3594827.5867272.727289
1121_niv_10023_10022100220.54870.0419710.3253870.2912027.5952792.211763
1122_niv_10022_10021100210.54860.0130910.3277160.2334097.5982921.773511
1123_niv_10021_10026100260.55640.0412550.3455640.1783967.6360521.362241
1124_niv_10026_10020100200.58270.0041730.3267460.3668977.5893912.784527
1125_niv_10020_10019100190.57200.0402320.3210000.2533397.5776761.919720
1126_niv_10019_10017100170.57640.0029650.3265960.1470977.5772661.114592
1127_niv_10017_10019100190.57650.0470090.3265180.5544227.5776764.201228
1128_niv_10019_10020100200.57210.0012840.3209250.4256197.5893913.230188
1129_niv_10020_10026100260.58280.0350450.3266680.3219857.6360522.458696
1130_niv_10026_10021100210.55640.0252850.3455640.5366517.5982924.077631
1131_niv_10021_10022100220.54860.0789950.3277160.4339037.5952793.295611
1132_niv_10022_10023100230.54880.0586560.3253150.3662827.5867272.778880
1133_niv_10023_10024100240.55070.0539160.3311340.3092727.5930832.348331
1134_niv_10024_10025100250.54990.0670650.3348740.2498427.5782341.893363
1135_niv_10025_10033100330.55510.0209100.3519160.1983217.5568241.498677
1136_niv_10033_FH15FH150.54870.0315910.3280950.1298347.6532680.993654
1137_niv_FH15_10031100310.55960.0184970.3509990.0430107.5654530.325390
1138_niv_10031_10032100320.55560.0186650.3350780.6162897.5670064.663462
1139_niv_10032_10039100390.55670.0155160.3422280.5286697.5886284.011871
1140_niv_10039_10038100380.55180.0277880.3334610.4334587.6137743.300251
1141_niv_10038_10037100370.55800.0022100.3474120.3774107.6734932.896053
1142_niv_10037_10040100400.55810.0410970.3398210.3187237.6740062.445885
1143_niv_10040_FH4FH40.64810.0605270.3459180.5599357.8558604.398772
1144_niv_FH4_10051100510.56760.0108100.3083010.3103267.7909132.417726
1145_niv_10051_10050100500.57810.0573780.3168470.2215107.8854101.746699
1146_niv_10050_10053100530.58010.0621450.3145050.1133527.9302610.898912
1147_niv_10053_10049100490.55560.0751040.3706300.3639007.9159302.880605
1148_niv_10049_FH3FH30.54900.0644930.3558390.2769497.9388432.198657
1149_niv_FH3_8128120.55780.0128240.3696790.1990458.0122381.594794
1150_niv_812_10048100480.68770.0655830.2360990.5088947.9083374.024503
1151_niv_10048_8168160.64430.0615360.2454330.2678177.9302542.123859
1152_niv_816_8128120.67700.0364990.2409580.0035898.0122380.028757
1153_niv_812_10045100450.72890.0214170.2559180.0757988.1088740.614638
1154_niv_10045_10034100340.76370.0115790.1708450.0268907.8921320.212220
1155_niv_10034_10035100350.65780.0294290.2638360.0090577.7371160.070076
1156_niv_10035_10036100360.50850.0285070.4148260.0155917.7114100.120230
1157_niv_10036_10036100360.001513.21914220.26755363.1378347.711410486.881730
1158_niv_10036_10035100350.50840.0093400.4149101.1375867.7371168.801632
1159_niv_10035_10034100340.65780.0249810.2638360.6650367.8921325.248551
1160_niv_10034_10028100280.54700.0761040.3904860.8706257.7739836.768220
1161_niv_10028_10011100110.57920.0547040.4691920.8563217.7760236.658772
1162_niv_10011_10001100010.58180.0480930.4742390.6649708.0077395.324903
1163_niv_10001_10003100030.58100.0196930.4667660.4854327.8580853.814562
1164_niv_10003_10007100070.54200.0705320.3581560.2941477.7553302.281205
1165_niv_10007_10008100080.56670.0346640.3704720.4841617.8079653.780315
1166_niv_10008_10005100050.55330.0178680.3466390.3618777.8997302.858733
1167_niv_10005_10006100060.55910.0264540.3549250.2935978.0081442.351166
1168_niv_10006_10004100040.51000.1068200.4238500.8088287.9406026.422582
1169_niv_10004_10002100020.51320.0798350.5822131.0026117.9562547.977031
1170_niv_10002_10004100040.51310.0798520.5823320.0237807.9406020.188829
1171_niv_10004_10006100060.51000.0519400.4238500.0134268.0081440.107519
1172_niv_10006_10005100050.55920.0088160.3548440.4322227.8997303.414437
1173_niv_10005_10008100080.55330.0058070.3466390.3444997.8079652.689839
1174_niv_10008_10007100070.56660.0078010.3705570.2761897.7553302.141935
1175_niv_10007_10003100030.54190.0032070.3582340.4443847.8580853.492004
1176_niv_10003_10001100010.58100.1135490.4667660.4733218.0077393.790229
1177_niv_10001_10011100110.58180.0301100.4742390.3230957.7760232.512398
1178_niv_10011_10028100280.57910.0437740.4693040.1634137.7739831.270373
1179_niv_10028_10034100340.54700.0190260.3904860.0481667.8921320.380132
1180_niv_10034_10045100450.76380.0037790.1707730.3907488.1088743.168526
1181_niv_10045_8128120.72890.0178930.2559180.5152388.0122384.128210
1182_niv_812_8168160.67700.0038760.2409580.5218257.9302544.138208
1183_niv_666_10055100550.53170.0332490.3840060.2226438.3221811.852879
1184_niv_10055_10057100570.53080.0168910.3978820.2117988.2378891.744770
1185_niv_10057_10059100590.55760.0283140.5061060.2029168.2892661.682028
1186_niv_10059_10053100530.55390.0428260.4978480.1080997.9302610.857255
1187_niv_10053_10044100440.61930.0449230.3106510.4193657.7026823.230236
1188_niv_10044_10040100400.60500.0142200.3017800.2455977.6740061.884715
1189_niv_10040_10041100410.54600.0363200.3613840.6130357.6221594.672653
1190_niv_10041_10042100420.54110.0068830.3584010.5309747.6620004.068319
1191_niv_10042_10027100270.58000.0407400.4611600.5730557.5970134.353505
1192_niv_10027_10018100180.58480.0024910.4612870.4372307.6847713.360014
1193_niv_10018_10009100090.55050.0445000.3870200.2751487.8625532.163365
1194_niv_10009_10006100060.54520.0509380.3629300.1958448.0081441.568350
1195_niv_10006_10009100090.54520.0450250.3629300.5372457.8625534.224114
1196_niv_10009_10018100180.55060.1554920.3869330.4924417.6847713.784296
1197_niv_10018_10027100270.58480.0489940.4612870.4703137.5970133.572977
1198_niv_10027_10042100420.58000.0697200.4611600.3412537.6620002.614677
1199_niv_10042_10041100410.54130.0440350.3582450.1959527.6221591.493574
1200_niv_10041_10040100400.54580.0199850.3615430.1385837.6740061.063484
1201_niv_10040_10044100440.60500.0466100.3017800.3964307.7026823.053573
1202_niv_10044_10053100530.61920.0163740.3107330.2423397.9302611.921810
1203_niv_10053_10059100590.55400.0695760.4977360.8830628.2892667.319935
1204_niv_10059_10057100570.55760.0154840.5061060.7503958.2378896.181666
1205_niv_10057_10055100550.53090.0539460.3977970.5170608.3221814.303065
1206_niv_10055_6666660.53180.0191960.3839240.4686638.4810013.974728
" + ] + }, + "metadata": {}, + "output_type": "display_data", + "jetTransient": { + "display_id": null + } + } + ], + "execution_count": 30 }, { "metadata": { @@ -22435,7 +58491,12 @@ { "cell_type": "code", "id": "89fbcfe85fb6e4bb", - "metadata": {}, + "metadata": { + "ExecuteTime": { + "end_time": "2026-02-02T17:27:51.769901Z", + "start_time": "2026-02-02T17:27:51.705954Z" + } + }, "source": [ "# Standardellipse bzw. Helmert'sche Fehlerellipsen\n", "Standardellipse = Netzqualität_Genauigkeit.Genauigkeitsmaße.standardellipse(\n", @@ -22443,57 +58504,726 @@ " s0_apost=s0_aposteriori,\n", " unbekannten_liste=Jacobimatrix_symbolisch_liste_unbekannte)\n", "\n", - "Standardellipse[\"σx\"] = Standardellipse[\"σx\"].astype(float).round(4)\n", - "Standardellipse[\"σy\"] = Standardellipse[\"σy\"].astype(float).round(4)\n", - "Standardellipse[\"σxy\"] = Standardellipse[\"σxy\"].astype(float).round(4)\n", - "Standardellipse[\"s_max\"] = Standardellipse[\"s_max\"].astype(float).round(4)\n", - "Standardellipse[\"s_min\"] = Standardellipse[\"s_min\"].astype(float).round(4)\n", + "Standardellipse[\"σx [m]\"] = Standardellipse[\"σx [m]\"].astype(float).round(4)\n", + "Standardellipse[\"σy [m]\"] = Standardellipse[\"σy [m]\"].astype(float).round(4)\n", + "Standardellipse[\"Große Halbachse [m]\"] = Standardellipse[\"Große Halbachse [m]\"].astype(float).round(4)\n", + "Standardellipse[\"Kleine Halbachse [m]\"] = Standardellipse[\"Kleine Halbachse [m]\"].astype(float).round(4)\n", "Standardellipse[\"θ [gon]\"] = Standardellipse[\"θ [gon]\"].astype(float).round(3)\n", "\n", "display(HTML(Standardellipse.to_html(index=False)))\n", "\n", "Standardellipse.to_excel(r\"Zwischenergebnisse\\Standardellipse.xlsx\", index=False)" ], - "outputs": [], - "execution_count": null - }, - { - "metadata": {}, - "cell_type": "code", - "source": [ - "# Plot der Standardellipse bzw. Helmert'sche Fehlerellipsen (im ENU-System)\n", - "\n", - "\n" + "outputs": [ + { + "data": { + "text/plain": [ + "" + ], + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Punktσx [m]σy [m]σxy [m]Große Halbachse [m]Kleine Halbachse [m]θ [gon]
100090.00490.0049-1.213477e-060.00500.0048159.593
100060.00510.0049-1.678832e-060.00520.0048168.137
100100.00480.0049-1.124909e-060.00500.0047143.916
100180.00480.0049-6.824638e-070.00490.0047128.406
100080.00490.0048-6.581544e-070.00490.0048166.737
100050.00500.0048-5.074524e-070.00500.0048184.506
100030.00490.00481.048169e-060.00500.004836.369
100040.00500.0048-1.906100e-070.00500.0048194.906
100070.00480.00486.260539e-070.00490.004842.505
100010.00490.00512.583658e-060.00530.004764.527
100020.00500.00491.889484e-060.00510.004848.709
100160.00480.00484.069530e-070.00480.004768.119
100110.00470.00516.647583e-070.00510.004790.325
100260.00470.0049-4.789336e-070.00490.0047114.963
100270.00470.00498.245172e-080.00490.004797.403
100430.00470.00496.046034e-070.00490.004782.559
100440.00480.00499.421193e-070.00490.004765.407
100210.00470.0048-1.786920e-070.00480.0047108.003
100200.00470.0048-1.013067e-070.00480.0047104.903
100240.00470.0048-2.442024e-080.00480.0047100.945
100250.00470.00487.395296e-080.00480.004797.070
100220.00470.0048-1.047118e-070.00480.0047104.576
100230.00470.0048-5.404258e-080.00480.0047102.330
100190.00470.00485.205543e-080.00480.004797.198
100330.00470.00486.909329e-080.00480.004796.778
100170.00470.00482.396394e-070.00480.004788.784
100520.00480.00491.383522e-060.00500.004755.947
100420.00470.00496.414724e-070.00490.004775.409
100530.00500.00491.590785e-060.00510.004840.818
100370.00480.00485.832656e-090.00480.004897.832
100400.00480.00483.908858e-070.00480.004766.373
100410.00470.00483.506225e-070.00480.004781.548
100380.00470.0048-1.402157e-080.00480.0047100.995
100510.00490.00488.271082e-070.00490.004843.864
100360.00480.0048-3.493862e-070.00490.0048147.101
100350.00480.0049-1.001703e-060.00500.0047135.495
100390.00470.00483.598233e-080.00480.004797.938
100590.00530.00492.648958e-060.00540.004829.698
100500.00500.00489.353325e-070.00500.004831.166
100130.00470.00494.551121e-070.00490.004785.689
100280.00470.0051-8.569032e-070.00510.0047112.841
100120.00470.00497.262764e-070.00490.004777.164
100140.00470.00484.533015e-070.00480.004780.151
100310.00470.00483.150705e-080.00480.004798.656
100150.00470.00486.017765e-070.00490.004770.505
100320.00470.00483.646257e-080.00480.004798.261
100300.00470.0049-2.818660e-070.00490.0047108.852
100290.00470.0049-4.228714e-070.00490.0047113.675
100340.00480.0051-2.054709e-060.00520.0047130.276
100450.00500.0051-3.212705e-060.00540.0048145.099
100490.00500.00482.632205e-070.00500.00488.653
100470.00500.0049-1.311738e-060.00510.0048164.078
100460.00500.0050-1.768883e-060.00520.0048154.349
100480.00500.0048-5.090232e-070.00500.0048182.222
100570.00530.0048-5.571874e-070.00530.0048193.149
100550.00540.0049-2.528803e-060.00550.0048173.383
100540.00540.0053-5.453747e-060.00580.0048155.812
100580.00540.00491.248372e-060.00540.004813.215
100560.00550.0049-1.995632e-060.00550.0048180.855
8120.00500.0050-1.862114e-060.00520.0048149.574
8160.00500.0049-7.596582e-070.00500.0049166.183
FH30.00500.0049-5.735471e-070.00500.0049175.738
6660.00540.0052-4.112328e-060.00570.0049159.372
FH110.00490.0050-1.431536e-060.00510.0048135.941
FH140.00490.0050-1.387782e-060.00510.0048136.481
FH40.00490.00497.369221e-070.00500.004842.148
FH130.00490.00496.172673e-070.00490.004842.292
FH150.00470.0049-1.757714e-070.00490.0047106.430
06450.00840.00685.194664e-060.00850.006712.807
06560.00530.00496.637639e-070.00530.004910.079
09950.00830.00663.065408e-060.00840.00657.223
16750.00740.00593.603139e-060.00740.005810.833
ESTE0.00730.00593.855269e-060.00740.005811.918
GNA20.00750.00604.262747e-060.00760.005912.572
" + ] + }, + "metadata": {}, + "output_type": "display_data", + "jetTransient": { + "display_id": null + } + } ], - "id": "65c2e855318021ff", - "outputs": [], - "execution_count": null - }, - { - "metadata": {}, - "cell_type": "code", - "source": [ - "# AUFRUF: Hier kannst du den v_faktor händisch anpassen (z.B. 500, 1000, 5000)\n", - "Netzqualität_Genauigkeit.plot_netz_komplett_final(\n", - " x,\n", - " Jacobimatrix_symbolisch_liste_unbekannte,\n", - " Jacobimatrix_symbolisch_liste_beobachtungsvektor,\n", - " res[\"Q_xx\"],\n", - " s0_aposteriori,\n", - " k_faktor=2.447,\n", - " v_faktor=100 # <--- HIER ANPASSEN\n", - ")\n" - ], - "id": "609575fa17b836a5", - "outputs": [], - "execution_count": null + "execution_count": 34 }, { "cell_type": "code", "id": "7de561d7eaebb1c2", - "metadata": {}, + "metadata": { + "ExecuteTime": { + "end_time": "2026-01-31T23:21:49.433713Z", + "start_time": "2026-01-31T23:21:44.687571Z" + } + }, "source": [ - "# Konfidenzellipse\n", + "# Konfidenzellipsen\n", "alpha_input = input(\"Konfidenzniveau wählen (z.B. 0.05 für 95%, 0.01 für 99%) [Standard=0.05]: \")\n", "if alpha_input.strip() == \"\":\n", " alpha = 0.05\n", @@ -22508,39 +59238,23001 @@ " R=r_gesamt,\n", " alpha=alpha)\n", "\n", - "Konfidenzellipse[\"a_K\"] = Konfidenzellipse[\"a_K\"].round(4)\n", - "Konfidenzellipse[\"b_K\"] = Konfidenzellipse[\"b_K\"].round(4)\n", + "Konfidenzellipse[\"Große Halbachse [m]\"] = Konfidenzellipse[\"Große Halbachse [m]\"].round(4)\n", + "Konfidenzellipse[\"Kleine Halbachse [m]\"] = Konfidenzellipse[\"Kleine Halbachse [m]\"].round(4)\n", "Konfidenzellipse[\"θ [gon]\"] = Konfidenzellipse[\"θ [gon]\"].round(3)\n", "\n", "display(HTML(Konfidenzellipse.to_html(index=False)))\n", "\n", "Konfidenzellipse.to_excel(r\"Zwischenergebnisse\\Konfidenzellipse.xlsx\", index=False)" ], - "outputs": [], - "execution_count": null + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "→ Verwende alpha = 0.05 (Konfidenz = 95.0%)\n" + ] + }, + { + "data": { + "text/plain": [ + "" + ], + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Punktσx [m]σy [m]σxy [m]Große Halbachse [m]Kleine Halbachse [m]θ [gon]
100090.0049430.004866-1.213477e-060.01230.0117159.593
100060.0050910.004875-1.678832e-060.01270.0117168.137
100100.0048400.004885-1.124909e-060.01220.0116143.916
100180.0047530.004867-6.824638e-070.01200.0116128.406
100080.0049060.004828-6.581544e-070.01210.0117166.737
100050.0050080.004813-5.074524e-070.01230.0118184.506
100030.0049350.0048371.048169e-060.01230.011736.369
100040.0050480.004809-1.906100e-070.01240.0118194.906
100070.0048470.0048166.260539e-070.01200.011742.505
100010.0048790.0051322.583658e-060.01290.011564.527
100020.0049570.0049411.889484e-060.01260.011648.709
100160.0047550.0048094.069530e-070.01180.011668.119
100110.0046720.0051066.647583e-070.01250.011490.325
100260.0046890.004886-4.789336e-070.01200.0115114.963
100270.0046540.0048668.245172e-080.01190.011497.403
100430.0046860.0048936.046034e-070.01200.011482.559
100440.0047590.0048629.421193e-070.01200.011565.407
100210.0046830.004830-1.786920e-070.01180.0115108.003
100200.0046810.004818-1.013067e-070.01180.0115104.903
100240.0046680.004841-2.442024e-080.01190.0114100.945
100250.0046600.0048297.395296e-080.01180.011497.070
100220.0046780.004831-1.047118e-070.01180.0115104.576
100230.0046710.004827-5.404258e-080.01180.0114102.330
100190.0046780.0048025.205543e-080.01180.011597.198
100330.0046570.0048016.909329e-080.01180.011496.778
100170.0046710.0048092.396394e-070.01180.011488.784
100520.0048450.0048991.383522e-060.01230.011655.947
100420.0047210.0048586.414724e-070.01200.011575.409
100530.0049760.0048801.590785e-060.01250.011640.818
100370.0047800.0047985.832656e-090.01180.011797.832
100400.0047670.0048133.908858e-070.01180.011666.373
100410.0047080.0048213.506225e-070.01180.011581.548
100380.0047130.004807-1.402157e-080.01180.0115100.995
100510.0048680.0048358.271082e-070.01210.011743.864
100360.0048140.004821-3.493862e-070.01190.0117147.101
100350.0047960.004897-1.001703e-060.01210.0116135.495
100390.0046880.0048053.598233e-080.01180.011597.938
100590.0053040.0049202.648958e-060.01330.011729.698
100500.0049640.0048369.353325e-070.01230.011731.166
100130.0046850.0048824.551121e-070.01200.011485.689
100280.0046910.005101-8.569032e-070.01250.0114112.841
100120.0047140.0048877.262764e-070.01200.011577.164
100140.0046990.0048314.533015e-070.01190.011580.151
100310.0046580.0048153.150705e-080.01180.011498.656
100150.0047440.0048386.017765e-070.01190.011570.505
100320.0046650.0048063.646257e-080.01180.011498.261
100300.0046780.004885-2.818660e-070.01200.0114108.852
100290.0046950.004888-4.228714e-070.01200.0115113.675
100340.0048200.005115-2.054709e-060.01280.0115130.276
100450.0050420.005140-3.212705e-060.01320.0117145.099
100490.0050130.0048212.632205e-070.01230.01188.653
100470.0050180.004893-1.311738e-060.01250.0118164.078
100460.0050000.004951-1.768883e-060.01260.0117154.349
100480.0050030.004837-5.090232e-070.01230.0118182.222
100570.0053350.004833-5.571874e-070.01310.0118193.149
100550.0053770.004934-2.528803e-060.01340.0118173.383
100540.0054400.005252-5.453747e-060.01430.0118155.812
100580.0054050.0048531.248372e-060.01330.011813.215
100560.0054540.004891-1.995632e-060.01350.0118180.855
8120.0050100.005015-1.862114e-060.01270.0118149.574
8160.0049870.004901-7.596582e-070.01230.0119166.183
FH30.0050050.004884-5.735471e-070.01230.0119175.738
6660.0054070.005171-4.112328e-060.01390.0119159.372
FH110.0048540.004992-1.431536e-060.01240.0117135.941
FH140.0048540.004982-1.387782e-060.01240.0117136.481
FH40.0049120.0048747.369221e-070.01220.011842.148
FH130.0048870.0048556.172673e-070.01210.011842.292
FH150.0047050.004884-1.757714e-070.01200.0115106.430
06450.0083910.0067825.194664e-060.02070.016412.807
06560.0053380.0049446.637639e-070.01310.012110.079
09950.0083360.0065533.065408e-060.02050.01607.223
16750.0074000.0058663.603139e-060.01820.014210.833
ESTE0.0073390.0058513.855269e-060.01810.014211.918
GNA20.0075130.0059994.262747e-060.01850.014512.572
" + ] + }, + "metadata": {}, + "output_type": "display_data", + "jetTransient": { + "display_id": null + } + } + ], + "execution_count": 87 }, { - "metadata": {}, + "metadata": { + "ExecuteTime": { + "end_time": "2026-01-31T23:25:05.265734Z", + "start_time": "2026-01-31T23:25:00.799463Z" + } + }, "cell_type": "code", "source": [ - "# Plot neu\n", - "Netzqualität_Genauigkeit.plot_netz_3D(\n", - " x,\n", - " Jacobimatrix_symbolisch_liste_unbekannte,\n", - " Jacobimatrix_symbolisch_liste_beobachtungsvektor,\n", - " Konfidenzellipse,\n", - " v_faktor=100 # Hier kannst du die Ellipsen skalieren\n", + "# Konfidenzellipsen im ENU-System\n", + "import Netzqualität_Genauigkeit\n", + "importlib.reload(Netzqualität_Genauigkeit)\n", + "from IPython.display import display, HTML\n", + "from Berechnungen import Berechnungen\n", + "from Berechnungen import ENU, Einheitenumrechnung\n", + "\n", + "berechnungen = Berechnungen(a, b)\n", + "alpha_input = input(\"Konfidenzniveau wählen (z.B. 0.05 für 95%, 0.01 für 99%) [Standard=0.05]: \")\n", + "if alpha_input.strip() == \"\":\n", + " alpha = 0.05\n", + "else:\n", + " alpha = float(alpha_input)\n", + "print(f\"→ Verwende alpha = {alpha} (Konfidenz = {(1-alpha)*100:.1f}%)\")\n", + "\n", + "# 1) Qxx ins ENU-System transformieren\n", + "Qxx_enu, (B0, L0), R0 = ENU.transform_Qxx_zu_QxxENU(\n", + " Qxx=res[\"Q_xx\"],\n", + " unbekannten_liste=Jacobimatrix_symbolisch_liste_unbekannte,\n", + " berechnungen=berechnungen,\n", + " dict_xyz=dict_koordinaten_ausgleichungsergebnis\n", + ")\n", + "\n", + "print(f\"ENU-Referenz (Schwerpunkt): B0={Einheitenumrechnung.rad_to_gon_Decimal(B0):.8f} rad, L0={Einheitenumrechnung.rad_to_gon_Decimal(L0):.8f} rad\")\n", + "\n", + "# 2) Konfidenzellipse im ENU-System\n", + "Konfidenzellipse_ENU = Netzqualität_Genauigkeit.Genauigkeitsmaße.konfidenzellipse(\n", + " Qxx=Qxx_enu,\n", + " s0_apost=s0_aposteriori,\n", + " unbekannten_liste=Jacobimatrix_symbolisch_liste_unbekannte,\n", + " R=r_gesamt,\n", + " alpha=alpha\n", + ")\n", + "\n", + "# 3) Spaltennamen anpassen\n", + "Konfidenzellipse_ENU = Konfidenzellipse_ENU.rename(columns={\n", + " \"σx [m]\": \"σE [m]\",\n", + " \"σy [m]\": \"σN [m]\",\n", + " \"σxy [m]\": \"σEN [m]\",\n", + " \"θ [gon]\": \"θ_EN [gon]\"\n", + "})\n", + "\n", + "# 4) Runden & Anzeigen\n", + "Konfidenzellipse_ENU[\"σE [m]\"] = Konfidenzellipse_ENU[\"σE [m]\"].round(4)\n", + "Konfidenzellipse_ENU[\"σN [m]\"] = Konfidenzellipse_ENU[\"σN [m]\"].round(4)\n", + "Konfidenzellipse_ENU[\"Große Halbachse [m]\"] = Konfidenzellipse_ENU[\"Große Halbachse [m]\"].round(4)\n", + "Konfidenzellipse_ENU[\"Kleine Halbachse [m]\"] = Konfidenzellipse_ENU[\"Kleine Halbachse [m]\"].round(4)\n", + "Konfidenzellipse_ENU[\"θ_EN [gon]\"] = Konfidenzellipse_ENU[\"θ_EN [gon]\"].round(4)\n", + "\n", + "display(HTML(Konfidenzellipse_ENU.to_html(index=False)))\n", + "\n", + "# 5) Export\n", + "Konfidenzellipse_ENU.to_excel(r\"Zwischenergebnisse\\Konfidenzellipse_ENU.xlsx\", index=False)" + ], + "id": "ddc157c0ff21c93e", + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "→ Verwende alpha = 0.05 (Konfidenz = 95.0%)\n", + "ENU-Referenz (Schwerpunkt): B0=0.92747188 rad, L0=0.14320225 rad\n" + ] + }, + { + "data": { + "text/plain": [ + "" + ], + "text/html": [ + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PunktσE [m]σN [m]σEN [m]Große Halbachse [m]Kleine Halbachse [m]θ_EN [gon]
100090.00490.00611.588730e-060.01500.012092.6379
100060.00490.00632.393355e-060.01550.012090.3610
100100.00490.00601.272364e-060.01470.012093.2768
100180.00490.00596.244155e-070.01450.012096.4263
100080.00480.00619.247995e-070.01500.011995.7303
100050.00480.00629.477352e-070.01530.011896.1204
100030.00480.0062-1.087273e-060.01520.0118104.4998
100040.00480.00636.461489e-070.01540.011897.4873
100070.00480.0061-6.971448e-070.01490.0117103.1883
100010.00510.0062-3.545077e-060.01530.0122116.1333
100020.00490.0063-2.237649e-060.01540.0119109.1121
100160.00480.0060-5.795707e-070.01460.0117102.9585
100110.00510.0059-1.544882e-060.01440.0124110.9040
100260.00490.00582.417187e-070.01430.012098.4857
100270.00490.0058-4.546110e-070.01430.0119102.8198
100430.00490.0059-1.074593e-060.01440.0119106.2445
100440.00480.0060-1.304470e-060.01470.0118106.5952
100210.00480.0058-3.100519e-080.01430.0118100.1827
100200.00480.0058-1.085026e-070.01430.0118100.6315
100240.00480.0058-2.607891e-070.01430.0118101.5664
100250.00480.0058-3.712285e-070.01430.0118102.2128
100220.00480.0058-1.294430e-070.01430.0118100.7646
100230.00480.0058-1.950643e-070.01430.0118101.1548
100190.00480.0058-2.702781e-070.01430.0117101.5415
100330.00480.0058-3.225730e-070.01430.0117101.8854
100170.00480.0058-5.170003e-070.01430.0117102.9444
100520.00490.0061-1.750847e-060.01500.0118108.0216
100420.00480.0059-1.001446e-060.01450.0118105.4113
100530.00480.0063-1.740654e-060.01540.0118106.8590
100370.00480.0060-3.679046e-080.01460.0117100.1855
100400.00480.0060-5.463362e-070.01460.0118102.7582
100410.00480.0059-6.091575e-070.01440.0118103.3227
100380.00480.0059-1.410985e-070.01440.0118100.7768
100510.00480.0061-9.345391e-070.01500.0118104.1785
100360.00480.00604.080021e-070.01470.011897.9558
100350.00490.00601.028076e-060.01460.012094.2413
100390.00480.0059-2.386418e-070.01430.0118101.3479
100590.00490.0067-2.482884e-060.01650.0118107.2656
100500.00480.0062-8.993286e-070.01530.0118103.6415
100130.00490.0059-8.783467e-070.01440.0119105.1258
100280.00510.00583.189997e-070.01430.012597.4319
100120.00490.0059-1.164489e-060.01450.0119106.4329
100140.00480.0059-7.659981e-070.01440.0118104.2255
100310.00480.0058-3.006645e-070.01430.0118101.7783
100150.00480.0059-8.809330e-070.01460.0118104.5820
100320.00480.0058-2.787024e-070.01430.0118101.6209
100300.00490.0058-1.017394e-080.01430.0120100.0636
100290.00490.00591.815890e-070.01430.012098.8772
100340.00520.00601.946515e-060.01470.012686.6826
100450.00520.00623.676387e-060.01540.012581.2098
100490.00480.00631.818229e-080.01530.011899.9279
100470.00490.00621.792496e-060.01530.012092.1949
100460.00500.00622.207179e-060.01520.012289.7114
100480.00490.00628.983063e-070.01530.011996.2499
100570.00490.00661.568696e-060.01630.011995.1259
100550.00500.00663.839635e-060.01630.012187.5664
100540.00540.00666.896048e-060.01670.012675.7780
100580.00480.0068-4.965580e-070.01660.0118101.3994
100560.00500.00673.420252e-060.01660.012089.8262
8120.00510.00622.224694e-060.01520.012389.2417
8160.00490.00621.060681e-060.01520.012095.2687
FH30.00490.00629.016360e-070.01530.012096.1267
6660.00530.00665.372376e-060.01650.012680.9065
FH110.00500.00601.477828e-060.01480.012391.5599
FH140.00500.00601.442750e-060.01480.012291.8360
FH40.00490.0062-8.179452e-070.01510.0119103.6073
FH130.00480.0061-6.848307e-070.01500.0118103.0874
FH150.00490.0059-9.166676e-080.01440.0120100.5492
06450.00670.0088-3.177478e-060.02160.0164106.1040
06560.00490.0061-1.943557e-070.01490.0121100.9736
09950.00650.00831.090303e-060.02030.016097.3094
16750.00580.0074-1.437079e-060.01810.0142104.3984
ESTE0.00580.0073-1.615802e-060.01790.0142105.2307
GNA20.00590.0075-1.962811e-060.01830.0145105.9732
" + ] + }, + "metadata": {}, + "output_type": "display_data", + "jetTransient": { + "display_id": null + } + } + ], + "execution_count": 89 + }, + { + "metadata": { + "ExecuteTime": { + "end_time": "2026-01-31T20:58:06.363952Z", + "start_time": "2026-01-31T20:58:06.237787Z" + } + }, + "cell_type": "code", + "source": [ + "# Netzplot mit Konfidenzellipsen (im ENU-System)\n", + "Koord_ENU = Berechnungen.ENU.transform_Koord_zu_KoordENU(dict_koordinaten_ausgleichungsergebnis, R0)\n", + "\n", + "Netzqualität_Genauigkeit.Plot.netzplot_ellipsen(\n", + " Koord_ENU=Koord_ENU,\n", + " unbekannten_labels=Jacobimatrix_symbolisch_liste_unbekannte,\n", + " beobachtungs_labels=Jacobimatrix_symbolisch_liste_beobachtungsvektor,\n", + " df_konf_ellipsen_enu=Konfidenzellipse_ENU,\n", + " v_faktor=1000\n", ")" ], - "id": "de6f192d07277f83", - "outputs": [], - "execution_count": null + "id": "94a42bd0a62875ea", + "outputs": [ + { + "data": { + "application/vnd.plotly.v1+json": { + "data": [ + { + "line": { + "color": "rgba(255, 100, 0, 0.4)", + "width": 1 + }, + "mode": "lines", + "name": "GNSS-Basislinien", + "x": [ + -50770.05868912979, + -331.75506596424225, + null, + -50770.05868912979, + -358.782869111985, + null, + -50770.05868912979, + -202.03647820194982, + null, + -50770.05868912979, + -416.01293761258756, + null, + -50770.05868912979, + -202.03647820194982, + null, + -177.68758213714906, + -358.782869111985, + null, + -177.68758213714906, + -331.75506596424225, + null, + -177.68758213714906, + -433.8645479975819, + null, + -177.68758213714906, + -270.65669262785707, + null, + -177.68758213714906, + -358.782869111985, + null, + -177.68758213714906, + -433.8645479975819, + null, + -177.68758213714906, + -79.89076048041814, + null, + -177.68758213714906, + -202.03647820194982, + null, + -177.68758213714906, + -331.75506596424225, + null, + -177.68758213714906, + -79.89076048041814, + null, + -177.68758213714906, + -416.01293761258756, + null, + -177.68758213714906, + -270.65669262785707, + null, + -177.68758213714906, + -416.01293761258756, + null, + 40987.14475242994, + -358.782869111985, + null, + 40987.14475242994, + -331.75506596424225, + null, + 40987.14475242994, + -358.782869111985, + null, + 40987.14475242994, + -206.47074325683008, + null, + 40987.14475242994, + -79.89076048041814, + null, + 40987.14475242994, + -416.01293761258756, + null, + -358.782869111985, + 15956.811248472934, + null, + -331.75506596424225, + 15956.811248472934, + null, + -358.782869111985, + 15956.811248472934, + null, + -206.47074325683008, + 15956.811248472934, + null, + -202.03647820194982, + 15956.811248472934, + null, + -416.01293761258756, + 15956.811248472934, + null, + -202.03647820194982, + 15956.811248472934, + null, + -358.782869111985, + -42283.86809325304, + null, + -331.75506596424225, + -42283.86809325304, + null, + -358.782869111985, + -42283.86809325304, + null, + -206.47074325683008, + -42283.86809325304, + null, + -202.03647820194982, + -42283.86809325304, + null, + -416.01293761258756, + -42283.86809325304, + null, + -202.03647820194982, + -42283.86809325304, + null, + -358.782869111985, + 54192.32468256466, + null, + -331.75506596424225, + 54192.32468256466, + null, + -358.782869111985, + 54192.32468256466, + null, + -206.47074325683008, + 54192.32468256466, + null, + -202.03647820194982, + 54192.32468256466, + null, + -79.89076048041814, + 54192.32468256466, + null, + -416.01293761258756, + 54192.32468256466, + null, + -202.03647820194982, + 54192.32468256466, + null, + -50770.05868912979, + -331.75506596424225, + null, + -50770.05868912979, + -358.782869111985, + null, + -50770.05868912979, + -202.03647820194982, + null, + -50770.05868912979, + -416.01293761258756, + null, + -50770.05868912979, + -202.03647820194982, + null, + -177.68758213714906, + -358.782869111985, + null, + -177.68758213714906, + -331.75506596424225, + null, + -177.68758213714906, + -433.8645479975819, + null, + -177.68758213714906, + -270.65669262785707, + null, + -177.68758213714906, + -358.782869111985, + null, + -177.68758213714906, + -433.8645479975819, + null, + -177.68758213714906, + -79.89076048041814, + null, + -177.68758213714906, + -202.03647820194982, + null, + -177.68758213714906, + -331.75506596424225, + null, + -177.68758213714906, + -79.89076048041814, + null, + -177.68758213714906, + -416.01293761258756, + null, + -177.68758213714906, + -270.65669262785707, + null, + -177.68758213714906, + -416.01293761258756, + null, + 40987.14475242994, + -358.782869111985, + null, + 40987.14475242994, + -331.75506596424225, + null, + 40987.14475242994, + -358.782869111985, + null, + 40987.14475242994, + -206.47074325683008, + null, + 40987.14475242994, + -79.89076048041814, + null, + 40987.14475242994, + -416.01293761258756, + null, + -358.782869111985, + 15956.811248472934, + null, + -331.75506596424225, + 15956.811248472934, + null, + -358.782869111985, + 15956.811248472934, + null, + -206.47074325683008, + 15956.811248472934, + null, + -202.03647820194982, + 15956.811248472934, + null, + -416.01293761258756, + 15956.811248472934, + null, + -202.03647820194982, + 15956.811248472934, + null, + -358.782869111985, + -42283.86809325304, + null, + -331.75506596424225, + -42283.86809325304, + null, + -358.782869111985, + -42283.86809325304, + null, + -206.47074325683008, + -42283.86809325304, + null, + -202.03647820194982, + -42283.86809325304, + null, + -416.01293761258756, + -42283.86809325304, + null, + -202.03647820194982, + -42283.86809325304, + null, + -358.782869111985, + 54192.32468256466, + null, + -331.75506596424225, + 54192.32468256466, + null, + -358.782869111985, + 54192.32468256466, + null, + -206.47074325683008, + 54192.32468256466, + null, + -202.03647820194982, + 54192.32468256466, + null, + -79.89076048041814, + 54192.32468256466, + null, + -416.01293761258756, + 54192.32468256466, + null, + -202.03647820194982, + 54192.32468256466, + null, + -50770.05868912979, + -331.75506596424225, + null, + -50770.05868912979, + -358.782869111985, + null, + -50770.05868912979, + -202.03647820194982, + null, + -50770.05868912979, + -416.01293761258756, + null, + -50770.05868912979, + -202.03647820194982, + null, + -177.68758213714906, + -358.782869111985, + null, + -177.68758213714906, + -331.75506596424225, + null, + -177.68758213714906, + -433.8645479975819, + null, + -177.68758213714906, + -270.65669262785707, + null, + -177.68758213714906, + -358.782869111985, + null, + -177.68758213714906, + -433.8645479975819, + null, + -177.68758213714906, + -79.89076048041814, + null, + -177.68758213714906, + -202.03647820194982, + null, + -177.68758213714906, + -331.75506596424225, + null, + -177.68758213714906, + -79.89076048041814, + null, + -177.68758213714906, + -416.01293761258756, + null, + -177.68758213714906, + -270.65669262785707, + null, + -177.68758213714906, + -416.01293761258756, + null, + 40987.14475242994, + -358.782869111985, + null, + 40987.14475242994, + -331.75506596424225, + null, + 40987.14475242994, + -358.782869111985, + null, + 40987.14475242994, + -206.47074325683008, + null, + 40987.14475242994, + -79.89076048041814, + null, + 40987.14475242994, + -416.01293761258756, + null, + -358.782869111985, + 15956.811248472934, + null, + -331.75506596424225, + 15956.811248472934, + null, + -358.782869111985, + 15956.811248472934, + null, + -206.47074325683008, + 15956.811248472934, + null, + -202.03647820194982, + 15956.811248472934, + null, + -416.01293761258756, + 15956.811248472934, + null, + -202.03647820194982, + 15956.811248472934, + null, + -358.782869111985, + -42283.86809325304, + null, + -331.75506596424225, + -42283.86809325304, + null, + -358.782869111985, + -42283.86809325304, + null, + -206.47074325683008, + -42283.86809325304, + null, + -202.03647820194982, + -42283.86809325304, + null, + -416.01293761258756, + -42283.86809325304, + null, + -202.03647820194982, + -42283.86809325304, + null, + -358.782869111985, + 54192.32468256466, + null, + -331.75506596424225, + 54192.32468256466, + null, + -358.782869111985, + 54192.32468256466, + null, + -206.47074325683008, + 54192.32468256466, + null, + -202.03647820194982, + 54192.32468256466, + null, + -79.89076048041814, + 54192.32468256466, + null, + -416.01293761258756, + 54192.32468256466, + null, + -202.03647820194982, + 54192.32468256466, + null + ], + "y": [ + 10258.913972110307, + 352.28315312547585, + null, + 10258.913972110307, + 249.64459906857965, + null, + 10258.913972110307, + 330.5748275330297, + null, + 10258.913972110307, + 329.1409467952837, + null, + 10258.913972110307, + 330.5748275330297, + null, + 235.69589868626093, + 249.64459906857965, + null, + 235.69589868626093, + 352.28315312547585, + null, + 235.69589868626093, + 183.8924770122804, + null, + 235.69589868626093, + 169.32016360849502, + null, + 235.69589868626093, + 249.64459906857965, + null, + 235.69589868626093, + 183.8924770122804, + null, + 235.69589868626093, + 328.02295526836434, + null, + 235.69589868626093, + 330.5748275330297, + null, + 235.69589868626093, + 352.28315312547585, + null, + 235.69589868626093, + 328.02295526836434, + null, + 235.69589868626093, + 329.1409467952837, + null, + 235.69589868626093, + 169.32016360849502, + null, + 235.69589868626093, + 329.1409467952837, + null, + -6878.700315901237, + 249.64459906857965, + null, + -6878.700315901237, + 352.28315312547585, + null, + -6878.700315901237, + 249.64459906857965, + null, + -6878.700315901237, + 270.4143750740704, + null, + -6878.700315901237, + 328.02295526836434, + null, + -6878.700315901237, + 329.1409467952837, + null, + 249.64459906857965, + -26442.56404128442, + null, + 352.28315312547585, + -26442.56404128442, + null, + 249.64459906857965, + -26442.56404128442, + null, + 270.4143750740704, + -26442.56404128442, + null, + 330.5748275330297, + -26442.56404128442, + null, + 329.1409467952837, + -26442.56404128442, + null, + 330.5748275330297, + -26442.56404128442, + null, + 249.64459906857965, + -20180.669365569538, + null, + 352.28315312547585, + -20180.669365569538, + null, + 249.64459906857965, + -20180.669365569538, + null, + 270.4143750740704, + -20180.669365569538, + null, + 330.5748275330297, + -20180.669365569538, + null, + 329.1409467952837, + -20180.669365569538, + null, + 330.5748275330297, + -20180.669365569538, + null, + 249.64459906857965, + 24704.558737468447, + null, + 352.28315312547585, + 24704.558737468447, + null, + 249.64459906857965, + 24704.558737468447, + null, + 270.4143750740704, + 24704.558737468447, + null, + 330.5748275330297, + 24704.558737468447, + null, + 328.02295526836434, + 24704.558737468447, + null, + 329.1409467952837, + 24704.558737468447, + null, + 330.5748275330297, + 24704.558737468447, + null, + 10258.913972110307, + 352.28315312547585, + null, + 10258.913972110307, + 249.64459906857965, + null, + 10258.913972110307, + 330.5748275330297, + null, + 10258.913972110307, + 329.1409467952837, + null, + 10258.913972110307, + 330.5748275330297, + null, + 235.69589868626093, + 249.64459906857965, + null, + 235.69589868626093, + 352.28315312547585, + null, + 235.69589868626093, + 183.8924770122804, + null, + 235.69589868626093, + 169.32016360849502, + null, + 235.69589868626093, + 249.64459906857965, + null, + 235.69589868626093, + 183.8924770122804, + null, + 235.69589868626093, + 328.02295526836434, + null, + 235.69589868626093, + 330.5748275330297, + null, + 235.69589868626093, + 352.28315312547585, + null, + 235.69589868626093, + 328.02295526836434, + null, + 235.69589868626093, + 329.1409467952837, + null, + 235.69589868626093, + 169.32016360849502, + null, + 235.69589868626093, + 329.1409467952837, + null, + -6878.700315901237, + 249.64459906857965, + null, + -6878.700315901237, + 352.28315312547585, + null, + -6878.700315901237, + 249.64459906857965, + null, + -6878.700315901237, + 270.4143750740704, + null, + -6878.700315901237, + 328.02295526836434, + null, + -6878.700315901237, + 329.1409467952837, + null, + 249.64459906857965, + -26442.56404128442, + null, + 352.28315312547585, + -26442.56404128442, + null, + 249.64459906857965, + -26442.56404128442, + null, + 270.4143750740704, + -26442.56404128442, + null, + 330.5748275330297, + -26442.56404128442, + null, + 329.1409467952837, + -26442.56404128442, + null, + 330.5748275330297, + -26442.56404128442, + null, + 249.64459906857965, + -20180.669365569538, + null, + 352.28315312547585, + -20180.669365569538, + null, + 249.64459906857965, + -20180.669365569538, + null, + 270.4143750740704, + -20180.669365569538, + null, + 330.5748275330297, + -20180.669365569538, + null, + 329.1409467952837, + -20180.669365569538, + null, + 330.5748275330297, + -20180.669365569538, + null, + 249.64459906857965, + 24704.558737468447, + null, + 352.28315312547585, + 24704.558737468447, + null, + 249.64459906857965, + 24704.558737468447, + null, + 270.4143750740704, + 24704.558737468447, + null, + 330.5748275330297, + 24704.558737468447, + null, + 328.02295526836434, + 24704.558737468447, + null, + 329.1409467952837, + 24704.558737468447, + null, + 330.5748275330297, + 24704.558737468447, + null, + 10258.913972110307, + 352.28315312547585, + null, + 10258.913972110307, + 249.64459906857965, + null, + 10258.913972110307, + 330.5748275330297, + null, + 10258.913972110307, + 329.1409467952837, + null, + 10258.913972110307, + 330.5748275330297, + null, + 235.69589868626093, + 249.64459906857965, + null, + 235.69589868626093, + 352.28315312547585, + null, + 235.69589868626093, + 183.8924770122804, + null, + 235.69589868626093, + 169.32016360849502, + null, + 235.69589868626093, + 249.64459906857965, + null, + 235.69589868626093, + 183.8924770122804, + null, + 235.69589868626093, + 328.02295526836434, + null, + 235.69589868626093, + 330.5748275330297, + null, + 235.69589868626093, + 352.28315312547585, + null, + 235.69589868626093, + 328.02295526836434, + null, + 235.69589868626093, + 329.1409467952837, + null, + 235.69589868626093, + 169.32016360849502, + null, + 235.69589868626093, + 329.1409467952837, + null, + -6878.700315901237, + 249.64459906857965, + null, + -6878.700315901237, + 352.28315312547585, + null, + -6878.700315901237, + 249.64459906857965, + null, + -6878.700315901237, + 270.4143750740704, + null, + -6878.700315901237, + 328.02295526836434, + null, + -6878.700315901237, + 329.1409467952837, + null, + 249.64459906857965, + -26442.56404128442, + null, + 352.28315312547585, + -26442.56404128442, + null, + 249.64459906857965, + -26442.56404128442, + null, + 270.4143750740704, + -26442.56404128442, + null, + 330.5748275330297, + -26442.56404128442, + null, + 329.1409467952837, + -26442.56404128442, + null, + 330.5748275330297, + -26442.56404128442, + null, + 249.64459906857965, + -20180.669365569538, + null, + 352.28315312547585, + -20180.669365569538, + null, + 249.64459906857965, + -20180.669365569538, + null, + 270.4143750740704, + -20180.669365569538, + null, + 330.5748275330297, + -20180.669365569538, + null, + 329.1409467952837, + -20180.669365569538, + null, + 330.5748275330297, + -20180.669365569538, + null, + 249.64459906857965, + 24704.558737468447, + null, + 352.28315312547585, + 24704.558737468447, + null, + 249.64459906857965, + 24704.558737468447, + null, + 270.4143750740704, + 24704.558737468447, + null, + 330.5748275330297, + 24704.558737468447, + null, + 328.02295526836434, + 24704.558737468447, + null, + 329.1409467952837, + 24704.558737468447, + null, + 330.5748275330297, + 24704.558737468447, + null + ], + "type": "scatter" + }, + { + "line": { + "color": "rgba(100, 100, 100, 0.3)", + "width": 1 + }, + "mode": "lines", + "name": "Tachymeter-Beob", + "x": [ + -452.12027234359056, + -420.16200293656857, + null, + -420.16200293656857, + -391.6044095798096, + null, + -420.16200293656857, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -452.12027234359056, + -420.16200293656857, + null, + -420.16200293656857, + -391.6044095798096, + null, + -420.16200293656857, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -452.12027234359056, + -420.16200293656857, + null, + -420.16200293656857, + -391.6044095798096, + null, + -420.16200293656857, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -452.12027234359056, + -420.16200293656857, + null, + -441.51142715738723, + -452.12027234359056, + null, + -435.5872518484344, + -452.12027234359056, + null, + -450.9820618720451, + -452.12027234359056, + null, + -452.12027234359056, + -391.6044095798096, + null, + -452.12027234359056, + -362.39815484415146, + null, + -452.12027234359056, + -420.16200293656857, + null, + -441.51142715738723, + -452.12027234359056, + null, + -435.5872518484344, + -452.12027234359056, + null, + -450.9820618720451, + -452.12027234359056, + null, + -452.12027234359056, + -391.6044095798096, + null, + -452.12027234359056, + -362.39815484415146, + null, + -452.12027234359056, + -420.16200293656857, + null, + -441.51142715738723, + -452.12027234359056, + null, + -435.5872518484344, + -452.12027234359056, + null, + -450.9820618720451, + -452.12027234359056, + null, + -452.12027234359056, + -391.6044095798096, + null, + -452.12027234359056, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -410.789428596095, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -416.01293761258756, + -420.16200293656857, + null, + -410.789428596095, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -416.01293761258756, + -420.16200293656857, + null, + -410.789428596095, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -435.5872518484344, + -441.51142715738723, + null, + -433.8645479975819, + -441.51142715738723, + null, + -444.7390333247924, + -441.51142715738723, + null, + -450.9820618720451, + -441.51142715738723, + null, + -441.51142715738723, + -452.12027234359056, + null, + -441.51142715738723, + -416.01293761258756, + null, + -435.5872518484344, + -441.51142715738723, + null, + -433.8645479975819, + -441.51142715738723, + null, + -444.7390333247924, + -441.51142715738723, + null, + -450.9820618720451, + -441.51142715738723, + null, + -441.51142715738723, + -452.12027234359056, + null, + -441.51142715738723, + -416.01293761258756, + null, + -435.5872518484344, + -441.51142715738723, + null, + -433.8645479975819, + -441.51142715738723, + null, + -444.7390333247924, + -441.51142715738723, + null, + -450.9820618720451, + -441.51142715738723, + null, + -441.51142715738723, + -452.12027234359056, + null, + -450.9820618720451, + -441.51142715738723, + null, + -435.5872518484344, + -450.9820618720451, + null, + -444.7390333247924, + -450.9820618720451, + null, + -450.9820618720451, + -452.12027234359056, + null, + -450.9820618720451, + -441.51142715738723, + null, + -435.5872518484344, + -450.9820618720451, + null, + -444.7390333247924, + -450.9820618720451, + null, + -450.9820618720451, + -452.12027234359056, + null, + -450.9820618720451, + -441.51142715738723, + null, + -435.5872518484344, + -450.9820618720451, + null, + -444.7390333247924, + -450.9820618720451, + null, + -450.9820618720451, + -452.12027234359056, + null, + -435.5872518484344, + -450.9820618720451, + null, + -435.5872518484344, + -452.12027234359056, + null, + -435.5872518484344, + -441.51142715738723, + null, + -435.5872518484344, + -410.789428596095, + null, + -435.5872518484344, + -380.4653368425429, + null, + -433.8645479975819, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -435.5872518484344, + -450.9820618720451, + null, + -435.5872518484344, + -452.12027234359056, + null, + -435.5872518484344, + -441.51142715738723, + null, + -435.5872518484344, + -410.789428596095, + null, + -435.5872518484344, + -380.4653368425429, + null, + -433.8645479975819, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -435.5872518484344, + -450.9820618720451, + null, + -435.5872518484344, + -452.12027234359056, + null, + -435.5872518484344, + -441.51142715738723, + null, + -435.5872518484344, + -410.789428596095, + null, + -435.5872518484344, + -380.4653368425429, + null, + -433.8645479975819, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -433.8645479975819, + -444.7390333247924, + null, + -444.7390333247924, + -450.9820618720451, + null, + -444.7390333247924, + -452.12027234359056, + null, + -444.7390333247924, + -441.51142715738723, + null, + -444.7390333247924, + -435.5872518484344, + null, + -433.8645479975819, + -444.7390333247924, + null, + -444.7390333247924, + -450.9820618720451, + null, + -444.7390333247924, + -452.12027234359056, + null, + -444.7390333247924, + -441.51142715738723, + null, + -444.7390333247924, + -435.5872518484344, + null, + -433.8645479975819, + -444.7390333247924, + null, + -444.7390333247924, + -450.9820618720451, + null, + -444.7390333247924, + -452.12027234359056, + null, + -444.7390333247924, + -441.51142715738723, + null, + -433.8645479975819, + -444.7390333247924, + null, + -433.8645479975819, + -441.51142715738723, + null, + -433.8645479975819, + -435.5872518484344, + null, + -433.8645479975819, + -346.27899564659725, + null, + -433.8645479975819, + -444.7390333247924, + null, + -433.8645479975819, + -441.51142715738723, + null, + -433.8645479975819, + -435.5872518484344, + null, + -433.8645479975819, + -346.27899564659725, + null, + -433.8645479975819, + -444.7390333247924, + null, + -433.8645479975819, + -441.51142715738723, + null, + -433.8645479975819, + -435.5872518484344, + null, + -433.8645479975819, + -346.27899564659725, + null, + -452.12027234359056, + -391.6044095798096, + null, + -391.6044095798096, + -331.75506596424225, + null, + -391.6044095798096, + -285.87542424599815, + null, + -391.6044095798096, + -362.39815484415146, + null, + -420.16200293656857, + -391.6044095798096, + null, + -452.12027234359056, + -391.6044095798096, + null, + -391.6044095798096, + -331.75506596424225, + null, + -391.6044095798096, + -285.87542424599815, + null, + -391.6044095798096, + -362.39815484415146, + null, + -420.16200293656857, + -391.6044095798096, + null, + -452.12027234359056, + -391.6044095798096, + null, + -391.6044095798096, + -331.75506596424225, + null, + -391.6044095798096, + -285.87542424599815, + null, + -391.6044095798096, + -362.39815484415146, + null, + -420.16200293656857, + -391.6044095798096, + null, + -391.6044095798096, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -362.39815484415146, + -240.03825990418605, + null, + -362.39815484415146, + -285.87542424599815, + null, + -420.16200293656857, + -362.39815484415146, + null, + -391.6044095798096, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -362.39815484415146, + -240.03825990418605, + null, + -362.39815484415146, + -285.87542424599815, + null, + -420.16200293656857, + -362.39815484415146, + null, + -391.6044095798096, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -362.39815484415146, + -240.03825990418605, + null, + -362.39815484415146, + -285.87542424599815, + null, + -420.16200293656857, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -391.6044095798096, + -331.75506596424225, + null, + -331.75506596424225, + -240.03825990418605, + null, + -331.75506596424225, + -202.03647820194982, + null, + -331.75506596424225, + -285.87542424599815, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.89731292502245, + -331.75506596424225, + null, + -362.39815484415146, + -331.75506596424225, + null, + -391.6044095798096, + -331.75506596424225, + null, + -331.75506596424225, + -240.03825990418605, + null, + -331.75506596424225, + -202.03647820194982, + null, + -331.75506596424225, + -285.87542424599815, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.89731292502245, + -331.75506596424225, + null, + -362.39815484415146, + -331.75506596424225, + null, + -391.6044095798096, + -331.75506596424225, + null, + -331.75506596424225, + -240.03825990418605, + null, + -331.75506596424225, + -202.03647820194982, + null, + -331.75506596424225, + -285.87542424599815, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.89731292502245, + -331.75506596424225, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.6818541431988, + -305.10537793394934, + null, + -328.6818541431988, + -290.73858167881536, + null, + -328.6818541431988, + -321.0815920608002, + null, + -328.6818541431988, + -315.14574865196255, + null, + -328.89731292502245, + -328.6818541431988, + null, + -332.5234357900165, + -328.6818541431988, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.6818541431988, + -305.10537793394934, + null, + -328.6818541431988, + -290.73858167881536, + null, + -328.6818541431988, + -321.0815920608002, + null, + -328.6818541431988, + -315.14574865196255, + null, + -328.89731292502245, + -328.6818541431988, + null, + -332.5234357900165, + -328.6818541431988, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.6818541431988, + -305.10537793394934, + null, + -328.6818541431988, + -290.73858167881536, + null, + -328.6818541431988, + -321.0815920608002, + null, + -328.6818541431988, + -315.14574865196255, + null, + -328.89731292502245, + -328.6818541431988, + null, + -332.5234357900165, + -328.6818541431988, + null, + -328.89731292502245, + -328.6818541431988, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.89731292502245, + -305.10537793394934, + null, + -328.89731292502245, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -332.5234357900165, + -328.89731292502245, + null, + -328.89731292502245, + -331.75506596424225, + null, + -328.89731292502245, + -328.6818541431988, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.89731292502245, + -305.10537793394934, + null, + -328.89731292502245, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -332.5234357900165, + -328.89731292502245, + null, + -328.89731292502245, + -331.75506596424225, + null, + -328.89731292502245, + -328.6818541431988, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.89731292502245, + -305.10537793394934, + null, + -328.89731292502245, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -332.5234357900165, + -328.89731292502245, + null, + -328.89731292502245, + -331.75506596424225, + null, + -332.5234357900165, + -328.89731292502245, + null, + -332.5234357900165, + -291.6017824139326, + null, + -337.6811093499919, + -332.5234357900165, + null, + -332.5234357900165, + -331.75506596424225, + null, + -332.5234357900165, + -328.6818541431988, + null, + -332.5234357900165, + -328.89731292502245, + null, + -332.5234357900165, + -291.6017824139326, + null, + -337.6811093499919, + -332.5234357900165, + null, + -332.5234357900165, + -331.75506596424225, + null, + -332.5234357900165, + -328.6818541431988, + null, + -332.5234357900165, + -328.89731292502245, + null, + -332.5234357900165, + -291.6017824139326, + null, + -337.6811093499919, + -332.5234357900165, + null, + -332.5234357900165, + -331.75506596424225, + null, + -332.5234357900165, + -328.6818541431988, + null, + -331.75506596424225, + -285.87542424599815, + null, + -391.6044095798096, + -285.87542424599815, + null, + -362.39815484415146, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -290.73858167881536, + -285.87542424599815, + null, + -331.75506596424225, + -285.87542424599815, + null, + -391.6044095798096, + -285.87542424599815, + null, + -362.39815484415146, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -290.73858167881536, + -285.87542424599815, + null, + -331.75506596424225, + -285.87542424599815, + null, + -391.6044095798096, + -285.87542424599815, + null, + -362.39815484415146, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -290.73858167881536, + -285.87542424599815, + null, + -328.6818541431988, + -321.0815920608002, + null, + -321.0815920608002, + -305.10537793394934, + null, + -321.0815920608002, + -290.73858167881536, + null, + -321.0815920608002, + -315.14574865196255, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.6818541431988, + -321.0815920608002, + null, + -321.0815920608002, + -305.10537793394934, + null, + -321.0815920608002, + -290.73858167881536, + null, + -321.0815920608002, + -315.14574865196255, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.6818541431988, + -321.0815920608002, + null, + -321.0815920608002, + -305.10537793394934, + null, + -321.0815920608002, + -290.73858167881536, + null, + -321.0815920608002, + -315.14574865196255, + null, + -328.89731292502245, + -321.0815920608002, + null, + -321.0815920608002, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -315.14574865196255, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -328.6818541431988, + -315.14574865196255, + null, + -321.0815920608002, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -315.14574865196255, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -328.6818541431988, + -315.14574865196255, + null, + -321.0815920608002, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -315.14574865196255, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -328.6818541431988, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -328.89731292502245, + -305.10537793394934, + null, + -321.0815920608002, + -305.10537793394934, + null, + -328.6818541431988, + -305.10537793394934, + null, + -305.10537793394934, + -290.73858167881536, + null, + -315.14574865196255, + -305.10537793394934, + null, + -328.89731292502245, + -305.10537793394934, + null, + -321.0815920608002, + -305.10537793394934, + null, + -328.6818541431988, + -305.10537793394934, + null, + -305.10537793394934, + -290.73858167881536, + null, + -315.14574865196255, + -305.10537793394934, + null, + -328.89731292502245, + -305.10537793394934, + null, + -321.0815920608002, + -305.10537793394934, + null, + -328.6818541431988, + -305.10537793394934, + null, + -305.10537793394934, + -290.73858167881536, + null, + -305.10537793394934, + -290.73858167881536, + null, + -328.6818541431988, + -290.73858167881536, + null, + -321.0815920608002, + -290.73858167881536, + null, + -328.89731292502245, + -290.73858167881536, + null, + -315.14574865196255, + -290.73858167881536, + null, + -290.73858167881536, + -291.6017824139326, + null, + -290.73858167881536, + -285.87542424599815, + null, + -305.10537793394934, + -290.73858167881536, + null, + -328.6818541431988, + -290.73858167881536, + null, + -321.0815920608002, + -290.73858167881536, + null, + -328.89731292502245, + -290.73858167881536, + null, + -315.14574865196255, + -290.73858167881536, + null, + -290.73858167881536, + -291.6017824139326, + null, + -290.73858167881536, + -285.87542424599815, + null, + -305.10537793394934, + -290.73858167881536, + null, + -328.6818541431988, + -290.73858167881536, + null, + -321.0815920608002, + -290.73858167881536, + null, + -328.89731292502245, + -290.73858167881536, + null, + -315.14574865196255, + -290.73858167881536, + null, + -290.73858167881536, + -291.6017824139326, + null, + -290.73858167881536, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -331.75506596424225, + -240.03825990418605, + null, + -240.03825990418605, + -174.92098531618865, + null, + -240.03825990418605, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -285.87542424599815, + -240.03825990418605, + null, + -331.75506596424225, + -240.03825990418605, + null, + -240.03825990418605, + -174.92098531618865, + null, + -240.03825990418605, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -285.87542424599815, + -240.03825990418605, + null, + -331.75506596424225, + -240.03825990418605, + null, + -240.03825990418605, + -174.92098531618865, + null, + -240.03825990418605, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -240.03825990418605, + -202.03647820194982, + null, + -202.03647820194982, + -174.92098531618865, + null, + -202.03647820194982, + -142.73729137682972, + null, + -206.47074325683008, + -202.03647820194982, + null, + -207.91219428651013, + -202.03647820194982, + null, + -223.9891910783257, + -202.03647820194982, + null, + -285.87542424599815, + -202.03647820194982, + null, + -240.03825990418605, + -202.03647820194982, + null, + -202.03647820194982, + -174.92098531618865, + null, + -202.03647820194982, + -142.73729137682972, + null, + -206.47074325683008, + -202.03647820194982, + null, + -207.91219428651013, + -202.03647820194982, + null, + -223.9891910783257, + -202.03647820194982, + null, + -285.87542424599815, + -202.03647820194982, + null, + -240.03825990418605, + -202.03647820194982, + null, + -202.03647820194982, + -174.92098531618865, + null, + -202.03647820194982, + -142.73729137682972, + null, + -206.47074325683008, + -202.03647820194982, + null, + -207.91219428651013, + -202.03647820194982, + null, + -223.9891910783257, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -223.9891910783257, + -202.03647820194982, + null, + -207.91219428651013, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -223.9891910783257, + -240.03825990418605, + null, + -223.9891910783257, + -202.03647820194982, + null, + -207.91219428651013, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -223.9891910783257, + -240.03825990418605, + null, + -223.9891910783257, + -202.03647820194982, + null, + -207.91219428651013, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -202.03647820194982, + null, + -207.91219428651013, + -237.81047974010292, + null, + -238.0383948252539, + -237.81047974010292, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -202.03647820194982, + null, + -207.91219428651013, + -237.81047974010292, + null, + -238.0383948252539, + -237.81047974010292, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -202.03647820194982, + null, + -207.91219428651013, + -237.81047974010292, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -199.76797181231274, + -206.47074325683008, + null, + -212.17488649242205, + -206.47074325683008, + null, + -206.47074325683008, + -238.0383948252539, + null, + -206.47074325683008, + -252.52439335286124, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -199.76797181231274, + -206.47074325683008, + null, + -212.17488649242205, + -206.47074325683008, + null, + -206.47074325683008, + -238.0383948252539, + null, + -206.47074325683008, + -252.52439335286124, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -199.76797181231274, + -206.47074325683008, + null, + -212.17488649242205, + -206.47074325683008, + null, + -206.47074325683008, + -238.0383948252539, + null, + -206.47074325683008, + -252.52439335286124, + null, + -206.47074325683008, + -207.91219428651013, + null, + -240.03825990418605, + -174.92098531618865, + null, + -174.92098531618865, + -79.89076048041814, + null, + -174.92098531618865, + -142.73729137682972, + null, + -150.4233281741907, + -174.92098531618865, + null, + -174.02001420596523, + -174.92098531618865, + null, + -202.03647820194982, + -174.92098531618865, + null, + -240.03825990418605, + -174.92098531618865, + null, + -174.92098531618865, + -79.89076048041814, + null, + -174.92098531618865, + -142.73729137682972, + null, + -150.4233281741907, + -174.92098531618865, + null, + -174.02001420596523, + -174.92098531618865, + null, + -202.03647820194982, + -174.92098531618865, + null, + -240.03825990418605, + -174.92098531618865, + null, + -174.92098531618865, + -79.89076048041814, + null, + -174.92098531618865, + -142.73729137682972, + null, + -150.4233281741907, + -174.92098531618865, + null, + -174.02001420596523, + -174.92098531618865, + null, + -202.03647820194982, + -174.92098531618865, + null, + -206.47074325683008, + -207.91219428651013, + null, + -207.91219428651013, + -237.81047974010292, + null, + -207.91219428651013, + -223.9891910783257, + null, + -207.91219428651013, + -202.03647820194982, + null, + -206.47074325683008, + -207.91219428651013, + null, + -207.91219428651013, + -237.81047974010292, + null, + -207.91219428651013, + -223.9891910783257, + null, + -207.91219428651013, + -202.03647820194982, + null, + -206.47074325683008, + -207.91219428651013, + null, + -207.91219428651013, + -237.81047974010292, + null, + -207.91219428651013, + -223.9891910783257, + null, + -207.91219428651013, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -174.02001420596523, + -174.92098531618865, + null, + -174.02001420596523, + -142.73729137682972, + null, + -150.4233281741907, + -174.02001420596523, + null, + -206.47074325683008, + -174.02001420596523, + null, + -174.02001420596523, + -174.92098531618865, + null, + -174.02001420596523, + -142.73729137682972, + null, + -150.4233281741907, + -174.02001420596523, + null, + -206.47074325683008, + -174.02001420596523, + null, + -174.02001420596523, + -174.92098531618865, + null, + -174.02001420596523, + -142.73729137682972, + null, + -150.4233281741907, + -174.02001420596523, + null, + -433.8645479975819, + -346.27899564659725, + null, + -346.27899564659725, + -345.98825179516734, + null, + -346.27899564659725, + -337.6811093499919, + null, + -346.27899564659725, + -270.65669262785707, + null, + -433.8645479975819, + -346.27899564659725, + null, + -346.27899564659725, + -345.98825179516734, + null, + -346.27899564659725, + -337.6811093499919, + null, + -346.27899564659725, + -270.65669262785707, + null, + -433.8645479975819, + -346.27899564659725, + null, + -346.27899564659725, + -345.98825179516734, + null, + -346.27899564659725, + -337.6811093499919, + null, + -346.27899564659725, + -270.65669262785707, + null, + -346.27899564659725, + -337.6811093499919, + null, + -345.98825179516734, + -337.6811093499919, + null, + -367.96143095711767, + -337.6811093499919, + null, + -358.782869111985, + -337.6811093499919, + null, + -410.789428596095, + -337.6811093499919, + null, + -380.4653368425429, + -337.6811093499919, + null, + -337.6811093499919, + -332.5234357900165, + null, + -337.6811093499919, + -291.8354629412489, + null, + -346.27899564659725, + -337.6811093499919, + null, + -345.98825179516734, + -337.6811093499919, + null, + -367.96143095711767, + -337.6811093499919, + null, + -358.782869111985, + -337.6811093499919, + null, + -410.789428596095, + -337.6811093499919, + null, + -380.4653368425429, + -337.6811093499919, + null, + -337.6811093499919, + -332.5234357900165, + null, + -337.6811093499919, + -291.8354629412489, + null, + -346.27899564659725, + -337.6811093499919, + null, + -345.98825179516734, + -337.6811093499919, + null, + -367.96143095711767, + -337.6811093499919, + null, + -358.782869111985, + -337.6811093499919, + null, + -410.789428596095, + -337.6811093499919, + null, + -380.4653368425429, + -337.6811093499919, + null, + -337.6811093499919, + -332.5234357900165, + null, + -337.6811093499919, + -291.8354629412489, + null, + -345.98825179516734, + -337.6811093499919, + null, + -346.27899564659725, + -345.98825179516734, + null, + -367.96143095711767, + -345.98825179516734, + null, + -345.98825179516734, + -337.6811093499919, + null, + -346.27899564659725, + -345.98825179516734, + null, + -367.96143095711767, + -345.98825179516734, + null, + -345.98825179516734, + -337.6811093499919, + null, + -346.27899564659725, + -345.98825179516734, + null, + -367.96143095711767, + -345.98825179516734, + null, + -410.789428596095, + -416.01293761258756, + null, + -410.789428596095, + -380.4653368425429, + null, + -410.789428596095, + -337.6811093499919, + null, + -410.789428596095, + -377.5536373478154, + null, + -435.5872518484344, + -410.789428596095, + null, + -410.789428596095, + -416.01293761258756, + null, + -410.789428596095, + -380.4653368425429, + null, + -410.789428596095, + -337.6811093499919, + null, + -410.789428596095, + -377.5536373478154, + null, + -435.5872518484344, + -410.789428596095, + null, + -410.789428596095, + -416.01293761258756, + null, + -410.789428596095, + -380.4653368425429, + null, + -410.789428596095, + -337.6811093499919, + null, + -410.789428596095, + -377.5536373478154, + null, + -435.5872518484344, + -410.789428596095, + null, + -410.789428596095, + -380.4653368425429, + null, + -380.4653368425429, + -291.8354629412489, + null, + -380.4653368425429, + -337.6811093499919, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -380.4653368425429, + null, + -377.5536373478154, + -380.4653368425429, + null, + -435.5872518484344, + -380.4653368425429, + null, + -410.789428596095, + -380.4653368425429, + null, + -380.4653368425429, + -291.8354629412489, + null, + -380.4653368425429, + -337.6811093499919, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -380.4653368425429, + null, + -377.5536373478154, + -380.4653368425429, + null, + -435.5872518484344, + -380.4653368425429, + null, + -410.789428596095, + -380.4653368425429, + null, + -380.4653368425429, + -291.8354629412489, + null, + -380.4653368425429, + -337.6811093499919, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -380.4653368425429, + null, + -377.5536373478154, + -380.4653368425429, + null, + -435.5872518484344, + -380.4653368425429, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -380.4653368425429, + null, + -358.782869111985, + -377.5536373478154, + null, + -367.96143095711767, + -377.5536373478154, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -380.4653368425429, + null, + -358.782869111985, + -377.5536373478154, + null, + -367.96143095711767, + -377.5536373478154, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -380.4653368425429, + null, + -358.782869111985, + -377.5536373478154, + null, + -367.96143095711767, + -377.5536373478154, + null, + -358.782869111985, + -337.6811093499919, + null, + -367.96143095711767, + -358.782869111985, + null, + -358.782869111985, + -377.5536373478154, + null, + -358.782869111985, + -380.4653368425429, + null, + -358.782869111985, + -337.6811093499919, + null, + -367.96143095711767, + -358.782869111985, + null, + -358.782869111985, + -377.5536373478154, + null, + -358.782869111985, + -380.4653368425429, + null, + -358.782869111985, + -337.6811093499919, + null, + -367.96143095711767, + -358.782869111985, + null, + -358.782869111985, + -377.5536373478154, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -377.5536373478154, + null, + -367.96143095711767, + -380.4653368425429, + null, + -367.96143095711767, + -358.782869111985, + null, + -367.96143095711767, + -337.6811093499919, + null, + -367.96143095711767, + -345.98825179516734, + null, + -367.96143095711767, + -377.5536373478154, + null, + -367.96143095711767, + -380.4653368425429, + null, + -367.96143095711767, + -358.782869111985, + null, + -367.96143095711767, + -337.6811093499919, + null, + -367.96143095711767, + -345.98825179516734, + null, + -367.96143095711767, + -377.5536373478154, + null, + -367.96143095711767, + -380.4653368425429, + null, + -367.96143095711767, + -358.782869111985, + null, + -367.96143095711767, + -337.6811093499919, + null, + -367.96143095711767, + -345.98825179516734, + null, + -332.5234357900165, + -291.6017824139326, + null, + -290.73858167881536, + -291.6017824139326, + null, + -291.6017824139326, + -252.52439335286124, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.8354629412489, + -291.6017824139326, + null, + -332.5234357900165, + -291.6017824139326, + null, + -290.73858167881536, + -291.6017824139326, + null, + -291.6017824139326, + -252.52439335286124, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.8354629412489, + -291.6017824139326, + null, + -332.5234357900165, + -291.6017824139326, + null, + -290.73858167881536, + -291.6017824139326, + null, + -291.6017824139326, + -252.52439335286124, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.8354629412489, + -291.6017824139326, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -252.52439335286124, + null, + -279.02316877523407, + -238.0383948252539, + null, + -291.8354629412489, + -279.02316877523407, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -252.52439335286124, + null, + -279.02316877523407, + -238.0383948252539, + null, + -291.8354629412489, + -279.02316877523407, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -252.52439335286124, + null, + -279.02316877523407, + -238.0383948252539, + null, + -291.8354629412489, + -279.02316877523407, + null, + -337.6811093499919, + -291.8354629412489, + null, + -291.8354629412489, + -291.6017824139326, + null, + -291.8354629412489, + -279.02316877523407, + null, + -271.96624983312864, + -291.8354629412489, + null, + -337.6811093499919, + -291.8354629412489, + null, + -291.8354629412489, + -291.6017824139326, + null, + -291.8354629412489, + -279.02316877523407, + null, + -271.96624983312864, + -291.8354629412489, + null, + -337.6811093499919, + -291.8354629412489, + null, + -291.8354629412489, + -291.6017824139326, + null, + -291.8354629412489, + -279.02316877523407, + null, + -271.96624983312864, + -291.8354629412489, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -238.0383948252539, + null, + -199.76797181231274, + -238.0383948252539, + null, + -279.02316877523407, + -238.0383948252539, + null, + -238.0383948252539, + -252.52439335286124, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -238.0383948252539, + null, + -199.76797181231274, + -238.0383948252539, + null, + -279.02316877523407, + -238.0383948252539, + null, + -238.0383948252539, + -252.52439335286124, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -238.0383948252539, + null, + -199.76797181231274, + -238.0383948252539, + null, + -279.02316877523407, + -238.0383948252539, + null, + -238.0383948252539, + -252.52439335286124, + null, + -279.02316877523407, + -252.52439335286124, + null, + -291.6017824139326, + -252.52439335286124, + null, + -206.47074325683008, + -252.52439335286124, + null, + -238.0383948252539, + -252.52439335286124, + null, + -258.1977054890761, + -252.52439335286124, + null, + -279.02316877523407, + -252.52439335286124, + null, + -291.6017824139326, + -252.52439335286124, + null, + -206.47074325683008, + -252.52439335286124, + null, + -238.0383948252539, + -252.52439335286124, + null, + -258.1977054890761, + -252.52439335286124, + null, + -279.02316877523407, + -252.52439335286124, + null, + -291.6017824139326, + -252.52439335286124, + null, + -206.47074325683008, + -252.52439335286124, + null, + -238.0383948252539, + -252.52439335286124, + null, + -258.1977054890761, + -252.52439335286124, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -199.76797181231274, + null, + -213.75685485376738, + -212.17488649242205, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -212.17488649242205, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -199.76797181231274, + null, + -213.75685485376738, + -212.17488649242205, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -212.17488649242205, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -199.76797181231274, + null, + -213.75685485376738, + -212.17488649242205, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -212.17488649242205, + null, + -199.76797181231274, + -238.0383948252539, + null, + -199.76797181231274, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -212.17488649242205, + -199.76797181231274, + null, + -199.76797181231274, + -238.0383948252539, + null, + -199.76797181231274, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -212.17488649242205, + -199.76797181231274, + null, + -199.76797181231274, + -238.0383948252539, + null, + -199.76797181231274, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -212.17488649242205, + -199.76797181231274, + null, + -346.27899564659725, + -270.65669262785707, + null, + -270.65669262785707, + -271.96624983312864, + null, + -270.65669262785707, + -258.1977054890761, + null, + -270.65669262785707, + -213.75685485376738, + null, + -346.27899564659725, + -270.65669262785707, + null, + -270.65669262785707, + -271.96624983312864, + null, + -270.65669262785707, + -258.1977054890761, + null, + -270.65669262785707, + -213.75685485376738, + null, + -346.27899564659725, + -270.65669262785707, + null, + -270.65669262785707, + -271.96624983312864, + null, + -270.65669262785707, + -258.1977054890761, + null, + -270.65669262785707, + -213.75685485376738, + null, + -270.65669262785707, + -213.75685485376738, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -213.75685485376738, + -159.61795976164115, + null, + -270.65669262785707, + -213.75685485376738, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -213.75685485376738, + -159.61795976164115, + null, + -270.65669262785707, + -213.75685485376738, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -213.75685485376738, + -159.61795976164115, + null, + -270.65669262785707, + -271.96624983312864, + null, + -271.96624983312864, + -291.8354629412489, + null, + -258.1977054890761, + -271.96624983312864, + null, + -271.96624983312864, + -212.17488649242205, + null, + -270.65669262785707, + -271.96624983312864, + null, + -271.96624983312864, + -291.8354629412489, + null, + -258.1977054890761, + -271.96624983312864, + null, + -271.96624983312864, + -212.17488649242205, + null, + -270.65669262785707, + -271.96624983312864, + null, + -271.96624983312864, + -291.8354629412489, + null, + -258.1977054890761, + -271.96624983312864, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -271.96624983312864, + null, + -258.1977054890761, + -252.52439335286124, + null, + -258.1977054890761, + -212.17488649242205, + null, + -270.65669262785707, + -258.1977054890761, + null, + -258.1977054890761, + -271.96624983312864, + null, + -258.1977054890761, + -252.52439335286124, + null, + -258.1977054890761, + -212.17488649242205, + null, + -270.65669262785707, + -258.1977054890761, + null, + -258.1977054890761, + -271.96624983312864, + null, + -258.1977054890761, + -252.52439335286124, + null, + -258.1977054890761, + -212.17488649242205, + null, + -270.65669262785707, + -258.1977054890761, + null, + -202.03647820194982, + -142.73729137682972, + null, + -174.92098531618865, + -142.73729137682972, + null, + -142.73729137682972, + -79.89076048041814, + null, + -144.79175755935458, + -142.73729137682972, + null, + -150.4233281741907, + -142.73729137682972, + null, + -174.02001420596523, + -142.73729137682972, + null, + -202.03647820194982, + -142.73729137682972, + null, + -174.92098531618865, + -142.73729137682972, + null, + -142.73729137682972, + -79.89076048041814, + null, + -144.79175755935458, + -142.73729137682972, + null, + -150.4233281741907, + -142.73729137682972, + null, + -174.02001420596523, + -142.73729137682972, + null, + -202.03647820194982, + -142.73729137682972, + null, + -174.92098531618865, + -142.73729137682972, + null, + -142.73729137682972, + -79.89076048041814, + null, + -144.79175755935458, + -142.73729137682972, + null, + -150.4233281741907, + -142.73729137682972, + null, + -174.02001420596523, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -144.79175755935458, + -142.73729137682972, + null, + -153.84377298142158, + -144.79175755935458, + null, + -161.1394666625376, + -144.79175755935458, + null, + -151.99198281488697, + -144.79175755935458, + null, + -144.79175755935458, + -150.4233281741907, + null, + -144.79175755935458, + -142.73729137682972, + null, + -153.84377298142158, + -144.79175755935458, + null, + -161.1394666625376, + -144.79175755935458, + null, + -151.99198281488697, + -144.79175755935458, + null, + -144.79175755935458, + -150.4233281741907, + null, + -144.79175755935458, + -142.73729137682972, + null, + -153.84377298142158, + -144.79175755935458, + null, + -161.1394666625376, + -144.79175755935458, + null, + -151.99198281488697, + -144.79175755935458, + null, + -150.4233281741907, + -174.02001420596523, + null, + -150.4233281741907, + -174.92098531618865, + null, + -150.4233281741907, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -150.4233281741907, + -174.02001420596523, + null, + -150.4233281741907, + -174.92098531618865, + null, + -150.4233281741907, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -150.4233281741907, + -174.02001420596523, + null, + -150.4233281741907, + -174.92098531618865, + null, + -150.4233281741907, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -144.79175755935458, + null, + -151.99198281488697, + -90.06966055105865, + null, + -153.84377298142158, + -151.99198281488697, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -144.79175755935458, + null, + -151.99198281488697, + -90.06966055105865, + null, + -153.84377298142158, + -151.99198281488697, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -144.79175755935458, + null, + -151.99198281488697, + -90.06966055105865, + null, + -153.84377298142158, + -151.99198281488697, + null, + -161.1394666625376, + -151.99198281488697, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -144.79175755935458, + null, + -159.61795976164115, + -153.84377298142158, + null, + -161.1394666625376, + -153.84377298142158, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -144.79175755935458, + null, + -159.61795976164115, + -153.84377298142158, + null, + -161.1394666625376, + -153.84377298142158, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -144.79175755935458, + null, + -159.61795976164115, + -153.84377298142158, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -91.80684565358028, + null, + -159.61795976164115, + -161.1394666625376, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -91.80684565358028, + null, + -159.61795976164115, + -161.1394666625376, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -91.80684565358028, + null, + -159.61795976164115, + -161.1394666625376, + null, + -213.75685485376738, + -159.61795976164115, + null, + -159.61795976164115, + -161.1394666625376, + null, + -159.61795976164115, + -153.84377298142158, + null, + -159.61795976164115, + -94.15336530504511, + null, + -213.75685485376738, + -159.61795976164115, + null, + -159.61795976164115, + -161.1394666625376, + null, + -159.61795976164115, + -153.84377298142158, + null, + -159.61795976164115, + -94.15336530504511, + null, + -213.75685485376738, + -159.61795976164115, + null, + -159.61795976164115, + -161.1394666625376, + null, + -159.61795976164115, + -153.84377298142158, + null, + -159.61795976164115, + -94.15336530504511, + null, + -142.73729137682972, + -79.89076048041814, + null, + -174.92098531618865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -79.89076048041814, + null, + -90.06966055105865, + -79.89076048041814, + null, + -142.73729137682972, + -79.89076048041814, + null, + -174.92098531618865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -79.89076048041814, + null, + -90.06966055105865, + -79.89076048041814, + null, + -142.73729137682972, + -79.89076048041814, + null, + -174.92098531618865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -79.89076048041814, + null, + -90.06966055105865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -71.98755381403251, + null, + -91.80684565358028, + -71.98755381403251, + null, + -90.06966055105865, + -71.98755381403251, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -71.98755381403251, + null, + -91.80684565358028, + -71.98755381403251, + null, + -90.06966055105865, + -71.98755381403251, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -71.98755381403251, + null, + -91.80684565358028, + -71.98755381403251, + null, + -90.06966055105865, + -71.98755381403251, + null, + -90.06966055105865, + -79.89076048041814, + null, + -90.06966055105865, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -151.99198281488697, + -90.06966055105865, + null, + -90.06966055105865, + -79.89076048041814, + null, + -90.06966055105865, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -151.99198281488697, + -90.06966055105865, + null, + -90.06966055105865, + -79.89076048041814, + null, + -90.06966055105865, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -151.99198281488697, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -91.80684565358028, + -71.98755381403251, + null, + -91.80684565358028, + -77.56566344042652, + null, + -94.15336530504511, + -91.80684565358028, + null, + -161.1394666625376, + -91.80684565358028, + null, + -91.80684565358028, + -90.06966055105865, + null, + -91.80684565358028, + -71.98755381403251, + null, + -91.80684565358028, + -77.56566344042652, + null, + -94.15336530504511, + -91.80684565358028, + null, + -161.1394666625376, + -91.80684565358028, + null, + -91.80684565358028, + -90.06966055105865, + null, + -91.80684565358028, + -71.98755381403251, + null, + -91.80684565358028, + -77.56566344042652, + null, + -94.15336530504511, + -91.80684565358028, + null, + -161.1394666625376, + -91.80684565358028, + null, + -77.56566344042652, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -94.15336530504511, + -77.56566344042652, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -94.15336530504511, + -77.56566344042652, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -94.15336530504511, + -77.56566344042652, + null, + -91.80684565358028, + -77.56566344042652, + null, + -159.61795976164115, + -94.15336530504511, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -77.56566344042652, + null, + -159.61795976164115, + -94.15336530504511, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -77.56566344042652, + null, + -159.61795976164115, + -94.15336530504511, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -77.56566344042652, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -163.74360696682288, + null, + -153.84377298142158, + -165.5000997867287, + null, + -153.84377298142158, + -156.06351554190206, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -163.74360696682288, + null, + -153.84377298142158, + -165.5000997867287, + null, + -153.84377298142158, + -156.06351554190206, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -163.74360696682288, + null, + -153.84377298142158, + -165.5000997867287, + null, + -153.84377298142158, + -156.06351554190206, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -156.06351554190206, + null, + -161.1394666625376, + -163.74360696682288, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -156.06351554190206, + null, + -161.1394666625376, + -163.74360696682288, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -156.06351554190206, + null, + -161.1394666625376, + -163.74360696682288, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -163.74360696682288, + null, + -151.99198281488697, + -165.5000997867287, + null, + -151.99198281488697, + -156.06351554190206, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -163.74360696682288, + null, + -151.99198281488697, + -165.5000997867287, + null, + -151.99198281488697, + -156.06351554190206, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -163.74360696682288, + null, + -151.99198281488697, + -165.5000997867287, + null, + -151.99198281488697, + -156.06351554190206, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -91.80684565358028, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -91.80684565358028, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -91.80684565358028, + -96.60213751234593, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -96.60213751234593, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -96.60213751234593, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -96.60213751234593, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -201.6396503647304, + null, + -212.17488649242205, + -202.11793201838967, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -201.6396503647304, + null, + -212.17488649242205, + -202.11793201838967, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -201.6396503647304, + null, + -212.17488649242205, + -202.11793201838967, + null, + -199.76797181231274, + -206.47074325683008, + null, + -199.76797181231274, + -201.6396503647304, + null, + -199.76797181231274, + -202.11793201838967, + null, + -199.76797181231274, + -206.47074325683008, + null, + -199.76797181231274, + -201.6396503647304, + null, + -199.76797181231274, + -202.11793201838967, + null, + -199.76797181231274, + -206.47074325683008, + null, + -199.76797181231274, + -201.6396503647304, + null, + -199.76797181231274, + -202.11793201838967, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -202.11793201838967, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -202.11793201838967, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -202.11793201838967, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -178.27339441800706, + null, + -206.47074325683008, + -201.6396503647304, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -178.27339441800706, + null, + -206.47074325683008, + -201.6396503647304, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -178.27339441800706, + null, + -206.47074325683008, + -201.6396503647304, + null, + -207.91219428651013, + -237.81047974010292, + null, + -237.81047974010292, + -178.27339441800706, + null, + -207.91219428651013, + -237.81047974010292, + null, + -237.81047974010292, + -178.27339441800706, + null, + -207.91219428651013, + -237.81047974010292, + null, + -237.81047974010292, + -178.27339441800706, + null, + -410.789428596095, + -377.5536373478154, + null, + -410.789428596095, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -410.789428596095, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -410.789428596095, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -414.98299577748975, + null, + -410.789428596095, + -416.01293761258756, + null, + -416.01293761258756, + -414.98299577748975, + null, + -410.789428596095, + -416.01293761258756, + null, + -416.01293761258756, + -414.98299577748975, + null, + -410.789428596095, + -416.01293761258756, + null, + -416.01293761258756, + -414.98299577748975, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.6017824139326, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.6017824139326, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.6017824139326, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -294.6941160136795, + null, + -452.12027234359056, + -420.16200293656857, + null, + -420.16200293656857, + -391.6044095798096, + null, + -420.16200293656857, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -452.12027234359056, + -420.16200293656857, + null, + -420.16200293656857, + -391.6044095798096, + null, + -420.16200293656857, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -452.12027234359056, + -420.16200293656857, + null, + -420.16200293656857, + -391.6044095798096, + null, + -420.16200293656857, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -452.12027234359056, + -420.16200293656857, + null, + -441.51142715738723, + -452.12027234359056, + null, + -435.5872518484344, + -452.12027234359056, + null, + -450.9820618720451, + -452.12027234359056, + null, + -452.12027234359056, + -391.6044095798096, + null, + -452.12027234359056, + -362.39815484415146, + null, + -452.12027234359056, + -420.16200293656857, + null, + -441.51142715738723, + -452.12027234359056, + null, + -435.5872518484344, + -452.12027234359056, + null, + -450.9820618720451, + -452.12027234359056, + null, + -452.12027234359056, + -391.6044095798096, + null, + -452.12027234359056, + -362.39815484415146, + null, + -452.12027234359056, + -420.16200293656857, + null, + -441.51142715738723, + -452.12027234359056, + null, + -435.5872518484344, + -452.12027234359056, + null, + -450.9820618720451, + -452.12027234359056, + null, + -452.12027234359056, + -391.6044095798096, + null, + -452.12027234359056, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -410.789428596095, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -416.01293761258756, + -420.16200293656857, + null, + -410.789428596095, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -416.01293761258756, + -420.16200293656857, + null, + -410.789428596095, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -435.5872518484344, + -441.51142715738723, + null, + -433.8645479975819, + -441.51142715738723, + null, + -444.7390333247924, + -441.51142715738723, + null, + -450.9820618720451, + -441.51142715738723, + null, + -441.51142715738723, + -452.12027234359056, + null, + -441.51142715738723, + -416.01293761258756, + null, + -435.5872518484344, + -441.51142715738723, + null, + -433.8645479975819, + -441.51142715738723, + null, + -444.7390333247924, + -441.51142715738723, + null, + -450.9820618720451, + -441.51142715738723, + null, + -441.51142715738723, + -452.12027234359056, + null, + -441.51142715738723, + -416.01293761258756, + null, + -435.5872518484344, + -441.51142715738723, + null, + -433.8645479975819, + -441.51142715738723, + null, + -444.7390333247924, + -441.51142715738723, + null, + -450.9820618720451, + -441.51142715738723, + null, + -441.51142715738723, + -452.12027234359056, + null, + -450.9820618720451, + -441.51142715738723, + null, + -435.5872518484344, + -450.9820618720451, + null, + -444.7390333247924, + -450.9820618720451, + null, + -450.9820618720451, + -452.12027234359056, + null, + -450.9820618720451, + -441.51142715738723, + null, + -435.5872518484344, + -450.9820618720451, + null, + -444.7390333247924, + -450.9820618720451, + null, + -450.9820618720451, + -452.12027234359056, + null, + -450.9820618720451, + -441.51142715738723, + null, + -435.5872518484344, + -450.9820618720451, + null, + -444.7390333247924, + -450.9820618720451, + null, + -450.9820618720451, + -452.12027234359056, + null, + -435.5872518484344, + -450.9820618720451, + null, + -435.5872518484344, + -452.12027234359056, + null, + -435.5872518484344, + -441.51142715738723, + null, + -435.5872518484344, + -410.789428596095, + null, + -435.5872518484344, + -380.4653368425429, + null, + -433.8645479975819, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -435.5872518484344, + -450.9820618720451, + null, + -435.5872518484344, + -452.12027234359056, + null, + -435.5872518484344, + -441.51142715738723, + null, + -435.5872518484344, + -410.789428596095, + null, + -435.5872518484344, + -380.4653368425429, + null, + -433.8645479975819, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -435.5872518484344, + -450.9820618720451, + null, + -435.5872518484344, + -452.12027234359056, + null, + -435.5872518484344, + -441.51142715738723, + null, + -435.5872518484344, + -410.789428596095, + null, + -435.5872518484344, + -380.4653368425429, + null, + -433.8645479975819, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -433.8645479975819, + -444.7390333247924, + null, + -444.7390333247924, + -450.9820618720451, + null, + -444.7390333247924, + -452.12027234359056, + null, + -444.7390333247924, + -441.51142715738723, + null, + -444.7390333247924, + -435.5872518484344, + null, + -433.8645479975819, + -444.7390333247924, + null, + -444.7390333247924, + -450.9820618720451, + null, + -444.7390333247924, + -452.12027234359056, + null, + -444.7390333247924, + -441.51142715738723, + null, + -444.7390333247924, + -435.5872518484344, + null, + -433.8645479975819, + -444.7390333247924, + null, + -444.7390333247924, + -450.9820618720451, + null, + -444.7390333247924, + -452.12027234359056, + null, + -444.7390333247924, + -441.51142715738723, + null, + -433.8645479975819, + -444.7390333247924, + null, + -433.8645479975819, + -441.51142715738723, + null, + -433.8645479975819, + -435.5872518484344, + null, + -433.8645479975819, + -346.27899564659725, + null, + -433.8645479975819, + -444.7390333247924, + null, + -433.8645479975819, + -441.51142715738723, + null, + -433.8645479975819, + -435.5872518484344, + null, + -433.8645479975819, + -346.27899564659725, + null, + -433.8645479975819, + -444.7390333247924, + null, + -433.8645479975819, + -441.51142715738723, + null, + -433.8645479975819, + -435.5872518484344, + null, + -433.8645479975819, + -346.27899564659725, + null, + -452.12027234359056, + -391.6044095798096, + null, + -391.6044095798096, + -331.75506596424225, + null, + -391.6044095798096, + -285.87542424599815, + null, + -391.6044095798096, + -362.39815484415146, + null, + -420.16200293656857, + -391.6044095798096, + null, + -452.12027234359056, + -391.6044095798096, + null, + -391.6044095798096, + -331.75506596424225, + null, + -391.6044095798096, + -285.87542424599815, + null, + -391.6044095798096, + -362.39815484415146, + null, + -420.16200293656857, + -391.6044095798096, + null, + -452.12027234359056, + -391.6044095798096, + null, + -391.6044095798096, + -331.75506596424225, + null, + -391.6044095798096, + -285.87542424599815, + null, + -391.6044095798096, + -362.39815484415146, + null, + -420.16200293656857, + -391.6044095798096, + null, + -391.6044095798096, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -362.39815484415146, + -240.03825990418605, + null, + -362.39815484415146, + -285.87542424599815, + null, + -420.16200293656857, + -362.39815484415146, + null, + -391.6044095798096, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -362.39815484415146, + -240.03825990418605, + null, + -362.39815484415146, + -285.87542424599815, + null, + -420.16200293656857, + -362.39815484415146, + null, + -391.6044095798096, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -362.39815484415146, + -240.03825990418605, + null, + -362.39815484415146, + -285.87542424599815, + null, + -420.16200293656857, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -391.6044095798096, + -331.75506596424225, + null, + -331.75506596424225, + -240.03825990418605, + null, + -331.75506596424225, + -202.03647820194982, + null, + -331.75506596424225, + -285.87542424599815, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.89731292502245, + -331.75506596424225, + null, + -362.39815484415146, + -331.75506596424225, + null, + -391.6044095798096, + -331.75506596424225, + null, + -331.75506596424225, + -240.03825990418605, + null, + -331.75506596424225, + -202.03647820194982, + null, + -331.75506596424225, + -285.87542424599815, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.89731292502245, + -331.75506596424225, + null, + -362.39815484415146, + -331.75506596424225, + null, + -391.6044095798096, + -331.75506596424225, + null, + -331.75506596424225, + -240.03825990418605, + null, + -331.75506596424225, + -202.03647820194982, + null, + -331.75506596424225, + -285.87542424599815, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.89731292502245, + -331.75506596424225, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.6818541431988, + -305.10537793394934, + null, + -328.6818541431988, + -290.73858167881536, + null, + -328.6818541431988, + -321.0815920608002, + null, + -328.6818541431988, + -315.14574865196255, + null, + -328.89731292502245, + -328.6818541431988, + null, + -332.5234357900165, + -328.6818541431988, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.6818541431988, + -305.10537793394934, + null, + -328.6818541431988, + -290.73858167881536, + null, + -328.6818541431988, + -321.0815920608002, + null, + -328.6818541431988, + -315.14574865196255, + null, + -328.89731292502245, + -328.6818541431988, + null, + -332.5234357900165, + -328.6818541431988, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.6818541431988, + -305.10537793394934, + null, + -328.6818541431988, + -290.73858167881536, + null, + -328.6818541431988, + -321.0815920608002, + null, + -328.6818541431988, + -315.14574865196255, + null, + -328.89731292502245, + -328.6818541431988, + null, + -332.5234357900165, + -328.6818541431988, + null, + -328.89731292502245, + -328.6818541431988, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.89731292502245, + -305.10537793394934, + null, + -328.89731292502245, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -332.5234357900165, + -328.89731292502245, + null, + -328.89731292502245, + -331.75506596424225, + null, + -328.89731292502245, + -328.6818541431988, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.89731292502245, + -305.10537793394934, + null, + -328.89731292502245, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -332.5234357900165, + -328.89731292502245, + null, + -328.89731292502245, + -331.75506596424225, + null, + -328.89731292502245, + -328.6818541431988, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.89731292502245, + -305.10537793394934, + null, + -328.89731292502245, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -332.5234357900165, + -328.89731292502245, + null, + -328.89731292502245, + -331.75506596424225, + null, + -332.5234357900165, + -328.89731292502245, + null, + -332.5234357900165, + -291.6017824139326, + null, + -337.6811093499919, + -332.5234357900165, + null, + -332.5234357900165, + -331.75506596424225, + null, + -332.5234357900165, + -328.6818541431988, + null, + -332.5234357900165, + -328.89731292502245, + null, + -332.5234357900165, + -291.6017824139326, + null, + -337.6811093499919, + -332.5234357900165, + null, + -332.5234357900165, + -331.75506596424225, + null, + -332.5234357900165, + -328.6818541431988, + null, + -332.5234357900165, + -328.89731292502245, + null, + -332.5234357900165, + -291.6017824139326, + null, + -337.6811093499919, + -332.5234357900165, + null, + -332.5234357900165, + -331.75506596424225, + null, + -332.5234357900165, + -328.6818541431988, + null, + -331.75506596424225, + -285.87542424599815, + null, + -391.6044095798096, + -285.87542424599815, + null, + -362.39815484415146, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -290.73858167881536, + -285.87542424599815, + null, + -331.75506596424225, + -285.87542424599815, + null, + -391.6044095798096, + -285.87542424599815, + null, + -362.39815484415146, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -290.73858167881536, + -285.87542424599815, + null, + -331.75506596424225, + -285.87542424599815, + null, + -391.6044095798096, + -285.87542424599815, + null, + -362.39815484415146, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -290.73858167881536, + -285.87542424599815, + null, + -328.6818541431988, + -321.0815920608002, + null, + -321.0815920608002, + -305.10537793394934, + null, + -321.0815920608002, + -290.73858167881536, + null, + -321.0815920608002, + -315.14574865196255, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.6818541431988, + -321.0815920608002, + null, + -321.0815920608002, + -305.10537793394934, + null, + -321.0815920608002, + -290.73858167881536, + null, + -321.0815920608002, + -315.14574865196255, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.6818541431988, + -321.0815920608002, + null, + -321.0815920608002, + -305.10537793394934, + null, + -321.0815920608002, + -290.73858167881536, + null, + -321.0815920608002, + -315.14574865196255, + null, + -328.89731292502245, + -321.0815920608002, + null, + -321.0815920608002, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -315.14574865196255, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -328.6818541431988, + -315.14574865196255, + null, + -321.0815920608002, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -315.14574865196255, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -328.6818541431988, + -315.14574865196255, + null, + -321.0815920608002, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -315.14574865196255, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -328.6818541431988, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -328.89731292502245, + -305.10537793394934, + null, + -321.0815920608002, + -305.10537793394934, + null, + -328.6818541431988, + -305.10537793394934, + null, + -305.10537793394934, + -290.73858167881536, + null, + -315.14574865196255, + -305.10537793394934, + null, + -328.89731292502245, + -305.10537793394934, + null, + -321.0815920608002, + -305.10537793394934, + null, + -328.6818541431988, + -305.10537793394934, + null, + -305.10537793394934, + -290.73858167881536, + null, + -315.14574865196255, + -305.10537793394934, + null, + -328.89731292502245, + -305.10537793394934, + null, + -321.0815920608002, + -305.10537793394934, + null, + -328.6818541431988, + -305.10537793394934, + null, + -305.10537793394934, + -290.73858167881536, + null, + -305.10537793394934, + -290.73858167881536, + null, + -328.6818541431988, + -290.73858167881536, + null, + -321.0815920608002, + -290.73858167881536, + null, + -328.89731292502245, + -290.73858167881536, + null, + -315.14574865196255, + -290.73858167881536, + null, + -290.73858167881536, + -291.6017824139326, + null, + -290.73858167881536, + -285.87542424599815, + null, + -305.10537793394934, + -290.73858167881536, + null, + -328.6818541431988, + -290.73858167881536, + null, + -321.0815920608002, + -290.73858167881536, + null, + -328.89731292502245, + -290.73858167881536, + null, + -315.14574865196255, + -290.73858167881536, + null, + -290.73858167881536, + -291.6017824139326, + null, + -290.73858167881536, + -285.87542424599815, + null, + -305.10537793394934, + -290.73858167881536, + null, + -328.6818541431988, + -290.73858167881536, + null, + -321.0815920608002, + -290.73858167881536, + null, + -328.89731292502245, + -290.73858167881536, + null, + -315.14574865196255, + -290.73858167881536, + null, + -290.73858167881536, + -291.6017824139326, + null, + -290.73858167881536, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -331.75506596424225, + -240.03825990418605, + null, + -240.03825990418605, + -174.92098531618865, + null, + -240.03825990418605, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -285.87542424599815, + -240.03825990418605, + null, + -331.75506596424225, + -240.03825990418605, + null, + -240.03825990418605, + -174.92098531618865, + null, + -240.03825990418605, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -285.87542424599815, + -240.03825990418605, + null, + -331.75506596424225, + -240.03825990418605, + null, + -240.03825990418605, + -174.92098531618865, + null, + -240.03825990418605, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -240.03825990418605, + -202.03647820194982, + null, + -202.03647820194982, + -174.92098531618865, + null, + -202.03647820194982, + -142.73729137682972, + null, + -206.47074325683008, + -202.03647820194982, + null, + -207.91219428651013, + -202.03647820194982, + null, + -223.9891910783257, + -202.03647820194982, + null, + -285.87542424599815, + -202.03647820194982, + null, + -240.03825990418605, + -202.03647820194982, + null, + -202.03647820194982, + -174.92098531618865, + null, + -202.03647820194982, + -142.73729137682972, + null, + -206.47074325683008, + -202.03647820194982, + null, + -207.91219428651013, + -202.03647820194982, + null, + -223.9891910783257, + -202.03647820194982, + null, + -285.87542424599815, + -202.03647820194982, + null, + -240.03825990418605, + -202.03647820194982, + null, + -202.03647820194982, + -174.92098531618865, + null, + -202.03647820194982, + -142.73729137682972, + null, + -206.47074325683008, + -202.03647820194982, + null, + -207.91219428651013, + -202.03647820194982, + null, + -223.9891910783257, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -223.9891910783257, + -202.03647820194982, + null, + -207.91219428651013, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -223.9891910783257, + -240.03825990418605, + null, + -223.9891910783257, + -202.03647820194982, + null, + -207.91219428651013, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -223.9891910783257, + -240.03825990418605, + null, + -223.9891910783257, + -202.03647820194982, + null, + -207.91219428651013, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -202.03647820194982, + null, + -207.91219428651013, + -237.81047974010292, + null, + -238.0383948252539, + -237.81047974010292, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -202.03647820194982, + null, + -207.91219428651013, + -237.81047974010292, + null, + -238.0383948252539, + -237.81047974010292, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -202.03647820194982, + null, + -207.91219428651013, + -237.81047974010292, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -199.76797181231274, + -206.47074325683008, + null, + -212.17488649242205, + -206.47074325683008, + null, + -206.47074325683008, + -238.0383948252539, + null, + -206.47074325683008, + -252.52439335286124, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -199.76797181231274, + -206.47074325683008, + null, + -212.17488649242205, + -206.47074325683008, + null, + -206.47074325683008, + -238.0383948252539, + null, + -206.47074325683008, + -252.52439335286124, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -199.76797181231274, + -206.47074325683008, + null, + -212.17488649242205, + -206.47074325683008, + null, + -206.47074325683008, + -238.0383948252539, + null, + -206.47074325683008, + -252.52439335286124, + null, + -206.47074325683008, + -207.91219428651013, + null, + -240.03825990418605, + -174.92098531618865, + null, + -174.92098531618865, + -79.89076048041814, + null, + -174.92098531618865, + -142.73729137682972, + null, + -150.4233281741907, + -174.92098531618865, + null, + -174.02001420596523, + -174.92098531618865, + null, + -202.03647820194982, + -174.92098531618865, + null, + -240.03825990418605, + -174.92098531618865, + null, + -174.92098531618865, + -79.89076048041814, + null, + -174.92098531618865, + -142.73729137682972, + null, + -150.4233281741907, + -174.92098531618865, + null, + -174.02001420596523, + -174.92098531618865, + null, + -202.03647820194982, + -174.92098531618865, + null, + -240.03825990418605, + -174.92098531618865, + null, + -174.92098531618865, + -79.89076048041814, + null, + -174.92098531618865, + -142.73729137682972, + null, + -150.4233281741907, + -174.92098531618865, + null, + -174.02001420596523, + -174.92098531618865, + null, + -202.03647820194982, + -174.92098531618865, + null, + -206.47074325683008, + -207.91219428651013, + null, + -207.91219428651013, + -237.81047974010292, + null, + -207.91219428651013, + -223.9891910783257, + null, + -207.91219428651013, + -202.03647820194982, + null, + -206.47074325683008, + -207.91219428651013, + null, + -207.91219428651013, + -237.81047974010292, + null, + -207.91219428651013, + -223.9891910783257, + null, + -207.91219428651013, + -202.03647820194982, + null, + -206.47074325683008, + -207.91219428651013, + null, + -207.91219428651013, + -237.81047974010292, + null, + -207.91219428651013, + -223.9891910783257, + null, + -207.91219428651013, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -174.02001420596523, + -174.92098531618865, + null, + -174.02001420596523, + -142.73729137682972, + null, + -150.4233281741907, + -174.02001420596523, + null, + -206.47074325683008, + -174.02001420596523, + null, + -174.02001420596523, + -174.92098531618865, + null, + -174.02001420596523, + -142.73729137682972, + null, + -150.4233281741907, + -174.02001420596523, + null, + -206.47074325683008, + -174.02001420596523, + null, + -174.02001420596523, + -174.92098531618865, + null, + -174.02001420596523, + -142.73729137682972, + null, + -150.4233281741907, + -174.02001420596523, + null, + -433.8645479975819, + -346.27899564659725, + null, + -346.27899564659725, + -345.98825179516734, + null, + -346.27899564659725, + -337.6811093499919, + null, + -346.27899564659725, + -270.65669262785707, + null, + -433.8645479975819, + -346.27899564659725, + null, + -346.27899564659725, + -345.98825179516734, + null, + -346.27899564659725, + -337.6811093499919, + null, + -346.27899564659725, + -270.65669262785707, + null, + -433.8645479975819, + -346.27899564659725, + null, + -346.27899564659725, + -345.98825179516734, + null, + -346.27899564659725, + -337.6811093499919, + null, + -346.27899564659725, + -270.65669262785707, + null, + -346.27899564659725, + -337.6811093499919, + null, + -345.98825179516734, + -337.6811093499919, + null, + -367.96143095711767, + -337.6811093499919, + null, + -358.782869111985, + -337.6811093499919, + null, + -410.789428596095, + -337.6811093499919, + null, + -380.4653368425429, + -337.6811093499919, + null, + -337.6811093499919, + -332.5234357900165, + null, + -337.6811093499919, + -291.8354629412489, + null, + -346.27899564659725, + -337.6811093499919, + null, + -345.98825179516734, + -337.6811093499919, + null, + -367.96143095711767, + -337.6811093499919, + null, + -358.782869111985, + -337.6811093499919, + null, + -410.789428596095, + -337.6811093499919, + null, + -380.4653368425429, + -337.6811093499919, + null, + -337.6811093499919, + -332.5234357900165, + null, + -337.6811093499919, + -291.8354629412489, + null, + -346.27899564659725, + -337.6811093499919, + null, + -345.98825179516734, + -337.6811093499919, + null, + -367.96143095711767, + -337.6811093499919, + null, + -358.782869111985, + -337.6811093499919, + null, + -410.789428596095, + -337.6811093499919, + null, + -380.4653368425429, + -337.6811093499919, + null, + -337.6811093499919, + -332.5234357900165, + null, + -337.6811093499919, + -291.8354629412489, + null, + -345.98825179516734, + -337.6811093499919, + null, + -346.27899564659725, + -345.98825179516734, + null, + -367.96143095711767, + -345.98825179516734, + null, + -345.98825179516734, + -337.6811093499919, + null, + -346.27899564659725, + -345.98825179516734, + null, + -367.96143095711767, + -345.98825179516734, + null, + -345.98825179516734, + -337.6811093499919, + null, + -346.27899564659725, + -345.98825179516734, + null, + -367.96143095711767, + -345.98825179516734, + null, + -410.789428596095, + -416.01293761258756, + null, + -410.789428596095, + -380.4653368425429, + null, + -410.789428596095, + -337.6811093499919, + null, + -410.789428596095, + -377.5536373478154, + null, + -435.5872518484344, + -410.789428596095, + null, + -410.789428596095, + -416.01293761258756, + null, + -410.789428596095, + -380.4653368425429, + null, + -410.789428596095, + -337.6811093499919, + null, + -410.789428596095, + -377.5536373478154, + null, + -435.5872518484344, + -410.789428596095, + null, + -410.789428596095, + -416.01293761258756, + null, + -410.789428596095, + -380.4653368425429, + null, + -410.789428596095, + -337.6811093499919, + null, + -410.789428596095, + -377.5536373478154, + null, + -435.5872518484344, + -410.789428596095, + null, + -410.789428596095, + -380.4653368425429, + null, + -380.4653368425429, + -291.8354629412489, + null, + -380.4653368425429, + -337.6811093499919, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -380.4653368425429, + null, + -377.5536373478154, + -380.4653368425429, + null, + -435.5872518484344, + -380.4653368425429, + null, + -410.789428596095, + -380.4653368425429, + null, + -380.4653368425429, + -291.8354629412489, + null, + -380.4653368425429, + -337.6811093499919, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -380.4653368425429, + null, + -377.5536373478154, + -380.4653368425429, + null, + -435.5872518484344, + -380.4653368425429, + null, + -410.789428596095, + -380.4653368425429, + null, + -380.4653368425429, + -291.8354629412489, + null, + -380.4653368425429, + -337.6811093499919, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -380.4653368425429, + null, + -377.5536373478154, + -380.4653368425429, + null, + -435.5872518484344, + -380.4653368425429, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -380.4653368425429, + null, + -358.782869111985, + -377.5536373478154, + null, + -367.96143095711767, + -377.5536373478154, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -380.4653368425429, + null, + -358.782869111985, + -377.5536373478154, + null, + -367.96143095711767, + -377.5536373478154, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -380.4653368425429, + null, + -358.782869111985, + -377.5536373478154, + null, + -367.96143095711767, + -377.5536373478154, + null, + -358.782869111985, + -337.6811093499919, + null, + -367.96143095711767, + -358.782869111985, + null, + -358.782869111985, + -377.5536373478154, + null, + -358.782869111985, + -380.4653368425429, + null, + -358.782869111985, + -337.6811093499919, + null, + -367.96143095711767, + -358.782869111985, + null, + -358.782869111985, + -377.5536373478154, + null, + -358.782869111985, + -380.4653368425429, + null, + -358.782869111985, + -337.6811093499919, + null, + -367.96143095711767, + -358.782869111985, + null, + -358.782869111985, + -377.5536373478154, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -377.5536373478154, + null, + -367.96143095711767, + -380.4653368425429, + null, + -367.96143095711767, + -358.782869111985, + null, + -367.96143095711767, + -337.6811093499919, + null, + -367.96143095711767, + -345.98825179516734, + null, + -367.96143095711767, + -377.5536373478154, + null, + -367.96143095711767, + -380.4653368425429, + null, + -367.96143095711767, + -358.782869111985, + null, + -367.96143095711767, + -337.6811093499919, + null, + -367.96143095711767, + -345.98825179516734, + null, + -367.96143095711767, + -377.5536373478154, + null, + -367.96143095711767, + -380.4653368425429, + null, + -367.96143095711767, + -358.782869111985, + null, + -367.96143095711767, + -337.6811093499919, + null, + -367.96143095711767, + -345.98825179516734, + null, + -332.5234357900165, + -291.6017824139326, + null, + -290.73858167881536, + -291.6017824139326, + null, + -291.6017824139326, + -252.52439335286124, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.8354629412489, + -291.6017824139326, + null, + -332.5234357900165, + -291.6017824139326, + null, + -290.73858167881536, + -291.6017824139326, + null, + -291.6017824139326, + -252.52439335286124, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.8354629412489, + -291.6017824139326, + null, + -332.5234357900165, + -291.6017824139326, + null, + -290.73858167881536, + -291.6017824139326, + null, + -291.6017824139326, + -252.52439335286124, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.8354629412489, + -291.6017824139326, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -252.52439335286124, + null, + -279.02316877523407, + -238.0383948252539, + null, + -291.8354629412489, + -279.02316877523407, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -252.52439335286124, + null, + -279.02316877523407, + -238.0383948252539, + null, + -291.8354629412489, + -279.02316877523407, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -252.52439335286124, + null, + -279.02316877523407, + -238.0383948252539, + null, + -291.8354629412489, + -279.02316877523407, + null, + -337.6811093499919, + -291.8354629412489, + null, + -291.8354629412489, + -291.6017824139326, + null, + -291.8354629412489, + -279.02316877523407, + null, + -271.96624983312864, + -291.8354629412489, + null, + -337.6811093499919, + -291.8354629412489, + null, + -291.8354629412489, + -291.6017824139326, + null, + -291.8354629412489, + -279.02316877523407, + null, + -271.96624983312864, + -291.8354629412489, + null, + -337.6811093499919, + -291.8354629412489, + null, + -291.8354629412489, + -291.6017824139326, + null, + -291.8354629412489, + -279.02316877523407, + null, + -271.96624983312864, + -291.8354629412489, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -238.0383948252539, + null, + -199.76797181231274, + -238.0383948252539, + null, + -279.02316877523407, + -238.0383948252539, + null, + -238.0383948252539, + -252.52439335286124, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -238.0383948252539, + null, + -199.76797181231274, + -238.0383948252539, + null, + -279.02316877523407, + -238.0383948252539, + null, + -238.0383948252539, + -252.52439335286124, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -238.0383948252539, + null, + -199.76797181231274, + -238.0383948252539, + null, + -279.02316877523407, + -238.0383948252539, + null, + -238.0383948252539, + -252.52439335286124, + null, + -279.02316877523407, + -252.52439335286124, + null, + -291.6017824139326, + -252.52439335286124, + null, + -206.47074325683008, + -252.52439335286124, + null, + -238.0383948252539, + -252.52439335286124, + null, + -258.1977054890761, + -252.52439335286124, + null, + -279.02316877523407, + -252.52439335286124, + null, + -291.6017824139326, + -252.52439335286124, + null, + -206.47074325683008, + -252.52439335286124, + null, + -238.0383948252539, + -252.52439335286124, + null, + -258.1977054890761, + -252.52439335286124, + null, + -279.02316877523407, + -252.52439335286124, + null, + -291.6017824139326, + -252.52439335286124, + null, + -206.47074325683008, + -252.52439335286124, + null, + -238.0383948252539, + -252.52439335286124, + null, + -258.1977054890761, + -252.52439335286124, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -199.76797181231274, + null, + -213.75685485376738, + -212.17488649242205, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -212.17488649242205, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -199.76797181231274, + null, + -213.75685485376738, + -212.17488649242205, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -212.17488649242205, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -199.76797181231274, + null, + -213.75685485376738, + -212.17488649242205, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -212.17488649242205, + null, + -199.76797181231274, + -238.0383948252539, + null, + -199.76797181231274, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -212.17488649242205, + -199.76797181231274, + null, + -199.76797181231274, + -238.0383948252539, + null, + -199.76797181231274, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -212.17488649242205, + -199.76797181231274, + null, + -199.76797181231274, + -238.0383948252539, + null, + -199.76797181231274, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -212.17488649242205, + -199.76797181231274, + null, + -346.27899564659725, + -270.65669262785707, + null, + -270.65669262785707, + -271.96624983312864, + null, + -270.65669262785707, + -258.1977054890761, + null, + -270.65669262785707, + -213.75685485376738, + null, + -346.27899564659725, + -270.65669262785707, + null, + -270.65669262785707, + -271.96624983312864, + null, + -270.65669262785707, + -258.1977054890761, + null, + -270.65669262785707, + -213.75685485376738, + null, + -346.27899564659725, + -270.65669262785707, + null, + -270.65669262785707, + -271.96624983312864, + null, + -270.65669262785707, + -258.1977054890761, + null, + -270.65669262785707, + -213.75685485376738, + null, + -270.65669262785707, + -213.75685485376738, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -213.75685485376738, + -159.61795976164115, + null, + -270.65669262785707, + -213.75685485376738, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -213.75685485376738, + -159.61795976164115, + null, + -270.65669262785707, + -213.75685485376738, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -213.75685485376738, + -159.61795976164115, + null, + -270.65669262785707, + -271.96624983312864, + null, + -271.96624983312864, + -291.8354629412489, + null, + -258.1977054890761, + -271.96624983312864, + null, + -271.96624983312864, + -212.17488649242205, + null, + -270.65669262785707, + -271.96624983312864, + null, + -271.96624983312864, + -291.8354629412489, + null, + -258.1977054890761, + -271.96624983312864, + null, + -271.96624983312864, + -212.17488649242205, + null, + -270.65669262785707, + -271.96624983312864, + null, + -271.96624983312864, + -291.8354629412489, + null, + -258.1977054890761, + -271.96624983312864, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -271.96624983312864, + null, + -258.1977054890761, + -252.52439335286124, + null, + -258.1977054890761, + -212.17488649242205, + null, + -270.65669262785707, + -258.1977054890761, + null, + -258.1977054890761, + -271.96624983312864, + null, + -258.1977054890761, + -252.52439335286124, + null, + -258.1977054890761, + -212.17488649242205, + null, + -270.65669262785707, + -258.1977054890761, + null, + -258.1977054890761, + -271.96624983312864, + null, + -258.1977054890761, + -252.52439335286124, + null, + -258.1977054890761, + -212.17488649242205, + null, + -270.65669262785707, + -258.1977054890761, + null, + -202.03647820194982, + -142.73729137682972, + null, + -174.92098531618865, + -142.73729137682972, + null, + -142.73729137682972, + -79.89076048041814, + null, + -144.79175755935458, + -142.73729137682972, + null, + -150.4233281741907, + -142.73729137682972, + null, + -174.02001420596523, + -142.73729137682972, + null, + -202.03647820194982, + -142.73729137682972, + null, + -174.92098531618865, + -142.73729137682972, + null, + -142.73729137682972, + -79.89076048041814, + null, + -144.79175755935458, + -142.73729137682972, + null, + -150.4233281741907, + -142.73729137682972, + null, + -174.02001420596523, + -142.73729137682972, + null, + -202.03647820194982, + -142.73729137682972, + null, + -174.92098531618865, + -142.73729137682972, + null, + -142.73729137682972, + -79.89076048041814, + null, + -144.79175755935458, + -142.73729137682972, + null, + -150.4233281741907, + -142.73729137682972, + null, + -174.02001420596523, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -144.79175755935458, + -142.73729137682972, + null, + -153.84377298142158, + -144.79175755935458, + null, + -161.1394666625376, + -144.79175755935458, + null, + -151.99198281488697, + -144.79175755935458, + null, + -144.79175755935458, + -150.4233281741907, + null, + -144.79175755935458, + -142.73729137682972, + null, + -153.84377298142158, + -144.79175755935458, + null, + -161.1394666625376, + -144.79175755935458, + null, + -151.99198281488697, + -144.79175755935458, + null, + -144.79175755935458, + -150.4233281741907, + null, + -144.79175755935458, + -142.73729137682972, + null, + -153.84377298142158, + -144.79175755935458, + null, + -161.1394666625376, + -144.79175755935458, + null, + -151.99198281488697, + -144.79175755935458, + null, + -150.4233281741907, + -174.02001420596523, + null, + -150.4233281741907, + -174.92098531618865, + null, + -150.4233281741907, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -150.4233281741907, + -174.02001420596523, + null, + -150.4233281741907, + -174.92098531618865, + null, + -150.4233281741907, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -150.4233281741907, + -174.02001420596523, + null, + -150.4233281741907, + -174.92098531618865, + null, + -150.4233281741907, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -144.79175755935458, + null, + -151.99198281488697, + -90.06966055105865, + null, + -153.84377298142158, + -151.99198281488697, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -144.79175755935458, + null, + -151.99198281488697, + -90.06966055105865, + null, + -153.84377298142158, + -151.99198281488697, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -144.79175755935458, + null, + -151.99198281488697, + -90.06966055105865, + null, + -153.84377298142158, + -151.99198281488697, + null, + -161.1394666625376, + -151.99198281488697, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -144.79175755935458, + null, + -159.61795976164115, + -153.84377298142158, + null, + -161.1394666625376, + -153.84377298142158, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -144.79175755935458, + null, + -159.61795976164115, + -153.84377298142158, + null, + -161.1394666625376, + -153.84377298142158, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -144.79175755935458, + null, + -159.61795976164115, + -153.84377298142158, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -91.80684565358028, + null, + -159.61795976164115, + -161.1394666625376, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -91.80684565358028, + null, + -159.61795976164115, + -161.1394666625376, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -91.80684565358028, + null, + -159.61795976164115, + -161.1394666625376, + null, + -213.75685485376738, + -159.61795976164115, + null, + -159.61795976164115, + -161.1394666625376, + null, + -159.61795976164115, + -153.84377298142158, + null, + -159.61795976164115, + -94.15336530504511, + null, + -213.75685485376738, + -159.61795976164115, + null, + -159.61795976164115, + -161.1394666625376, + null, + -159.61795976164115, + -153.84377298142158, + null, + -159.61795976164115, + -94.15336530504511, + null, + -213.75685485376738, + -159.61795976164115, + null, + -159.61795976164115, + -161.1394666625376, + null, + -159.61795976164115, + -153.84377298142158, + null, + -159.61795976164115, + -94.15336530504511, + null, + -142.73729137682972, + -79.89076048041814, + null, + -174.92098531618865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -79.89076048041814, + null, + -90.06966055105865, + -79.89076048041814, + null, + -142.73729137682972, + -79.89076048041814, + null, + -174.92098531618865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -79.89076048041814, + null, + -90.06966055105865, + -79.89076048041814, + null, + -142.73729137682972, + -79.89076048041814, + null, + -174.92098531618865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -79.89076048041814, + null, + -90.06966055105865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -71.98755381403251, + null, + -91.80684565358028, + -71.98755381403251, + null, + -90.06966055105865, + -71.98755381403251, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -71.98755381403251, + null, + -91.80684565358028, + -71.98755381403251, + null, + -90.06966055105865, + -71.98755381403251, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -71.98755381403251, + null, + -91.80684565358028, + -71.98755381403251, + null, + -90.06966055105865, + -71.98755381403251, + null, + -90.06966055105865, + -79.89076048041814, + null, + -90.06966055105865, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -151.99198281488697, + -90.06966055105865, + null, + -90.06966055105865, + -79.89076048041814, + null, + -90.06966055105865, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -151.99198281488697, + -90.06966055105865, + null, + -90.06966055105865, + -79.89076048041814, + null, + -90.06966055105865, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -151.99198281488697, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -91.80684565358028, + -71.98755381403251, + null, + -91.80684565358028, + -77.56566344042652, + null, + -94.15336530504511, + -91.80684565358028, + null, + -161.1394666625376, + -91.80684565358028, + null, + -91.80684565358028, + -90.06966055105865, + null, + -91.80684565358028, + -71.98755381403251, + null, + -91.80684565358028, + -77.56566344042652, + null, + -94.15336530504511, + -91.80684565358028, + null, + -161.1394666625376, + -91.80684565358028, + null, + -91.80684565358028, + -90.06966055105865, + null, + -91.80684565358028, + -71.98755381403251, + null, + -91.80684565358028, + -77.56566344042652, + null, + -94.15336530504511, + -91.80684565358028, + null, + -161.1394666625376, + -91.80684565358028, + null, + -77.56566344042652, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -94.15336530504511, + -77.56566344042652, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -94.15336530504511, + -77.56566344042652, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -94.15336530504511, + -77.56566344042652, + null, + -91.80684565358028, + -77.56566344042652, + null, + -159.61795976164115, + -94.15336530504511, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -77.56566344042652, + null, + -159.61795976164115, + -94.15336530504511, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -77.56566344042652, + null, + -159.61795976164115, + -94.15336530504511, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -77.56566344042652, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -163.74360696682288, + null, + -153.84377298142158, + -165.5000997867287, + null, + -153.84377298142158, + -156.06351554190206, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -163.74360696682288, + null, + -153.84377298142158, + -165.5000997867287, + null, + -153.84377298142158, + -156.06351554190206, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -163.74360696682288, + null, + -153.84377298142158, + -165.5000997867287, + null, + -153.84377298142158, + -156.06351554190206, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -156.06351554190206, + null, + -161.1394666625376, + -163.74360696682288, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -156.06351554190206, + null, + -161.1394666625376, + -163.74360696682288, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -156.06351554190206, + null, + -161.1394666625376, + -163.74360696682288, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -163.74360696682288, + null, + -151.99198281488697, + -165.5000997867287, + null, + -151.99198281488697, + -156.06351554190206, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -163.74360696682288, + null, + -151.99198281488697, + -165.5000997867287, + null, + -151.99198281488697, + -156.06351554190206, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -163.74360696682288, + null, + -151.99198281488697, + -165.5000997867287, + null, + -151.99198281488697, + -156.06351554190206, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -91.80684565358028, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -91.80684565358028, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -91.80684565358028, + -96.60213751234593, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -96.60213751234593, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -96.60213751234593, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -96.60213751234593, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -201.6396503647304, + null, + -212.17488649242205, + -202.11793201838967, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -201.6396503647304, + null, + -212.17488649242205, + -202.11793201838967, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -201.6396503647304, + null, + -212.17488649242205, + -202.11793201838967, + null, + -199.76797181231274, + -206.47074325683008, + null, + -199.76797181231274, + -201.6396503647304, + null, + -199.76797181231274, + -202.11793201838967, + null, + -199.76797181231274, + -206.47074325683008, + null, + -199.76797181231274, + -201.6396503647304, + null, + -199.76797181231274, + -202.11793201838967, + null, + -199.76797181231274, + -206.47074325683008, + null, + -199.76797181231274, + -201.6396503647304, + null, + -199.76797181231274, + -202.11793201838967, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -202.11793201838967, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -202.11793201838967, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -202.11793201838967, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -178.27339441800706, + null, + -206.47074325683008, + -201.6396503647304, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -178.27339441800706, + null, + -206.47074325683008, + -201.6396503647304, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -178.27339441800706, + null, + -206.47074325683008, + -201.6396503647304, + null, + -207.91219428651013, + -237.81047974010292, + null, + -237.81047974010292, + -178.27339441800706, + null, + -207.91219428651013, + -237.81047974010292, + null, + -237.81047974010292, + -178.27339441800706, + null, + -207.91219428651013, + -237.81047974010292, + null, + -237.81047974010292, + -178.27339441800706, + null, + -410.789428596095, + -377.5536373478154, + null, + -410.789428596095, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -410.789428596095, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -410.789428596095, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -414.98299577748975, + null, + -410.789428596095, + -416.01293761258756, + null, + -416.01293761258756, + -414.98299577748975, + null, + -410.789428596095, + -416.01293761258756, + null, + -416.01293761258756, + -414.98299577748975, + null, + -410.789428596095, + -416.01293761258756, + null, + -416.01293761258756, + -414.98299577748975, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.6017824139326, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.6017824139326, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.6017824139326, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -294.6941160136795, + null, + -452.12027234359056, + -420.16200293656857, + null, + -420.16200293656857, + -391.6044095798096, + null, + -420.16200293656857, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -452.12027234359056, + -420.16200293656857, + null, + -420.16200293656857, + -391.6044095798096, + null, + -420.16200293656857, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -452.12027234359056, + -420.16200293656857, + null, + -420.16200293656857, + -391.6044095798096, + null, + -420.16200293656857, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -452.12027234359056, + -420.16200293656857, + null, + -441.51142715738723, + -452.12027234359056, + null, + -435.5872518484344, + -452.12027234359056, + null, + -450.9820618720451, + -452.12027234359056, + null, + -452.12027234359056, + -391.6044095798096, + null, + -452.12027234359056, + -362.39815484415146, + null, + -452.12027234359056, + -420.16200293656857, + null, + -441.51142715738723, + -452.12027234359056, + null, + -435.5872518484344, + -452.12027234359056, + null, + -450.9820618720451, + -452.12027234359056, + null, + -452.12027234359056, + -391.6044095798096, + null, + -452.12027234359056, + -362.39815484415146, + null, + -452.12027234359056, + -420.16200293656857, + null, + -441.51142715738723, + -452.12027234359056, + null, + -435.5872518484344, + -452.12027234359056, + null, + -450.9820618720451, + -452.12027234359056, + null, + -452.12027234359056, + -391.6044095798096, + null, + -452.12027234359056, + -362.39815484415146, + null, + -416.01293761258756, + -420.16200293656857, + null, + -410.789428596095, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -416.01293761258756, + -420.16200293656857, + null, + -410.789428596095, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -416.01293761258756, + -420.16200293656857, + null, + -410.789428596095, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -441.51142715738723, + -416.01293761258756, + null, + -435.5872518484344, + -441.51142715738723, + null, + -433.8645479975819, + -441.51142715738723, + null, + -444.7390333247924, + -441.51142715738723, + null, + -450.9820618720451, + -441.51142715738723, + null, + -441.51142715738723, + -452.12027234359056, + null, + -441.51142715738723, + -416.01293761258756, + null, + -435.5872518484344, + -441.51142715738723, + null, + -433.8645479975819, + -441.51142715738723, + null, + -444.7390333247924, + -441.51142715738723, + null, + -450.9820618720451, + -441.51142715738723, + null, + -441.51142715738723, + -452.12027234359056, + null, + -441.51142715738723, + -416.01293761258756, + null, + -435.5872518484344, + -441.51142715738723, + null, + -433.8645479975819, + -441.51142715738723, + null, + -444.7390333247924, + -441.51142715738723, + null, + -450.9820618720451, + -441.51142715738723, + null, + -441.51142715738723, + -452.12027234359056, + null, + -450.9820618720451, + -441.51142715738723, + null, + -435.5872518484344, + -450.9820618720451, + null, + -444.7390333247924, + -450.9820618720451, + null, + -450.9820618720451, + -452.12027234359056, + null, + -450.9820618720451, + -441.51142715738723, + null, + -435.5872518484344, + -450.9820618720451, + null, + -444.7390333247924, + -450.9820618720451, + null, + -450.9820618720451, + -452.12027234359056, + null, + -450.9820618720451, + -441.51142715738723, + null, + -435.5872518484344, + -450.9820618720451, + null, + -444.7390333247924, + -450.9820618720451, + null, + -450.9820618720451, + -452.12027234359056, + null, + -435.5872518484344, + -450.9820618720451, + null, + -435.5872518484344, + -452.12027234359056, + null, + -435.5872518484344, + -441.51142715738723, + null, + -435.5872518484344, + -410.789428596095, + null, + -435.5872518484344, + -380.4653368425429, + null, + -433.8645479975819, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -435.5872518484344, + -450.9820618720451, + null, + -435.5872518484344, + -452.12027234359056, + null, + -435.5872518484344, + -441.51142715738723, + null, + -435.5872518484344, + -410.789428596095, + null, + -435.5872518484344, + -380.4653368425429, + null, + -433.8645479975819, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -435.5872518484344, + -450.9820618720451, + null, + -435.5872518484344, + -452.12027234359056, + null, + -435.5872518484344, + -441.51142715738723, + null, + -435.5872518484344, + -410.789428596095, + null, + -435.5872518484344, + -380.4653368425429, + null, + -433.8645479975819, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -444.7390333247924, + -435.5872518484344, + null, + -433.8645479975819, + -444.7390333247924, + null, + -444.7390333247924, + -450.9820618720451, + null, + -444.7390333247924, + -452.12027234359056, + null, + -444.7390333247924, + -441.51142715738723, + null, + -444.7390333247924, + -435.5872518484344, + null, + -433.8645479975819, + -444.7390333247924, + null, + -444.7390333247924, + -450.9820618720451, + null, + -444.7390333247924, + -452.12027234359056, + null, + -444.7390333247924, + -441.51142715738723, + null, + -444.7390333247924, + -435.5872518484344, + null, + -433.8645479975819, + -444.7390333247924, + null, + -444.7390333247924, + -450.9820618720451, + null, + -444.7390333247924, + -452.12027234359056, + null, + -444.7390333247924, + -441.51142715738723, + null, + -433.8645479975819, + -444.7390333247924, + null, + -433.8645479975819, + -441.51142715738723, + null, + -433.8645479975819, + -435.5872518484344, + null, + -433.8645479975819, + -346.27899564659725, + null, + -433.8645479975819, + -444.7390333247924, + null, + -433.8645479975819, + -441.51142715738723, + null, + -433.8645479975819, + -435.5872518484344, + null, + -433.8645479975819, + -346.27899564659725, + null, + -433.8645479975819, + -444.7390333247924, + null, + -433.8645479975819, + -441.51142715738723, + null, + -433.8645479975819, + -435.5872518484344, + null, + -433.8645479975819, + -346.27899564659725, + null, + -452.12027234359056, + -391.6044095798096, + null, + -391.6044095798096, + -331.75506596424225, + null, + -391.6044095798096, + -285.87542424599815, + null, + -391.6044095798096, + -362.39815484415146, + null, + -420.16200293656857, + -391.6044095798096, + null, + -452.12027234359056, + -391.6044095798096, + null, + -391.6044095798096, + -331.75506596424225, + null, + -391.6044095798096, + -285.87542424599815, + null, + -391.6044095798096, + -362.39815484415146, + null, + -420.16200293656857, + -391.6044095798096, + null, + -452.12027234359056, + -391.6044095798096, + null, + -391.6044095798096, + -331.75506596424225, + null, + -391.6044095798096, + -285.87542424599815, + null, + -391.6044095798096, + -362.39815484415146, + null, + -420.16200293656857, + -391.6044095798096, + null, + -391.6044095798096, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -362.39815484415146, + -240.03825990418605, + null, + -362.39815484415146, + -285.87542424599815, + null, + -420.16200293656857, + -362.39815484415146, + null, + -391.6044095798096, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -362.39815484415146, + -240.03825990418605, + null, + -362.39815484415146, + -285.87542424599815, + null, + -420.16200293656857, + -362.39815484415146, + null, + -391.6044095798096, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -362.39815484415146, + -240.03825990418605, + null, + -362.39815484415146, + -285.87542424599815, + null, + -420.16200293656857, + -362.39815484415146, + null, + -362.39815484415146, + -331.75506596424225, + null, + -391.6044095798096, + -331.75506596424225, + null, + -331.75506596424225, + -240.03825990418605, + null, + -331.75506596424225, + -202.03647820194982, + null, + -331.75506596424225, + -285.87542424599815, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.89731292502245, + -331.75506596424225, + null, + -362.39815484415146, + -331.75506596424225, + null, + -391.6044095798096, + -331.75506596424225, + null, + -331.75506596424225, + -240.03825990418605, + null, + -331.75506596424225, + -202.03647820194982, + null, + -331.75506596424225, + -285.87542424599815, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.89731292502245, + -331.75506596424225, + null, + -362.39815484415146, + -331.75506596424225, + null, + -391.6044095798096, + -331.75506596424225, + null, + -331.75506596424225, + -240.03825990418605, + null, + -331.75506596424225, + -202.03647820194982, + null, + -331.75506596424225, + -285.87542424599815, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.89731292502245, + -331.75506596424225, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.6818541431988, + -305.10537793394934, + null, + -328.6818541431988, + -290.73858167881536, + null, + -328.6818541431988, + -321.0815920608002, + null, + -328.6818541431988, + -315.14574865196255, + null, + -328.89731292502245, + -328.6818541431988, + null, + -332.5234357900165, + -328.6818541431988, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.6818541431988, + -305.10537793394934, + null, + -328.6818541431988, + -290.73858167881536, + null, + -328.6818541431988, + -321.0815920608002, + null, + -328.6818541431988, + -315.14574865196255, + null, + -328.89731292502245, + -328.6818541431988, + null, + -332.5234357900165, + -328.6818541431988, + null, + -328.6818541431988, + -331.75506596424225, + null, + -328.6818541431988, + -305.10537793394934, + null, + -328.6818541431988, + -290.73858167881536, + null, + -328.6818541431988, + -321.0815920608002, + null, + -328.6818541431988, + -315.14574865196255, + null, + -328.89731292502245, + -328.6818541431988, + null, + -332.5234357900165, + -328.6818541431988, + null, + -328.89731292502245, + -328.6818541431988, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.89731292502245, + -305.10537793394934, + null, + -328.89731292502245, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -332.5234357900165, + -328.89731292502245, + null, + -328.89731292502245, + -331.75506596424225, + null, + -328.89731292502245, + -328.6818541431988, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.89731292502245, + -305.10537793394934, + null, + -328.89731292502245, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -332.5234357900165, + -328.89731292502245, + null, + -328.89731292502245, + -331.75506596424225, + null, + -328.89731292502245, + -328.6818541431988, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.89731292502245, + -305.10537793394934, + null, + -328.89731292502245, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -332.5234357900165, + -328.89731292502245, + null, + -328.89731292502245, + -331.75506596424225, + null, + -332.5234357900165, + -328.89731292502245, + null, + -332.5234357900165, + -291.6017824139326, + null, + -337.6811093499919, + -332.5234357900165, + null, + -332.5234357900165, + -331.75506596424225, + null, + -332.5234357900165, + -328.6818541431988, + null, + -332.5234357900165, + -328.89731292502245, + null, + -332.5234357900165, + -291.6017824139326, + null, + -337.6811093499919, + -332.5234357900165, + null, + -332.5234357900165, + -331.75506596424225, + null, + -332.5234357900165, + -328.6818541431988, + null, + -332.5234357900165, + -328.89731292502245, + null, + -332.5234357900165, + -291.6017824139326, + null, + -337.6811093499919, + -332.5234357900165, + null, + -332.5234357900165, + -331.75506596424225, + null, + -332.5234357900165, + -328.6818541431988, + null, + -331.75506596424225, + -285.87542424599815, + null, + -391.6044095798096, + -285.87542424599815, + null, + -362.39815484415146, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -290.73858167881536, + -285.87542424599815, + null, + -331.75506596424225, + -285.87542424599815, + null, + -391.6044095798096, + -285.87542424599815, + null, + -362.39815484415146, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -290.73858167881536, + -285.87542424599815, + null, + -331.75506596424225, + -285.87542424599815, + null, + -391.6044095798096, + -285.87542424599815, + null, + -362.39815484415146, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -290.73858167881536, + -285.87542424599815, + null, + -328.6818541431988, + -321.0815920608002, + null, + -321.0815920608002, + -305.10537793394934, + null, + -321.0815920608002, + -290.73858167881536, + null, + -321.0815920608002, + -315.14574865196255, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.6818541431988, + -321.0815920608002, + null, + -321.0815920608002, + -305.10537793394934, + null, + -321.0815920608002, + -290.73858167881536, + null, + -321.0815920608002, + -315.14574865196255, + null, + -328.89731292502245, + -321.0815920608002, + null, + -328.6818541431988, + -321.0815920608002, + null, + -321.0815920608002, + -305.10537793394934, + null, + -321.0815920608002, + -290.73858167881536, + null, + -321.0815920608002, + -315.14574865196255, + null, + -328.89731292502245, + -321.0815920608002, + null, + -321.0815920608002, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -315.14574865196255, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -328.6818541431988, + -315.14574865196255, + null, + -321.0815920608002, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -315.14574865196255, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -328.6818541431988, + -315.14574865196255, + null, + -321.0815920608002, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -315.14574865196255, + -290.73858167881536, + null, + -328.89731292502245, + -315.14574865196255, + null, + -328.6818541431988, + -315.14574865196255, + null, + -315.14574865196255, + -305.10537793394934, + null, + -328.89731292502245, + -305.10537793394934, + null, + -321.0815920608002, + -305.10537793394934, + null, + -328.6818541431988, + -305.10537793394934, + null, + -305.10537793394934, + -290.73858167881536, + null, + -315.14574865196255, + -305.10537793394934, + null, + -328.89731292502245, + -305.10537793394934, + null, + -321.0815920608002, + -305.10537793394934, + null, + -328.6818541431988, + -305.10537793394934, + null, + -305.10537793394934, + -290.73858167881536, + null, + -315.14574865196255, + -305.10537793394934, + null, + -328.89731292502245, + -305.10537793394934, + null, + -321.0815920608002, + -305.10537793394934, + null, + -328.6818541431988, + -305.10537793394934, + null, + -305.10537793394934, + -290.73858167881536, + null, + -305.10537793394934, + -290.73858167881536, + null, + -328.6818541431988, + -290.73858167881536, + null, + -321.0815920608002, + -290.73858167881536, + null, + -328.89731292502245, + -290.73858167881536, + null, + -315.14574865196255, + -290.73858167881536, + null, + -290.73858167881536, + -291.6017824139326, + null, + -290.73858167881536, + -285.87542424599815, + null, + -305.10537793394934, + -290.73858167881536, + null, + -328.6818541431988, + -290.73858167881536, + null, + -321.0815920608002, + -290.73858167881536, + null, + -328.89731292502245, + -290.73858167881536, + null, + -315.14574865196255, + -290.73858167881536, + null, + -290.73858167881536, + -291.6017824139326, + null, + -290.73858167881536, + -285.87542424599815, + null, + -305.10537793394934, + -290.73858167881536, + null, + -328.6818541431988, + -290.73858167881536, + null, + -321.0815920608002, + -290.73858167881536, + null, + -328.89731292502245, + -290.73858167881536, + null, + -315.14574865196255, + -290.73858167881536, + null, + -290.73858167881536, + -291.6017824139326, + null, + -290.73858167881536, + -285.87542424599815, + null, + -285.87542424599815, + -240.03825990418605, + null, + -331.75506596424225, + -240.03825990418605, + null, + -240.03825990418605, + -174.92098531618865, + null, + -240.03825990418605, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -285.87542424599815, + -240.03825990418605, + null, + -331.75506596424225, + -240.03825990418605, + null, + -240.03825990418605, + -174.92098531618865, + null, + -240.03825990418605, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -285.87542424599815, + -240.03825990418605, + null, + -331.75506596424225, + -240.03825990418605, + null, + -240.03825990418605, + -174.92098531618865, + null, + -240.03825990418605, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -285.87542424599815, + -202.03647820194982, + null, + -240.03825990418605, + -202.03647820194982, + null, + -202.03647820194982, + -174.92098531618865, + null, + -202.03647820194982, + -142.73729137682972, + null, + -206.47074325683008, + -202.03647820194982, + null, + -207.91219428651013, + -202.03647820194982, + null, + -223.9891910783257, + -202.03647820194982, + null, + -285.87542424599815, + -202.03647820194982, + null, + -240.03825990418605, + -202.03647820194982, + null, + -202.03647820194982, + -174.92098531618865, + null, + -202.03647820194982, + -142.73729137682972, + null, + -206.47074325683008, + -202.03647820194982, + null, + -207.91219428651013, + -202.03647820194982, + null, + -223.9891910783257, + -202.03647820194982, + null, + -285.87542424599815, + -202.03647820194982, + null, + -240.03825990418605, + -202.03647820194982, + null, + -202.03647820194982, + -174.92098531618865, + null, + -202.03647820194982, + -142.73729137682972, + null, + -206.47074325683008, + -202.03647820194982, + null, + -207.91219428651013, + -202.03647820194982, + null, + -223.9891910783257, + -202.03647820194982, + null, + -223.9891910783257, + -240.03825990418605, + null, + -223.9891910783257, + -202.03647820194982, + null, + -207.91219428651013, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -223.9891910783257, + -240.03825990418605, + null, + -223.9891910783257, + -202.03647820194982, + null, + -207.91219428651013, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -223.9891910783257, + -240.03825990418605, + null, + -223.9891910783257, + -202.03647820194982, + null, + -207.91219428651013, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -202.03647820194982, + null, + -207.91219428651013, + -237.81047974010292, + null, + -238.0383948252539, + -237.81047974010292, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -202.03647820194982, + null, + -207.91219428651013, + -237.81047974010292, + null, + -238.0383948252539, + -237.81047974010292, + null, + -237.81047974010292, + -223.9891910783257, + null, + -237.81047974010292, + -202.03647820194982, + null, + -207.91219428651013, + -237.81047974010292, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -199.76797181231274, + -206.47074325683008, + null, + -212.17488649242205, + -206.47074325683008, + null, + -206.47074325683008, + -238.0383948252539, + null, + -206.47074325683008, + -252.52439335286124, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -199.76797181231274, + -206.47074325683008, + null, + -212.17488649242205, + -206.47074325683008, + null, + -206.47074325683008, + -238.0383948252539, + null, + -206.47074325683008, + -252.52439335286124, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -199.76797181231274, + -206.47074325683008, + null, + -212.17488649242205, + -206.47074325683008, + null, + -206.47074325683008, + -238.0383948252539, + null, + -206.47074325683008, + -252.52439335286124, + null, + -206.47074325683008, + -207.91219428651013, + null, + -240.03825990418605, + -174.92098531618865, + null, + -174.92098531618865, + -79.89076048041814, + null, + -174.92098531618865, + -142.73729137682972, + null, + -150.4233281741907, + -174.92098531618865, + null, + -174.02001420596523, + -174.92098531618865, + null, + -202.03647820194982, + -174.92098531618865, + null, + -240.03825990418605, + -174.92098531618865, + null, + -174.92098531618865, + -79.89076048041814, + null, + -174.92098531618865, + -142.73729137682972, + null, + -150.4233281741907, + -174.92098531618865, + null, + -174.02001420596523, + -174.92098531618865, + null, + -202.03647820194982, + -174.92098531618865, + null, + -240.03825990418605, + -174.92098531618865, + null, + -174.92098531618865, + -79.89076048041814, + null, + -174.92098531618865, + -142.73729137682972, + null, + -150.4233281741907, + -174.92098531618865, + null, + -174.02001420596523, + -174.92098531618865, + null, + -202.03647820194982, + -174.92098531618865, + null, + -206.47074325683008, + -207.91219428651013, + null, + -207.91219428651013, + -237.81047974010292, + null, + -207.91219428651013, + -223.9891910783257, + null, + -207.91219428651013, + -202.03647820194982, + null, + -206.47074325683008, + -207.91219428651013, + null, + -207.91219428651013, + -237.81047974010292, + null, + -207.91219428651013, + -223.9891910783257, + null, + -207.91219428651013, + -202.03647820194982, + null, + -206.47074325683008, + -207.91219428651013, + null, + -207.91219428651013, + -237.81047974010292, + null, + -207.91219428651013, + -223.9891910783257, + null, + -207.91219428651013, + -202.03647820194982, + null, + -206.47074325683008, + -174.02001420596523, + null, + -174.02001420596523, + -174.92098531618865, + null, + -174.02001420596523, + -142.73729137682972, + null, + -150.4233281741907, + -174.02001420596523, + null, + -206.47074325683008, + -174.02001420596523, + null, + -174.02001420596523, + -174.92098531618865, + null, + -174.02001420596523, + -142.73729137682972, + null, + -150.4233281741907, + -174.02001420596523, + null, + -206.47074325683008, + -174.02001420596523, + null, + -174.02001420596523, + -174.92098531618865, + null, + -174.02001420596523, + -142.73729137682972, + null, + -150.4233281741907, + -174.02001420596523, + null, + -433.8645479975819, + -346.27899564659725, + null, + -346.27899564659725, + -345.98825179516734, + null, + -346.27899564659725, + -337.6811093499919, + null, + -346.27899564659725, + -270.65669262785707, + null, + -433.8645479975819, + -346.27899564659725, + null, + -346.27899564659725, + -345.98825179516734, + null, + -346.27899564659725, + -337.6811093499919, + null, + -346.27899564659725, + -270.65669262785707, + null, + -433.8645479975819, + -346.27899564659725, + null, + -346.27899564659725, + -345.98825179516734, + null, + -346.27899564659725, + -337.6811093499919, + null, + -346.27899564659725, + -270.65669262785707, + null, + -346.27899564659725, + -337.6811093499919, + null, + -345.98825179516734, + -337.6811093499919, + null, + -367.96143095711767, + -337.6811093499919, + null, + -358.782869111985, + -337.6811093499919, + null, + -410.789428596095, + -337.6811093499919, + null, + -380.4653368425429, + -337.6811093499919, + null, + -337.6811093499919, + -332.5234357900165, + null, + -337.6811093499919, + -291.8354629412489, + null, + -346.27899564659725, + -337.6811093499919, + null, + -345.98825179516734, + -337.6811093499919, + null, + -367.96143095711767, + -337.6811093499919, + null, + -358.782869111985, + -337.6811093499919, + null, + -410.789428596095, + -337.6811093499919, + null, + -380.4653368425429, + -337.6811093499919, + null, + -337.6811093499919, + -332.5234357900165, + null, + -337.6811093499919, + -291.8354629412489, + null, + -346.27899564659725, + -337.6811093499919, + null, + -345.98825179516734, + -337.6811093499919, + null, + -367.96143095711767, + -337.6811093499919, + null, + -358.782869111985, + -337.6811093499919, + null, + -410.789428596095, + -337.6811093499919, + null, + -380.4653368425429, + -337.6811093499919, + null, + -337.6811093499919, + -332.5234357900165, + null, + -337.6811093499919, + -291.8354629412489, + null, + -345.98825179516734, + -337.6811093499919, + null, + -346.27899564659725, + -345.98825179516734, + null, + -367.96143095711767, + -345.98825179516734, + null, + -345.98825179516734, + -337.6811093499919, + null, + -346.27899564659725, + -345.98825179516734, + null, + -367.96143095711767, + -345.98825179516734, + null, + -345.98825179516734, + -337.6811093499919, + null, + -346.27899564659725, + -345.98825179516734, + null, + -367.96143095711767, + -345.98825179516734, + null, + -410.789428596095, + -416.01293761258756, + null, + -410.789428596095, + -380.4653368425429, + null, + -410.789428596095, + -337.6811093499919, + null, + -410.789428596095, + -377.5536373478154, + null, + -435.5872518484344, + -410.789428596095, + null, + -410.789428596095, + -416.01293761258756, + null, + -410.789428596095, + -380.4653368425429, + null, + -410.789428596095, + -337.6811093499919, + null, + -410.789428596095, + -377.5536373478154, + null, + -435.5872518484344, + -410.789428596095, + null, + -410.789428596095, + -416.01293761258756, + null, + -410.789428596095, + -380.4653368425429, + null, + -410.789428596095, + -337.6811093499919, + null, + -410.789428596095, + -377.5536373478154, + null, + -435.5872518484344, + -410.789428596095, + null, + -410.789428596095, + -380.4653368425429, + null, + -380.4653368425429, + -291.8354629412489, + null, + -380.4653368425429, + -337.6811093499919, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -380.4653368425429, + null, + -377.5536373478154, + -380.4653368425429, + null, + -435.5872518484344, + -380.4653368425429, + null, + -410.789428596095, + -380.4653368425429, + null, + -380.4653368425429, + -291.8354629412489, + null, + -380.4653368425429, + -337.6811093499919, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -380.4653368425429, + null, + -377.5536373478154, + -380.4653368425429, + null, + -435.5872518484344, + -380.4653368425429, + null, + -410.789428596095, + -380.4653368425429, + null, + -380.4653368425429, + -291.8354629412489, + null, + -380.4653368425429, + -337.6811093499919, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -380.4653368425429, + null, + -377.5536373478154, + -380.4653368425429, + null, + -435.5872518484344, + -380.4653368425429, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -380.4653368425429, + null, + -358.782869111985, + -377.5536373478154, + null, + -367.96143095711767, + -377.5536373478154, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -380.4653368425429, + null, + -358.782869111985, + -377.5536373478154, + null, + -367.96143095711767, + -377.5536373478154, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -380.4653368425429, + null, + -358.782869111985, + -377.5536373478154, + null, + -367.96143095711767, + -377.5536373478154, + null, + -358.782869111985, + -337.6811093499919, + null, + -367.96143095711767, + -358.782869111985, + null, + -358.782869111985, + -377.5536373478154, + null, + -358.782869111985, + -380.4653368425429, + null, + -358.782869111985, + -337.6811093499919, + null, + -367.96143095711767, + -358.782869111985, + null, + -358.782869111985, + -377.5536373478154, + null, + -358.782869111985, + -380.4653368425429, + null, + -358.782869111985, + -337.6811093499919, + null, + -367.96143095711767, + -358.782869111985, + null, + -358.782869111985, + -377.5536373478154, + null, + -358.782869111985, + -380.4653368425429, + null, + -367.96143095711767, + -377.5536373478154, + null, + -367.96143095711767, + -380.4653368425429, + null, + -367.96143095711767, + -358.782869111985, + null, + -367.96143095711767, + -337.6811093499919, + null, + -367.96143095711767, + -345.98825179516734, + null, + -367.96143095711767, + -377.5536373478154, + null, + -367.96143095711767, + -380.4653368425429, + null, + -367.96143095711767, + -358.782869111985, + null, + -367.96143095711767, + -337.6811093499919, + null, + -367.96143095711767, + -345.98825179516734, + null, + -367.96143095711767, + -377.5536373478154, + null, + -367.96143095711767, + -380.4653368425429, + null, + -367.96143095711767, + -358.782869111985, + null, + -367.96143095711767, + -337.6811093499919, + null, + -367.96143095711767, + -345.98825179516734, + null, + -332.5234357900165, + -291.6017824139326, + null, + -290.73858167881536, + -291.6017824139326, + null, + -291.6017824139326, + -252.52439335286124, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.8354629412489, + -291.6017824139326, + null, + -332.5234357900165, + -291.6017824139326, + null, + -290.73858167881536, + -291.6017824139326, + null, + -291.6017824139326, + -252.52439335286124, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.8354629412489, + -291.6017824139326, + null, + -332.5234357900165, + -291.6017824139326, + null, + -290.73858167881536, + -291.6017824139326, + null, + -291.6017824139326, + -252.52439335286124, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.8354629412489, + -291.6017824139326, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -252.52439335286124, + null, + -279.02316877523407, + -238.0383948252539, + null, + -291.8354629412489, + -279.02316877523407, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -252.52439335286124, + null, + -279.02316877523407, + -238.0383948252539, + null, + -291.8354629412489, + -279.02316877523407, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -252.52439335286124, + null, + -279.02316877523407, + -238.0383948252539, + null, + -291.8354629412489, + -279.02316877523407, + null, + -337.6811093499919, + -291.8354629412489, + null, + -291.8354629412489, + -291.6017824139326, + null, + -291.8354629412489, + -279.02316877523407, + null, + -271.96624983312864, + -291.8354629412489, + null, + -337.6811093499919, + -291.8354629412489, + null, + -291.8354629412489, + -291.6017824139326, + null, + -291.8354629412489, + -279.02316877523407, + null, + -271.96624983312864, + -291.8354629412489, + null, + -337.6811093499919, + -291.8354629412489, + null, + -291.8354629412489, + -291.6017824139326, + null, + -291.8354629412489, + -279.02316877523407, + null, + -271.96624983312864, + -291.8354629412489, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -238.0383948252539, + null, + -199.76797181231274, + -238.0383948252539, + null, + -279.02316877523407, + -238.0383948252539, + null, + -238.0383948252539, + -252.52439335286124, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -238.0383948252539, + null, + -199.76797181231274, + -238.0383948252539, + null, + -279.02316877523407, + -238.0383948252539, + null, + -238.0383948252539, + -252.52439335286124, + null, + -238.0383948252539, + -237.81047974010292, + null, + -206.47074325683008, + -238.0383948252539, + null, + -199.76797181231274, + -238.0383948252539, + null, + -279.02316877523407, + -238.0383948252539, + null, + -238.0383948252539, + -252.52439335286124, + null, + -279.02316877523407, + -252.52439335286124, + null, + -291.6017824139326, + -252.52439335286124, + null, + -206.47074325683008, + -252.52439335286124, + null, + -238.0383948252539, + -252.52439335286124, + null, + -258.1977054890761, + -252.52439335286124, + null, + -279.02316877523407, + -252.52439335286124, + null, + -291.6017824139326, + -252.52439335286124, + null, + -206.47074325683008, + -252.52439335286124, + null, + -238.0383948252539, + -252.52439335286124, + null, + -258.1977054890761, + -252.52439335286124, + null, + -279.02316877523407, + -252.52439335286124, + null, + -291.6017824139326, + -252.52439335286124, + null, + -206.47074325683008, + -252.52439335286124, + null, + -238.0383948252539, + -252.52439335286124, + null, + -258.1977054890761, + -252.52439335286124, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -199.76797181231274, + null, + -213.75685485376738, + -212.17488649242205, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -212.17488649242205, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -199.76797181231274, + null, + -213.75685485376738, + -212.17488649242205, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -212.17488649242205, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -199.76797181231274, + null, + -213.75685485376738, + -212.17488649242205, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -212.17488649242205, + null, + -199.76797181231274, + -238.0383948252539, + null, + -199.76797181231274, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -212.17488649242205, + -199.76797181231274, + null, + -199.76797181231274, + -238.0383948252539, + null, + -199.76797181231274, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -212.17488649242205, + -199.76797181231274, + null, + -199.76797181231274, + -238.0383948252539, + null, + -199.76797181231274, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -212.17488649242205, + -199.76797181231274, + null, + -346.27899564659725, + -270.65669262785707, + null, + -270.65669262785707, + -271.96624983312864, + null, + -270.65669262785707, + -258.1977054890761, + null, + -270.65669262785707, + -213.75685485376738, + null, + -346.27899564659725, + -270.65669262785707, + null, + -270.65669262785707, + -271.96624983312864, + null, + -270.65669262785707, + -258.1977054890761, + null, + -270.65669262785707, + -213.75685485376738, + null, + -346.27899564659725, + -270.65669262785707, + null, + -270.65669262785707, + -271.96624983312864, + null, + -270.65669262785707, + -258.1977054890761, + null, + -270.65669262785707, + -213.75685485376738, + null, + -270.65669262785707, + -213.75685485376738, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -213.75685485376738, + -159.61795976164115, + null, + -270.65669262785707, + -213.75685485376738, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -213.75685485376738, + -159.61795976164115, + null, + -270.65669262785707, + -213.75685485376738, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -206.47074325683008, + null, + -213.75685485376738, + -199.76797181231274, + null, + -213.75685485376738, + -159.61795976164115, + null, + -270.65669262785707, + -271.96624983312864, + null, + -271.96624983312864, + -291.8354629412489, + null, + -258.1977054890761, + -271.96624983312864, + null, + -271.96624983312864, + -212.17488649242205, + null, + -270.65669262785707, + -271.96624983312864, + null, + -271.96624983312864, + -291.8354629412489, + null, + -258.1977054890761, + -271.96624983312864, + null, + -271.96624983312864, + -212.17488649242205, + null, + -270.65669262785707, + -271.96624983312864, + null, + -271.96624983312864, + -291.8354629412489, + null, + -258.1977054890761, + -271.96624983312864, + null, + -271.96624983312864, + -212.17488649242205, + null, + -258.1977054890761, + -271.96624983312864, + null, + -258.1977054890761, + -252.52439335286124, + null, + -258.1977054890761, + -212.17488649242205, + null, + -270.65669262785707, + -258.1977054890761, + null, + -258.1977054890761, + -271.96624983312864, + null, + -258.1977054890761, + -252.52439335286124, + null, + -258.1977054890761, + -212.17488649242205, + null, + -270.65669262785707, + -258.1977054890761, + null, + -258.1977054890761, + -271.96624983312864, + null, + -258.1977054890761, + -252.52439335286124, + null, + -258.1977054890761, + -212.17488649242205, + null, + -270.65669262785707, + -258.1977054890761, + null, + -202.03647820194982, + -142.73729137682972, + null, + -174.92098531618865, + -142.73729137682972, + null, + -142.73729137682972, + -79.89076048041814, + null, + -144.79175755935458, + -142.73729137682972, + null, + -150.4233281741907, + -142.73729137682972, + null, + -174.02001420596523, + -142.73729137682972, + null, + -202.03647820194982, + -142.73729137682972, + null, + -174.92098531618865, + -142.73729137682972, + null, + -142.73729137682972, + -79.89076048041814, + null, + -144.79175755935458, + -142.73729137682972, + null, + -150.4233281741907, + -142.73729137682972, + null, + -174.02001420596523, + -142.73729137682972, + null, + -202.03647820194982, + -142.73729137682972, + null, + -174.92098531618865, + -142.73729137682972, + null, + -142.73729137682972, + -79.89076048041814, + null, + -144.79175755935458, + -142.73729137682972, + null, + -150.4233281741907, + -142.73729137682972, + null, + -174.02001420596523, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -144.79175755935458, + -142.73729137682972, + null, + -153.84377298142158, + -144.79175755935458, + null, + -161.1394666625376, + -144.79175755935458, + null, + -151.99198281488697, + -144.79175755935458, + null, + -144.79175755935458, + -150.4233281741907, + null, + -144.79175755935458, + -142.73729137682972, + null, + -153.84377298142158, + -144.79175755935458, + null, + -161.1394666625376, + -144.79175755935458, + null, + -151.99198281488697, + -144.79175755935458, + null, + -144.79175755935458, + -150.4233281741907, + null, + -144.79175755935458, + -142.73729137682972, + null, + -153.84377298142158, + -144.79175755935458, + null, + -161.1394666625376, + -144.79175755935458, + null, + -151.99198281488697, + -144.79175755935458, + null, + -150.4233281741907, + -174.02001420596523, + null, + -150.4233281741907, + -174.92098531618865, + null, + -150.4233281741907, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -150.4233281741907, + -174.02001420596523, + null, + -150.4233281741907, + -174.92098531618865, + null, + -150.4233281741907, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -150.4233281741907, + -174.02001420596523, + null, + -150.4233281741907, + -174.92098531618865, + null, + -150.4233281741907, + -142.73729137682972, + null, + -144.79175755935458, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -144.79175755935458, + null, + -151.99198281488697, + -90.06966055105865, + null, + -153.84377298142158, + -151.99198281488697, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -144.79175755935458, + null, + -151.99198281488697, + -90.06966055105865, + null, + -153.84377298142158, + -151.99198281488697, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -150.4233281741907, + null, + -151.99198281488697, + -144.79175755935458, + null, + -151.99198281488697, + -90.06966055105865, + null, + -153.84377298142158, + -151.99198281488697, + null, + -161.1394666625376, + -151.99198281488697, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -144.79175755935458, + null, + -159.61795976164115, + -153.84377298142158, + null, + -161.1394666625376, + -153.84377298142158, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -144.79175755935458, + null, + -159.61795976164115, + -153.84377298142158, + null, + -161.1394666625376, + -153.84377298142158, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -144.79175755935458, + null, + -159.61795976164115, + -153.84377298142158, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -91.80684565358028, + null, + -159.61795976164115, + -161.1394666625376, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -91.80684565358028, + null, + -159.61795976164115, + -161.1394666625376, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -153.84377298142158, + null, + -161.1394666625376, + -91.80684565358028, + null, + -159.61795976164115, + -161.1394666625376, + null, + -213.75685485376738, + -159.61795976164115, + null, + -159.61795976164115, + -161.1394666625376, + null, + -159.61795976164115, + -153.84377298142158, + null, + -159.61795976164115, + -94.15336530504511, + null, + -213.75685485376738, + -159.61795976164115, + null, + -159.61795976164115, + -161.1394666625376, + null, + -159.61795976164115, + -153.84377298142158, + null, + -159.61795976164115, + -94.15336530504511, + null, + -213.75685485376738, + -159.61795976164115, + null, + -159.61795976164115, + -161.1394666625376, + null, + -159.61795976164115, + -153.84377298142158, + null, + -159.61795976164115, + -94.15336530504511, + null, + -142.73729137682972, + -79.89076048041814, + null, + -174.92098531618865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -79.89076048041814, + null, + -90.06966055105865, + -79.89076048041814, + null, + -142.73729137682972, + -79.89076048041814, + null, + -174.92098531618865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -79.89076048041814, + null, + -90.06966055105865, + -79.89076048041814, + null, + -142.73729137682972, + -79.89076048041814, + null, + -174.92098531618865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -79.89076048041814, + null, + -90.06966055105865, + -79.89076048041814, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -71.98755381403251, + null, + -91.80684565358028, + -71.98755381403251, + null, + -90.06966055105865, + -71.98755381403251, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -71.98755381403251, + null, + -91.80684565358028, + -71.98755381403251, + null, + -90.06966055105865, + -71.98755381403251, + null, + -71.98755381403251, + -79.89076048041814, + null, + -77.56566344042652, + -71.98755381403251, + null, + -91.80684565358028, + -71.98755381403251, + null, + -90.06966055105865, + -71.98755381403251, + null, + -90.06966055105865, + -79.89076048041814, + null, + -90.06966055105865, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -151.99198281488697, + -90.06966055105865, + null, + -90.06966055105865, + -79.89076048041814, + null, + -90.06966055105865, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -151.99198281488697, + -90.06966055105865, + null, + -90.06966055105865, + -79.89076048041814, + null, + -90.06966055105865, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -151.99198281488697, + -90.06966055105865, + null, + -91.80684565358028, + -90.06966055105865, + null, + -91.80684565358028, + -71.98755381403251, + null, + -91.80684565358028, + -77.56566344042652, + null, + -94.15336530504511, + -91.80684565358028, + null, + -161.1394666625376, + -91.80684565358028, + null, + -91.80684565358028, + -90.06966055105865, + null, + -91.80684565358028, + -71.98755381403251, + null, + -91.80684565358028, + -77.56566344042652, + null, + -94.15336530504511, + -91.80684565358028, + null, + -161.1394666625376, + -91.80684565358028, + null, + -91.80684565358028, + -90.06966055105865, + null, + -91.80684565358028, + -71.98755381403251, + null, + -91.80684565358028, + -77.56566344042652, + null, + -94.15336530504511, + -91.80684565358028, + null, + -161.1394666625376, + -91.80684565358028, + null, + -77.56566344042652, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -94.15336530504511, + -77.56566344042652, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -94.15336530504511, + -77.56566344042652, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -71.98755381403251, + null, + -77.56566344042652, + -90.06966055105865, + null, + -94.15336530504511, + -77.56566344042652, + null, + -91.80684565358028, + -77.56566344042652, + null, + -159.61795976164115, + -94.15336530504511, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -77.56566344042652, + null, + -159.61795976164115, + -94.15336530504511, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -77.56566344042652, + null, + -159.61795976164115, + -94.15336530504511, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -77.56566344042652, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -163.74360696682288, + null, + -153.84377298142158, + -165.5000997867287, + null, + -153.84377298142158, + -156.06351554190206, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -163.74360696682288, + null, + -153.84377298142158, + -165.5000997867287, + null, + -153.84377298142158, + -156.06351554190206, + null, + -153.84377298142158, + -151.99198281488697, + null, + -153.84377298142158, + -163.74360696682288, + null, + -153.84377298142158, + -165.5000997867287, + null, + -153.84377298142158, + -156.06351554190206, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -156.06351554190206, + null, + -161.1394666625376, + -163.74360696682288, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -156.06351554190206, + null, + -161.1394666625376, + -163.74360696682288, + null, + -161.1394666625376, + -151.99198281488697, + null, + -161.1394666625376, + -156.06351554190206, + null, + -161.1394666625376, + -163.74360696682288, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -163.74360696682288, + null, + -151.99198281488697, + -165.5000997867287, + null, + -151.99198281488697, + -156.06351554190206, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -163.74360696682288, + null, + -151.99198281488697, + -165.5000997867287, + null, + -151.99198281488697, + -156.06351554190206, + null, + -161.1394666625376, + -151.99198281488697, + null, + -151.99198281488697, + -163.74360696682288, + null, + -151.99198281488697, + -165.5000997867287, + null, + -151.99198281488697, + -156.06351554190206, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -77.56566344042652, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -91.80684565358028, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -91.80684565358028, + -96.60213751234593, + null, + -91.80684565358028, + -77.56566344042652, + null, + -91.80684565358028, + -96.60213751234593, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -96.60213751234593, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -96.60213751234593, + null, + -94.15336530504511, + -91.80684565358028, + null, + -94.15336530504511, + -96.60213751234593, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -201.6396503647304, + null, + -212.17488649242205, + -202.11793201838967, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -201.6396503647304, + null, + -212.17488649242205, + -202.11793201838967, + null, + -212.17488649242205, + -206.47074325683008, + null, + -212.17488649242205, + -201.6396503647304, + null, + -212.17488649242205, + -202.11793201838967, + null, + -199.76797181231274, + -206.47074325683008, + null, + -199.76797181231274, + -201.6396503647304, + null, + -199.76797181231274, + -202.11793201838967, + null, + -199.76797181231274, + -206.47074325683008, + null, + -199.76797181231274, + -201.6396503647304, + null, + -199.76797181231274, + -202.11793201838967, + null, + -199.76797181231274, + -206.47074325683008, + null, + -199.76797181231274, + -201.6396503647304, + null, + -199.76797181231274, + -202.11793201838967, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -202.11793201838967, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -202.11793201838967, + null, + -213.75685485376738, + -212.17488649242205, + null, + -213.75685485376738, + -202.11793201838967, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -178.27339441800706, + null, + -206.47074325683008, + -201.6396503647304, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -178.27339441800706, + null, + -206.47074325683008, + -201.6396503647304, + null, + -206.47074325683008, + -207.91219428651013, + null, + -206.47074325683008, + -178.27339441800706, + null, + -206.47074325683008, + -201.6396503647304, + null, + -207.91219428651013, + -237.81047974010292, + null, + -237.81047974010292, + -178.27339441800706, + null, + -207.91219428651013, + -237.81047974010292, + null, + -237.81047974010292, + -178.27339441800706, + null, + -207.91219428651013, + -237.81047974010292, + null, + -237.81047974010292, + -178.27339441800706, + null, + -410.789428596095, + -377.5536373478154, + null, + -410.789428596095, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -410.789428596095, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -410.789428596095, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -414.98299577748975, + null, + -410.789428596095, + -377.5536373478154, + null, + -377.5536373478154, + -414.98299577748975, + null, + -410.789428596095, + -416.01293761258756, + null, + -416.01293761258756, + -414.98299577748975, + null, + -410.789428596095, + -416.01293761258756, + null, + -416.01293761258756, + -414.98299577748975, + null, + -410.789428596095, + -416.01293761258756, + null, + -416.01293761258756, + -414.98299577748975, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.6017824139326, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.6017824139326, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -291.6017824139326, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -294.6941160136795, + null, + -279.02316877523407, + -291.6017824139326, + null, + -279.02316877523407, + -294.6941160136795, + null + ], + "y": [ + 357.64977743493023, + 350.7907509338832, + null, + 350.7907509338832, + 356.74772868211835, + null, + 350.7907509338832, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 357.64977743493023, + 350.7907509338832, + null, + 350.7907509338832, + 356.74772868211835, + null, + 350.7907509338832, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 357.64977743493023, + 350.7907509338832, + null, + 350.7907509338832, + 356.74772868211835, + null, + 350.7907509338832, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 357.64977743493023, + 350.7907509338832, + null, + 321.1251602489893, + 357.64977743493023, + null, + 260.44667379669994, + 357.64977743493023, + null, + 310.5141435446614, + 357.64977743493023, + null, + 357.64977743493023, + 356.74772868211835, + null, + 357.64977743493023, + 347.16604166087524, + null, + 357.64977743493023, + 350.7907509338832, + null, + 321.1251602489893, + 357.64977743493023, + null, + 260.44667379669994, + 357.64977743493023, + null, + 310.5141435446614, + 357.64977743493023, + null, + 357.64977743493023, + 356.74772868211835, + null, + 357.64977743493023, + 347.16604166087524, + null, + 357.64977743493023, + 350.7907509338832, + null, + 321.1251602489893, + 357.64977743493023, + null, + 260.44667379669994, + 357.64977743493023, + null, + 310.5141435446614, + 357.64977743493023, + null, + 357.64977743493023, + 356.74772868211835, + null, + 357.64977743493023, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 268.74571889109444, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 329.1409467952837, + 350.7907509338832, + null, + 268.74571889109444, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 329.1409467952837, + 350.7907509338832, + null, + 268.74571889109444, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 260.44667379669994, + 321.1251602489893, + null, + 183.8924770122804, + 321.1251602489893, + null, + 229.20972216423704, + 321.1251602489893, + null, + 310.5141435446614, + 321.1251602489893, + null, + 321.1251602489893, + 357.64977743493023, + null, + 321.1251602489893, + 329.1409467952837, + null, + 260.44667379669994, + 321.1251602489893, + null, + 183.8924770122804, + 321.1251602489893, + null, + 229.20972216423704, + 321.1251602489893, + null, + 310.5141435446614, + 321.1251602489893, + null, + 321.1251602489893, + 357.64977743493023, + null, + 321.1251602489893, + 329.1409467952837, + null, + 260.44667379669994, + 321.1251602489893, + null, + 183.8924770122804, + 321.1251602489893, + null, + 229.20972216423704, + 321.1251602489893, + null, + 310.5141435446614, + 321.1251602489893, + null, + 321.1251602489893, + 357.64977743493023, + null, + 310.5141435446614, + 321.1251602489893, + null, + 260.44667379669994, + 310.5141435446614, + null, + 229.20972216423704, + 310.5141435446614, + null, + 310.5141435446614, + 357.64977743493023, + null, + 310.5141435446614, + 321.1251602489893, + null, + 260.44667379669994, + 310.5141435446614, + null, + 229.20972216423704, + 310.5141435446614, + null, + 310.5141435446614, + 357.64977743493023, + null, + 310.5141435446614, + 321.1251602489893, + null, + 260.44667379669994, + 310.5141435446614, + null, + 229.20972216423704, + 310.5141435446614, + null, + 310.5141435446614, + 357.64977743493023, + null, + 260.44667379669994, + 310.5141435446614, + null, + 260.44667379669994, + 357.64977743493023, + null, + 260.44667379669994, + 321.1251602489893, + null, + 260.44667379669994, + 268.74571889109444, + null, + 260.44667379669994, + 268.9155630911593, + null, + 183.8924770122804, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 260.44667379669994, + 310.5141435446614, + null, + 260.44667379669994, + 357.64977743493023, + null, + 260.44667379669994, + 321.1251602489893, + null, + 260.44667379669994, + 268.74571889109444, + null, + 260.44667379669994, + 268.9155630911593, + null, + 183.8924770122804, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 260.44667379669994, + 310.5141435446614, + null, + 260.44667379669994, + 357.64977743493023, + null, + 260.44667379669994, + 321.1251602489893, + null, + 260.44667379669994, + 268.74571889109444, + null, + 260.44667379669994, + 268.9155630911593, + null, + 183.8924770122804, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 183.8924770122804, + 229.20972216423704, + null, + 229.20972216423704, + 310.5141435446614, + null, + 229.20972216423704, + 357.64977743493023, + null, + 229.20972216423704, + 321.1251602489893, + null, + 229.20972216423704, + 260.44667379669994, + null, + 183.8924770122804, + 229.20972216423704, + null, + 229.20972216423704, + 310.5141435446614, + null, + 229.20972216423704, + 357.64977743493023, + null, + 229.20972216423704, + 321.1251602489893, + null, + 229.20972216423704, + 260.44667379669994, + null, + 183.8924770122804, + 229.20972216423704, + null, + 229.20972216423704, + 310.5141435446614, + null, + 229.20972216423704, + 357.64977743493023, + null, + 229.20972216423704, + 321.1251602489893, + null, + 183.8924770122804, + 229.20972216423704, + null, + 183.8924770122804, + 321.1251602489893, + null, + 183.8924770122804, + 260.44667379669994, + null, + 183.8924770122804, + 176.3495598178734, + null, + 183.8924770122804, + 229.20972216423704, + null, + 183.8924770122804, + 321.1251602489893, + null, + 183.8924770122804, + 260.44667379669994, + null, + 183.8924770122804, + 176.3495598178734, + null, + 183.8924770122804, + 229.20972216423704, + null, + 183.8924770122804, + 321.1251602489893, + null, + 183.8924770122804, + 260.44667379669994, + null, + 183.8924770122804, + 176.3495598178734, + null, + 357.64977743493023, + 356.74772868211835, + null, + 356.74772868211835, + 352.28315312547585, + null, + 356.74772868211835, + 339.3136931268799, + null, + 356.74772868211835, + 347.16604166087524, + null, + 350.7907509338832, + 356.74772868211835, + null, + 357.64977743493023, + 356.74772868211835, + null, + 356.74772868211835, + 352.28315312547585, + null, + 356.74772868211835, + 339.3136931268799, + null, + 356.74772868211835, + 347.16604166087524, + null, + 350.7907509338832, + 356.74772868211835, + null, + 357.64977743493023, + 356.74772868211835, + null, + 356.74772868211835, + 352.28315312547585, + null, + 356.74772868211835, + 339.3136931268799, + null, + 356.74772868211835, + 347.16604166087524, + null, + 350.7907509338832, + 356.74772868211835, + null, + 356.74772868211835, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 347.16604166087524, + 344.0349790848408, + null, + 347.16604166087524, + 339.3136931268799, + null, + 350.7907509338832, + 347.16604166087524, + null, + 356.74772868211835, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 347.16604166087524, + 344.0349790848408, + null, + 347.16604166087524, + 339.3136931268799, + null, + 350.7907509338832, + 347.16604166087524, + null, + 356.74772868211835, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 347.16604166087524, + 344.0349790848408, + null, + 347.16604166087524, + 339.3136931268799, + null, + 350.7907509338832, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 356.74772868211835, + 352.28315312547585, + null, + 352.28315312547585, + 344.0349790848408, + null, + 352.28315312547585, + 330.5748275330297, + null, + 352.28315312547585, + 339.3136931268799, + null, + 323.75984407225997, + 352.28315312547585, + null, + 315.48008590100574, + 352.28315312547585, + null, + 347.16604166087524, + 352.28315312547585, + null, + 356.74772868211835, + 352.28315312547585, + null, + 352.28315312547585, + 344.0349790848408, + null, + 352.28315312547585, + 330.5748275330297, + null, + 352.28315312547585, + 339.3136931268799, + null, + 323.75984407225997, + 352.28315312547585, + null, + 315.48008590100574, + 352.28315312547585, + null, + 347.16604166087524, + 352.28315312547585, + null, + 356.74772868211835, + 352.28315312547585, + null, + 352.28315312547585, + 344.0349790848408, + null, + 352.28315312547585, + 330.5748275330297, + null, + 352.28315312547585, + 339.3136931268799, + null, + 323.75984407225997, + 352.28315312547585, + null, + 315.48008590100574, + 352.28315312547585, + null, + 323.75984407225997, + 352.28315312547585, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.75984407225997, + 319.26741162901953, + null, + 323.75984407225997, + 319.3798803978522, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.48008590100574, + 323.75984407225997, + null, + 293.7774500615618, + 323.75984407225997, + null, + 323.75984407225997, + 352.28315312547585, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.75984407225997, + 319.26741162901953, + null, + 323.75984407225997, + 319.3798803978522, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.48008590100574, + 323.75984407225997, + null, + 293.7774500615618, + 323.75984407225997, + null, + 323.75984407225997, + 352.28315312547585, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.75984407225997, + 319.26741162901953, + null, + 323.75984407225997, + 319.3798803978522, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.48008590100574, + 323.75984407225997, + null, + 293.7774500615618, + 323.75984407225997, + null, + 315.48008590100574, + 323.75984407225997, + null, + 315.48008590100574, + 319.3798803978522, + null, + 315.48008590100574, + 323.535219144854, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 293.7774500615618, + 315.48008590100574, + null, + 315.48008590100574, + 352.28315312547585, + null, + 315.48008590100574, + 323.75984407225997, + null, + 315.48008590100574, + 319.3798803978522, + null, + 315.48008590100574, + 323.535219144854, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 293.7774500615618, + 315.48008590100574, + null, + 315.48008590100574, + 352.28315312547585, + null, + 315.48008590100574, + 323.75984407225997, + null, + 315.48008590100574, + 319.3798803978522, + null, + 315.48008590100574, + 323.535219144854, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 293.7774500615618, + 315.48008590100574, + null, + 315.48008590100574, + 352.28315312547585, + null, + 293.7774500615618, + 315.48008590100574, + null, + 293.7774500615618, + 286.4202879280776, + null, + 263.21980786798633, + 293.7774500615618, + null, + 293.7774500615618, + 352.28315312547585, + null, + 293.7774500615618, + 323.75984407225997, + null, + 293.7774500615618, + 315.48008590100574, + null, + 293.7774500615618, + 286.4202879280776, + null, + 263.21980786798633, + 293.7774500615618, + null, + 293.7774500615618, + 352.28315312547585, + null, + 293.7774500615618, + 323.75984407225997, + null, + 293.7774500615618, + 315.48008590100574, + null, + 293.7774500615618, + 286.4202879280776, + null, + 263.21980786798633, + 293.7774500615618, + null, + 293.7774500615618, + 352.28315312547585, + null, + 293.7774500615618, + 323.75984407225997, + null, + 352.28315312547585, + 339.3136931268799, + null, + 356.74772868211835, + 339.3136931268799, + null, + 347.16604166087524, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 319.26741162901953, + 339.3136931268799, + null, + 352.28315312547585, + 339.3136931268799, + null, + 356.74772868211835, + 339.3136931268799, + null, + 347.16604166087524, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 319.26741162901953, + 339.3136931268799, + null, + 352.28315312547585, + 339.3136931268799, + null, + 356.74772868211835, + 339.3136931268799, + null, + 347.16604166087524, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 319.26741162901953, + 339.3136931268799, + null, + 323.75984407225997, + 319.3798803978522, + null, + 319.3798803978522, + 323.535219144854, + null, + 319.3798803978522, + 319.26741162901953, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.48008590100574, + 319.3798803978522, + null, + 323.75984407225997, + 319.3798803978522, + null, + 319.3798803978522, + 323.535219144854, + null, + 319.3798803978522, + 319.26741162901953, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.48008590100574, + 319.3798803978522, + null, + 323.75984407225997, + 319.3798803978522, + null, + 319.3798803978522, + 323.535219144854, + null, + 319.3798803978522, + 319.26741162901953, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.48008590100574, + 319.3798803978522, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.29700711663065, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 323.75984407225997, + 315.29700711663065, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.29700711663065, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 323.75984407225997, + 315.29700711663065, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.29700711663065, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.48008590100574, + 323.535219144854, + null, + 319.3798803978522, + 323.535219144854, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.535219144854, + 319.26741162901953, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.48008590100574, + 323.535219144854, + null, + 319.3798803978522, + 323.535219144854, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.535219144854, + 319.26741162901953, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.48008590100574, + 323.535219144854, + null, + 319.3798803978522, + 323.535219144854, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.75984407225997, + 319.26741162901953, + null, + 319.3798803978522, + 319.26741162901953, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.29700711663065, + 319.26741162901953, + null, + 319.26741162901953, + 286.4202879280776, + null, + 319.26741162901953, + 339.3136931268799, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.75984407225997, + 319.26741162901953, + null, + 319.3798803978522, + 319.26741162901953, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.29700711663065, + 319.26741162901953, + null, + 319.26741162901953, + 286.4202879280776, + null, + 319.26741162901953, + 339.3136931268799, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.75984407225997, + 319.26741162901953, + null, + 319.3798803978522, + 319.26741162901953, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.29700711663065, + 319.26741162901953, + null, + 319.26741162901953, + 286.4202879280776, + null, + 319.26741162901953, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 352.28315312547585, + 344.0349790848408, + null, + 344.0349790848408, + 336.8347617095979, + null, + 344.0349790848408, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 339.3136931268799, + 344.0349790848408, + null, + 352.28315312547585, + 344.0349790848408, + null, + 344.0349790848408, + 336.8347617095979, + null, + 344.0349790848408, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 339.3136931268799, + 344.0349790848408, + null, + 352.28315312547585, + 344.0349790848408, + null, + 344.0349790848408, + 336.8347617095979, + null, + 344.0349790848408, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 344.0349790848408, + 330.5748275330297, + null, + 330.5748275330297, + 336.8347617095979, + null, + 330.5748275330297, + 325.43068655275226, + null, + 270.4143750740704, + 330.5748275330297, + null, + 295.94347733111357, + 330.5748275330297, + null, + 326.4052717945616, + 330.5748275330297, + null, + 339.3136931268799, + 330.5748275330297, + null, + 344.0349790848408, + 330.5748275330297, + null, + 330.5748275330297, + 336.8347617095979, + null, + 330.5748275330297, + 325.43068655275226, + null, + 270.4143750740704, + 330.5748275330297, + null, + 295.94347733111357, + 330.5748275330297, + null, + 326.4052717945616, + 330.5748275330297, + null, + 339.3136931268799, + 330.5748275330297, + null, + 344.0349790848408, + 330.5748275330297, + null, + 330.5748275330297, + 336.8347617095979, + null, + 330.5748275330297, + 325.43068655275226, + null, + 270.4143750740704, + 330.5748275330297, + null, + 295.94347733111357, + 330.5748275330297, + null, + 326.4052717945616, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 326.4052717945616, + 330.5748275330297, + null, + 295.94347733111357, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 326.4052717945616, + 344.0349790848408, + null, + 326.4052717945616, + 330.5748275330297, + null, + 295.94347733111357, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 326.4052717945616, + 344.0349790848408, + null, + 326.4052717945616, + 330.5748275330297, + null, + 295.94347733111357, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 330.5748275330297, + null, + 295.94347733111357, + 304.75795641905216, + null, + 268.91802835014585, + 304.75795641905216, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 330.5748275330297, + null, + 295.94347733111357, + 304.75795641905216, + null, + 268.91802835014585, + 304.75795641905216, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 330.5748275330297, + null, + 295.94347733111357, + 304.75795641905216, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 250.9934191667397, + 270.4143750740704, + null, + 214.26386988273063, + 270.4143750740704, + null, + 270.4143750740704, + 268.91802835014585, + null, + 270.4143750740704, + 274.31922718174684, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 250.9934191667397, + 270.4143750740704, + null, + 214.26386988273063, + 270.4143750740704, + null, + 270.4143750740704, + 268.91802835014585, + null, + 270.4143750740704, + 274.31922718174684, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 250.9934191667397, + 270.4143750740704, + null, + 214.26386988273063, + 270.4143750740704, + null, + 270.4143750740704, + 268.91802835014585, + null, + 270.4143750740704, + 274.31922718174684, + null, + 270.4143750740704, + 295.94347733111357, + null, + 344.0349790848408, + 336.8347617095979, + null, + 336.8347617095979, + 328.02295526836434, + null, + 336.8347617095979, + 325.43068655275226, + null, + 303.072238869132, + 336.8347617095979, + null, + 307.18441630869097, + 336.8347617095979, + null, + 330.5748275330297, + 336.8347617095979, + null, + 344.0349790848408, + 336.8347617095979, + null, + 336.8347617095979, + 328.02295526836434, + null, + 336.8347617095979, + 325.43068655275226, + null, + 303.072238869132, + 336.8347617095979, + null, + 307.18441630869097, + 336.8347617095979, + null, + 330.5748275330297, + 336.8347617095979, + null, + 344.0349790848408, + 336.8347617095979, + null, + 336.8347617095979, + 328.02295526836434, + null, + 336.8347617095979, + 325.43068655275226, + null, + 303.072238869132, + 336.8347617095979, + null, + 307.18441630869097, + 336.8347617095979, + null, + 330.5748275330297, + 336.8347617095979, + null, + 270.4143750740704, + 295.94347733111357, + null, + 295.94347733111357, + 304.75795641905216, + null, + 295.94347733111357, + 326.4052717945616, + null, + 295.94347733111357, + 330.5748275330297, + null, + 270.4143750740704, + 295.94347733111357, + null, + 295.94347733111357, + 304.75795641905216, + null, + 295.94347733111357, + 326.4052717945616, + null, + 295.94347733111357, + 330.5748275330297, + null, + 270.4143750740704, + 295.94347733111357, + null, + 295.94347733111357, + 304.75795641905216, + null, + 295.94347733111357, + 326.4052717945616, + null, + 295.94347733111357, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 307.18441630869097, + 336.8347617095979, + null, + 307.18441630869097, + 325.43068655275226, + null, + 303.072238869132, + 307.18441630869097, + null, + 270.4143750740704, + 307.18441630869097, + null, + 307.18441630869097, + 336.8347617095979, + null, + 307.18441630869097, + 325.43068655275226, + null, + 303.072238869132, + 307.18441630869097, + null, + 270.4143750740704, + 307.18441630869097, + null, + 307.18441630869097, + 336.8347617095979, + null, + 307.18441630869097, + 325.43068655275226, + null, + 303.072238869132, + 307.18441630869097, + null, + 183.8924770122804, + 176.3495598178734, + null, + 176.3495598178734, + 233.51303476069197, + null, + 176.3495598178734, + 263.21980786798633, + null, + 176.3495598178734, + 169.32016360849502, + null, + 183.8924770122804, + 176.3495598178734, + null, + 176.3495598178734, + 233.51303476069197, + null, + 176.3495598178734, + 263.21980786798633, + null, + 176.3495598178734, + 169.32016360849502, + null, + 183.8924770122804, + 176.3495598178734, + null, + 176.3495598178734, + 233.51303476069197, + null, + 176.3495598178734, + 263.21980786798633, + null, + 176.3495598178734, + 169.32016360849502, + null, + 176.3495598178734, + 263.21980786798633, + null, + 233.51303476069197, + 263.21980786798633, + null, + 232.5229570390016, + 263.21980786798633, + null, + 249.64459906857965, + 263.21980786798633, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.9155630911593, + 263.21980786798633, + null, + 263.21980786798633, + 293.7774500615618, + null, + 263.21980786798633, + 258.97618350915224, + null, + 176.3495598178734, + 263.21980786798633, + null, + 233.51303476069197, + 263.21980786798633, + null, + 232.5229570390016, + 263.21980786798633, + null, + 249.64459906857965, + 263.21980786798633, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.9155630911593, + 263.21980786798633, + null, + 263.21980786798633, + 293.7774500615618, + null, + 263.21980786798633, + 258.97618350915224, + null, + 176.3495598178734, + 263.21980786798633, + null, + 233.51303476069197, + 263.21980786798633, + null, + 232.5229570390016, + 263.21980786798633, + null, + 249.64459906857965, + 263.21980786798633, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.9155630911593, + 263.21980786798633, + null, + 263.21980786798633, + 293.7774500615618, + null, + 263.21980786798633, + 258.97618350915224, + null, + 233.51303476069197, + 263.21980786798633, + null, + 176.3495598178734, + 233.51303476069197, + null, + 232.5229570390016, + 233.51303476069197, + null, + 233.51303476069197, + 263.21980786798633, + null, + 176.3495598178734, + 233.51303476069197, + null, + 232.5229570390016, + 233.51303476069197, + null, + 233.51303476069197, + 263.21980786798633, + null, + 176.3495598178734, + 233.51303476069197, + null, + 232.5229570390016, + 233.51303476069197, + null, + 268.74571889109444, + 329.1409467952837, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.74571889109444, + 252.16980251003608, + null, + 260.44667379669994, + 268.74571889109444, + null, + 268.74571889109444, + 329.1409467952837, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.74571889109444, + 252.16980251003608, + null, + 260.44667379669994, + 268.74571889109444, + null, + 268.74571889109444, + 329.1409467952837, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.74571889109444, + 252.16980251003608, + null, + 260.44667379669994, + 268.74571889109444, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.9155630911593, + 258.97618350915224, + null, + 268.9155630911593, + 263.21980786798633, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 268.9155630911593, + null, + 252.16980251003608, + 268.9155630911593, + null, + 260.44667379669994, + 268.9155630911593, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.9155630911593, + 258.97618350915224, + null, + 268.9155630911593, + 263.21980786798633, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 268.9155630911593, + null, + 252.16980251003608, + 268.9155630911593, + null, + 260.44667379669994, + 268.9155630911593, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.9155630911593, + 258.97618350915224, + null, + 268.9155630911593, + 263.21980786798633, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 268.9155630911593, + null, + 252.16980251003608, + 268.9155630911593, + null, + 260.44667379669994, + 268.9155630911593, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 268.9155630911593, + null, + 249.64459906857965, + 252.16980251003608, + null, + 232.5229570390016, + 252.16980251003608, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 268.9155630911593, + null, + 249.64459906857965, + 252.16980251003608, + null, + 232.5229570390016, + 252.16980251003608, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 268.9155630911593, + null, + 249.64459906857965, + 252.16980251003608, + null, + 232.5229570390016, + 252.16980251003608, + null, + 249.64459906857965, + 263.21980786798633, + null, + 232.5229570390016, + 249.64459906857965, + null, + 249.64459906857965, + 252.16980251003608, + null, + 249.64459906857965, + 268.9155630911593, + null, + 249.64459906857965, + 263.21980786798633, + null, + 232.5229570390016, + 249.64459906857965, + null, + 249.64459906857965, + 252.16980251003608, + null, + 249.64459906857965, + 268.9155630911593, + null, + 249.64459906857965, + 263.21980786798633, + null, + 232.5229570390016, + 249.64459906857965, + null, + 249.64459906857965, + 252.16980251003608, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 252.16980251003608, + null, + 232.5229570390016, + 268.9155630911593, + null, + 232.5229570390016, + 249.64459906857965, + null, + 232.5229570390016, + 263.21980786798633, + null, + 232.5229570390016, + 233.51303476069197, + null, + 232.5229570390016, + 252.16980251003608, + null, + 232.5229570390016, + 268.9155630911593, + null, + 232.5229570390016, + 249.64459906857965, + null, + 232.5229570390016, + 263.21980786798633, + null, + 232.5229570390016, + 233.51303476069197, + null, + 232.5229570390016, + 252.16980251003608, + null, + 232.5229570390016, + 268.9155630911593, + null, + 232.5229570390016, + 249.64459906857965, + null, + 232.5229570390016, + 263.21980786798633, + null, + 232.5229570390016, + 233.51303476069197, + null, + 293.7774500615618, + 286.4202879280776, + null, + 319.26741162901953, + 286.4202879280776, + null, + 286.4202879280776, + 274.31922718174684, + null, + 274.16999172191623, + 286.4202879280776, + null, + 258.97618350915224, + 286.4202879280776, + null, + 293.7774500615618, + 286.4202879280776, + null, + 319.26741162901953, + 286.4202879280776, + null, + 286.4202879280776, + 274.31922718174684, + null, + 274.16999172191623, + 286.4202879280776, + null, + 258.97618350915224, + 286.4202879280776, + null, + 293.7774500615618, + 286.4202879280776, + null, + 319.26741162901953, + 286.4202879280776, + null, + 286.4202879280776, + 274.31922718174684, + null, + 274.16999172191623, + 286.4202879280776, + null, + 258.97618350915224, + 286.4202879280776, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 274.31922718174684, + null, + 274.16999172191623, + 268.91802835014585, + null, + 258.97618350915224, + 274.16999172191623, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 274.31922718174684, + null, + 274.16999172191623, + 268.91802835014585, + null, + 258.97618350915224, + 274.16999172191623, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 274.31922718174684, + null, + 274.16999172191623, + 268.91802835014585, + null, + 258.97618350915224, + 274.16999172191623, + null, + 263.21980786798633, + 258.97618350915224, + null, + 258.97618350915224, + 286.4202879280776, + null, + 258.97618350915224, + 274.16999172191623, + null, + 225.3765595708624, + 258.97618350915224, + null, + 263.21980786798633, + 258.97618350915224, + null, + 258.97618350915224, + 286.4202879280776, + null, + 258.97618350915224, + 274.16999172191623, + null, + 225.3765595708624, + 258.97618350915224, + null, + 263.21980786798633, + 258.97618350915224, + null, + 258.97618350915224, + 286.4202879280776, + null, + 258.97618350915224, + 274.16999172191623, + null, + 225.3765595708624, + 258.97618350915224, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 268.91802835014585, + null, + 250.9934191667397, + 268.91802835014585, + null, + 274.16999172191623, + 268.91802835014585, + null, + 268.91802835014585, + 274.31922718174684, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 268.91802835014585, + null, + 250.9934191667397, + 268.91802835014585, + null, + 274.16999172191623, + 268.91802835014585, + null, + 268.91802835014585, + 274.31922718174684, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 268.91802835014585, + null, + 250.9934191667397, + 268.91802835014585, + null, + 274.16999172191623, + 268.91802835014585, + null, + 268.91802835014585, + 274.31922718174684, + null, + 274.16999172191623, + 274.31922718174684, + null, + 286.4202879280776, + 274.31922718174684, + null, + 270.4143750740704, + 274.31922718174684, + null, + 268.91802835014585, + 274.31922718174684, + null, + 223.31778966202364, + 274.31922718174684, + null, + 274.16999172191623, + 274.31922718174684, + null, + 286.4202879280776, + 274.31922718174684, + null, + 270.4143750740704, + 274.31922718174684, + null, + 268.91802835014585, + 274.31922718174684, + null, + 223.31778966202364, + 274.31922718174684, + null, + 274.16999172191623, + 274.31922718174684, + null, + 286.4202879280776, + 274.31922718174684, + null, + 270.4143750740704, + 274.31922718174684, + null, + 268.91802835014585, + 274.31922718174684, + null, + 223.31778966202364, + 274.31922718174684, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 250.9934191667397, + null, + 163.57870888154466, + 214.26386988273063, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 214.26386988273063, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 250.9934191667397, + null, + 163.57870888154466, + 214.26386988273063, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 214.26386988273063, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 250.9934191667397, + null, + 163.57870888154466, + 214.26386988273063, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 214.26386988273063, + null, + 250.9934191667397, + 268.91802835014585, + null, + 250.9934191667397, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 214.26386988273063, + 250.9934191667397, + null, + 250.9934191667397, + 268.91802835014585, + null, + 250.9934191667397, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 214.26386988273063, + 250.9934191667397, + null, + 250.9934191667397, + 268.91802835014585, + null, + 250.9934191667397, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 214.26386988273063, + 250.9934191667397, + null, + 176.3495598178734, + 169.32016360849502, + null, + 169.32016360849502, + 225.3765595708624, + null, + 169.32016360849502, + 223.31778966202364, + null, + 169.32016360849502, + 163.57870888154466, + null, + 176.3495598178734, + 169.32016360849502, + null, + 169.32016360849502, + 225.3765595708624, + null, + 169.32016360849502, + 223.31778966202364, + null, + 169.32016360849502, + 163.57870888154466, + null, + 176.3495598178734, + 169.32016360849502, + null, + 169.32016360849502, + 225.3765595708624, + null, + 169.32016360849502, + 223.31778966202364, + null, + 169.32016360849502, + 163.57870888154466, + null, + 169.32016360849502, + 163.57870888154466, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 163.57870888154466, + 159.16447175525335, + null, + 169.32016360849502, + 163.57870888154466, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 163.57870888154466, + 159.16447175525335, + null, + 169.32016360849502, + 163.57870888154466, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 163.57870888154466, + 159.16447175525335, + null, + 169.32016360849502, + 225.3765595708624, + null, + 225.3765595708624, + 258.97618350915224, + null, + 223.31778966202364, + 225.3765595708624, + null, + 225.3765595708624, + 214.26386988273063, + null, + 169.32016360849502, + 225.3765595708624, + null, + 225.3765595708624, + 258.97618350915224, + null, + 223.31778966202364, + 225.3765595708624, + null, + 225.3765595708624, + 214.26386988273063, + null, + 169.32016360849502, + 225.3765595708624, + null, + 225.3765595708624, + 258.97618350915224, + null, + 223.31778966202364, + 225.3765595708624, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 225.3765595708624, + null, + 223.31778966202364, + 274.31922718174684, + null, + 223.31778966202364, + 214.26386988273063, + null, + 169.32016360849502, + 223.31778966202364, + null, + 223.31778966202364, + 225.3765595708624, + null, + 223.31778966202364, + 274.31922718174684, + null, + 223.31778966202364, + 214.26386988273063, + null, + 169.32016360849502, + 223.31778966202364, + null, + 223.31778966202364, + 225.3765595708624, + null, + 223.31778966202364, + 274.31922718174684, + null, + 223.31778966202364, + 214.26386988273063, + null, + 169.32016360849502, + 223.31778966202364, + null, + 330.5748275330297, + 325.43068655275226, + null, + 336.8347617095979, + 325.43068655275226, + null, + 325.43068655275226, + 328.02295526836434, + null, + 276.6563324910618, + 325.43068655275226, + null, + 303.072238869132, + 325.43068655275226, + null, + 307.18441630869097, + 325.43068655275226, + null, + 330.5748275330297, + 325.43068655275226, + null, + 336.8347617095979, + 325.43068655275226, + null, + 325.43068655275226, + 328.02295526836434, + null, + 276.6563324910618, + 325.43068655275226, + null, + 303.072238869132, + 325.43068655275226, + null, + 307.18441630869097, + 325.43068655275226, + null, + 330.5748275330297, + 325.43068655275226, + null, + 336.8347617095979, + 325.43068655275226, + null, + 325.43068655275226, + 328.02295526836434, + null, + 276.6563324910618, + 325.43068655275226, + null, + 303.072238869132, + 325.43068655275226, + null, + 307.18441630869097, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 276.6563324910618, + 325.43068655275226, + null, + 221.61182490136002, + 276.6563324910618, + null, + 203.86910624292852, + 276.6563324910618, + null, + 249.52749999636643, + 276.6563324910618, + null, + 276.6563324910618, + 303.072238869132, + null, + 276.6563324910618, + 325.43068655275226, + null, + 221.61182490136002, + 276.6563324910618, + null, + 203.86910624292852, + 276.6563324910618, + null, + 249.52749999636643, + 276.6563324910618, + null, + 276.6563324910618, + 303.072238869132, + null, + 276.6563324910618, + 325.43068655275226, + null, + 221.61182490136002, + 276.6563324910618, + null, + 203.86910624292852, + 276.6563324910618, + null, + 249.52749999636643, + 276.6563324910618, + null, + 303.072238869132, + 307.18441630869097, + null, + 303.072238869132, + 336.8347617095979, + null, + 303.072238869132, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 303.072238869132, + 307.18441630869097, + null, + 303.072238869132, + 336.8347617095979, + null, + 303.072238869132, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 303.072238869132, + 307.18441630869097, + null, + 303.072238869132, + 336.8347617095979, + null, + 303.072238869132, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 276.6563324910618, + null, + 249.52749999636643, + 248.52327233073666, + null, + 221.61182490136002, + 249.52749999636643, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 276.6563324910618, + null, + 249.52749999636643, + 248.52327233073666, + null, + 221.61182490136002, + 249.52749999636643, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 276.6563324910618, + null, + 249.52749999636643, + 248.52327233073666, + null, + 221.61182490136002, + 249.52749999636643, + null, + 203.86910624292852, + 249.52749999636643, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 276.6563324910618, + null, + 159.16447175525335, + 221.61182490136002, + null, + 203.86910624292852, + 221.61182490136002, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 276.6563324910618, + null, + 159.16447175525335, + 221.61182490136002, + null, + 203.86910624292852, + 221.61182490136002, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 276.6563324910618, + null, + 159.16447175525335, + 221.61182490136002, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 201.72089593314308, + null, + 159.16447175525335, + 203.86910624292852, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 201.72089593314308, + null, + 159.16447175525335, + 203.86910624292852, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 201.72089593314308, + null, + 159.16447175525335, + 203.86910624292852, + null, + 163.57870888154466, + 159.16447175525335, + null, + 159.16447175525335, + 203.86910624292852, + null, + 159.16447175525335, + 221.61182490136002, + null, + 159.16447175525335, + 138.23855367050317, + null, + 163.57870888154466, + 159.16447175525335, + null, + 159.16447175525335, + 203.86910624292852, + null, + 159.16447175525335, + 221.61182490136002, + null, + 159.16447175525335, + 138.23855367050317, + null, + 163.57870888154466, + 159.16447175525335, + null, + 159.16447175525335, + 203.86910624292852, + null, + 159.16447175525335, + 221.61182490136002, + null, + 159.16447175525335, + 138.23855367050317, + null, + 325.43068655275226, + 328.02295526836434, + null, + 336.8347617095979, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 328.02295526836434, + null, + 248.52327233073666, + 328.02295526836434, + null, + 325.43068655275226, + 328.02295526836434, + null, + 336.8347617095979, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 328.02295526836434, + null, + 248.52327233073666, + 328.02295526836434, + null, + 325.43068655275226, + 328.02295526836434, + null, + 336.8347617095979, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 328.02295526836434, + null, + 248.52327233073666, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 289.4655368398485, + null, + 201.72089593314308, + 289.4655368398485, + null, + 248.52327233073666, + 289.4655368398485, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 289.4655368398485, + null, + 201.72089593314308, + 289.4655368398485, + null, + 248.52327233073666, + 289.4655368398485, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 289.4655368398485, + null, + 201.72089593314308, + 289.4655368398485, + null, + 248.52327233073666, + 289.4655368398485, + null, + 248.52327233073666, + 328.02295526836434, + null, + 248.52327233073666, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 249.52749999636643, + 248.52327233073666, + null, + 248.52327233073666, + 328.02295526836434, + null, + 248.52327233073666, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 249.52749999636643, + 248.52327233073666, + null, + 248.52327233073666, + 328.02295526836434, + null, + 248.52327233073666, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 249.52749999636643, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 201.72089593314308, + 289.4655368398485, + null, + 201.72089593314308, + 215.6839315745106, + null, + 138.23855367050317, + 201.72089593314308, + null, + 203.86910624292852, + 201.72089593314308, + null, + 201.72089593314308, + 248.52327233073666, + null, + 201.72089593314308, + 289.4655368398485, + null, + 201.72089593314308, + 215.6839315745106, + null, + 138.23855367050317, + 201.72089593314308, + null, + 203.86910624292852, + 201.72089593314308, + null, + 201.72089593314308, + 248.52327233073666, + null, + 201.72089593314308, + 289.4655368398485, + null, + 201.72089593314308, + 215.6839315745106, + null, + 138.23855367050317, + 201.72089593314308, + null, + 203.86910624292852, + 201.72089593314308, + null, + 215.6839315745106, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 138.23855367050317, + 215.6839315745106, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 138.23855367050317, + 215.6839315745106, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 138.23855367050317, + 215.6839315745106, + null, + 201.72089593314308, + 215.6839315745106, + null, + 159.16447175525335, + 138.23855367050317, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 215.6839315745106, + null, + 159.16447175525335, + 138.23855367050317, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 215.6839315745106, + null, + 159.16447175525335, + 138.23855367050317, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 215.6839315745106, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 199.37980872606502, + null, + 221.61182490136002, + 240.9768148982843, + null, + 221.61182490136002, + 248.47977798016697, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 199.37980872606502, + null, + 221.61182490136002, + 240.9768148982843, + null, + 221.61182490136002, + 248.47977798016697, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 199.37980872606502, + null, + 221.61182490136002, + 240.9768148982843, + null, + 221.61182490136002, + 248.47977798016697, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 248.47977798016697, + null, + 203.86910624292852, + 199.37980872606502, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 248.47977798016697, + null, + 203.86910624292852, + 199.37980872606502, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 248.47977798016697, + null, + 203.86910624292852, + 199.37980872606502, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 199.37980872606502, + null, + 249.52749999636643, + 240.9768148982843, + null, + 249.52749999636643, + 248.47977798016697, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 199.37980872606502, + null, + 249.52749999636643, + 240.9768148982843, + null, + 249.52749999636643, + 248.47977798016697, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 199.37980872606502, + null, + 249.52749999636643, + 240.9768148982843, + null, + 249.52749999636643, + 248.47977798016697, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 201.72089593314308, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 201.72089593314308, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 201.72089593314308, + 165.05847680908929, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 165.05847680908929, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 165.05847680908929, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 165.05847680908929, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 202.96487838656364, + null, + 214.26386988273063, + 202.41817821325733, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 202.96487838656364, + null, + 214.26386988273063, + 202.41817821325733, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 202.96487838656364, + null, + 214.26386988273063, + 202.41817821325733, + null, + 250.9934191667397, + 270.4143750740704, + null, + 250.9934191667397, + 202.96487838656364, + null, + 250.9934191667397, + 202.41817821325733, + null, + 250.9934191667397, + 270.4143750740704, + null, + 250.9934191667397, + 202.96487838656364, + null, + 250.9934191667397, + 202.41817821325733, + null, + 250.9934191667397, + 270.4143750740704, + null, + 250.9934191667397, + 202.96487838656364, + null, + 250.9934191667397, + 202.41817821325733, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 202.41817821325733, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 202.41817821325733, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 202.41817821325733, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 299.94424611936336, + null, + 270.4143750740704, + 202.96487838656364, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 299.94424611936336, + null, + 270.4143750740704, + 202.96487838656364, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 299.94424611936336, + null, + 270.4143750740704, + 202.96487838656364, + null, + 295.94347733111357, + 304.75795641905216, + null, + 304.75795641905216, + 299.94424611936336, + null, + 295.94347733111357, + 304.75795641905216, + null, + 304.75795641905216, + 299.94424611936336, + null, + 295.94347733111357, + 304.75795641905216, + null, + 304.75795641905216, + 299.94424611936336, + null, + 268.74571889109444, + 252.16980251003608, + null, + 268.74571889109444, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 268.74571889109444, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 268.74571889109444, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 267.99952369795295, + null, + 268.74571889109444, + 329.1409467952837, + null, + 329.1409467952837, + 267.99952369795295, + null, + 268.74571889109444, + 329.1409467952837, + null, + 329.1409467952837, + 267.99952369795295, + null, + 268.74571889109444, + 329.1409467952837, + null, + 329.1409467952837, + 267.99952369795295, + null, + 274.16999172191623, + 286.4202879280776, + null, + 286.4202879280776, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 286.4202879280776, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 286.4202879280776, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 294.8935984343935, + null, + 357.64977743493023, + 350.7907509338832, + null, + 350.7907509338832, + 356.74772868211835, + null, + 350.7907509338832, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 357.64977743493023, + 350.7907509338832, + null, + 350.7907509338832, + 356.74772868211835, + null, + 350.7907509338832, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 357.64977743493023, + 350.7907509338832, + null, + 350.7907509338832, + 356.74772868211835, + null, + 350.7907509338832, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 357.64977743493023, + 350.7907509338832, + null, + 321.1251602489893, + 357.64977743493023, + null, + 260.44667379669994, + 357.64977743493023, + null, + 310.5141435446614, + 357.64977743493023, + null, + 357.64977743493023, + 356.74772868211835, + null, + 357.64977743493023, + 347.16604166087524, + null, + 357.64977743493023, + 350.7907509338832, + null, + 321.1251602489893, + 357.64977743493023, + null, + 260.44667379669994, + 357.64977743493023, + null, + 310.5141435446614, + 357.64977743493023, + null, + 357.64977743493023, + 356.74772868211835, + null, + 357.64977743493023, + 347.16604166087524, + null, + 357.64977743493023, + 350.7907509338832, + null, + 321.1251602489893, + 357.64977743493023, + null, + 260.44667379669994, + 357.64977743493023, + null, + 310.5141435446614, + 357.64977743493023, + null, + 357.64977743493023, + 356.74772868211835, + null, + 357.64977743493023, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 268.74571889109444, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 329.1409467952837, + 350.7907509338832, + null, + 268.74571889109444, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 329.1409467952837, + 350.7907509338832, + null, + 268.74571889109444, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 260.44667379669994, + 321.1251602489893, + null, + 183.8924770122804, + 321.1251602489893, + null, + 229.20972216423704, + 321.1251602489893, + null, + 310.5141435446614, + 321.1251602489893, + null, + 321.1251602489893, + 357.64977743493023, + null, + 321.1251602489893, + 329.1409467952837, + null, + 260.44667379669994, + 321.1251602489893, + null, + 183.8924770122804, + 321.1251602489893, + null, + 229.20972216423704, + 321.1251602489893, + null, + 310.5141435446614, + 321.1251602489893, + null, + 321.1251602489893, + 357.64977743493023, + null, + 321.1251602489893, + 329.1409467952837, + null, + 260.44667379669994, + 321.1251602489893, + null, + 183.8924770122804, + 321.1251602489893, + null, + 229.20972216423704, + 321.1251602489893, + null, + 310.5141435446614, + 321.1251602489893, + null, + 321.1251602489893, + 357.64977743493023, + null, + 310.5141435446614, + 321.1251602489893, + null, + 260.44667379669994, + 310.5141435446614, + null, + 229.20972216423704, + 310.5141435446614, + null, + 310.5141435446614, + 357.64977743493023, + null, + 310.5141435446614, + 321.1251602489893, + null, + 260.44667379669994, + 310.5141435446614, + null, + 229.20972216423704, + 310.5141435446614, + null, + 310.5141435446614, + 357.64977743493023, + null, + 310.5141435446614, + 321.1251602489893, + null, + 260.44667379669994, + 310.5141435446614, + null, + 229.20972216423704, + 310.5141435446614, + null, + 310.5141435446614, + 357.64977743493023, + null, + 260.44667379669994, + 310.5141435446614, + null, + 260.44667379669994, + 357.64977743493023, + null, + 260.44667379669994, + 321.1251602489893, + null, + 260.44667379669994, + 268.74571889109444, + null, + 260.44667379669994, + 268.9155630911593, + null, + 183.8924770122804, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 260.44667379669994, + 310.5141435446614, + null, + 260.44667379669994, + 357.64977743493023, + null, + 260.44667379669994, + 321.1251602489893, + null, + 260.44667379669994, + 268.74571889109444, + null, + 260.44667379669994, + 268.9155630911593, + null, + 183.8924770122804, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 260.44667379669994, + 310.5141435446614, + null, + 260.44667379669994, + 357.64977743493023, + null, + 260.44667379669994, + 321.1251602489893, + null, + 260.44667379669994, + 268.74571889109444, + null, + 260.44667379669994, + 268.9155630911593, + null, + 183.8924770122804, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 183.8924770122804, + 229.20972216423704, + null, + 229.20972216423704, + 310.5141435446614, + null, + 229.20972216423704, + 357.64977743493023, + null, + 229.20972216423704, + 321.1251602489893, + null, + 229.20972216423704, + 260.44667379669994, + null, + 183.8924770122804, + 229.20972216423704, + null, + 229.20972216423704, + 310.5141435446614, + null, + 229.20972216423704, + 357.64977743493023, + null, + 229.20972216423704, + 321.1251602489893, + null, + 229.20972216423704, + 260.44667379669994, + null, + 183.8924770122804, + 229.20972216423704, + null, + 229.20972216423704, + 310.5141435446614, + null, + 229.20972216423704, + 357.64977743493023, + null, + 229.20972216423704, + 321.1251602489893, + null, + 183.8924770122804, + 229.20972216423704, + null, + 183.8924770122804, + 321.1251602489893, + null, + 183.8924770122804, + 260.44667379669994, + null, + 183.8924770122804, + 176.3495598178734, + null, + 183.8924770122804, + 229.20972216423704, + null, + 183.8924770122804, + 321.1251602489893, + null, + 183.8924770122804, + 260.44667379669994, + null, + 183.8924770122804, + 176.3495598178734, + null, + 183.8924770122804, + 229.20972216423704, + null, + 183.8924770122804, + 321.1251602489893, + null, + 183.8924770122804, + 260.44667379669994, + null, + 183.8924770122804, + 176.3495598178734, + null, + 357.64977743493023, + 356.74772868211835, + null, + 356.74772868211835, + 352.28315312547585, + null, + 356.74772868211835, + 339.3136931268799, + null, + 356.74772868211835, + 347.16604166087524, + null, + 350.7907509338832, + 356.74772868211835, + null, + 357.64977743493023, + 356.74772868211835, + null, + 356.74772868211835, + 352.28315312547585, + null, + 356.74772868211835, + 339.3136931268799, + null, + 356.74772868211835, + 347.16604166087524, + null, + 350.7907509338832, + 356.74772868211835, + null, + 357.64977743493023, + 356.74772868211835, + null, + 356.74772868211835, + 352.28315312547585, + null, + 356.74772868211835, + 339.3136931268799, + null, + 356.74772868211835, + 347.16604166087524, + null, + 350.7907509338832, + 356.74772868211835, + null, + 356.74772868211835, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 347.16604166087524, + 344.0349790848408, + null, + 347.16604166087524, + 339.3136931268799, + null, + 350.7907509338832, + 347.16604166087524, + null, + 356.74772868211835, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 347.16604166087524, + 344.0349790848408, + null, + 347.16604166087524, + 339.3136931268799, + null, + 350.7907509338832, + 347.16604166087524, + null, + 356.74772868211835, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 347.16604166087524, + 344.0349790848408, + null, + 347.16604166087524, + 339.3136931268799, + null, + 350.7907509338832, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 356.74772868211835, + 352.28315312547585, + null, + 352.28315312547585, + 344.0349790848408, + null, + 352.28315312547585, + 330.5748275330297, + null, + 352.28315312547585, + 339.3136931268799, + null, + 323.75984407225997, + 352.28315312547585, + null, + 315.48008590100574, + 352.28315312547585, + null, + 347.16604166087524, + 352.28315312547585, + null, + 356.74772868211835, + 352.28315312547585, + null, + 352.28315312547585, + 344.0349790848408, + null, + 352.28315312547585, + 330.5748275330297, + null, + 352.28315312547585, + 339.3136931268799, + null, + 323.75984407225997, + 352.28315312547585, + null, + 315.48008590100574, + 352.28315312547585, + null, + 347.16604166087524, + 352.28315312547585, + null, + 356.74772868211835, + 352.28315312547585, + null, + 352.28315312547585, + 344.0349790848408, + null, + 352.28315312547585, + 330.5748275330297, + null, + 352.28315312547585, + 339.3136931268799, + null, + 323.75984407225997, + 352.28315312547585, + null, + 315.48008590100574, + 352.28315312547585, + null, + 323.75984407225997, + 352.28315312547585, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.75984407225997, + 319.26741162901953, + null, + 323.75984407225997, + 319.3798803978522, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.48008590100574, + 323.75984407225997, + null, + 293.7774500615618, + 323.75984407225997, + null, + 323.75984407225997, + 352.28315312547585, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.75984407225997, + 319.26741162901953, + null, + 323.75984407225997, + 319.3798803978522, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.48008590100574, + 323.75984407225997, + null, + 293.7774500615618, + 323.75984407225997, + null, + 323.75984407225997, + 352.28315312547585, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.75984407225997, + 319.26741162901953, + null, + 323.75984407225997, + 319.3798803978522, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.48008590100574, + 323.75984407225997, + null, + 293.7774500615618, + 323.75984407225997, + null, + 315.48008590100574, + 323.75984407225997, + null, + 315.48008590100574, + 319.3798803978522, + null, + 315.48008590100574, + 323.535219144854, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 293.7774500615618, + 315.48008590100574, + null, + 315.48008590100574, + 352.28315312547585, + null, + 315.48008590100574, + 323.75984407225997, + null, + 315.48008590100574, + 319.3798803978522, + null, + 315.48008590100574, + 323.535219144854, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 293.7774500615618, + 315.48008590100574, + null, + 315.48008590100574, + 352.28315312547585, + null, + 315.48008590100574, + 323.75984407225997, + null, + 315.48008590100574, + 319.3798803978522, + null, + 315.48008590100574, + 323.535219144854, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 293.7774500615618, + 315.48008590100574, + null, + 315.48008590100574, + 352.28315312547585, + null, + 293.7774500615618, + 315.48008590100574, + null, + 293.7774500615618, + 286.4202879280776, + null, + 263.21980786798633, + 293.7774500615618, + null, + 293.7774500615618, + 352.28315312547585, + null, + 293.7774500615618, + 323.75984407225997, + null, + 293.7774500615618, + 315.48008590100574, + null, + 293.7774500615618, + 286.4202879280776, + null, + 263.21980786798633, + 293.7774500615618, + null, + 293.7774500615618, + 352.28315312547585, + null, + 293.7774500615618, + 323.75984407225997, + null, + 293.7774500615618, + 315.48008590100574, + null, + 293.7774500615618, + 286.4202879280776, + null, + 263.21980786798633, + 293.7774500615618, + null, + 293.7774500615618, + 352.28315312547585, + null, + 293.7774500615618, + 323.75984407225997, + null, + 352.28315312547585, + 339.3136931268799, + null, + 356.74772868211835, + 339.3136931268799, + null, + 347.16604166087524, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 319.26741162901953, + 339.3136931268799, + null, + 352.28315312547585, + 339.3136931268799, + null, + 356.74772868211835, + 339.3136931268799, + null, + 347.16604166087524, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 319.26741162901953, + 339.3136931268799, + null, + 352.28315312547585, + 339.3136931268799, + null, + 356.74772868211835, + 339.3136931268799, + null, + 347.16604166087524, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 319.26741162901953, + 339.3136931268799, + null, + 323.75984407225997, + 319.3798803978522, + null, + 319.3798803978522, + 323.535219144854, + null, + 319.3798803978522, + 319.26741162901953, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.48008590100574, + 319.3798803978522, + null, + 323.75984407225997, + 319.3798803978522, + null, + 319.3798803978522, + 323.535219144854, + null, + 319.3798803978522, + 319.26741162901953, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.48008590100574, + 319.3798803978522, + null, + 323.75984407225997, + 319.3798803978522, + null, + 319.3798803978522, + 323.535219144854, + null, + 319.3798803978522, + 319.26741162901953, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.48008590100574, + 319.3798803978522, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.29700711663065, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 323.75984407225997, + 315.29700711663065, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.29700711663065, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 323.75984407225997, + 315.29700711663065, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.29700711663065, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.48008590100574, + 323.535219144854, + null, + 319.3798803978522, + 323.535219144854, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.535219144854, + 319.26741162901953, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.48008590100574, + 323.535219144854, + null, + 319.3798803978522, + 323.535219144854, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.535219144854, + 319.26741162901953, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.48008590100574, + 323.535219144854, + null, + 319.3798803978522, + 323.535219144854, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.75984407225997, + 319.26741162901953, + null, + 319.3798803978522, + 319.26741162901953, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.29700711663065, + 319.26741162901953, + null, + 319.26741162901953, + 286.4202879280776, + null, + 319.26741162901953, + 339.3136931268799, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.75984407225997, + 319.26741162901953, + null, + 319.3798803978522, + 319.26741162901953, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.29700711663065, + 319.26741162901953, + null, + 319.26741162901953, + 286.4202879280776, + null, + 319.26741162901953, + 339.3136931268799, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.75984407225997, + 319.26741162901953, + null, + 319.3798803978522, + 319.26741162901953, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.29700711663065, + 319.26741162901953, + null, + 319.26741162901953, + 286.4202879280776, + null, + 319.26741162901953, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 352.28315312547585, + 344.0349790848408, + null, + 344.0349790848408, + 336.8347617095979, + null, + 344.0349790848408, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 339.3136931268799, + 344.0349790848408, + null, + 352.28315312547585, + 344.0349790848408, + null, + 344.0349790848408, + 336.8347617095979, + null, + 344.0349790848408, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 339.3136931268799, + 344.0349790848408, + null, + 352.28315312547585, + 344.0349790848408, + null, + 344.0349790848408, + 336.8347617095979, + null, + 344.0349790848408, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 344.0349790848408, + 330.5748275330297, + null, + 330.5748275330297, + 336.8347617095979, + null, + 330.5748275330297, + 325.43068655275226, + null, + 270.4143750740704, + 330.5748275330297, + null, + 295.94347733111357, + 330.5748275330297, + null, + 326.4052717945616, + 330.5748275330297, + null, + 339.3136931268799, + 330.5748275330297, + null, + 344.0349790848408, + 330.5748275330297, + null, + 330.5748275330297, + 336.8347617095979, + null, + 330.5748275330297, + 325.43068655275226, + null, + 270.4143750740704, + 330.5748275330297, + null, + 295.94347733111357, + 330.5748275330297, + null, + 326.4052717945616, + 330.5748275330297, + null, + 339.3136931268799, + 330.5748275330297, + null, + 344.0349790848408, + 330.5748275330297, + null, + 330.5748275330297, + 336.8347617095979, + null, + 330.5748275330297, + 325.43068655275226, + null, + 270.4143750740704, + 330.5748275330297, + null, + 295.94347733111357, + 330.5748275330297, + null, + 326.4052717945616, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 326.4052717945616, + 330.5748275330297, + null, + 295.94347733111357, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 326.4052717945616, + 344.0349790848408, + null, + 326.4052717945616, + 330.5748275330297, + null, + 295.94347733111357, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 326.4052717945616, + 344.0349790848408, + null, + 326.4052717945616, + 330.5748275330297, + null, + 295.94347733111357, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 330.5748275330297, + null, + 295.94347733111357, + 304.75795641905216, + null, + 268.91802835014585, + 304.75795641905216, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 330.5748275330297, + null, + 295.94347733111357, + 304.75795641905216, + null, + 268.91802835014585, + 304.75795641905216, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 330.5748275330297, + null, + 295.94347733111357, + 304.75795641905216, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 250.9934191667397, + 270.4143750740704, + null, + 214.26386988273063, + 270.4143750740704, + null, + 270.4143750740704, + 268.91802835014585, + null, + 270.4143750740704, + 274.31922718174684, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 250.9934191667397, + 270.4143750740704, + null, + 214.26386988273063, + 270.4143750740704, + null, + 270.4143750740704, + 268.91802835014585, + null, + 270.4143750740704, + 274.31922718174684, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 250.9934191667397, + 270.4143750740704, + null, + 214.26386988273063, + 270.4143750740704, + null, + 270.4143750740704, + 268.91802835014585, + null, + 270.4143750740704, + 274.31922718174684, + null, + 270.4143750740704, + 295.94347733111357, + null, + 344.0349790848408, + 336.8347617095979, + null, + 336.8347617095979, + 328.02295526836434, + null, + 336.8347617095979, + 325.43068655275226, + null, + 303.072238869132, + 336.8347617095979, + null, + 307.18441630869097, + 336.8347617095979, + null, + 330.5748275330297, + 336.8347617095979, + null, + 344.0349790848408, + 336.8347617095979, + null, + 336.8347617095979, + 328.02295526836434, + null, + 336.8347617095979, + 325.43068655275226, + null, + 303.072238869132, + 336.8347617095979, + null, + 307.18441630869097, + 336.8347617095979, + null, + 330.5748275330297, + 336.8347617095979, + null, + 344.0349790848408, + 336.8347617095979, + null, + 336.8347617095979, + 328.02295526836434, + null, + 336.8347617095979, + 325.43068655275226, + null, + 303.072238869132, + 336.8347617095979, + null, + 307.18441630869097, + 336.8347617095979, + null, + 330.5748275330297, + 336.8347617095979, + null, + 270.4143750740704, + 295.94347733111357, + null, + 295.94347733111357, + 304.75795641905216, + null, + 295.94347733111357, + 326.4052717945616, + null, + 295.94347733111357, + 330.5748275330297, + null, + 270.4143750740704, + 295.94347733111357, + null, + 295.94347733111357, + 304.75795641905216, + null, + 295.94347733111357, + 326.4052717945616, + null, + 295.94347733111357, + 330.5748275330297, + null, + 270.4143750740704, + 295.94347733111357, + null, + 295.94347733111357, + 304.75795641905216, + null, + 295.94347733111357, + 326.4052717945616, + null, + 295.94347733111357, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 307.18441630869097, + 336.8347617095979, + null, + 307.18441630869097, + 325.43068655275226, + null, + 303.072238869132, + 307.18441630869097, + null, + 270.4143750740704, + 307.18441630869097, + null, + 307.18441630869097, + 336.8347617095979, + null, + 307.18441630869097, + 325.43068655275226, + null, + 303.072238869132, + 307.18441630869097, + null, + 270.4143750740704, + 307.18441630869097, + null, + 307.18441630869097, + 336.8347617095979, + null, + 307.18441630869097, + 325.43068655275226, + null, + 303.072238869132, + 307.18441630869097, + null, + 183.8924770122804, + 176.3495598178734, + null, + 176.3495598178734, + 233.51303476069197, + null, + 176.3495598178734, + 263.21980786798633, + null, + 176.3495598178734, + 169.32016360849502, + null, + 183.8924770122804, + 176.3495598178734, + null, + 176.3495598178734, + 233.51303476069197, + null, + 176.3495598178734, + 263.21980786798633, + null, + 176.3495598178734, + 169.32016360849502, + null, + 183.8924770122804, + 176.3495598178734, + null, + 176.3495598178734, + 233.51303476069197, + null, + 176.3495598178734, + 263.21980786798633, + null, + 176.3495598178734, + 169.32016360849502, + null, + 176.3495598178734, + 263.21980786798633, + null, + 233.51303476069197, + 263.21980786798633, + null, + 232.5229570390016, + 263.21980786798633, + null, + 249.64459906857965, + 263.21980786798633, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.9155630911593, + 263.21980786798633, + null, + 263.21980786798633, + 293.7774500615618, + null, + 263.21980786798633, + 258.97618350915224, + null, + 176.3495598178734, + 263.21980786798633, + null, + 233.51303476069197, + 263.21980786798633, + null, + 232.5229570390016, + 263.21980786798633, + null, + 249.64459906857965, + 263.21980786798633, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.9155630911593, + 263.21980786798633, + null, + 263.21980786798633, + 293.7774500615618, + null, + 263.21980786798633, + 258.97618350915224, + null, + 176.3495598178734, + 263.21980786798633, + null, + 233.51303476069197, + 263.21980786798633, + null, + 232.5229570390016, + 263.21980786798633, + null, + 249.64459906857965, + 263.21980786798633, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.9155630911593, + 263.21980786798633, + null, + 263.21980786798633, + 293.7774500615618, + null, + 263.21980786798633, + 258.97618350915224, + null, + 233.51303476069197, + 263.21980786798633, + null, + 176.3495598178734, + 233.51303476069197, + null, + 232.5229570390016, + 233.51303476069197, + null, + 233.51303476069197, + 263.21980786798633, + null, + 176.3495598178734, + 233.51303476069197, + null, + 232.5229570390016, + 233.51303476069197, + null, + 233.51303476069197, + 263.21980786798633, + null, + 176.3495598178734, + 233.51303476069197, + null, + 232.5229570390016, + 233.51303476069197, + null, + 268.74571889109444, + 329.1409467952837, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.74571889109444, + 252.16980251003608, + null, + 260.44667379669994, + 268.74571889109444, + null, + 268.74571889109444, + 329.1409467952837, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.74571889109444, + 252.16980251003608, + null, + 260.44667379669994, + 268.74571889109444, + null, + 268.74571889109444, + 329.1409467952837, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.74571889109444, + 252.16980251003608, + null, + 260.44667379669994, + 268.74571889109444, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.9155630911593, + 258.97618350915224, + null, + 268.9155630911593, + 263.21980786798633, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 268.9155630911593, + null, + 252.16980251003608, + 268.9155630911593, + null, + 260.44667379669994, + 268.9155630911593, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.9155630911593, + 258.97618350915224, + null, + 268.9155630911593, + 263.21980786798633, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 268.9155630911593, + null, + 252.16980251003608, + 268.9155630911593, + null, + 260.44667379669994, + 268.9155630911593, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.9155630911593, + 258.97618350915224, + null, + 268.9155630911593, + 263.21980786798633, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 268.9155630911593, + null, + 252.16980251003608, + 268.9155630911593, + null, + 260.44667379669994, + 268.9155630911593, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 268.9155630911593, + null, + 249.64459906857965, + 252.16980251003608, + null, + 232.5229570390016, + 252.16980251003608, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 268.9155630911593, + null, + 249.64459906857965, + 252.16980251003608, + null, + 232.5229570390016, + 252.16980251003608, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 268.9155630911593, + null, + 249.64459906857965, + 252.16980251003608, + null, + 232.5229570390016, + 252.16980251003608, + null, + 249.64459906857965, + 263.21980786798633, + null, + 232.5229570390016, + 249.64459906857965, + null, + 249.64459906857965, + 252.16980251003608, + null, + 249.64459906857965, + 268.9155630911593, + null, + 249.64459906857965, + 263.21980786798633, + null, + 232.5229570390016, + 249.64459906857965, + null, + 249.64459906857965, + 252.16980251003608, + null, + 249.64459906857965, + 268.9155630911593, + null, + 249.64459906857965, + 263.21980786798633, + null, + 232.5229570390016, + 249.64459906857965, + null, + 249.64459906857965, + 252.16980251003608, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 252.16980251003608, + null, + 232.5229570390016, + 268.9155630911593, + null, + 232.5229570390016, + 249.64459906857965, + null, + 232.5229570390016, + 263.21980786798633, + null, + 232.5229570390016, + 233.51303476069197, + null, + 232.5229570390016, + 252.16980251003608, + null, + 232.5229570390016, + 268.9155630911593, + null, + 232.5229570390016, + 249.64459906857965, + null, + 232.5229570390016, + 263.21980786798633, + null, + 232.5229570390016, + 233.51303476069197, + null, + 232.5229570390016, + 252.16980251003608, + null, + 232.5229570390016, + 268.9155630911593, + null, + 232.5229570390016, + 249.64459906857965, + null, + 232.5229570390016, + 263.21980786798633, + null, + 232.5229570390016, + 233.51303476069197, + null, + 293.7774500615618, + 286.4202879280776, + null, + 319.26741162901953, + 286.4202879280776, + null, + 286.4202879280776, + 274.31922718174684, + null, + 274.16999172191623, + 286.4202879280776, + null, + 258.97618350915224, + 286.4202879280776, + null, + 293.7774500615618, + 286.4202879280776, + null, + 319.26741162901953, + 286.4202879280776, + null, + 286.4202879280776, + 274.31922718174684, + null, + 274.16999172191623, + 286.4202879280776, + null, + 258.97618350915224, + 286.4202879280776, + null, + 293.7774500615618, + 286.4202879280776, + null, + 319.26741162901953, + 286.4202879280776, + null, + 286.4202879280776, + 274.31922718174684, + null, + 274.16999172191623, + 286.4202879280776, + null, + 258.97618350915224, + 286.4202879280776, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 274.31922718174684, + null, + 274.16999172191623, + 268.91802835014585, + null, + 258.97618350915224, + 274.16999172191623, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 274.31922718174684, + null, + 274.16999172191623, + 268.91802835014585, + null, + 258.97618350915224, + 274.16999172191623, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 274.31922718174684, + null, + 274.16999172191623, + 268.91802835014585, + null, + 258.97618350915224, + 274.16999172191623, + null, + 263.21980786798633, + 258.97618350915224, + null, + 258.97618350915224, + 286.4202879280776, + null, + 258.97618350915224, + 274.16999172191623, + null, + 225.3765595708624, + 258.97618350915224, + null, + 263.21980786798633, + 258.97618350915224, + null, + 258.97618350915224, + 286.4202879280776, + null, + 258.97618350915224, + 274.16999172191623, + null, + 225.3765595708624, + 258.97618350915224, + null, + 263.21980786798633, + 258.97618350915224, + null, + 258.97618350915224, + 286.4202879280776, + null, + 258.97618350915224, + 274.16999172191623, + null, + 225.3765595708624, + 258.97618350915224, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 268.91802835014585, + null, + 250.9934191667397, + 268.91802835014585, + null, + 274.16999172191623, + 268.91802835014585, + null, + 268.91802835014585, + 274.31922718174684, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 268.91802835014585, + null, + 250.9934191667397, + 268.91802835014585, + null, + 274.16999172191623, + 268.91802835014585, + null, + 268.91802835014585, + 274.31922718174684, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 268.91802835014585, + null, + 250.9934191667397, + 268.91802835014585, + null, + 274.16999172191623, + 268.91802835014585, + null, + 268.91802835014585, + 274.31922718174684, + null, + 274.16999172191623, + 274.31922718174684, + null, + 286.4202879280776, + 274.31922718174684, + null, + 270.4143750740704, + 274.31922718174684, + null, + 268.91802835014585, + 274.31922718174684, + null, + 223.31778966202364, + 274.31922718174684, + null, + 274.16999172191623, + 274.31922718174684, + null, + 286.4202879280776, + 274.31922718174684, + null, + 270.4143750740704, + 274.31922718174684, + null, + 268.91802835014585, + 274.31922718174684, + null, + 223.31778966202364, + 274.31922718174684, + null, + 274.16999172191623, + 274.31922718174684, + null, + 286.4202879280776, + 274.31922718174684, + null, + 270.4143750740704, + 274.31922718174684, + null, + 268.91802835014585, + 274.31922718174684, + null, + 223.31778966202364, + 274.31922718174684, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 250.9934191667397, + null, + 163.57870888154466, + 214.26386988273063, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 214.26386988273063, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 250.9934191667397, + null, + 163.57870888154466, + 214.26386988273063, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 214.26386988273063, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 250.9934191667397, + null, + 163.57870888154466, + 214.26386988273063, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 214.26386988273063, + null, + 250.9934191667397, + 268.91802835014585, + null, + 250.9934191667397, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 214.26386988273063, + 250.9934191667397, + null, + 250.9934191667397, + 268.91802835014585, + null, + 250.9934191667397, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 214.26386988273063, + 250.9934191667397, + null, + 250.9934191667397, + 268.91802835014585, + null, + 250.9934191667397, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 214.26386988273063, + 250.9934191667397, + null, + 176.3495598178734, + 169.32016360849502, + null, + 169.32016360849502, + 225.3765595708624, + null, + 169.32016360849502, + 223.31778966202364, + null, + 169.32016360849502, + 163.57870888154466, + null, + 176.3495598178734, + 169.32016360849502, + null, + 169.32016360849502, + 225.3765595708624, + null, + 169.32016360849502, + 223.31778966202364, + null, + 169.32016360849502, + 163.57870888154466, + null, + 176.3495598178734, + 169.32016360849502, + null, + 169.32016360849502, + 225.3765595708624, + null, + 169.32016360849502, + 223.31778966202364, + null, + 169.32016360849502, + 163.57870888154466, + null, + 169.32016360849502, + 163.57870888154466, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 163.57870888154466, + 159.16447175525335, + null, + 169.32016360849502, + 163.57870888154466, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 163.57870888154466, + 159.16447175525335, + null, + 169.32016360849502, + 163.57870888154466, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 163.57870888154466, + 159.16447175525335, + null, + 169.32016360849502, + 225.3765595708624, + null, + 225.3765595708624, + 258.97618350915224, + null, + 223.31778966202364, + 225.3765595708624, + null, + 225.3765595708624, + 214.26386988273063, + null, + 169.32016360849502, + 225.3765595708624, + null, + 225.3765595708624, + 258.97618350915224, + null, + 223.31778966202364, + 225.3765595708624, + null, + 225.3765595708624, + 214.26386988273063, + null, + 169.32016360849502, + 225.3765595708624, + null, + 225.3765595708624, + 258.97618350915224, + null, + 223.31778966202364, + 225.3765595708624, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 225.3765595708624, + null, + 223.31778966202364, + 274.31922718174684, + null, + 223.31778966202364, + 214.26386988273063, + null, + 169.32016360849502, + 223.31778966202364, + null, + 223.31778966202364, + 225.3765595708624, + null, + 223.31778966202364, + 274.31922718174684, + null, + 223.31778966202364, + 214.26386988273063, + null, + 169.32016360849502, + 223.31778966202364, + null, + 223.31778966202364, + 225.3765595708624, + null, + 223.31778966202364, + 274.31922718174684, + null, + 223.31778966202364, + 214.26386988273063, + null, + 169.32016360849502, + 223.31778966202364, + null, + 330.5748275330297, + 325.43068655275226, + null, + 336.8347617095979, + 325.43068655275226, + null, + 325.43068655275226, + 328.02295526836434, + null, + 276.6563324910618, + 325.43068655275226, + null, + 303.072238869132, + 325.43068655275226, + null, + 307.18441630869097, + 325.43068655275226, + null, + 330.5748275330297, + 325.43068655275226, + null, + 336.8347617095979, + 325.43068655275226, + null, + 325.43068655275226, + 328.02295526836434, + null, + 276.6563324910618, + 325.43068655275226, + null, + 303.072238869132, + 325.43068655275226, + null, + 307.18441630869097, + 325.43068655275226, + null, + 330.5748275330297, + 325.43068655275226, + null, + 336.8347617095979, + 325.43068655275226, + null, + 325.43068655275226, + 328.02295526836434, + null, + 276.6563324910618, + 325.43068655275226, + null, + 303.072238869132, + 325.43068655275226, + null, + 307.18441630869097, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 276.6563324910618, + 325.43068655275226, + null, + 221.61182490136002, + 276.6563324910618, + null, + 203.86910624292852, + 276.6563324910618, + null, + 249.52749999636643, + 276.6563324910618, + null, + 276.6563324910618, + 303.072238869132, + null, + 276.6563324910618, + 325.43068655275226, + null, + 221.61182490136002, + 276.6563324910618, + null, + 203.86910624292852, + 276.6563324910618, + null, + 249.52749999636643, + 276.6563324910618, + null, + 276.6563324910618, + 303.072238869132, + null, + 276.6563324910618, + 325.43068655275226, + null, + 221.61182490136002, + 276.6563324910618, + null, + 203.86910624292852, + 276.6563324910618, + null, + 249.52749999636643, + 276.6563324910618, + null, + 303.072238869132, + 307.18441630869097, + null, + 303.072238869132, + 336.8347617095979, + null, + 303.072238869132, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 303.072238869132, + 307.18441630869097, + null, + 303.072238869132, + 336.8347617095979, + null, + 303.072238869132, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 303.072238869132, + 307.18441630869097, + null, + 303.072238869132, + 336.8347617095979, + null, + 303.072238869132, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 276.6563324910618, + null, + 249.52749999636643, + 248.52327233073666, + null, + 221.61182490136002, + 249.52749999636643, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 276.6563324910618, + null, + 249.52749999636643, + 248.52327233073666, + null, + 221.61182490136002, + 249.52749999636643, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 276.6563324910618, + null, + 249.52749999636643, + 248.52327233073666, + null, + 221.61182490136002, + 249.52749999636643, + null, + 203.86910624292852, + 249.52749999636643, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 276.6563324910618, + null, + 159.16447175525335, + 221.61182490136002, + null, + 203.86910624292852, + 221.61182490136002, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 276.6563324910618, + null, + 159.16447175525335, + 221.61182490136002, + null, + 203.86910624292852, + 221.61182490136002, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 276.6563324910618, + null, + 159.16447175525335, + 221.61182490136002, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 201.72089593314308, + null, + 159.16447175525335, + 203.86910624292852, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 201.72089593314308, + null, + 159.16447175525335, + 203.86910624292852, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 201.72089593314308, + null, + 159.16447175525335, + 203.86910624292852, + null, + 163.57870888154466, + 159.16447175525335, + null, + 159.16447175525335, + 203.86910624292852, + null, + 159.16447175525335, + 221.61182490136002, + null, + 159.16447175525335, + 138.23855367050317, + null, + 163.57870888154466, + 159.16447175525335, + null, + 159.16447175525335, + 203.86910624292852, + null, + 159.16447175525335, + 221.61182490136002, + null, + 159.16447175525335, + 138.23855367050317, + null, + 163.57870888154466, + 159.16447175525335, + null, + 159.16447175525335, + 203.86910624292852, + null, + 159.16447175525335, + 221.61182490136002, + null, + 159.16447175525335, + 138.23855367050317, + null, + 325.43068655275226, + 328.02295526836434, + null, + 336.8347617095979, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 328.02295526836434, + null, + 248.52327233073666, + 328.02295526836434, + null, + 325.43068655275226, + 328.02295526836434, + null, + 336.8347617095979, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 328.02295526836434, + null, + 248.52327233073666, + 328.02295526836434, + null, + 325.43068655275226, + 328.02295526836434, + null, + 336.8347617095979, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 328.02295526836434, + null, + 248.52327233073666, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 289.4655368398485, + null, + 201.72089593314308, + 289.4655368398485, + null, + 248.52327233073666, + 289.4655368398485, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 289.4655368398485, + null, + 201.72089593314308, + 289.4655368398485, + null, + 248.52327233073666, + 289.4655368398485, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 289.4655368398485, + null, + 201.72089593314308, + 289.4655368398485, + null, + 248.52327233073666, + 289.4655368398485, + null, + 248.52327233073666, + 328.02295526836434, + null, + 248.52327233073666, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 249.52749999636643, + 248.52327233073666, + null, + 248.52327233073666, + 328.02295526836434, + null, + 248.52327233073666, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 249.52749999636643, + 248.52327233073666, + null, + 248.52327233073666, + 328.02295526836434, + null, + 248.52327233073666, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 249.52749999636643, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 201.72089593314308, + 289.4655368398485, + null, + 201.72089593314308, + 215.6839315745106, + null, + 138.23855367050317, + 201.72089593314308, + null, + 203.86910624292852, + 201.72089593314308, + null, + 201.72089593314308, + 248.52327233073666, + null, + 201.72089593314308, + 289.4655368398485, + null, + 201.72089593314308, + 215.6839315745106, + null, + 138.23855367050317, + 201.72089593314308, + null, + 203.86910624292852, + 201.72089593314308, + null, + 201.72089593314308, + 248.52327233073666, + null, + 201.72089593314308, + 289.4655368398485, + null, + 201.72089593314308, + 215.6839315745106, + null, + 138.23855367050317, + 201.72089593314308, + null, + 203.86910624292852, + 201.72089593314308, + null, + 215.6839315745106, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 138.23855367050317, + 215.6839315745106, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 138.23855367050317, + 215.6839315745106, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 138.23855367050317, + 215.6839315745106, + null, + 201.72089593314308, + 215.6839315745106, + null, + 159.16447175525335, + 138.23855367050317, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 215.6839315745106, + null, + 159.16447175525335, + 138.23855367050317, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 215.6839315745106, + null, + 159.16447175525335, + 138.23855367050317, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 215.6839315745106, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 199.37980872606502, + null, + 221.61182490136002, + 240.9768148982843, + null, + 221.61182490136002, + 248.47977798016697, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 199.37980872606502, + null, + 221.61182490136002, + 240.9768148982843, + null, + 221.61182490136002, + 248.47977798016697, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 199.37980872606502, + null, + 221.61182490136002, + 240.9768148982843, + null, + 221.61182490136002, + 248.47977798016697, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 248.47977798016697, + null, + 203.86910624292852, + 199.37980872606502, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 248.47977798016697, + null, + 203.86910624292852, + 199.37980872606502, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 248.47977798016697, + null, + 203.86910624292852, + 199.37980872606502, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 199.37980872606502, + null, + 249.52749999636643, + 240.9768148982843, + null, + 249.52749999636643, + 248.47977798016697, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 199.37980872606502, + null, + 249.52749999636643, + 240.9768148982843, + null, + 249.52749999636643, + 248.47977798016697, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 199.37980872606502, + null, + 249.52749999636643, + 240.9768148982843, + null, + 249.52749999636643, + 248.47977798016697, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 201.72089593314308, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 201.72089593314308, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 201.72089593314308, + 165.05847680908929, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 165.05847680908929, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 165.05847680908929, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 165.05847680908929, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 202.96487838656364, + null, + 214.26386988273063, + 202.41817821325733, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 202.96487838656364, + null, + 214.26386988273063, + 202.41817821325733, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 202.96487838656364, + null, + 214.26386988273063, + 202.41817821325733, + null, + 250.9934191667397, + 270.4143750740704, + null, + 250.9934191667397, + 202.96487838656364, + null, + 250.9934191667397, + 202.41817821325733, + null, + 250.9934191667397, + 270.4143750740704, + null, + 250.9934191667397, + 202.96487838656364, + null, + 250.9934191667397, + 202.41817821325733, + null, + 250.9934191667397, + 270.4143750740704, + null, + 250.9934191667397, + 202.96487838656364, + null, + 250.9934191667397, + 202.41817821325733, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 202.41817821325733, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 202.41817821325733, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 202.41817821325733, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 299.94424611936336, + null, + 270.4143750740704, + 202.96487838656364, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 299.94424611936336, + null, + 270.4143750740704, + 202.96487838656364, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 299.94424611936336, + null, + 270.4143750740704, + 202.96487838656364, + null, + 295.94347733111357, + 304.75795641905216, + null, + 304.75795641905216, + 299.94424611936336, + null, + 295.94347733111357, + 304.75795641905216, + null, + 304.75795641905216, + 299.94424611936336, + null, + 295.94347733111357, + 304.75795641905216, + null, + 304.75795641905216, + 299.94424611936336, + null, + 268.74571889109444, + 252.16980251003608, + null, + 268.74571889109444, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 268.74571889109444, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 268.74571889109444, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 267.99952369795295, + null, + 268.74571889109444, + 329.1409467952837, + null, + 329.1409467952837, + 267.99952369795295, + null, + 268.74571889109444, + 329.1409467952837, + null, + 329.1409467952837, + 267.99952369795295, + null, + 268.74571889109444, + 329.1409467952837, + null, + 329.1409467952837, + 267.99952369795295, + null, + 274.16999172191623, + 286.4202879280776, + null, + 286.4202879280776, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 286.4202879280776, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 286.4202879280776, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 294.8935984343935, + null, + 357.64977743493023, + 350.7907509338832, + null, + 350.7907509338832, + 356.74772868211835, + null, + 350.7907509338832, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 357.64977743493023, + 350.7907509338832, + null, + 350.7907509338832, + 356.74772868211835, + null, + 350.7907509338832, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 357.64977743493023, + 350.7907509338832, + null, + 350.7907509338832, + 356.74772868211835, + null, + 350.7907509338832, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 357.64977743493023, + 350.7907509338832, + null, + 321.1251602489893, + 357.64977743493023, + null, + 260.44667379669994, + 357.64977743493023, + null, + 310.5141435446614, + 357.64977743493023, + null, + 357.64977743493023, + 356.74772868211835, + null, + 357.64977743493023, + 347.16604166087524, + null, + 357.64977743493023, + 350.7907509338832, + null, + 321.1251602489893, + 357.64977743493023, + null, + 260.44667379669994, + 357.64977743493023, + null, + 310.5141435446614, + 357.64977743493023, + null, + 357.64977743493023, + 356.74772868211835, + null, + 357.64977743493023, + 347.16604166087524, + null, + 357.64977743493023, + 350.7907509338832, + null, + 321.1251602489893, + 357.64977743493023, + null, + 260.44667379669994, + 357.64977743493023, + null, + 310.5141435446614, + 357.64977743493023, + null, + 357.64977743493023, + 356.74772868211835, + null, + 357.64977743493023, + 347.16604166087524, + null, + 329.1409467952837, + 350.7907509338832, + null, + 268.74571889109444, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 329.1409467952837, + 350.7907509338832, + null, + 268.74571889109444, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 329.1409467952837, + 350.7907509338832, + null, + 268.74571889109444, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 321.1251602489893, + 329.1409467952837, + null, + 260.44667379669994, + 321.1251602489893, + null, + 183.8924770122804, + 321.1251602489893, + null, + 229.20972216423704, + 321.1251602489893, + null, + 310.5141435446614, + 321.1251602489893, + null, + 321.1251602489893, + 357.64977743493023, + null, + 321.1251602489893, + 329.1409467952837, + null, + 260.44667379669994, + 321.1251602489893, + null, + 183.8924770122804, + 321.1251602489893, + null, + 229.20972216423704, + 321.1251602489893, + null, + 310.5141435446614, + 321.1251602489893, + null, + 321.1251602489893, + 357.64977743493023, + null, + 321.1251602489893, + 329.1409467952837, + null, + 260.44667379669994, + 321.1251602489893, + null, + 183.8924770122804, + 321.1251602489893, + null, + 229.20972216423704, + 321.1251602489893, + null, + 310.5141435446614, + 321.1251602489893, + null, + 321.1251602489893, + 357.64977743493023, + null, + 310.5141435446614, + 321.1251602489893, + null, + 260.44667379669994, + 310.5141435446614, + null, + 229.20972216423704, + 310.5141435446614, + null, + 310.5141435446614, + 357.64977743493023, + null, + 310.5141435446614, + 321.1251602489893, + null, + 260.44667379669994, + 310.5141435446614, + null, + 229.20972216423704, + 310.5141435446614, + null, + 310.5141435446614, + 357.64977743493023, + null, + 310.5141435446614, + 321.1251602489893, + null, + 260.44667379669994, + 310.5141435446614, + null, + 229.20972216423704, + 310.5141435446614, + null, + 310.5141435446614, + 357.64977743493023, + null, + 260.44667379669994, + 310.5141435446614, + null, + 260.44667379669994, + 357.64977743493023, + null, + 260.44667379669994, + 321.1251602489893, + null, + 260.44667379669994, + 268.74571889109444, + null, + 260.44667379669994, + 268.9155630911593, + null, + 183.8924770122804, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 260.44667379669994, + 310.5141435446614, + null, + 260.44667379669994, + 357.64977743493023, + null, + 260.44667379669994, + 321.1251602489893, + null, + 260.44667379669994, + 268.74571889109444, + null, + 260.44667379669994, + 268.9155630911593, + null, + 183.8924770122804, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 260.44667379669994, + 310.5141435446614, + null, + 260.44667379669994, + 357.64977743493023, + null, + 260.44667379669994, + 321.1251602489893, + null, + 260.44667379669994, + 268.74571889109444, + null, + 260.44667379669994, + 268.9155630911593, + null, + 183.8924770122804, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 229.20972216423704, + 260.44667379669994, + null, + 183.8924770122804, + 229.20972216423704, + null, + 229.20972216423704, + 310.5141435446614, + null, + 229.20972216423704, + 357.64977743493023, + null, + 229.20972216423704, + 321.1251602489893, + null, + 229.20972216423704, + 260.44667379669994, + null, + 183.8924770122804, + 229.20972216423704, + null, + 229.20972216423704, + 310.5141435446614, + null, + 229.20972216423704, + 357.64977743493023, + null, + 229.20972216423704, + 321.1251602489893, + null, + 229.20972216423704, + 260.44667379669994, + null, + 183.8924770122804, + 229.20972216423704, + null, + 229.20972216423704, + 310.5141435446614, + null, + 229.20972216423704, + 357.64977743493023, + null, + 229.20972216423704, + 321.1251602489893, + null, + 183.8924770122804, + 229.20972216423704, + null, + 183.8924770122804, + 321.1251602489893, + null, + 183.8924770122804, + 260.44667379669994, + null, + 183.8924770122804, + 176.3495598178734, + null, + 183.8924770122804, + 229.20972216423704, + null, + 183.8924770122804, + 321.1251602489893, + null, + 183.8924770122804, + 260.44667379669994, + null, + 183.8924770122804, + 176.3495598178734, + null, + 183.8924770122804, + 229.20972216423704, + null, + 183.8924770122804, + 321.1251602489893, + null, + 183.8924770122804, + 260.44667379669994, + null, + 183.8924770122804, + 176.3495598178734, + null, + 357.64977743493023, + 356.74772868211835, + null, + 356.74772868211835, + 352.28315312547585, + null, + 356.74772868211835, + 339.3136931268799, + null, + 356.74772868211835, + 347.16604166087524, + null, + 350.7907509338832, + 356.74772868211835, + null, + 357.64977743493023, + 356.74772868211835, + null, + 356.74772868211835, + 352.28315312547585, + null, + 356.74772868211835, + 339.3136931268799, + null, + 356.74772868211835, + 347.16604166087524, + null, + 350.7907509338832, + 356.74772868211835, + null, + 357.64977743493023, + 356.74772868211835, + null, + 356.74772868211835, + 352.28315312547585, + null, + 356.74772868211835, + 339.3136931268799, + null, + 356.74772868211835, + 347.16604166087524, + null, + 350.7907509338832, + 356.74772868211835, + null, + 356.74772868211835, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 347.16604166087524, + 344.0349790848408, + null, + 347.16604166087524, + 339.3136931268799, + null, + 350.7907509338832, + 347.16604166087524, + null, + 356.74772868211835, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 347.16604166087524, + 344.0349790848408, + null, + 347.16604166087524, + 339.3136931268799, + null, + 350.7907509338832, + 347.16604166087524, + null, + 356.74772868211835, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 347.16604166087524, + 344.0349790848408, + null, + 347.16604166087524, + 339.3136931268799, + null, + 350.7907509338832, + 347.16604166087524, + null, + 347.16604166087524, + 352.28315312547585, + null, + 356.74772868211835, + 352.28315312547585, + null, + 352.28315312547585, + 344.0349790848408, + null, + 352.28315312547585, + 330.5748275330297, + null, + 352.28315312547585, + 339.3136931268799, + null, + 323.75984407225997, + 352.28315312547585, + null, + 315.48008590100574, + 352.28315312547585, + null, + 347.16604166087524, + 352.28315312547585, + null, + 356.74772868211835, + 352.28315312547585, + null, + 352.28315312547585, + 344.0349790848408, + null, + 352.28315312547585, + 330.5748275330297, + null, + 352.28315312547585, + 339.3136931268799, + null, + 323.75984407225997, + 352.28315312547585, + null, + 315.48008590100574, + 352.28315312547585, + null, + 347.16604166087524, + 352.28315312547585, + null, + 356.74772868211835, + 352.28315312547585, + null, + 352.28315312547585, + 344.0349790848408, + null, + 352.28315312547585, + 330.5748275330297, + null, + 352.28315312547585, + 339.3136931268799, + null, + 323.75984407225997, + 352.28315312547585, + null, + 315.48008590100574, + 352.28315312547585, + null, + 323.75984407225997, + 352.28315312547585, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.75984407225997, + 319.26741162901953, + null, + 323.75984407225997, + 319.3798803978522, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.48008590100574, + 323.75984407225997, + null, + 293.7774500615618, + 323.75984407225997, + null, + 323.75984407225997, + 352.28315312547585, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.75984407225997, + 319.26741162901953, + null, + 323.75984407225997, + 319.3798803978522, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.48008590100574, + 323.75984407225997, + null, + 293.7774500615618, + 323.75984407225997, + null, + 323.75984407225997, + 352.28315312547585, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.75984407225997, + 319.26741162901953, + null, + 323.75984407225997, + 319.3798803978522, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.48008590100574, + 323.75984407225997, + null, + 293.7774500615618, + 323.75984407225997, + null, + 315.48008590100574, + 323.75984407225997, + null, + 315.48008590100574, + 319.3798803978522, + null, + 315.48008590100574, + 323.535219144854, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 293.7774500615618, + 315.48008590100574, + null, + 315.48008590100574, + 352.28315312547585, + null, + 315.48008590100574, + 323.75984407225997, + null, + 315.48008590100574, + 319.3798803978522, + null, + 315.48008590100574, + 323.535219144854, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 293.7774500615618, + 315.48008590100574, + null, + 315.48008590100574, + 352.28315312547585, + null, + 315.48008590100574, + 323.75984407225997, + null, + 315.48008590100574, + 319.3798803978522, + null, + 315.48008590100574, + 323.535219144854, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 293.7774500615618, + 315.48008590100574, + null, + 315.48008590100574, + 352.28315312547585, + null, + 293.7774500615618, + 315.48008590100574, + null, + 293.7774500615618, + 286.4202879280776, + null, + 263.21980786798633, + 293.7774500615618, + null, + 293.7774500615618, + 352.28315312547585, + null, + 293.7774500615618, + 323.75984407225997, + null, + 293.7774500615618, + 315.48008590100574, + null, + 293.7774500615618, + 286.4202879280776, + null, + 263.21980786798633, + 293.7774500615618, + null, + 293.7774500615618, + 352.28315312547585, + null, + 293.7774500615618, + 323.75984407225997, + null, + 293.7774500615618, + 315.48008590100574, + null, + 293.7774500615618, + 286.4202879280776, + null, + 263.21980786798633, + 293.7774500615618, + null, + 293.7774500615618, + 352.28315312547585, + null, + 293.7774500615618, + 323.75984407225997, + null, + 352.28315312547585, + 339.3136931268799, + null, + 356.74772868211835, + 339.3136931268799, + null, + 347.16604166087524, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 319.26741162901953, + 339.3136931268799, + null, + 352.28315312547585, + 339.3136931268799, + null, + 356.74772868211835, + 339.3136931268799, + null, + 347.16604166087524, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 319.26741162901953, + 339.3136931268799, + null, + 352.28315312547585, + 339.3136931268799, + null, + 356.74772868211835, + 339.3136931268799, + null, + 347.16604166087524, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 319.26741162901953, + 339.3136931268799, + null, + 323.75984407225997, + 319.3798803978522, + null, + 319.3798803978522, + 323.535219144854, + null, + 319.3798803978522, + 319.26741162901953, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.48008590100574, + 319.3798803978522, + null, + 323.75984407225997, + 319.3798803978522, + null, + 319.3798803978522, + 323.535219144854, + null, + 319.3798803978522, + 319.26741162901953, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.48008590100574, + 319.3798803978522, + null, + 323.75984407225997, + 319.3798803978522, + null, + 319.3798803978522, + 323.535219144854, + null, + 319.3798803978522, + 319.26741162901953, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.48008590100574, + 319.3798803978522, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.29700711663065, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 323.75984407225997, + 315.29700711663065, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.29700711663065, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 323.75984407225997, + 315.29700711663065, + null, + 319.3798803978522, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.29700711663065, + 319.26741162901953, + null, + 315.48008590100574, + 315.29700711663065, + null, + 323.75984407225997, + 315.29700711663065, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.48008590100574, + 323.535219144854, + null, + 319.3798803978522, + 323.535219144854, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.535219144854, + 319.26741162901953, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.48008590100574, + 323.535219144854, + null, + 319.3798803978522, + 323.535219144854, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.535219144854, + 319.26741162901953, + null, + 315.29700711663065, + 323.535219144854, + null, + 315.48008590100574, + 323.535219144854, + null, + 319.3798803978522, + 323.535219144854, + null, + 323.75984407225997, + 323.535219144854, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.75984407225997, + 319.26741162901953, + null, + 319.3798803978522, + 319.26741162901953, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.29700711663065, + 319.26741162901953, + null, + 319.26741162901953, + 286.4202879280776, + null, + 319.26741162901953, + 339.3136931268799, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.75984407225997, + 319.26741162901953, + null, + 319.3798803978522, + 319.26741162901953, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.29700711663065, + 319.26741162901953, + null, + 319.26741162901953, + 286.4202879280776, + null, + 319.26741162901953, + 339.3136931268799, + null, + 323.535219144854, + 319.26741162901953, + null, + 323.75984407225997, + 319.26741162901953, + null, + 319.3798803978522, + 319.26741162901953, + null, + 315.48008590100574, + 319.26741162901953, + null, + 315.29700711663065, + 319.26741162901953, + null, + 319.26741162901953, + 286.4202879280776, + null, + 319.26741162901953, + 339.3136931268799, + null, + 339.3136931268799, + 344.0349790848408, + null, + 352.28315312547585, + 344.0349790848408, + null, + 344.0349790848408, + 336.8347617095979, + null, + 344.0349790848408, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 339.3136931268799, + 344.0349790848408, + null, + 352.28315312547585, + 344.0349790848408, + null, + 344.0349790848408, + 336.8347617095979, + null, + 344.0349790848408, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 339.3136931268799, + 344.0349790848408, + null, + 352.28315312547585, + 344.0349790848408, + null, + 344.0349790848408, + 336.8347617095979, + null, + 344.0349790848408, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 339.3136931268799, + 330.5748275330297, + null, + 344.0349790848408, + 330.5748275330297, + null, + 330.5748275330297, + 336.8347617095979, + null, + 330.5748275330297, + 325.43068655275226, + null, + 270.4143750740704, + 330.5748275330297, + null, + 295.94347733111357, + 330.5748275330297, + null, + 326.4052717945616, + 330.5748275330297, + null, + 339.3136931268799, + 330.5748275330297, + null, + 344.0349790848408, + 330.5748275330297, + null, + 330.5748275330297, + 336.8347617095979, + null, + 330.5748275330297, + 325.43068655275226, + null, + 270.4143750740704, + 330.5748275330297, + null, + 295.94347733111357, + 330.5748275330297, + null, + 326.4052717945616, + 330.5748275330297, + null, + 339.3136931268799, + 330.5748275330297, + null, + 344.0349790848408, + 330.5748275330297, + null, + 330.5748275330297, + 336.8347617095979, + null, + 330.5748275330297, + 325.43068655275226, + null, + 270.4143750740704, + 330.5748275330297, + null, + 295.94347733111357, + 330.5748275330297, + null, + 326.4052717945616, + 330.5748275330297, + null, + 326.4052717945616, + 344.0349790848408, + null, + 326.4052717945616, + 330.5748275330297, + null, + 295.94347733111357, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 326.4052717945616, + 344.0349790848408, + null, + 326.4052717945616, + 330.5748275330297, + null, + 295.94347733111357, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 326.4052717945616, + 344.0349790848408, + null, + 326.4052717945616, + 330.5748275330297, + null, + 295.94347733111357, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 330.5748275330297, + null, + 295.94347733111357, + 304.75795641905216, + null, + 268.91802835014585, + 304.75795641905216, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 330.5748275330297, + null, + 295.94347733111357, + 304.75795641905216, + null, + 268.91802835014585, + 304.75795641905216, + null, + 304.75795641905216, + 326.4052717945616, + null, + 304.75795641905216, + 330.5748275330297, + null, + 295.94347733111357, + 304.75795641905216, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 250.9934191667397, + 270.4143750740704, + null, + 214.26386988273063, + 270.4143750740704, + null, + 270.4143750740704, + 268.91802835014585, + null, + 270.4143750740704, + 274.31922718174684, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 250.9934191667397, + 270.4143750740704, + null, + 214.26386988273063, + 270.4143750740704, + null, + 270.4143750740704, + 268.91802835014585, + null, + 270.4143750740704, + 274.31922718174684, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 250.9934191667397, + 270.4143750740704, + null, + 214.26386988273063, + 270.4143750740704, + null, + 270.4143750740704, + 268.91802835014585, + null, + 270.4143750740704, + 274.31922718174684, + null, + 270.4143750740704, + 295.94347733111357, + null, + 344.0349790848408, + 336.8347617095979, + null, + 336.8347617095979, + 328.02295526836434, + null, + 336.8347617095979, + 325.43068655275226, + null, + 303.072238869132, + 336.8347617095979, + null, + 307.18441630869097, + 336.8347617095979, + null, + 330.5748275330297, + 336.8347617095979, + null, + 344.0349790848408, + 336.8347617095979, + null, + 336.8347617095979, + 328.02295526836434, + null, + 336.8347617095979, + 325.43068655275226, + null, + 303.072238869132, + 336.8347617095979, + null, + 307.18441630869097, + 336.8347617095979, + null, + 330.5748275330297, + 336.8347617095979, + null, + 344.0349790848408, + 336.8347617095979, + null, + 336.8347617095979, + 328.02295526836434, + null, + 336.8347617095979, + 325.43068655275226, + null, + 303.072238869132, + 336.8347617095979, + null, + 307.18441630869097, + 336.8347617095979, + null, + 330.5748275330297, + 336.8347617095979, + null, + 270.4143750740704, + 295.94347733111357, + null, + 295.94347733111357, + 304.75795641905216, + null, + 295.94347733111357, + 326.4052717945616, + null, + 295.94347733111357, + 330.5748275330297, + null, + 270.4143750740704, + 295.94347733111357, + null, + 295.94347733111357, + 304.75795641905216, + null, + 295.94347733111357, + 326.4052717945616, + null, + 295.94347733111357, + 330.5748275330297, + null, + 270.4143750740704, + 295.94347733111357, + null, + 295.94347733111357, + 304.75795641905216, + null, + 295.94347733111357, + 326.4052717945616, + null, + 295.94347733111357, + 330.5748275330297, + null, + 270.4143750740704, + 307.18441630869097, + null, + 307.18441630869097, + 336.8347617095979, + null, + 307.18441630869097, + 325.43068655275226, + null, + 303.072238869132, + 307.18441630869097, + null, + 270.4143750740704, + 307.18441630869097, + null, + 307.18441630869097, + 336.8347617095979, + null, + 307.18441630869097, + 325.43068655275226, + null, + 303.072238869132, + 307.18441630869097, + null, + 270.4143750740704, + 307.18441630869097, + null, + 307.18441630869097, + 336.8347617095979, + null, + 307.18441630869097, + 325.43068655275226, + null, + 303.072238869132, + 307.18441630869097, + null, + 183.8924770122804, + 176.3495598178734, + null, + 176.3495598178734, + 233.51303476069197, + null, + 176.3495598178734, + 263.21980786798633, + null, + 176.3495598178734, + 169.32016360849502, + null, + 183.8924770122804, + 176.3495598178734, + null, + 176.3495598178734, + 233.51303476069197, + null, + 176.3495598178734, + 263.21980786798633, + null, + 176.3495598178734, + 169.32016360849502, + null, + 183.8924770122804, + 176.3495598178734, + null, + 176.3495598178734, + 233.51303476069197, + null, + 176.3495598178734, + 263.21980786798633, + null, + 176.3495598178734, + 169.32016360849502, + null, + 176.3495598178734, + 263.21980786798633, + null, + 233.51303476069197, + 263.21980786798633, + null, + 232.5229570390016, + 263.21980786798633, + null, + 249.64459906857965, + 263.21980786798633, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.9155630911593, + 263.21980786798633, + null, + 263.21980786798633, + 293.7774500615618, + null, + 263.21980786798633, + 258.97618350915224, + null, + 176.3495598178734, + 263.21980786798633, + null, + 233.51303476069197, + 263.21980786798633, + null, + 232.5229570390016, + 263.21980786798633, + null, + 249.64459906857965, + 263.21980786798633, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.9155630911593, + 263.21980786798633, + null, + 263.21980786798633, + 293.7774500615618, + null, + 263.21980786798633, + 258.97618350915224, + null, + 176.3495598178734, + 263.21980786798633, + null, + 233.51303476069197, + 263.21980786798633, + null, + 232.5229570390016, + 263.21980786798633, + null, + 249.64459906857965, + 263.21980786798633, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.9155630911593, + 263.21980786798633, + null, + 263.21980786798633, + 293.7774500615618, + null, + 263.21980786798633, + 258.97618350915224, + null, + 233.51303476069197, + 263.21980786798633, + null, + 176.3495598178734, + 233.51303476069197, + null, + 232.5229570390016, + 233.51303476069197, + null, + 233.51303476069197, + 263.21980786798633, + null, + 176.3495598178734, + 233.51303476069197, + null, + 232.5229570390016, + 233.51303476069197, + null, + 233.51303476069197, + 263.21980786798633, + null, + 176.3495598178734, + 233.51303476069197, + null, + 232.5229570390016, + 233.51303476069197, + null, + 268.74571889109444, + 329.1409467952837, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.74571889109444, + 252.16980251003608, + null, + 260.44667379669994, + 268.74571889109444, + null, + 268.74571889109444, + 329.1409467952837, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.74571889109444, + 252.16980251003608, + null, + 260.44667379669994, + 268.74571889109444, + null, + 268.74571889109444, + 329.1409467952837, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.74571889109444, + 263.21980786798633, + null, + 268.74571889109444, + 252.16980251003608, + null, + 260.44667379669994, + 268.74571889109444, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.9155630911593, + 258.97618350915224, + null, + 268.9155630911593, + 263.21980786798633, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 268.9155630911593, + null, + 252.16980251003608, + 268.9155630911593, + null, + 260.44667379669994, + 268.9155630911593, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.9155630911593, + 258.97618350915224, + null, + 268.9155630911593, + 263.21980786798633, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 268.9155630911593, + null, + 252.16980251003608, + 268.9155630911593, + null, + 260.44667379669994, + 268.9155630911593, + null, + 268.74571889109444, + 268.9155630911593, + null, + 268.9155630911593, + 258.97618350915224, + null, + 268.9155630911593, + 263.21980786798633, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 268.9155630911593, + null, + 252.16980251003608, + 268.9155630911593, + null, + 260.44667379669994, + 268.9155630911593, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 268.9155630911593, + null, + 249.64459906857965, + 252.16980251003608, + null, + 232.5229570390016, + 252.16980251003608, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 268.9155630911593, + null, + 249.64459906857965, + 252.16980251003608, + null, + 232.5229570390016, + 252.16980251003608, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 268.9155630911593, + null, + 249.64459906857965, + 252.16980251003608, + null, + 232.5229570390016, + 252.16980251003608, + null, + 249.64459906857965, + 263.21980786798633, + null, + 232.5229570390016, + 249.64459906857965, + null, + 249.64459906857965, + 252.16980251003608, + null, + 249.64459906857965, + 268.9155630911593, + null, + 249.64459906857965, + 263.21980786798633, + null, + 232.5229570390016, + 249.64459906857965, + null, + 249.64459906857965, + 252.16980251003608, + null, + 249.64459906857965, + 268.9155630911593, + null, + 249.64459906857965, + 263.21980786798633, + null, + 232.5229570390016, + 249.64459906857965, + null, + 249.64459906857965, + 252.16980251003608, + null, + 249.64459906857965, + 268.9155630911593, + null, + 232.5229570390016, + 252.16980251003608, + null, + 232.5229570390016, + 268.9155630911593, + null, + 232.5229570390016, + 249.64459906857965, + null, + 232.5229570390016, + 263.21980786798633, + null, + 232.5229570390016, + 233.51303476069197, + null, + 232.5229570390016, + 252.16980251003608, + null, + 232.5229570390016, + 268.9155630911593, + null, + 232.5229570390016, + 249.64459906857965, + null, + 232.5229570390016, + 263.21980786798633, + null, + 232.5229570390016, + 233.51303476069197, + null, + 232.5229570390016, + 252.16980251003608, + null, + 232.5229570390016, + 268.9155630911593, + null, + 232.5229570390016, + 249.64459906857965, + null, + 232.5229570390016, + 263.21980786798633, + null, + 232.5229570390016, + 233.51303476069197, + null, + 293.7774500615618, + 286.4202879280776, + null, + 319.26741162901953, + 286.4202879280776, + null, + 286.4202879280776, + 274.31922718174684, + null, + 274.16999172191623, + 286.4202879280776, + null, + 258.97618350915224, + 286.4202879280776, + null, + 293.7774500615618, + 286.4202879280776, + null, + 319.26741162901953, + 286.4202879280776, + null, + 286.4202879280776, + 274.31922718174684, + null, + 274.16999172191623, + 286.4202879280776, + null, + 258.97618350915224, + 286.4202879280776, + null, + 293.7774500615618, + 286.4202879280776, + null, + 319.26741162901953, + 286.4202879280776, + null, + 286.4202879280776, + 274.31922718174684, + null, + 274.16999172191623, + 286.4202879280776, + null, + 258.97618350915224, + 286.4202879280776, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 274.31922718174684, + null, + 274.16999172191623, + 268.91802835014585, + null, + 258.97618350915224, + 274.16999172191623, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 274.31922718174684, + null, + 274.16999172191623, + 268.91802835014585, + null, + 258.97618350915224, + 274.16999172191623, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 274.31922718174684, + null, + 274.16999172191623, + 268.91802835014585, + null, + 258.97618350915224, + 274.16999172191623, + null, + 263.21980786798633, + 258.97618350915224, + null, + 258.97618350915224, + 286.4202879280776, + null, + 258.97618350915224, + 274.16999172191623, + null, + 225.3765595708624, + 258.97618350915224, + null, + 263.21980786798633, + 258.97618350915224, + null, + 258.97618350915224, + 286.4202879280776, + null, + 258.97618350915224, + 274.16999172191623, + null, + 225.3765595708624, + 258.97618350915224, + null, + 263.21980786798633, + 258.97618350915224, + null, + 258.97618350915224, + 286.4202879280776, + null, + 258.97618350915224, + 274.16999172191623, + null, + 225.3765595708624, + 258.97618350915224, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 268.91802835014585, + null, + 250.9934191667397, + 268.91802835014585, + null, + 274.16999172191623, + 268.91802835014585, + null, + 268.91802835014585, + 274.31922718174684, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 268.91802835014585, + null, + 250.9934191667397, + 268.91802835014585, + null, + 274.16999172191623, + 268.91802835014585, + null, + 268.91802835014585, + 274.31922718174684, + null, + 268.91802835014585, + 304.75795641905216, + null, + 270.4143750740704, + 268.91802835014585, + null, + 250.9934191667397, + 268.91802835014585, + null, + 274.16999172191623, + 268.91802835014585, + null, + 268.91802835014585, + 274.31922718174684, + null, + 274.16999172191623, + 274.31922718174684, + null, + 286.4202879280776, + 274.31922718174684, + null, + 270.4143750740704, + 274.31922718174684, + null, + 268.91802835014585, + 274.31922718174684, + null, + 223.31778966202364, + 274.31922718174684, + null, + 274.16999172191623, + 274.31922718174684, + null, + 286.4202879280776, + 274.31922718174684, + null, + 270.4143750740704, + 274.31922718174684, + null, + 268.91802835014585, + 274.31922718174684, + null, + 223.31778966202364, + 274.31922718174684, + null, + 274.16999172191623, + 274.31922718174684, + null, + 286.4202879280776, + 274.31922718174684, + null, + 270.4143750740704, + 274.31922718174684, + null, + 268.91802835014585, + 274.31922718174684, + null, + 223.31778966202364, + 274.31922718174684, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 250.9934191667397, + null, + 163.57870888154466, + 214.26386988273063, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 214.26386988273063, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 250.9934191667397, + null, + 163.57870888154466, + 214.26386988273063, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 214.26386988273063, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 250.9934191667397, + null, + 163.57870888154466, + 214.26386988273063, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 214.26386988273063, + null, + 250.9934191667397, + 268.91802835014585, + null, + 250.9934191667397, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 214.26386988273063, + 250.9934191667397, + null, + 250.9934191667397, + 268.91802835014585, + null, + 250.9934191667397, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 214.26386988273063, + 250.9934191667397, + null, + 250.9934191667397, + 268.91802835014585, + null, + 250.9934191667397, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 214.26386988273063, + 250.9934191667397, + null, + 176.3495598178734, + 169.32016360849502, + null, + 169.32016360849502, + 225.3765595708624, + null, + 169.32016360849502, + 223.31778966202364, + null, + 169.32016360849502, + 163.57870888154466, + null, + 176.3495598178734, + 169.32016360849502, + null, + 169.32016360849502, + 225.3765595708624, + null, + 169.32016360849502, + 223.31778966202364, + null, + 169.32016360849502, + 163.57870888154466, + null, + 176.3495598178734, + 169.32016360849502, + null, + 169.32016360849502, + 225.3765595708624, + null, + 169.32016360849502, + 223.31778966202364, + null, + 169.32016360849502, + 163.57870888154466, + null, + 169.32016360849502, + 163.57870888154466, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 163.57870888154466, + 159.16447175525335, + null, + 169.32016360849502, + 163.57870888154466, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 163.57870888154466, + 159.16447175525335, + null, + 169.32016360849502, + 163.57870888154466, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 270.4143750740704, + null, + 163.57870888154466, + 250.9934191667397, + null, + 163.57870888154466, + 159.16447175525335, + null, + 169.32016360849502, + 225.3765595708624, + null, + 225.3765595708624, + 258.97618350915224, + null, + 223.31778966202364, + 225.3765595708624, + null, + 225.3765595708624, + 214.26386988273063, + null, + 169.32016360849502, + 225.3765595708624, + null, + 225.3765595708624, + 258.97618350915224, + null, + 223.31778966202364, + 225.3765595708624, + null, + 225.3765595708624, + 214.26386988273063, + null, + 169.32016360849502, + 225.3765595708624, + null, + 225.3765595708624, + 258.97618350915224, + null, + 223.31778966202364, + 225.3765595708624, + null, + 225.3765595708624, + 214.26386988273063, + null, + 223.31778966202364, + 225.3765595708624, + null, + 223.31778966202364, + 274.31922718174684, + null, + 223.31778966202364, + 214.26386988273063, + null, + 169.32016360849502, + 223.31778966202364, + null, + 223.31778966202364, + 225.3765595708624, + null, + 223.31778966202364, + 274.31922718174684, + null, + 223.31778966202364, + 214.26386988273063, + null, + 169.32016360849502, + 223.31778966202364, + null, + 223.31778966202364, + 225.3765595708624, + null, + 223.31778966202364, + 274.31922718174684, + null, + 223.31778966202364, + 214.26386988273063, + null, + 169.32016360849502, + 223.31778966202364, + null, + 330.5748275330297, + 325.43068655275226, + null, + 336.8347617095979, + 325.43068655275226, + null, + 325.43068655275226, + 328.02295526836434, + null, + 276.6563324910618, + 325.43068655275226, + null, + 303.072238869132, + 325.43068655275226, + null, + 307.18441630869097, + 325.43068655275226, + null, + 330.5748275330297, + 325.43068655275226, + null, + 336.8347617095979, + 325.43068655275226, + null, + 325.43068655275226, + 328.02295526836434, + null, + 276.6563324910618, + 325.43068655275226, + null, + 303.072238869132, + 325.43068655275226, + null, + 307.18441630869097, + 325.43068655275226, + null, + 330.5748275330297, + 325.43068655275226, + null, + 336.8347617095979, + 325.43068655275226, + null, + 325.43068655275226, + 328.02295526836434, + null, + 276.6563324910618, + 325.43068655275226, + null, + 303.072238869132, + 325.43068655275226, + null, + 307.18441630869097, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 276.6563324910618, + 325.43068655275226, + null, + 221.61182490136002, + 276.6563324910618, + null, + 203.86910624292852, + 276.6563324910618, + null, + 249.52749999636643, + 276.6563324910618, + null, + 276.6563324910618, + 303.072238869132, + null, + 276.6563324910618, + 325.43068655275226, + null, + 221.61182490136002, + 276.6563324910618, + null, + 203.86910624292852, + 276.6563324910618, + null, + 249.52749999636643, + 276.6563324910618, + null, + 276.6563324910618, + 303.072238869132, + null, + 276.6563324910618, + 325.43068655275226, + null, + 221.61182490136002, + 276.6563324910618, + null, + 203.86910624292852, + 276.6563324910618, + null, + 249.52749999636643, + 276.6563324910618, + null, + 303.072238869132, + 307.18441630869097, + null, + 303.072238869132, + 336.8347617095979, + null, + 303.072238869132, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 303.072238869132, + 307.18441630869097, + null, + 303.072238869132, + 336.8347617095979, + null, + 303.072238869132, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 303.072238869132, + 307.18441630869097, + null, + 303.072238869132, + 336.8347617095979, + null, + 303.072238869132, + 325.43068655275226, + null, + 276.6563324910618, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 276.6563324910618, + null, + 249.52749999636643, + 248.52327233073666, + null, + 221.61182490136002, + 249.52749999636643, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 276.6563324910618, + null, + 249.52749999636643, + 248.52327233073666, + null, + 221.61182490136002, + 249.52749999636643, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 303.072238869132, + null, + 249.52749999636643, + 276.6563324910618, + null, + 249.52749999636643, + 248.52327233073666, + null, + 221.61182490136002, + 249.52749999636643, + null, + 203.86910624292852, + 249.52749999636643, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 276.6563324910618, + null, + 159.16447175525335, + 221.61182490136002, + null, + 203.86910624292852, + 221.61182490136002, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 276.6563324910618, + null, + 159.16447175525335, + 221.61182490136002, + null, + 203.86910624292852, + 221.61182490136002, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 276.6563324910618, + null, + 159.16447175525335, + 221.61182490136002, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 201.72089593314308, + null, + 159.16447175525335, + 203.86910624292852, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 201.72089593314308, + null, + 159.16447175525335, + 203.86910624292852, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 221.61182490136002, + null, + 203.86910624292852, + 201.72089593314308, + null, + 159.16447175525335, + 203.86910624292852, + null, + 163.57870888154466, + 159.16447175525335, + null, + 159.16447175525335, + 203.86910624292852, + null, + 159.16447175525335, + 221.61182490136002, + null, + 159.16447175525335, + 138.23855367050317, + null, + 163.57870888154466, + 159.16447175525335, + null, + 159.16447175525335, + 203.86910624292852, + null, + 159.16447175525335, + 221.61182490136002, + null, + 159.16447175525335, + 138.23855367050317, + null, + 163.57870888154466, + 159.16447175525335, + null, + 159.16447175525335, + 203.86910624292852, + null, + 159.16447175525335, + 221.61182490136002, + null, + 159.16447175525335, + 138.23855367050317, + null, + 325.43068655275226, + 328.02295526836434, + null, + 336.8347617095979, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 328.02295526836434, + null, + 248.52327233073666, + 328.02295526836434, + null, + 325.43068655275226, + 328.02295526836434, + null, + 336.8347617095979, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 328.02295526836434, + null, + 248.52327233073666, + 328.02295526836434, + null, + 325.43068655275226, + 328.02295526836434, + null, + 336.8347617095979, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 328.02295526836434, + null, + 248.52327233073666, + 328.02295526836434, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 289.4655368398485, + null, + 201.72089593314308, + 289.4655368398485, + null, + 248.52327233073666, + 289.4655368398485, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 289.4655368398485, + null, + 201.72089593314308, + 289.4655368398485, + null, + 248.52327233073666, + 289.4655368398485, + null, + 289.4655368398485, + 328.02295526836434, + null, + 215.6839315745106, + 289.4655368398485, + null, + 201.72089593314308, + 289.4655368398485, + null, + 248.52327233073666, + 289.4655368398485, + null, + 248.52327233073666, + 328.02295526836434, + null, + 248.52327233073666, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 249.52749999636643, + 248.52327233073666, + null, + 248.52327233073666, + 328.02295526836434, + null, + 248.52327233073666, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 249.52749999636643, + 248.52327233073666, + null, + 248.52327233073666, + 328.02295526836434, + null, + 248.52327233073666, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 249.52749999636643, + 248.52327233073666, + null, + 201.72089593314308, + 248.52327233073666, + null, + 201.72089593314308, + 289.4655368398485, + null, + 201.72089593314308, + 215.6839315745106, + null, + 138.23855367050317, + 201.72089593314308, + null, + 203.86910624292852, + 201.72089593314308, + null, + 201.72089593314308, + 248.52327233073666, + null, + 201.72089593314308, + 289.4655368398485, + null, + 201.72089593314308, + 215.6839315745106, + null, + 138.23855367050317, + 201.72089593314308, + null, + 203.86910624292852, + 201.72089593314308, + null, + 201.72089593314308, + 248.52327233073666, + null, + 201.72089593314308, + 289.4655368398485, + null, + 201.72089593314308, + 215.6839315745106, + null, + 138.23855367050317, + 201.72089593314308, + null, + 203.86910624292852, + 201.72089593314308, + null, + 215.6839315745106, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 138.23855367050317, + 215.6839315745106, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 138.23855367050317, + 215.6839315745106, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 289.4655368398485, + null, + 215.6839315745106, + 248.52327233073666, + null, + 138.23855367050317, + 215.6839315745106, + null, + 201.72089593314308, + 215.6839315745106, + null, + 159.16447175525335, + 138.23855367050317, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 215.6839315745106, + null, + 159.16447175525335, + 138.23855367050317, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 215.6839315745106, + null, + 159.16447175525335, + 138.23855367050317, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 215.6839315745106, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 199.37980872606502, + null, + 221.61182490136002, + 240.9768148982843, + null, + 221.61182490136002, + 248.47977798016697, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 199.37980872606502, + null, + 221.61182490136002, + 240.9768148982843, + null, + 221.61182490136002, + 248.47977798016697, + null, + 221.61182490136002, + 249.52749999636643, + null, + 221.61182490136002, + 199.37980872606502, + null, + 221.61182490136002, + 240.9768148982843, + null, + 221.61182490136002, + 248.47977798016697, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 248.47977798016697, + null, + 203.86910624292852, + 199.37980872606502, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 248.47977798016697, + null, + 203.86910624292852, + 199.37980872606502, + null, + 203.86910624292852, + 249.52749999636643, + null, + 203.86910624292852, + 248.47977798016697, + null, + 203.86910624292852, + 199.37980872606502, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 199.37980872606502, + null, + 249.52749999636643, + 240.9768148982843, + null, + 249.52749999636643, + 248.47977798016697, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 199.37980872606502, + null, + 249.52749999636643, + 240.9768148982843, + null, + 249.52749999636643, + 248.47977798016697, + null, + 203.86910624292852, + 249.52749999636643, + null, + 249.52749999636643, + 199.37980872606502, + null, + 249.52749999636643, + 240.9768148982843, + null, + 249.52749999636643, + 248.47977798016697, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 215.6839315745106, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 201.72089593314308, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 201.72089593314308, + 165.05847680908929, + null, + 201.72089593314308, + 215.6839315745106, + null, + 201.72089593314308, + 165.05847680908929, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 165.05847680908929, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 165.05847680908929, + null, + 138.23855367050317, + 201.72089593314308, + null, + 138.23855367050317, + 165.05847680908929, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 202.96487838656364, + null, + 214.26386988273063, + 202.41817821325733, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 202.96487838656364, + null, + 214.26386988273063, + 202.41817821325733, + null, + 214.26386988273063, + 270.4143750740704, + null, + 214.26386988273063, + 202.96487838656364, + null, + 214.26386988273063, + 202.41817821325733, + null, + 250.9934191667397, + 270.4143750740704, + null, + 250.9934191667397, + 202.96487838656364, + null, + 250.9934191667397, + 202.41817821325733, + null, + 250.9934191667397, + 270.4143750740704, + null, + 250.9934191667397, + 202.96487838656364, + null, + 250.9934191667397, + 202.41817821325733, + null, + 250.9934191667397, + 270.4143750740704, + null, + 250.9934191667397, + 202.96487838656364, + null, + 250.9934191667397, + 202.41817821325733, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 202.41817821325733, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 202.41817821325733, + null, + 163.57870888154466, + 214.26386988273063, + null, + 163.57870888154466, + 202.41817821325733, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 299.94424611936336, + null, + 270.4143750740704, + 202.96487838656364, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 299.94424611936336, + null, + 270.4143750740704, + 202.96487838656364, + null, + 270.4143750740704, + 295.94347733111357, + null, + 270.4143750740704, + 299.94424611936336, + null, + 270.4143750740704, + 202.96487838656364, + null, + 295.94347733111357, + 304.75795641905216, + null, + 304.75795641905216, + 299.94424611936336, + null, + 295.94347733111357, + 304.75795641905216, + null, + 304.75795641905216, + 299.94424611936336, + null, + 295.94347733111357, + 304.75795641905216, + null, + 304.75795641905216, + 299.94424611936336, + null, + 268.74571889109444, + 252.16980251003608, + null, + 268.74571889109444, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 268.74571889109444, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 268.74571889109444, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 267.99952369795295, + null, + 268.74571889109444, + 252.16980251003608, + null, + 252.16980251003608, + 267.99952369795295, + null, + 268.74571889109444, + 329.1409467952837, + null, + 329.1409467952837, + 267.99952369795295, + null, + 268.74571889109444, + 329.1409467952837, + null, + 329.1409467952837, + 267.99952369795295, + null, + 268.74571889109444, + 329.1409467952837, + null, + 329.1409467952837, + 267.99952369795295, + null, + 274.16999172191623, + 286.4202879280776, + null, + 286.4202879280776, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 286.4202879280776, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 286.4202879280776, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 294.8935984343935, + null, + 274.16999172191623, + 286.4202879280776, + null, + 274.16999172191623, + 294.8935984343935, + null + ], + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": true, + "x": { + "dtype": "f8", + "bdata": "JybsV+YmesBchsUlVDt6wP3fAgXXT3rAyxIOdzNkesAql8ZsLnh6wNTDz/GNi3rAk+Sq1BmeesAbirVJnK96wGFMM4fiv3rAhGWeWL3OesDD2JOnAdx6wMr9zfiI53rAnu3C2zHxesCfDqNL4Ph6wJlongB+/nrAVAWFsPoBe8BN6QY+TAN7wD6XCtZuAnvAlgXF+mT/esBc2HJ8N/p6wJb6x1/18nrAy71fsrPpesCc2qtNjd56wCVzE4mi0XrAHvwj3BjDesB4JuRxGrN6wMMChK7VoXrADyXNqHyPesAUGNmYRHx6wKOKsz1laHrAA/inOxhUesD9zg91mD96wM8Nhl8hK3rAQb1vV+4WesD5i83zOQN6wAn3SVw98HnACvBwoy/eecBv3vEmRc15wIFUu/euvXnAGQupS5qvecD382D6L6N5wObB2waUmHnAGobwNuWPecBYXRK6PIl5wDwUQ+CthHnAcKcO4kWCecCQGzK6C4J5wEjoXBEAhHnAH69HPB2IecAuySVMV455wJT5QTGclnnAf99h79OgecDFMljj4Kx5wAL/+xigunnAcIOLsOnJecA5o1RSkdp5wI1sU69m7HnAY6RRDTb/ecCE5vDcyBJ6wCcm7FfmJnrA" + }, + "y": { + "dtype": "f8", + "bdata": "qQtwjQzbdkDJe0WjDdx2QFm57FFY2nZAe6nfjfHVdkCCNWUb5s52QOZiiWlKxXZAPD7YVjq5dkDxg4fg2Kp2QG6A+bxPmnZAC4i/4s6HdkAR+Hr9i3N2QA5JMNLBXXZAJL/PlK9GdkDJK+IwmC52QNqAbYfBFXZAHDtEpHP8dUBCjwvt9+J1QE6AVkyYyXVAuWM/W56wdUAWtu2LUph1QIp1c1f7gHVA6IVjcdxqdUC6CHIDNlZ1QF5CWPNDQ3VAx98XNT0ydUBijZUrUyN1QHg2WRmxFnVAlm4To3sMdUAg+1Nl0AR1QF7IpZ7F/3RAJGwJ72n9dEBsXIktxP10QJPlYlTTAHVAZmz9g44GdUC2Yacc5Q51QKk/zu6+GXVA/bMlgfwmdUA9e/JrdzZ1QNEfcMgCSHVAzX4Os2tbdUC5TA3feXB1QHl0yTnwhnVAeKTim42edUDnNTeGDbd1QDtEkugo0HVAQavL75bpdUDCCQTZDQN2QPYUmMdDHHZA5Kdem+80dkBHIcTEyUx2QBnUWxSNY3ZAWXmNg/d4dkAKjhj0yox2QJwdQuTNnnZA+1iiFcyudkDsJq4kl7x2QKchRQ8HyHZAYbi9qPrQdkDO2R76V9d2QKkLcI0M23ZA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "tm++qYQcfMBYddmt5zB8wIRnqg98RXzA8BDRHQZafMByZ+FESm58wCqNMbwNgnzAmbNbMBeVfMB8ToVpL6d8wMJIieshuHzAYqk0jr3HfMCqFNwL1dV8wGiWrIQ/4nzAt9A69djsfMA9q/iegvV8wIGEYmEj/HzAUzvhAqgAfcAaqY1oAwN9wOPNM7wuA33AD2wngCkBfcCVjrCQ+fx8wGnYCxOr9nzAlesvUlDufMAXF76JAeR8wCQzuJ/c13zAQY3HzQTKfMA7cBA7orp8wAyluofhqXzA5r6AS/OXfMAwpr2IC4V8wJA2kRVhcXzAuILR/CxdfMD3GZbYqUh8wM86PSgTNHzAvvzXo6QffMCJBPKOmQt8wE0zqwws+HvAQuwVd5Tle8CNEsO7CNR7wCXbVb+7w3vAKyrlydy0e8Cdqtb9lqd7wKhswdoQnHvAa/LCzWuSe8AEkorQw4p7wBxnNBgvhXvA8DHf1L2Be8DJ+rcCeoB7wPGrA01ngXvAPqR6A4OEe8CWIBUixIl7wLTdMWsbkXvA0RfLk3Oae8BUrjmBsaV7wANG05e0snvANWB/GVfBe8DyDjGTbtF7wCy7B1jM4nvAcNixCD71e8Cm04gljgh8wLZvvqmEHHzA" + }, + "y": { + "dtype": "f8", + "bdata": "sh7hJ49Pd0DMdSqfP1F3QHoJqxIkUHdAAcPXuD9Md0DvDLDbnUV3QAIm/7dRPHdABlyPRXYwd0DPCPHoLSJ3QIw1uA+iEXdAi0BSuAL/dkAiEtDmhep2QCmrOAhn1HZAtoEqRua8dkAOpb/MR6R2QLt70ATTinZA8qrSxNFwdkDZ8qx6j1Z2QEo57VBYPHZAjGDbUXgidkCpuumKOgl2QKLaAjPo8HVAaDUs1sfZdUDnjeWIHMR1QNe1liUlsHVAIQJAlhuedUByQX4sNI51QLx1yQmdgHVAM36mmX11dUBCz08f9mx1QD3gIFgfZ3VA2r7TMwpkdUBN7WCjv2N1QDkJEH9AZnVAVXUEhIVrdUCHIU1pf3N1QAlaOgwXfnVAqAR5sy2LdUAupjBonZp1QCyyIWQ5rHVAs7yEk86/dUDN2TEpJNV1QEtvYkP863VAkZQvnxQEdkCoXcRYJx12QDCWFrbrNnZAfenZ+RZRdkBNl0k8XWt2QGTlU0dyhXZAQ6+ocwqfdkBk4imE27d2QHlmQX2dz3ZAcNirdQvmdkAAelpe5Pp2QCKPKL/rDXdALMxAZuoed0BFFDYIry13QIwo/84OOndA/Ys21uVDd0ClNjaTF0t3QLIe4SePT3dA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "qUNY5OBgeMABN31HUHV4wHFQ5E3MiXjAJq/TjBmeeMClRkEh/bF4wClDoVo9xXjAzGs7YqLXeMBGJSLd9uh4wEJK9YYI+XjApvOvw6gHecBDRtomrRR5wFchl+7vH3nAssAocVApecDgp657szB5wO8HCqEDNnnAY8oDeDE5ecAb/f/HMzp5wGz2vKMHOXnA2pzQcbA1ecCbMsviNzB5wHhBHNWtKHnA9ywLJygfecCd7Uh3whN5wLTx0tSdBnnA/4MPX+D3eMCv2jnXtOd4wBWMXiRK1njAgB9Qy9LDeMAJVh5chLB4wBM0udaWnHjAPXCCCESIeMBpbaTkxnN4wNAPFdlaX3jA2GQ0IjtLeMBoHvseojd4wGVBq6fIJHjALiDuaOUSeMC94j1FLAJ4wJ6bZr7N8nfAQnDTaPbkd8A78D9qzth3wHisRAV5znfA2NQQMxTGd8BPhHlMuL93wPvoWsN3u3fAWx8Y7V65d8Br79Tec7l3wPIv0Vu2u3fA2/wY1h/Ad8BmwYeBo8Z3wATx5nguz3fAZcO89KfZd8Bw+iuT8eV3wBo4FLDn83fA9EVzzGEDeMDDcdsDMxR4wJJJqo4qJnjAFAWGTxQ5eMAlNYdquUx4wKlDWOTgYHjA" + }, + "y": { + "dtype": "f8", + "bdata": "JVjyddo1d0AaZIb2rTZ3QH7pCqfYNHdABffF2F8wd0Cx+1GEUCl3QPwX/iO/H3dAG15oeMcTd0DvSv43jAV3QG/1TKo29XZAawFFMPbidkB5os26/852QGJMNTGNuXZAwno9ydyidkDtuahSMIt2QIRWVnjMcnZAO2YV+fdZdkCf43Da+kB2QMgRyJcdKHZAIRoRUKgPdkCAtaf04fd1QIOohnsP4XVAgfFAF3PLdUCw2f52S7d1QGnbqxDTpHVAXcBkdz+UdUCe0RHAwIV1QPDX7/WAeXVA4XOcoKNvdUDRiAddRWh1QL+ndIp7Y3VAYDV9DFRhdUBAG8ci1WF1QJDe5Fb9ZHVADa+TgMNqdUDOH0vgFnN1QNl+0U/ffXVAzeJHiP2KdUBJweJ8S5p1QDzpR8mcq3VAFMBRMr++dUBJRcI3e9N1QFU/P7WU6XVA257EkMsAdkCZGJN03Bh2QI6mf5KBMXZAk2xtbnNKdkAEtKataWN2QJ2Qu+gbfHZAF3CFfUKUdkDSau5el6t2QMinIeDWwXZA+XXXeMDWdkDxuoOAF+p2QBXHR96j+3ZAJjipqzILd0CV8jXIlhh3QFHzaFypI3dA8k5USkosd0C5k8mKYDJ3QCVY8nXaNXdA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "xaChT1qZdsArNjZ/za12wKlW/B8rwnbAnWJlHzjWdsCus8JUuul2wN919yl5/HbA+tCaPz4Od8AgTa4K1h53wEj9HmoQLnfAMslfMsE7d8D16IetwEd3wHfzgQ7sUXfAKGb91SVad8CN2v0nVmB3wIC9DxFrZHfAYstZulhmd8D6SfSLGWZ3wFJkIj2uY3fAY5k+0h1fd8B/Q2CIdVh3wMZB9a7IT3fAbCW/bzBFd8C7WdaFyzh3wLz7huS9KnfAYO4JTzAbd8D+oUjiTwp3wJOCApJN+HbAMJrPml3ldsDXQZzqttF2wINdVYGSvXbAl0eTyyqpdsAg+yL5upR2wFgIWVF+gHbASUkgh69sdsBSErcOiFl2wKm5CHc/R3bA89eGyAo2dsCasFXrGyZ2wMXxiRahF3bAU64bSsQKdsBNZRPVqv91wBhzUul09nXA8tAwPj3vdcCuAP/CGOp1wMDqTGIW53XAetCl1j7mdcCD0T6RlOd1wJh04bIT63XAqL8mF7LwdcDsS+JxX/h1wGMBaH4FAnbAq1sjQIgNdsBT3sRTxhp2wENCGlCZKXbAkXR4NdY5dsBIPHTqTUt2wIXDf8TNXXbAQsDgGiBxdsCw9lTiDIV2wMWgoU9amXbA" + }, + "y": { + "dtype": "f8", + "bdata": "a2SYiUqadkAUDbzAH5p2QAHm/pNVl3ZAorzmGvSRdkAn4OzwCop2QBHuOAixf3ZAG1oSZwRzdkDSvsnQKWR2QIuSFltMU3ZAjI0e8ZxAdkC0PpHFUSx2QH1gc7WlFnZAZethndf/dUAHIzyjKeh1QCl/RXbgz3VA0Pfrh0K3dUDvknQ/l551QM/d3iomhnVAkBBYLzZudUD235e7DFd1QHh1e/7sQHVA4bYmJBcsdUAeGuGbxxh1QGDtyWg2B3VANYlgf5b3dEAlrbcxFep0QAe7AKzZ3nRAvh3sggTWdEBGbihVr890QIB0EoHsy3RAXZBt78bKdEAoFr/zQcx0QJFmqEJZ0HRAh75b/gDXdECUnQfZJeB0QH/s1Eyt63RAxHrV6HX5dECDrQOyVwl1QG4FOpckG3VAtxzS9qgudUC6iGc0rEN1QFE6DF3xWXVA5RIS2DdxdUDZ5GgiPIl1QPtlcZK4oXVADRMNIma6dUBu66A8/dJ1QMl3tY4263VAAuDZ1MsCdkCe+HGneBl2QGwgIEH7LnZAw2qLPRVDdkAiu1hOjFV2QNPkSeQqZnZAh0GYysB0dkAFIciyI4F2QFF+X68vi3ZAZAkcnMeSdkCFP3py1Zd2QGtkmIlKmnZA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "zbTIHR/wecBXTnfLZwR6wKVwmEukGHrAwEq065ksesBIRefGDkB6wMU3z23KUnrAvTs9ipZkesBETtF8P3V6wGKYtvKUhHrAZgzOcWqSesClx7DZl556wOsEFNj5qHrABQY9T3KxesAtyFut6Ld6wHkizzNKvHrAvJeDLYq+esArJ88Tor56wGoyX6GRvHrAE5EB0164esB6ikbWFbJ6wL0VLubIqXrAY9VGFpCfesC4L9gMiZN6wEoU4qzWhXrAY+LrsKB2esBb9Mc3E2Z6wEwQmkReVHrAuPGTM7VBesAn3vskTi56wHZhLWBhGnrA4JNbsCgGesBeaO683vF5wOVAYV++3XnAz0KQ+AHKecATi2PH4rZ5wPVqw0KYpHnAi063eFeTecDA8YF0UoN5wLFCea23dHnARfs+gLFnecD/4eCzZVx5wAIaRQz1UnnAgVgg63pLecAyqokADUZ5wAQoEgy7QnnA9xIXr45BecAv1tJQi0J5wD71fRSuRXnAtoic4e1KecDEM2B+O1J5wHkM0ruBW3nACV1Es6VmecCBBFoUh3N5wNMiwYIAgnnAjzGRAuiRecAuNRJyD6N5wK7Miw9FtXnAzf+XCVTIecDFLFcYBdx5wM20yB0f8HnA" + }, + "y": { + "dtype": "f8", + "bdata": "ez/IKreBdUAYpOUft4F1QIDNE4IAf3VA+Y0dMJt5dUAm5aTQlnF1QJRuvaQKZ3VARP54RBVadUCnECpG3Ep1QD50XdGLOXVAFGnHHlYmdUAfs5fmchF1QMgn274e+3RAtYC/a5rjdECWL7cjKst0QGoanskUsnRASSYdH6OYdEAg9aDxHn90QBP3R0TSZXRACr00eQZNdECkPbN8AzV0QH1zmvQOHnRAQ3JHdmsIdEDv63vFV/RzQAtXUB4O4nNAScZJjMPRc0C2ZH1Qp8NzQEvgf1jit3NAFFSux5auc0DWCSmU36dzQL5KnzjQo3NATxXPe3Sic0Bkm1xO0KNzQHqcZL/fp3NAT8LqB5euc0Cv1wKt4rdzQETDUbinw3NAdGFCBsTRc0BJZQupDuJzQOkGZ19Y9HNABiakHWwIdEByTYOnDx50QKlMITkENXRAqXIFPQdNdEDZWEMN02V0QBYMgL0ff3RA4pmQ66OYdEDD41SUFbJ0QJZRZeoqy3RAjrEkLJvjdECNWMl2H/t0QG9i+ZNzEXVAm66lv1YmdUBqs+VjjDl1QB1Cs8jcSnVAs4CItRVadUDzUAsDC2d1QO+dHxuXcXVAlBTtZZt5dUDhDJyiAH91QHs/yCq3gXVA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "dCdrs0WJe8BWvKY/Y517wJECBrNxsXvA4muj4DbFe8Ax1SFwedh7wAEhAoQB63vAX+KtW5n8e8BaFGHvDQ18wAuhLoQvHHzAxmFyNtIpfMD8BR95zjV8wC+fdogBQHzA+g/hzk1IfMBf4bs6m058wNmWKoTXUnzA8wAdYvZUfMASwfGt8VR8wLuhTXXJUnzAdwP0+YNOfMAO0aCfLUh8wF6fGMjYP3zAyTXXnZ01fMCrJvfNmSl8wAHJHTLwG3zAnEBla8gMfMADymlvTvx7wKW0xwiy6nvAKeR7TCbYe8BM77gF4cR7wPeh3hkasXvAw3hY5gqde8ApXDma7Yh7wFE9d438dHvAYBqwl3Fhe8ArSGNohU57wF+nheJuPHvA069NfWIre8AIGgWskRt7wK2QmU4qDXvAk3WMLFYAe8AcsMN7OvV6wIcGm3T363rABRNv9KfkesAy6bAvYd96wMNxZHQy3HrA8eO7/STbesBfIFHZO9x6wPCXSt5z33rAfW6FtsPkesA1RKr5G+x6wJEY3lln9XrAn6WN4YoAe8BR9p9BZg17wC5mLS/UG3vAojarz6ore8Ai+FEyvDx7wKulXtXWTnvAwu6rNcZhe8DLKgNnU3V7wHQna7NFiXvA" + }, + "y": { + "dtype": "f8", + "bdata": "AHmaGVkGdUCZJ3+lLwZ1QNN5HutBA3VAgUoeaZj9dECdRumLQ/V0QI+rC35b6nRA6K8a4v/cdEA06PF2V810QG/QUKePu3RAKHUeBtyndECKWNG4dZJ0QFF8rdGae3RA3lu5m41jdEAwEXTak0p0QHFkev/1MHRAxLhlWP4WdECLVUY3+PxzQBYwKhgv43NA+ugpxu3Jc0CoEXeCfbFzQP/94C8lmnNAjXM4hSiEc0B9muZIx29zQIDk8Jc8XXNA+nmCOr5Mc0BIhewHfD5zQObY4VufMnNAxXGAnkopc0AlzITgmCJzQOiEyIydHnNAhP3vL2Qdc0AvYOpW8B5zQJQvpYQ9I3NAWEERPz8qc0DPX1Mz4TNzQBKat3AHQHNA2ES8uY5Oc0C7mUnqTF9zQHx37XERcnNAE7e44KWGc0CdfiWFzpxzQOKRPBlLtHNAQ2cDfdfMc0CdPxZ8LOZzQP0XMZwAAHRA3GJQ8ggadED2Vv/7+TN0QIaDXXqITXRAY19gTGpmdEA2wddFV350QLqTxQAKlXRA6I6ppkCqdEAFFnmvvb10QFJPGZRIz3RAd8VVcq7edEDW+3egwut0QFPb0y5f9nRAfjPRVWX+dEAXJDPPvQN1QAB5mhlZBnVA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "csUukJJKe8C/JulIfl57wFthGGf+cXvAuvavWtqEe8A+/9Bv25Z7wGOLdW3Np3vAZZfqLH+3e8DmMmEow8V7wGtV+f5v0nvA6V/H7GDde8B9KXg1duZ7wD1FXoCV7XvAK4DdJKrye8C97VZmpfV7wOyz555+9nvARZp+WDP1e8DOmf9Tx/F7wKS4YH5E7HvAvcXf07rke8DddqQxQNt7wEFmVRbwz3vAEONXUuvCe8BT56GoV7R7wDdHMmFfpHvAVc1szjCTe8Bs/r3G/YB7wJ09DBT7bXvAnJ6Z2l9ae8BrhxL5ZEZ7wPcOmWNEMnvAQpCrezgee8AXCM5mewp7wFRr4WVG93rATCsSL9HkesAPmj9MUdN6wLTnsH/5wnrASinaMPmzesA3d9zie6Z6wCb3T7aomnrASOfF96GQesA33Eu8hIh6wMjDEI1ognrAyFogI19+esDUGfszdHx6wCa1n0+tfHrAfLJo0Al/esCo4ezcgoN6wC5G3XsLinrA2NGmuZCSesDDyGrf+Zx6wNVcrrooqXrAPZLx9Pm2esCHXS96RcZ6wKmrHe3e1nrApiLcJ5boesCGWZzHN/t6wH5xrsGNDnvA2btBAGAie8A4wBIFdTZ7wHLFLpCSSnvA" + }, + "y": { + "dtype": "f8", + "bdata": "uylOTb05cUDGeeag8jZxQP0Hf2RwMXFAijiZkkYpcUDw3ubYjB5xQFjMm1NiEXFAffwwM+0BcUAZH59NWvBwQOXKUZzc3HBAxpJMqKzHcEDE2i7mB7FwQNMT8gMwmXBAz2pnKmqAcEAZgZ00/mZwQA4MdN81TXBA9ue581szcECrAEJtuxlwQHRAZKGeAHBAq8XCzpzQb0C0IDaKIqJvQHQzCkVVdm9AAFFCDLRNb0AJBHi5tChvQLGmBZ3CB29AhZDARj3rbkDUuclwd9NuQPDTmA+2wG5A2dn5iS+zbkBNPkEbC6tuQIVqgGFgqG5AE6AEGTerbkCj8eYFh7NuQK5n7gs4wW5AjQp/dCLUbkC0+MphD+xuQH5p9225CG9A9/9ndM0pb0C6juiC605vQHzJ+e+nd29AG6kZk4yjb0DwtH0bGtJvQKiKrsBkAXBA1qPNxoYacEBLsrE5KjRwQFXvh7sETnBAQQfKTstncEBlGcIvM4FwQEcGZ63ymXBAOgYc/8GxcEDDiecUXMhwQG5yxV9/3XBAv5fPj+7wcEBfBhVGcQJxQBEiHLjUEXFAYmU1Q+wecUBubPPtkSlxQKHBUNamMXFAgO5DixM3cUAH/L1QyDlxQLspTk29OXFA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "66tNNf0lfMC4JTjFGDp8wPxOrTYWTnzAm3wcjrthfMB80IDPz3R8wG/5qqMbh3zAD0nG+GmYfMC8hUeciKh8wO/5hsxIt3zAe2xfwH/EfMBuoEgjB9B8wLRjhYS92XzA3K8iuIbhfMBWhK4oTOd8wEh1uRj96nzAf+1k047sfMB8THHL/Ot8wKzMcahI6XzAH+b/QXrkfMBiGfyIn918wEIdHl/M1HzAsrlJXRrKfMCjlU+JqL18wKNT8fuar3zA2v4teBqgfMBKegb1U498wO7jEBt4fXzAIDpVt7pqfMA8pQwlUld8wJQ39692Q3zAsnUR8WEvfMB5SoMnTht8wDf+rI91B3zA5D08uhH0e8BQKDPlWuF7wISyxViHz3vAP5Pmycq+e8B3Z0zEVa97wHEXoh1VoXvAXut6c/GUe8B/hYO1Top7wJB4Rb2LgXvAu9Kr9MF6e8AlKkwMBXZ7wLn7ScJic3vAngR6uuJye8C3NTlohnR7wFmINwpJeHvApehCuB9+e8DDM+qC+YV7wEGGnKS/j3vA3F62w1Wbe8BS/7xEmqh7wAiG2atmt3vAMwB5DJDHe8Ayrc2F59h7wC9QyMo663vApSj/s1T+e8BGXtvZ/RF8wOurTTX9JXzA" + }, + "y": { + "dtype": "f8", + "bdata": "XeqbMW9edEAyBlDd1F10QOakGSNyWnRAQ2T81FBUdEBZVN66gkt0QGPP9F4hQHRANt2vw00ydECzAvsDMCJ0QOg16d72D3RAYGIdMNf7c0AsyXhWC+ZzQFbzy4rSznNA6k51KHC2c0CEXwHqKp1zQFI1AxxMg3NA0Dt4yB5pc0C1ESDd7k5zQO2+P08INXNAvhlPP7Ybc0COaw8fQgNzQDtng9zy63JAUFsyFAzWckBPYgtNzcFyQDpoIUBxr3JAkH9WLi2fckCylORFMJFyQDmKgxmjhXJAALG5Kqd8ckAw96uIVnZyQE+0h4TDcnJAKVFhfPhxckBj5yG993NyQIAS23u7eHJAFk2U5jWAckCyHWFMUYpyQDDNS1zwlnJAoideeu6lckDFodEpILdyQBXhMotTynJAXsYK7VDfckBCYWlt2/VyQG87fqqxDXNA/8A9gI4mc0CGsO3QKUBzQKrdUlY5WnNAuogheXF0c0BgZT8sho5zQLRWW8krqHNAvAdb7BfBc0A86CFLAtlzQJSsP4el73NA0R0m978EdEBymZ5kFBh0QL/PVr5qKXRATMGBupA4dEC6Q7VoWkV0QJD1XLGiT3RAAPRQwUtXdEC9QFhgP1x0QF3qmzFvXnRA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "hqXdcJC4ecBRSRysXsx5wGx2n9fQ33nAgrXPi67yecAu7rgPwQR6wE+GxPfTFXrAzgDGvbUlesC9E6FQODR6wIOL6JkxQXrASWfy93tMesA6Ff+q9lV6wAIzNzSGXXrA4kpspRRjesDlOLXgkWZ6wAq2LcfzZ3rAdnBRVjZnesCiip2zW2R6wOvEViZsX3rAtmCG/3VYesA8Y3NwjU96wHCrEFDMRHrA+b0J0FE4esBsrUciQip6wCCR9A/GGnrATRAugwoKesDZJr4EQPh5wOAFVC+a5XnAYGbVGU/SecCCeHq6lr55wLGCe0SqqnnAZAQngsOWecCGm0EtHIN5wJzilUftb3nAjPKZdW5decAvJwpd1Ut5wJxKTQlVO3nAW4JlVx0secB0cxtrWh55wIxO9i40EnnAYiF04M0HecASQtKpRf94wEFRjkq0+HjAZ52dzyz0eMACHitcvPF4wHdOfANq8XjAJnBrtDbzeMCxurI2Hfd4wPBTEDoS/XjADCUXdwQFecBzXU3h3A55wKhDB+p+GnnAD2k808gnecA4/WYRlDZ5wKVdUbu1RnnA35aNBv9XecAZ0C3PPWp5wF32Myk9fXnAts0S+sWQecD9J4OYn6R5wIal3XCQuHnA" + }, + "y": { + "dtype": "f8", + "bdata": "d4GCWwi6cUAxjEkPsLdxQJrWfu6rsnFAtn7ahQqrcUAsXmL34aBxQExGN7pPlHFAPIkdRXiFcUCRt7ikhnRxQCJbrf6rYXFA+d8SAx9NcUB1KdNNGzdxQKjvw7ngH3FAY2hvp7IHcUAEeKU51+5wQIRIDIqW1XBAV1v+1zm8cEBjsRS0CqNwQCVLxSpSinBA4O6A8FdycEDWyraRYVtwQDQ7GamxRXBAIddsHocxcEDlIhJwHB9wQDwmWwmnDnBA5geZp1YAcEBDPEafqehvQCg10qqI1W9AOkTb7YHHb0Beq5wXvr5vQDtohZRWu29A9fR5RFW9b0Dy6y9etMRvQNii9n9e0W9AAw687S7jb0BJCJr78flvQIV329GyCnBAn2vjIp0acEDs8ADHiSxwQFnheMBEQHBAqNiG1JRVcEDp9VwxPGxwQKHncyH5g3BAJyYjyoaccEBRhljznbVwQL7YK9b1znBAbmT370TocEDJ75DXQQFxQLbfOBKkGXFAw8rV5SQxcUBEtBomgEdxQO/hRPp0XHFAMbszmcZvcUDHHbn5PIFxQOe9InWlkHFAnB4lWtOdcUCh/H1uoKhxQLon1l3tsHFAICuhFKK2cUDQLvMFrrlxQHeBglsIunFA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "TscpEDVbe8CZETEF8m57wFn4HbTDgXvA+j3ahnOTe8DrABMwzqN7wOYEB0CksnvAyagersq/e8Dlbr5VG8t7wBwJ6mR11HvAZ/92u73be8DGz7o53+B7wJZP0P3K43vAtpXCjnjke8BINyD15eJ7wNSOr8AX33vANoIz+xjZe8AoKGcI+9B7wLcrjXPVxnvAqDslq8W6e8Bvm42r7qx7wFV0iJl4nXvAE0DLTZCMe8AnC+rSZnp7wGneF9cwZ3vAS+pYEyZTe8BFrOGpgD57wFzfd318KXvAZlG+g1YUe8CmdGMUTP96wMWNMzea6nrASJcS83zWesBPU9+fLsN6wCqTOD3nsHrAyJEP0NufesAahN7IPZB6wJVxQXQ6gnrArUiRd/p1esDOTf5aoWt6wBHdfyJNY3rAQXDE9hVdesBccR7fDVl6wJEbOY1AV3rAORktO7NXesCqQVecZFp6wLxwHeFMX3rAfYmWzV1mesCa7NPigm96wOqgVJqhenrAsb31spmHesCJ64CORZZ6wIOdyZ56pnrA6IMc4Qm4esDQL5tmwMp6wAtj+Odn3nrAdYfoYsfyesBNo32/owd7wDMnj3vAHHvA3Wg8WuAxe8DmtYwVxkZ7wE7HKRA1W3vA" + }, + "y": { + "dtype": "f8", + "bdata": "E3kWrYXWaEBiSZbpbsloQLx9iVgft2hAzUqcFsyfaEC1ZO7LuINoQDuN1Oc2Y2hAji2jtKQ+aEAOIC9GbBZoQP72HUYC62dAYTiCoeS8Z0D8FZkbmYxnQB8YzcmrWmdAlCBjfa0nZ0A/WWwfMvRmQO91vwPPwGZAarbVNxmOZkD+AXTSo1xmQM0lBkn+LGZAp7mBz7L/ZUA2pIfHRNVlQI3/TkMvrmVAaLqqoOOKZUDgZzVAyGtlQCMJXVw3UWVABCisA347ZUA+Ykc52yplQEK0Jz5/H2VA7agjBYsZZUBsaF3TDxllQLXbKg4PHmVAWDEJN3ooZUD6gacVMzhlQJWijg8MTWVA7ONnrMhmZUCMEWNFHoVlQGHuvt20p2VAYhwAIijOZUAdKvKKCPhlQDWxJqHcJGZA3jFIXSJUZkCiuUKhUIVmQJha/MXYt2ZA9tMbOSjrZkAMOy0mqh5nQPB6UybJUWdAYYGi8fCDZ0CFHzkNkLRnQHYTO3EZ42dAEEDjIQYPaEC0hwu31jdoQDSfus0UXWhA8eyHX1R+aEAmbPH7NJtoQGi5FuBis2hAluat6ZfGaEA+X3FinNRoQDnNuKFH3WhAokNogoDgaEAvnN+rPd5oQBN5Fq2F1mhA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "QZjVwfjue8D1tq/NzQJ8wG1upWADFnzAxrbiwmEofMAR5sCsszl8wH2eUeHGSXzAuP4WwGxYfMC+aELMemV8wMyU8SfLcHzA03kEAj16fMAbdU31tIF8wD6XB1gdh3zA8ZmsemaKfMADPHTVhot8wGIL+SN7inzAYm6ybkaHfMBTbygC8oF8wCTP+lONenzAVpsJ1i1xfMBLWEG47mV8wEIsv5nwWHzAjMcxKllKfMD/fom8Ujp8wEWqNMwLKXzAdFxMdrYWfMBZiTjohwN8wII3ccW373vAtiUchn/be8Ck/1rQGcd7wIGkLc7BsnvAP+/VgbKee8BTxa4aJot7wLfiZkxVeHvAXeuIqnZme8AM0C0KvlV7wHSypOtbRnvAb17E7Xw4e8CNZ35MSSx7wIFTK2zkIXvA1FLicmwZe8DsSwbx+RJ7wKvfBZqfDnvAJBIdDmoMe8D17bW1Xwx7wDdc0q6ADnvAfBq1zMYSe8BLy8qpJRl7wMQtn8uKIXvA6C922N0re8BzZO3dADh7wH/92KfQRXvAxldgJiVVe8Cv5zHi0WV7wNp5fX2md3vADas+QG+Ke8CKqkCu9Z17wK0lKCUBsnvAKPW4gFfGe8DRD3vDvdp7wEGY1cH47nvA" + }, + "y": { + "dtype": "f8", + "bdata": "bTFzy3iObkBE6OVV74VuQKMLKtn3d25AhVI+2LpkbkAkkIMgcExuQLXJ4CdeL25AyspiQNkNbkAOCKijQuhtQOs73lgHv21A67qD+J6SbUAKy4FRimNtQCcyjvNRMm1A9LEPo4T/bECYYgK7tctsQJQTjYF7l2xAlXQfdG1jbEAhVgmQIjBsQAKNhZwv/mtAUc0ueyXOa0BmN8KDj6BrQHyH8u/xdWtA6j/gW8hOa0AmRI9fhCtrQKTeaUWMDGtAqOaM4TnyakBMojmN2dxqQJ8nYUmpzGpAmZbLCtjBakDU1OQxhbxqQHrauS/AvGpAM4wuWYjCakCNDO7ozM1qQEvlDzBt3mpAKO/k9Dj0akAi/tj+8A5rQFaV081HLmtAh7sDe+JRa0AP5orAWXlrQAkwCiU7pGtA+f2sRwrSa0DG8O1IQgJsQBi3/0tXNGxArNN7DLhnbEBMob6Dz5tsQGRkKpkG0GxAa5pr2MUDbUCNTMcodzZtQEoneYCHZ21AYYUyj2iWbUCCV+VaksJtQCGSLcqE621ALRvhF8kQbkCTeJAr8zFuQFv9ENOiTm5AyQKD2YRmbkAt2Kr4U3luQDJd4KHZhm5AzHFOnO6ObkAHObd2e5FuQG0xc8t4jm5A" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "4RDVlkzSd8AsAUZFHeZ3wF/rg/6U+XfAR4DbSnsMeMBy7WpYmR54wENLJJq6L3jA4E07YK0/eMBbF0RoQ054wJ8iYWNSW3jAXRT7cLRmeMDSfZ6MSHB4wFTkwO3yd3jA8ENXWJ19eMCoTFRdN4F4wABJU4q2gnjASWrlhxaCeMAWlikmWX94wM8tileGenjAWxGwGaxzeMAQue1M3mp4wNocmHo2YHjAgaL0itNTeMAp7JJr2UV4wPGPFqdwNnjAN/+e78UleMD+tCKdCRR4wEW2NSFvAXjACiDScSzud8CMk9Nsedp3wAh/6zWPxnfA4EnkkKeyd8B4IBQ6/J53wAhf5T7Gi3fAAlxaWD15d8DTkmxJl2d3wAIAHEMHV3fAsf/yT71Hd8DfX63I5Tl3wKfWltOoLXfAV/cV8Ckjd8CHcbWPhxp3wPdB1r3aE3fAKvcK1zYPd8Aev+5QqQx3wKgjG5M5DHfAobKt4egNd8BC3ptZshF3wKe83/6KF3fA7ohU3GEfd8Bde+Y0ICl3wONMh8WpNHfA/RYoF91Bd8DOyMrfk1B3wHSjkXGjYHfAyZmKNt1xd8AVgM83D4R3wEYac64El3fA8KmWnIaqd8CZ8+tsXL53wOEQ1ZZM0nfA" + }, + "y": { + "dtype": "f8", + "bdata": "jS05Kf+3cUALfCsPwLVxQBSfHqHisHFA9GKL+3SpcUAD0lOqjJ9xQOPuQ2pGk3FA1bW21cWEcUCYLFH9NHRxQGoL/+3DYXFAx+eSJahNcUA6JZ73GzhxQIe3QuRdIXFAH2/p4q8JcUADp+qiVvFwQD1UVMSY2HBAQ1YPC76/cECXOraODqdwQHc9eenRjnBAixFuaE53cEBq2aU/yGBwQC7LWMSAS3BAR1Blr7U3cEAZTUhqoCVwQBTblWh1FXBA03zVj2MHcED6LvZeJ/dvQAaBDhVQ5G9AJHRM6HfWb0Dwv9sAx81vQBTUQJRWym9AAOM5nDDMb0B8is+5T9NvQJsH6USf329ACcY2iPvwb0Dyv2IUmQNwQGrABlwBEXBA/jFrt48gcEACm2gHFzJwQFNNLXRkRXBAotq2AEBacEBKJzgtbXBwQKUOlaarh3BAJZj2ALifcEA7jVp7TLhwQHQy58kh0XBAA0a45O/pcEAcbM3YbgJxQD0DvJhXGnFAcgrHymQxcUAmTweSU0dxQJFpXFDkW3FA0fzzXttucUBY/U+7AYBxQHke1qYlj3FAzJUZNxuccUBYrzzVvKZxQMK3+KrrrnFAs/sP/I+0cUD4aiZrmbdxQI0tOSn/t3FA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "5yQ87bvLdcCj/WuqSuB1wK3slN4r9HXAOXMP4CUHdsBu6c+jARl2wCC7Dl2LKXbAT2OIE5M4dsCTVqEu7UV2wNRF2vNyUXbACe8l9wJbdsB5pdp7gWJ2wEZgJsXYZ3bAp/IbVflqdsDmiqIZ2mt2wE4hxYZ4anbAVIYVnthmdsDfog3jBGF2wBufkDwOWXbAWmTkwwtPdsCjrbGBGkN2wKH9zBldNXbAp7+8ZvsldsA3BCAGIhV2wLsmRdcBA3bA3rpnbc/vdcDZ7zB3wtt1wFK/NB0Vx3XAomFAWQOydcDAVmNIypx1wCedq3mnh3XAfEKXO9hydcDlOEHqmF51wK08TUAkS3XArZ6OrLI4dcCHD1iueSd1wFo2TzqrF3XAxiqGKXUJdcAQHn+0AP10wMDvm/tx8nTA8ntUnufpdMCTlWNieuN0wM9Q7Os833TANAlohzvddMAy+fkFfN10wGbcj6z933TAOY0ANrnkdMATeCLooOt0wFe5nLug9HTAUWj/lZ7/dMCkjHqVegx1wH8gWG0PG3XACuMs0jIrdcBFKob0tTx1wBXdsAhmT3XARcAP2gxjdcBwuVVocXd1wKH624xYjHXAI4Q0poWhdcCeUwdIu7Z1wOckPO27y3XA" + }, + "y": { + "dtype": "f8", + "bdata": "Yhw7RT7RZ0CpWNhpe8dnQM3MwNavuGdAw3AgdgalZ0B6/rBPuIxnQFY9TuMLcGdAq7V4XFRPZ0DA7xeh8CpnQL/7Nz5KA2dAYqzgNdTYZkCfjn6xCaxmQEo5pZxsfWZAiyk3LIRNZkCkPThW2xxmQDZZvD7/62VArFSDnn27ZUCgsOUn44tlQN5ouu65XWVA76LV14cxZUDv6qkUzQdlQJV+cq8C4WRA+S8dLJm9ZED7Ou5B951kQKSvkLF4gmRAfKHzOm1rZEDfDvi1F1lkQEx3jlCtS2RAYIF29FRDZECnG2DWJkBkQFF8tS8sQmRAxKbZI19JZECLEinRqlVkQHcii43rZmRA/LzkTe98ZEDl9j83dpdkQK7HA1gztmRAX4oih83YZECV77dm4P5kQOg8KIf9J2VASm10p61TZUCpDiIPcoFlQM6Iy/3FsGVAjqcuLCDhZUCnhFxa9BFmQODXh+a0QmZA9rPVZ9RyZkDdFYlIx6FmQMuK41oFz2ZAp4skZAv6ZkDU1C2ZXCJnQAKlfAiER2dA4vNd7RVpZ0ARvYXosIZnQDetfhr/n2dAdPa+HLe0Z0AO0Y/WnMRnQHkcXiuCz2dAQYN6gEfVZ0CVLcUY3NVnQGIcO0U+0WdA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "zNxc6aO2dMAfA8HcEst0wLGUYlNW33TAknWXhjPzdMAaHVXYcAZ1wDhLUHrWGHXAp5rbDy8qdcAqbK9ISDp1wEA22nLzSHXAv+oxAgZWdcBAlb0LWmF1wHk6sbPOanXAG/S8jEhydcCU1ZrnsXd1wMDY9BH7enXAkmHsgxp8dcD1SL/7DHt1wFY/OofVd3XAFCDden1ydcB958pWFGt1wJ/K05mvYXXAZNobg2pWdcA6CxPDZUl1wLzdoxzHOnXAPK+r97gqdcCMZfrlaRl1wI08PhwMB3XALoRj4NTzdMBgtQ7v+990wOwS8dm6y3TAr8XMYEy3dMAJzgzH66J0wJMR3yfUjnTAFSDDyj97dMD89356Z2h0wLgdZOCBVnTAM9bC5cJFdMBwZ1cdWzZ0wFkfZjZ3KHTA1Moeez8cdMARkL9b1xF0wB4lygddCXTABot1FukCdMDpQ1o/jv5zwAfoJyRZ/HPATpMBLFD8c8CUcetwc/5zwDtIf7+8AnTAEtjoqB8JdMAc7PWmiRF0wOB60VHiG3TAVwDOpgsodMAuu3Ff4jV0wPpPyFc+RXTArwnRAvNVdMDG/7frz2d0wIVPY0KhenTA6bm8cTCOdMBFugO+RKJ0wMzcXOmjtnTA" + }, + "y": { + "dtype": "f8", + "bdata": "1lNDCETpdkCFpXeJdOh2QGQ0WO0P5XZAWnBeCyDfdkC/1xUcttZ2QHOeKIfqy3ZALNCVnNy+dkDoQd45sq92QCHEL1yXnnZA3yjNoL2LdkA2NiW1W3d2QKnxObisYXZAMEokj+9KdkBfiaUuZjN2QEu019tUG3ZADcYnZgEDdkA+Jdhcsup1QJurVkKu0nVAteS3vzq7dUDXvKjam6R1QJC0IDATj3VAqeQQNt96dUDJ2TeGOmh1QDnJJzRbV3VADCZsMHJIdUDxjZW6qjt1QAHNx+MpMXVA0dU1Iw4pdUCAicP9biN1QFihzcFcIHVAD5rdV+AfdUAY0dIo+yF1QBjHyxmnJnVAn2PbndYtdUAH3VbddDd1QBxDSvJlQ3VAjVFkOYdRdUA90m62r2F1QE4jMIuwc3VA/g1df1WHdUDCnBCYZZx1QBKYEr2jsnVA4EQNas/JdUCmYbBppeF1QOaTopjg+XVAQdMLrjoSdkDrInMHbSp2QM9EoHUxQnZAzB8vCENZdkD2W4bVXm92QF0y7bxEhHZAenqNILiXdkA8bUaVgKl2QEsgUoZquXZA+Q3jykfHdkAnsQcs8NJ2QPHZT9lB3HZAyWPhyiHjdkA2z98PfOd2QNZTQwhE6XZA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "sF7vdCPoccDL3SSuTPxxwHgEgQkeEHLA62hTC14jcsAn9YTd1DVywFIWjfFMR3LAjUTKm5NXcsBxS3umeWZywOwDr9rTc3LAh02dfXt/csBWsv3ATolywMDcFSUxkXLAcXNjywuXcsColfG4zZpywMaPmQdsnHLAbOufBeKbcsC0KFJDMZlywLmhfY5hlHLAgsDM24CNcsBoL0weo4RywEhujQ3ieXLA96MO21xtcsAOCsDXN19ywPxjrQqcT3LADwz9ubY+csCHxJ3nuCxywAA1IMPWGXLA3mVYEkcGcsDWSH6SQvJxwHMhmlMD3nHAyisaEMTJccAPAnqCv7VxwGbb6bovonHAs77jdk2PccB2K5d8T31xwP+YCPxpbHHA9KGx981cccD+7li2qE5xwOI2vj8jQnHAkEGX5WE3ccA0Ijfagy5xwGI5EdaiJ3HAY3cezdIiccAKRP20ISBxwGzrc1yXH3HArgHLVDUhccBLbkHt9iRxwBNPp0DRKnHAZjz4VLMyccA2RJlMhjxxwCzHq6gtSHHAQ9e0m4dVccBxWalrbWRxwE2FQuKzdHHAKvBUyiuGccB5lL54ophxwG+oXl/iq3HA1vhsqLO/ccCIM27Y3NNxwLBe73Qj6HHA" + }, + "y": { + "dtype": "f8", + "bdata": "XB07O5gZdkBzOC1OZxd2QEcTkLulEnZAsSgPT2ELdkCZdfocrwF2QDAGIkWr9XVAuE9CoXjndUCv9e1fQNd1QDAwGo0xxXVAR06oiYCxdUCCJnhzZpx1QMYjvH8ghnVAxHlvSe9udUDYd/EVFld1QB2H5RHaPnVAkc2NiIEmdUC/c+YXUw51QN710OOU9nRASaGhyovfdEDnW12desl0QDIg612htHRAxVRrhTyhdEBJhM9UhI90QEM+rzGsf3RAa2kzEeJxdEA+c8jyTWZ0QJoFGmwRXXRAfsaoR0dWdEBisRQ3A1J0QFJx/ZlRUHRA6GweWjdRdECQng7dsVR0QNCOzQu3WnRA4okHcDVjdEDULLxmFG50QJxftGc0e3RA83T4YG+KdEBtJT0lmZt0QDQZB+x/rnRAHFMR4uzCdEDnpFPIpNh0QLHo259o73RAj4mHYPYGdUBMWYu4CR91QGEmntJcN3VA70WHIKlPdUBYicUnqGd1QD4D/U0Uf3VAZqXaoqmVdUAFHySlJqt1QDFjuABNv3VAqLlZQ+LRdUD69DSGsOJ1QBgTOgqH8XVAk8mAxTr+dUBy3h7gpgh2QNozBh+tEHZANoy0OzYWdkBar7YnMhl2QFwdOzuYGXZA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "iavc7lgubsBSL8KwX1ZuwAsf/nZvfW7AjV1l9BajbsAmuNXw6MZuwLaRAoZ96G7A/nDTTHMHb8CVTOp3cCNvwC8YHtgjPG/A6gj2x0VRb8AgiHr7mGJvwPEKATLrb2/AKBjvxxV5b8AXsc0m/n1vwLYHaBKWfm/AltAV0tt6b8CibLk12nJvwDhvY3aoZm/A4Hf28mlWb8C3wY7JTUJvwLH+1k6OKm/A1enWZHAPb8COUiazQvFuwOEqyMJc0G7A1VhDAB6tbsCUwtmm7IduwKBrAJg0YW7A2b90ImY5bsBhsHq89BBuwDmF9LRV6G3AbtAf3/6/bcAAeNI8ZZhtwEElF6v7cW3AmYYBlTFNbcBpx4CwcSptwHGl2cggCm3A2u9JmpzsbMCGdCXCOtJswBf9gMZHu2zAaKo7OAaobMBBgerxrZhswIsz1nVrjWzAYhHhbF+GbMB0mstHnoNswOh26gMwhWzAAdH5ExCLbMCCR1FtLZVswCItUrlqo2zASLSAqp61bMBwMVF0lMtswHf1TWQM5WzAD4jZmrwBbcDnWXXhUSFtwPdnH5xwQ23AF7YK07VnbcAl4q9RuI1twDIo9dcJtW3AHrb4WTjdbcCUut1KzwVuwImr3O5YLm7A" + }, + "y": { + "dtype": "f8", + "bdata": "r2jbM9pldkBRhRJSkmJ2QAPSXN+6XHZAQ+NlzWRUdkATijlKqEl2QPUWIXqkPHZAHRRPHX8tdkCmeF8iZBx2QGXx6SaFCXZAQ92X5xj1dUBsbF+hWt91QDBosGWJyHVAFgiFY+ewdUDFcWknuZh1QIO3ptREgHVAvQ/SWdFndUBHXg6jpU91QFDWVMwHOHVAbWcZVjwhdUDq0JhehQt1QA2wEOIh93RAO9ANBE3kdEBFqOJjPdN0QJOTN34kxHRARlaAHS63dEBcRvfaf6x0QLeHjrE4pHRArq8TpHCedEApdop3OJt0QLV3iIKZmnRARx8fkpWcdECcSKLkJqF0QEnCWjpAqHRAAUH0+8yxdEA0TDd2sb10QGbmYSrLy3RAH+Q1MvHbdED6uJq29O10QLigenehAXVAsA5RY74WdUCfybI8Di11QF2Q70tQRHVAgwvKGkFcdUC4jSU4m3R1QKYNcgEYjXVA9xuOb3CldUAGjszkXb11QKBHyPma1HVAkAW0RuTqdUAoPd4m+f91QC71MXScE3ZAzLmUOJUldkDGMx9TrzV2QEEmUQ+8Q3ZAXj+KrJJPdkAdyT7UEFl2QOdckf0aYHZAkrMwvZxkdkAa6ZEAiWZ2QK9o2zPaZXZA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "npOLkc9xacAyvT7cdJlpwDfy5A8awGnAdXdyFE/lacCeO879pwhqwJxp20S+KWrAk1Hd8DFIasCnDdetqmNqwHtwv8zYe2rAORqiKnaQasBbSw/8RqFqwF5fjHoarmrAI9wNcsu2asCGuOCsQLtqwNjYyTxtu2rArqeHoFC3asD6AEnF9q5qwNAvFeR3omrAeVaJO/iRasBuDLemp31qwLciVRLBZWrAfS/V0YlKasBSok3WUCxqwPykf8ltC2rAmfOQD0DoacDtNluyLcNpwOJwczminGnAKvhDcg11acD0ssEr4kxpwHwzaemUJGnAu6NJkZr8aMAAxvEYZ9VowNiNFjVsr2jA7ezCDxiLaMCCes0I1GhowOzPMoQDSWjA/yfLyQIsaMA8d5/5JRJowClh5he4+2fAiNFsM/roZ8DOXeGoItpnwOzJJYVcz2fAvQ5wCMfIZ8DyFKVLdcZnwEER9AhuyGfA/i1TiKvOZ8BwGxawG9lnwHppbjmg52fApmE9CA/6Z8ArpzilMhBowLVT/9jKKWjAkbxdZo1GaMCNmaPhJmZowKDzm6I7iGjA1AFpzmisaMBHz0B2RdJowAD2ysdj+WjAy5esS1IhacCLnKYunUlpwJ6Ti5HPcWnA" + }, + "y": { + "dtype": "f8", + "bdata": "GzHE5SKTdUDi9t1bvI91QPPxyh+5iXVA+2U4oiqBdUCEA9m0KXZ1QHZ7Z0LWaHVArp8S8lZZdUAumF+32Ed1QMZgx0+ONHVAUsCJr68fdUDlnmBfeQl1QDx+6swr8nRAMmDJjwradEBVKpSlW8F0QJs006ZmqHRAkd5U93OPdEALiDT0y3Z0QD349CG2XnRAGQYPXXhHdEBLNk4PVjF0QKUTR2yPHHRAXG4et2AJdEDLqL2TAfhzQCQUb2Wk6HNAcny2vHXbc0CX0g3Wm9BzQEvk/Co2yHNAZdTNFl3Cc0BfIuePIb9zQP4smPaMvnNAVubm+aDAc0Dmm62SV8VzQCP9FhWjzHNAaqlFWG7Wc0DYP7TznOJzQADrm5EL8XNA8GVyVZABdEAVMVZV+xN0QJbECCUXKHRAwaLjcKk9dEAX0wanc1R0QFIM1qwzbHRADyG2nqSEdECsht6Xf510QHRf+398tnRAc5NL3FLPdEDxZ9yhuud0QGPJgAZt/3RAWSgmTiUWdUC6VDOSoSt1QNYMr4CjP3VArc0DEfFRdUCEkVQsVWJ1QNQ6ekegcHVAbQLr7Kh8dUBa6Ps0TIZ1QMlXHytujXVA11L7HvqRdUBw82vg4pN1QBsxxOUik3VA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "KubFPpGLdMB2i167oZ90wH1Syhx2s3TAJJeT3tTGdMCm+3HRhdl0wLFNQr5S63TA/xpIAwj8dMD20vApdQt1wH4PZnNtGXXA6EdXWsgldcD+d4IIYjB1wKLQpr4bOXXAge+zLdw/dcD/7TLAj0R1wJFYFNMoR3XAWko+3Z9HdcBt8WeF80V1wHEVA6YoQnXArkcoP0o8dcCZka5WaTR1wNEuy8acKnXAsIrI+wAfdcBoxZShtxF1wObiFkLnAnXAOe5l1brydMD4TiZFYeF0wKfUduQMz3TAuyn43fK7dMDDFJaZSqh0wBvX0RtNlHTA1s9fYDSAdMDCGPixOmx0wDnzQQGaWHTAPnPEPItFdMCV4cOrRTN0wNbR6k3+IXTAfQCQQecRdMDK3lYyLwN0wPh20NEA9nPAzFClW4Lqc8AGia8m1eBzwPzGRkQV2XPAU4/WLlnTc8DJGKuIsc9zwDnBsesoznPAfBW5ysPOc8B2nYlkgNFzwIDZ/MhW1nPAyq0D8Djdc8BrclniEuZzwNCabfPK8HPAd/nbC0L9c8CLnpsDVAt0wPi73grYGnTAelxzIKErdMBSkE2Ufj10wHZrwJQ8UHTAhDTMxKRjdMBTy83Zfnd0wCrmxT6Ri3TA" + }, + "y": { + "dtype": "f8", + "bdata": "j2Ub4fQgdUAepUJJmh91QFEGNvirG3VAufzcVDUVdUAtfqEeSQx1QHzqDjcBAXVAlRvAVn7zdEBhXXau5+N0QOCYbHVq0nRAz2swZjm/dEC5l30rjKp0QCaVxr6elHRAxaM+urB9dEDW7V2gBGZ0QDrb9hrfTXRAMiYMNIY1dECvYqmKQB10QCo8C4ZUBXRA15NpiQfuc0B107MqnddzQIA9h25WwnNAW9qXC3Guc0DyB6+3JpxzQFDkRoCsi3NAgRyoMDJ9c0DweUjH4XBzQE5K/PveZnNAoPFb2EZfc0AHKYpjL1pzQNM3T2KnV3NAI3tCLLZXc0AkfX6WW1pzQLVhHfSPX3NAfD98LERnc0AJ0gTnYXFzQF6C/svLfXNAYsSq2V2Mc0BX6rXM7ZxzQOp9zZpLr3NAzYv4/UHDc0B3sx0Pl9hzQI3F9u0M73NArsiKdGIGdEBqziX0Ux50QEt6qvmbNnRA2coDF/ROdEA61m6vFWd0QHjsS8S6fnRA4QglwJ6VdEBSrpw9f6t0QN8oBMgcwHRAmZdqkzvTdEDW3Q4qpOR0QGdkPQ0k9HRAwg/HR44BdUDflWjwuwx1QKH0p5qMFXVAAqngtOYbdUDi223Stx91QI9lG+H0IHVA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "xf+Z3KCQdMBjTbbGrqR0wPOt4u57uHTAeWKd5c7LdMARE9Odb950wJB7cw8o8HTAbnUq1MQAdcBxyHa8FRB1wERQblvuHXXAkQ+ahyYqdcAibHTPmjR1wA2uN+AsPXXAGI/S3cNDdcARuwOrTEh1wOQZyyC6SnXAlBKQNAVLdcBKH44MLUl1wHt0TAI3RXXAGJMZky4/dcAEyLc+JTd1wD9Dm1QyLXXAlQBNsHIhdcBYoLZlCBR1wDf6SV4aBXXAxB8j6NP0dMAWMGw4ZON0wCVUb+L90HTA6BDkRNa9dMCqcSHvJKp0wDEQ9v8ilnTAA235fwqCdMAIKze5FW50wJpwHI5+WnTA3NaR0X1HdMBQ6CiiSjV0wF1DO8oZJHTASR7LJh0UdMDwUeEWgwV0wChwDPV1+HPAPAmHnBvtc8AJd2n7lONzwLmtJbP923PAtB9iyGvWc8BFLBxj79JzwEpYy5+S0XPAjT4NclnSc8B/SS+ZQdVzwIF1t6ZC2nPAqyfZFk7hc8APKY96T+pzwAmo4LIs9XPA/1SlPMYBdMCm1uyL9w90wKx1AHaXH3TAx4TLqHgwdMDxKlAuakJ0wCxDq/o3VXTAlWQLg6todMDgL+VbjHx0wMX/mdygkHTA" + }, + "y": { + "dtype": "f8", + "bdata": "Vzx4WHicdEB6WcuI+Zp0QA7Mo3DnlnRAq8Sv3k2QdEB6/Kv3P4d0QGO33P7Xe3RAq2DgCTdudEBlt7ighF50QNLkIEvuTHRAIRR9DKc5dEChm+LP5iR0QPbo5cXpDnRAkKYEtu/3c0CGgKZFO+BzQEgizTYRyHNAEiWkoLevc0CVazMkdZdzQGSdgR+Qf3NAxvx44U1oc0Cund7g8VFzQLMbo/i8PHNAj2jEq+woc0DsWeJyuhZzQOl7ixVbBnNAMK8lEf73ckByoC4PzetyQBimY2zr4XJA44gv0nXackC3u4fjgdVyQOomKv4d03JAf5DxEFHTckCOf7mHGtZyQE3vC01y23JAZ/OT4UjjckB7ShGJh+1yQAl8SowQ+nJA6Dk+j78Ic0DEApr6aRlzQOwdRHffK3NAnZqSeuo/c0BznpjhUFVzQKSLx5nUa3NAVt/6VDSDc0DUiuRGLJtzQJNXtOl2s3NA3ey/x83Lc0B1i+JH6uNzQHaxQ3qG+3NAP64y410SdECrvspBLih0QMWEH1C4PHRAoXDEesBPdEAQw5qND2F0QDru8FNzcHRAO+EiKr99dEA42BR/zIh0QNYfEUR7kXRA6FHESbKXdEAuVUqJX5t0QFc8eFh4nHRA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "3oW0S1AXc8CSl6UKWCtzwPJKXV0VP3PA00JHAk9Sc8BCMcE1zWRzwEF+2lNadnPA3Obqc8OGc8CsyDz82JVzwArJHixvo3PAEF3Mml6vc8CpFr2phLlzwCAmD+nDwXPAU8zpbATIc8BXE+ASNMxzwEWLirZGznPAxXi/VDbOc8AbTQMdA8xzwC/S/nCzx3PAW5r80VPBc8CIZKO89rhzwFqqVnO0rnPA8eHYt6qic8Cdjft0/JRzwJ90V1nRhXPAlMoyZFV1c8CyIeNluGNzwAJSHXUtUXPAHJzFWuo9c8CM2+31JipzwLlLxpkcFnPAa/BWZwUCc8Do7eOkG+5ywE7g5RSZ2nLAPnuATrbHcsD5ZV0ZqrVywLVxx86opHLAkQzTweOUcsBAX0ywiIZywNYRCj7BeXLApI4lfLJucsBoGHd9fGVywDCPjfk5XnLA3Lwv//9YcsAH8Ue33VVywAwX6zjcVHLAntH6bv5VcsDAFq8PQVlywL3XH6aaXnLA/wqzrftlcsDGhx+/Tm9ywKwkgs54enLAwQXReVmHcsDmjMlmy5VywDZ5SK+kpXLAjvLRWre2csA3/ujj0chywOqXs8e/23LAwMpKHkrvcsA+/vw5OANzwN6FtEtQF3PA" + }, + "y": { + "dtype": "f8", + "bdata": "SFlkVksddUBoV88/gRt1QI1nH+YkF3VAGXFl70IQdUCmAlpS7wZ1QPFAdRxF+3RAGQJ3I2btdEC0r0Kjet10QFuaK8mwy3RAdD8ELjy4dECeAnVAVaN0QGl1TKE4jXRArfajcyZ2dEDNv9aiYV50QA/8ZiAvRnRAju4DHNUtdEDMMvU3mhV0QL2YObzE/XNAcOGrypnmc0CxqXyWXNBzQHElR6FNu3NA2Qz2/6mnc0BEcpepqpVzQGBoIdKDhXNARL0GU2R3c0By/lIjdWtzQEzv1+DYYXNAWhnFa6tac0A/tMyVAVZzQNZswOXoU3NAITRVcGdUc0Ad5H/Ge1dzQJbjnfkcXXNA+bhdtTplc0C6ZRxvvW9zQM4nLqqGfHNAxZBMUHGLc0DvcikdUpxzQJSd7hv4rnNAI2M+NS3Dc0DaBRnMtthzQMPz32dW73NAVa+JacoGdEDAzPjJzh50QEbrTd8dN3RAqFL4JnFPdECTGTsSgmd0QNea1dIKf3RAt5h9JceVdEA2wd8Xdat0QBxB6MfVv3RAWZAoGq7SdECKaEllx+N0QDyblxDw8nRAmuTfI/z/dEBodPjGxQp1QKo+hq8tE3VAxK2/exsZdUDkcyX5fRx1QEhZZFZLHXVA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "6bF16cQzcsCKb828x0dywKiETnR5W3LAytMO8KBucsBxVhmhBoFywKj4lCp1knLA5gKN/LmicsB4HJrmpbFywP9/wqANv3LAAl0EScrKcsCiQh7UudRywINwTnC/3HLASKHq2MPicsCt1t2ZteZywKhjSEKJ6HLA4lyvhTnocsDHLVtLx+VywJ+9uKs54XLAlr7E253acsDn2LwGB9JywMLPhRaOx3LAXOZna1G7csDEIPODdK1ywFzxCpYfnnLAjvNDGn+NcsAwAuZKw3tywE7QCJgfaXLAUcZgEspVcsCe52zO+kFywMifzEHrLXLA6EmVnNUZcsDL34og9AVywD5fJXiA8nHAtghND7PfccB1obJvws1xwElrnqLivHHA1KoAmkStccBniXmiFZ9xwGwd9N9+knHAVLhR1qSHccDgmn//pn5xwCZHKnCfd3HAnUIXjKJyccCYtQDLvm9xwCV0no78bnHADilWCl5wccDeJ9k833NxwNhpwvt1eXHArgMTERKBccABjTdqnYpxwCsWDlj8lXHA6/cy3w2jccA5kqsXrLFxwNJ82ZqswXHARj53/uDSccB8zTlbF+VxwK9bkN0a+HHAfYveXrQLcsAoonQFqx9ywOmxdenEM3LA" + }, + "y": { + "dtype": "f8", + "bdata": "H+iJu/DYdEAWiiyO8tZ0QKk8COhi0nRAGqv5A0/LdEALsYppy8F0QEA7ZrHztXRAP6FMNeqndEB2pXCs15d0QBUdXrXqhXRA4c3ATldydEDlu5NAVl10QKpabnckR3RAq1rNUwIwdEALp1fvMhh0QBg0PVr7/3NAtijk0qHnc0C6cCn6bM9zQAG1gwajt3NAUvJa+Iigc0AHaePRYYpzQM1uwNRtdXNAReeix+lhc0CPAABGDlBzQN2I3xsPQHNAMB+erxoyc0DfCFd7WSZzQA0NfJftHHNAZuLvV/IVc0DICsL8exFzQO0HcneXD3NAhkhkRUoQc0B1s/VfkhNzQFIBXEJmGXNAqdhBBbUhc0Bal86PZixzQJ2Ri91bOXNAywlcWG9Ic0Dj6oJFdVlzQDYLekQ8bHNAxQ0r3o2Ac0DDdOoiL5ZzQMioalXhrHNAbRq3oGLEc0CPpCfXbtxzQN5QIjjA9HNAmuJtOhANdEAXTcpYGCV0QNGjfd6SPHRARDOEsTtTdEAVTBkY0Wh0QKPJW3cUfXRAZlrlCMuPdED90UWFvqB0QNYFdMG9r3RA3IhrPZ28dEC4mlmiN8d0QBpP6y5uz3RAC8eCECnVdEAQu1CoV9h0QB/oibvw2HRA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "sE2SBw4UdMCyvxMiGyh0wIfCFBrmO3TAemhshjVPdMBsZkxk0WF0wLb2t7mDc3TA1Q4UMhmEdMDVxwqzYZN0wLUcEugwoXTAjEkBw16tdMDq0z/wx7d0wFM8PT1OwHTAqiEI8NjGdMBgxgYPVct0wDbvAJi1zXTAu3bbpfPNdMAmI5iEDsx0wAK8X7MLyHTAX3WQ1PbBdMBy7/6L4bl0wNGsy0vjr3TAo2hhEBmkdMD9jmEMpZZ0wBu2ckWuh3TAldAQI2B3dMAhZ6fw6WV0wCYHY1R+U3TASM5HvFJAdMBVNDfDnix0wOGZpo+bGHTA9W7aLYMEdMBnxYbnj/BzwPGvvZr73HPA3tMVEv/Jc8DFCfBf0bdzwN3buT6npnPA9Tj8d7KWc8Bq+/FTIYhzwB0lSRMee3PA/TOUdM5vc8APDM9GU2ZzwLoFNQrIXnPANyh8oEJZc8A+8FwN01VzwE28HkiDVHPA85qvHldVc8AXVJsqTFhzwC6vAdhZXXPA0sR3fnFkc8DuMIyLfm1zwAbTcr5meHPADAgrdAqFc8AafUMDRZNzwCZvMSbtonPAZeQGc9Wzc8BxoyzfzMVzwPDSoU2f2HPAIackJhbsc8B1qo3z+P9zwLBNkgcOFHTA" + }, + "y": { + "dtype": "f8", + "bdata": "qwCuj9zadEAuzHkGU9l0QCKAy1c21XRA7WcHcZLOdED3u+GUesV0QAm4gCMJunRAFXH7TV+sdEDcUhO2pJx0QJyGP/sGi3RA3LJXNrl3dEAj7F1l82J0QJe8FcnxTHRABVg/NvQ1dECd6nFcPR50QFoLrgQSBnRAxV/ZSbjtc0BJKGbNdtVzQCeHdOqTvXNA+7+/6VSmc0BUXqc4/Y9zQCAtm6XNenNAX0khpANnc0DHjZea2FRzQItatTuBRHNAiaaw7Sw2c0BkuMFABSpzQDlRlHYtIHNAFfkDHMIYc0CgDUy22BNzQBzHm4R/EXNA+ELDVr0Rc0AkcXF5kRRzQH0zPLjzGXNAospsddQhc0CniEvXHCxzQFlnZwqvOHNANkIZmGZHc0A3xEfQGFhzQIJBOUWVanNAvlYMWKZ+c0BR2z/UEZRzQB8Fh5iZqnNALQoAS/zBc0DghsIW9tlzQBPWn3BB8nNAZqna4JcKdED6yIzPsiJ0QGQbalFMOnRAJgiP8h9RdEAn8w1962Z0QAbm+7hve3RANlnPI3GOdEBaO/2cuJ90QByJ3wUUr3RAOacV01a8dEC80biNWsd0QHbb7UL/z3RA/Z+Q4CvWdEBvXOx9ztl0QKsAro/c2nRA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "D3fGmHu2c8BQdXMxhspzwG6aOJ5K3nPACCDoiI/xc8AbTS0NHQR0wMfzqlq9FXTAkOsSUT0mdMA7xnEUbTV0wIaaAJggQ3TAZjzqHTBPdMD+RpGqeFl0wBCcCGrcYXTA5QWYBkNodMC+B1LvmWx0wNof7o3UbnTA4EZLa+xudMBdxjBC4Wx0wCoBFwC5aHTASuf1s39idMBX9EprR1p0wEosvP0nUHTA+/jvxz5EdMCogGJWrjZ0wOZ9LwGeJ3TAAUXzeTkXdMA2+w1NsAV0wJicuFc183PAYdt7NP7fc8AgybSfQsxzwLhG6tU7uHPAMSjI7SOkc8C1maEvNZBzwDx+Y2ypfHPAQiLhVblpc8BAsGHam1dzwFBlS4WFRnPAF6265qc2c8DNOL8DMShzwCYP4NBKG3PAr8NpuBoQc8DA0ectwQZzwMfkA1BZ/3LAixTcmfj5csCOQLSkrvZywMJEt/qE9XLAZURL+372csDnTUnRmflywPO3NHvM/nLAn2Ja5QcGc8DXF4wVNw9zwOEx+Wc/GnPArQp03AAnc8AqEkRzVjVzwNlPd5gWRXPAXQZ8nBNWc8COqaQ4HGhzwMrHFR78enPAd1J/jXyOc8BtL+n1ZKJzwA53xph7tnPA" + }, + "y": { + "dtype": "f8", + "bdata": "BIeas4OZdEAYYy662pd0QOpkKgafk3RAkVbt3tyMdEBM6+rep4N0QKxQz7oaeHRAvtkI9FZqdECxc5h3hFp0QCfJQirRSHRASv1xY3A1dECWHUpYmiB0QLo+oHiLCnRA8Cmtv4Pzc0AYFXj6xdtzQDqyEwaXw3NAzJvfBz2rc0DHfRGi/pJzQMYl1CYie3NAir5OzOxjc0AG2uPjoU1zQGSX7haCOHNA/0M0q8okc0D+fCrRtBJzQNdTFf50AnNAcp3eUzr0ckBvxV8YLuhyQJqwqj1z3nJAEO2s/CXXckC+MlODW9JyQEamGrch0HJA9g7CDH/QckBd6o91ctNyQKSuY2Lz2HJA6FWJ3PHgckDrLwe0VutyQAWr38ID+HJAyP6DRNQGc0D6EXpAnRdzQHxEAAcuKnNA65VFvlA+c0C9ipz+ylNzQJS+43teanNAlsE4usmBc0BAH+nLyJlzQL2dehYWsnNAtTOPHGvKc0D2GltKgeJzQITxW8IS+nNA2R3/J9sQdEDGqOtlmCZ0QBZmsG0LO3RA2G+q7vhNdEDnbxECKl90QJqtNspsbnRAZPcoA5V7dEDp3RmDfIZ0QJvUD6kDj3RAzSKkuBGVdEBeisIhlZh0QASHmrODmXRA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "bj+DqunNdMDnkv0QxuF0wEdiq8tY9XTAGWCEFGkIdcAtzd2fvxp1wO8lzjwnLHXAzht2b208dcCLVm8DY0t1wANAuJTcWHXA1LOPDbNkdcD7gtMXxG51wE71mIDydnXAAmbejCZ9dcAJUmA+ToF1wOIwyoddg3XArrWrb06DdcBuEs0hIYF1wLv5r+7bfHXASs8+OYt2dcB8J99SQW51wDHMT0YWZHXAZWTskSdYdcDpBCHSl0p1wCTOBV2OO3XA/8hF0DYrdcB29puSwBl1wM2GVUpeB3XAdQZoSkX0dMASo8X3rOB0wD0rsCjOzHTAuNbcf+K4dMDeB0fFI6V0wDfvlj7LkXTAwzMCCRF/dMABeoh2K210wKflY3BOXHTAcJp24KpMdMBP+2kjbj50wFwvG4XBMXTAJ5LSyMkmdMCWgKG+ph10wO7OG+dyFnTAKY94JkMRdMDPIPmHJg50wOlORhImDXTABg5CrUQOdMDoypkZfxF0wEm8MfrLFnTAlOVN7xsedMC7AirDWSd0wGQEf6dqMnTAualDgy4/dMDwsMZPgE10wHqRFIQ2XXTAFzxxjSNudMC8bYhTFoB0wKoo1cbaknTAkkWjdzqmdMBmG/Uz/bl0wG4/g6rpzXTA" + }, + "y": { + "dtype": "f8", + "bdata": "MfWXEyxBc0B9kEgOZT9zQHnAV7sLO3NAMDUPuCw0c0CyQ5jy2ypzQN+oLHA0H3NABI62/lcRc0CWJMPSbgFzQKVB5BKn73JANTzTUTTcckDYVtn4TsdyQCCcL6QzsXJA1skwcyKackDZOltOXoJyQDNMPiUsanJA3imGJtJRckDZ/mn0ljlyQOUAy9fAIXJAepxW9JQKckDQFft/VvRxQBFR9P9F33FArjmmjaDLcUCcnmMln7lxQFaQIwF2qXFAwrEEAVSbcUCH4lUjYo9xQF+krg3DhXFA8h9wqJJ+cUB/SNLN5XlxQKXqZw3Kd3FAyBbJhEV4cUCx/tXNVntxQGK6xQL1gHFADi/11w+JcUBaPCvLj5NxQFoWyWdWoHFAsgIhnz6vcUDwPPMzHcBxQCI72TfB0nFA44gzmfTmcUB5i/6/fPxxQFBIxzcbE3JA9DTTZI4qckC5m21CkkJyQD+YMijhWnJAKGgblDRzckBYAQL3RYtyQBm4SoHPonJABFFi7Yy5ckAaJsVFPM9yQJz5UKSe43JAdYa26Hj2ckDOnPljlAdzQGdXDne/FnNA4VbHIs4jc0CAh3OHmi5zQPtHuVIFN3NA5UtwGvY8c0A9tHKjW0BzQDH1lxMsQXNA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "Q3aV9WZAcsDkJ6HTQFRywNtshXfNZ3LAuFvjLNR6csAD7tbDHY1ywEscCjF1nnLAd9mQJ6iucsBBpc+qh71ywGuDxZboynLAhAYuHaTWcsDKeBA2mOBywISmdQKo6HLAoPglILzucsCr+HztwvJywMqBjbyw9HLAu0cC9X/0csCJcFgkMfJywBouRfzK7XLAE/5KP1rncsAV4rab8d5ywMDqcHWp1HLAvUA9n5/IcsA04DoE97pywMzwmkLXq3LAe4K2OGybcsAkAdCF5YlywEd08f91d3LAWDR4IFNkcsDSyflotFBywMnbQ8LSPHLAmyxK1+cocsCPceFtLRVywLYzLL/cAXLAdMqf0S3vccBz4ILWVt1xwG/fvIyLzHHADDS+qvy8ccDixDRR165xwD9zJohEonHAtFLtx2iXccC3zW6PY45xwJ+NwAhPh3HALCJEvT+CccAUihVaRH9xwPpkeYVlfnHAwEjGxaV/ccCu/xF6AYNxwFDtt+RuiHHAxxKaR96PccCAvsoROplxwIZ0Gh5npHHAtZ3UAUWxccCum8Zqrr9xwHeFgIt5z3HApo2VlHjgccDfXnw5evJxwGcDjj9KBXLAcJKEFbIYcsDNNsJxeSxywEJ2lfVmQHLA" + }, + "y": { + "dtype": "f8", + "bdata": "GdEKoGzLckD0YS8jislyQFseEcEVxXJAko92ZRy+ckB3f/NKsrRyQMEUPMDyqHJAgbbv2P+ackA/dsEKAotyQOGzHLgneXJAoWKaqaRlckDzLs13sVByQDUyGOeKOnJA9l1sN3EjckCV4OtppwtyQPQRkH5y83FAEaQFrBjbcUAxnQOU4MJxQEvXa3YQq3FAFkWHZe2TcUDUBa19un1xQKlnmSK4aHFAIXmpRCNVcUDT5RiwNENxQOPRQmggM3FAzJDDEBUlcUCm0jBmOxlxQEis8Me1D3FA9jWG1J8IcUA38XQZDgRxQMBUo9cNAnFAi2np3KQCcUDY+jpz0QVxQBIunmWKC3FAJB3gGr8TcUAV/bnFVx5xQNkq26k1K3FAQd0PdTM6cUD/5IGrJUtxQI172SXbXXFAsEjQnx1ycUAqEplVsodxQJiEU65annFAZKyd8dS1cUBedzQG3c1xQCxRejct5nFA6emm/37+cUB4sVXUixZyQEKyIfMNLnJASk/9K8FEckAq/PqmY1pyQKE+SaO2bnJAaAI4LX+BckDeRzfJhpJyQJMx3xGcoXJAew43R5OuckBKypvNRrlyQFmu1ZqXwXJAHwohkG3HckDEnCTAt8pyQBnRCqBsy3JA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "LMZvg3kldcCPFOqmSjl1wJe7daHDTHXAVHS796tfdcCGhe/RzHF1wOBY5ZrxgnXAXLmUmOiSdcCmVFZ8g6F1wBYhNemXrnXAhA7P7v+5dcA/l2B3msN1wEL/u6dLy3XAOuYVMP3QdcApz7yMntR1wCTm/zUl1nXA7xK6vozVdcC0wCjh1tJ1wCsd6XkLznXA81cqcTjHdcAQB1eScb51wJqxqlLQs3XA0gpah3OndcB8DSQMf5l1wApgT1sbinXAPLJBGHV5dcAEogWOvGd1wJa2NiMlVXXAsMDpxORBdcBWFEJKMy51wHNPedJJGnXAuXsvH2IGdcB2IuTstfJ0wHM/fkt+33TAv9TI+PLMdMA0NcS+Sbt0wOH+oNe1qnTAjlEpWWebdMAAQEepio10wN0KPf1HgXTA+64E5cJ2dMAUECnkGW50wC7zQxlmZ3TAE4Ih9bpidMD1rlwCJmB0wPMHGL6uX3TASehEglZhdMDWCLiBGGV0wGvOFtbpanTAhPB0n7lydMAPxEY1cXx0wB8xGmj0h3TAYrFX0yGVdMAQNR4+06N0wM37IAres3TAmM1FrxPFdMBVA51CQtd0wOrhKwc16nTA6U3lBrX9dMDyIhWyiRF1wCzGb4N5JXXA" + }, + "y": { + "dtype": "f8", + "bdata": "8curgxJYcUC0p8+P21VxQO4V2RYUUXFA8XWQ9clJcUCP4dJQEkBxQDe4PVgJNHFA9yJt9NElcUAUtbphlRVxQETcobiCA3FAGw8lZc7vcEBv9b+OsdpwQEaWn3JpxHBAfmcBsjatcEA8ebyWXJVwQHB+FFAgfXBA8NEMKshkcEC5i4HBmkxwQJ4VVjfeNHBAy1YLZdcdcECUegsVyQdwQBUp3YHm5W9AryLUryS/b0BCZgofvZtvQGwdHoEWfG9A5ONdpIxgb0BTZ35pb0lvQO8/6dsBN29AjQxFb3kpb0B15Gpk/SBvQKrUilemHW9AbanJ+H0fb0DOESfwfiZvQLyf/eyUMm9A/K7v4JxDb0AdSJZlZVlvQKMOy0uvc29AcZvtUi6Sb0DXqxAGirRvQNeajbxe2m9AJPaKXZ8BcEAuOf64WRdwQFFrjWofLnBARwO3ZK5FcECfgyJSwl1wQEBe1VsVdnBAYGfG82COcEBfQYShXqZwQMImnc7IvXBASS13kFvUcEB2ik9t1elwQHVxJRr4/XBAZ6tpL4kQcUDl0WbSUiFxQJXKdlEkMHFAGmtAsdI8cUATl2MpOUdxQOc4Ko85T3FA0Z0IrbxUcUAXZ++FsldxQPHLq4MSWHFA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "OSe4ycsZZsBy88bBRUFmwIENuj6eZ2bARmQJB2aMZsDofHRrMq9mwHH7dHyez2bA2k0EL0ztZsDlQ2Nt5QdnwHJbzBAdH2fAen08wa8yZ8DpEMm4ZEJnwLHMTGgOTmfAs6GN+4pVZ8AUbly7xFhnwDHckUyyV2fAw7kxy1ZSZ8C/D2bBwUhnwEEkbPoOO2fALiT2MWYpZ8DZS+ug+hNnwO3Y1GgK+2bAcLmm393eZsAos+69xr9mwOSZyjEfnmbAOiFV2Uh6ZsDlAYCnq1RmwPS9kLa0LWbAwZOqC9UFZsCOi/tOgN1lwDyBQ3wrtWXA3jqCj0uNZcD0xaQxVGZlwAhXCmm2QGXA2MKtUd8cZcDJfKrgNvtkwPcUs7Ye3GTA/9fjBPG/ZMB+8SaH/6ZkwL3iIJeSkWTAPPZUWuh/ZMDIZeINNHJkwNAP5XGdaGTAOtMoVkBjZMBCAX5JLGJkwNbimGxkZWTAbDb/aN9sZMDd9h2Mh3hkwGDbOAY7iGTA2gN9TMybZMCHWRqdArNkwPh55KOazWTAhqedPUfrZMDUSLVXsgtlwF768Ol9LmXA+wgsB0VTZcCKNBYCnXllwDSZoKIWoWXAoTuXaD/JZcAAfr/XovFlwDknuMnLGWbA" + }, + "y": { + "dtype": "f8", + "bdata": "CwrmC3T7dUCoRY4Ulfd1QOxVzLgO8XVAZlKj5fPndUBMC9MDX9x1QG7tPatxznVABlZ4QVS+dUB0+JuENax1QJg1swNKmHVA/KdFhsuCdUBLF8Bk+Gt1QKbxndMSVHVADtRgI2A7dUDLI4P3JyJ1QA3krHazCHVAzICFdkzvdEAzAYqlPNZ0QITUVLXMvXRAiiLDh0OmdEBLOVth5Y90QP9zSCPzenRA1fcqj6lndEDSId2WQFZ0QDnQLbrqRnRAvTZmdNQ5dEDzG0S7Iy90QJC93pD3JnRAhrq1qWchdEAX5e4nhB50QH5timxVHnRAoSEV/9sgdECIQB+MECZ0QAdWfPrjLXRAzXsOlz84dEDF+J1WBUV0QJND/iwQVHRAH6ODeDRldEAyu5GAQHh0QIbu0wX9jHRAqEN94i2jdECC+764krp0QP7Ne63n0nRA0UIaLebrdECfQDu4RQV1QPEIA7a8HnVACa6SSQE4dUA9z0YoylB1QHUsTm7PaHVAm28vb8t/dUCuVeF/e5V1QJUGK7igqXVAJLQbqQC8dUCMPYgGZsx1QOw3o0Gh2nVAePLuEonmdUAPV/nx+u91QORahnnb9nVAQHUGtxb7dUBin3JkoPx1QAsK5gt0+3VA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "vTf5cAsnbMCJRBkl0E5swEd60T2vdWzAz2Eo+zebbMAVWi1+/b5swKGMwgSY4GzAZYiSFqb/bMDojcifzRttwEp/V/a8NG3AHJnZxitKbcCC4Vnm21ttwKXMpgaaaW3A1QsjSz5zbcCE4GS8rHhtwMGTVJnVeW3AY8fehLV2bcD6FLaPVW9twOqtBx7LY23ApUFvqTdUbcAlI95fyEBtwPlQj6C1KW3AlHyEWEIPbcA3WGZAu/FswPc9+/110WzAGay5K9CubMCjLEdJLopswF4t95f6Y2zAp1CX5qM8bMAsLgdQnBRswBzIP/BX7GvA+LaKk0vEa8AG67lj65xrwMGtNpepdmvA1za5JfVRa8B+vmmGOC9rwPWpEHvYDmvALo7V6zLxasBvvdzWndZqwM1y2VZmv2rA0Bhow8+rasBoYLntEpxqwH+7xHtdkGrAZEHgY9GIasCGCz6KhIVqwB7HbIGAhmrAKqqTbsKLasAKVboRO5VqwPKbBPLOomrAkephrVa0asDbH8lqn8lqwLqJtW1r4mrAYTM5yXL+asDyHJ0wZB1rwHk5MuPlPmvACTKnsJZia8Bvzu8SD4hrwAlUjFrirmvA697J6Z/Wa8DVS2l71P5rwL03+XALJ2zA" + }, + "y": { + "dtype": "f8", + "bdata": "SX8Nl6VNdUCiZDkzokp1QMfpYgsJRXVAU2yGXOo8dUBdFQi0XTJ1QJsaY6uBJXVALRZoj3sWdUAJ5wv0dgV1QOjrADal8nRA2juJ6zzedEDuKSFGech0QJRWzWaZsXRAtVL+pt+ZdEBQ9RzYkIF0QHOc7XvzaHRAjlcN+E5QdECULtrG6jd0QG42H6gNIHRAv9Hd0/wIdEBxW4cx+/JzQASY7ZVI3nNAXdEcCiHLc0CIpjgdvLlzQP+oVENMqnNALzgcQ/6cc0D1FvKz+JFzQPJyAI5biXNAnwx+zT+Dc0CqeDUqt39zQFawIOTLfnNANwKupYCAc0DHnwR80IRzQGE1X+Wui3NALepS9QeVc0BLjpmOwKBzQHpXt7G2rnNAsQyY38G+c0DwlgWPs9BzQDRBo7NX5HNAHCHmVHX5c0B0wVQzzw90QFG9LnokJ3RAcv54ezE/dEAgLE10sFd0QI3gMldacHRACLc3mueIdEAjaHAGEaF0QKMRiYaQuHRAmoIN8iHPdECP6BvTg+R0QDptRCR4+HRAbQZvBMUKdUBWqb1eNRt1QEjrg4SZKXVAu3eVt8c1dUA6MFqjnD91QF3DSMP7RnVATHuetc9LdUCJVWR5Ck51QEl/DZelTXVA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "KRb125UMYsAVl65ZMDRiwCrqq0K+WmLAlINwws9/YsDssOlT+aJiwIBWTfnUw2LAIofvYwPiYsAB37QILf1iwDjG/x0DFWPADhI4gEApY8BHJlZ6qjljwCDlK3ARRmPAHYF9aFFOY8DXoFl1UlJjwBYsgvkIUmPATG4cynVNY8B110YspkRjwJ1cm66zN2PAVR0O38MmY8BmU//dBxJjwKqCvM+7+WLAwDoOLibeYsCdacz7lr9iwDgvytxmnmLASly6FPZ6YsD4XvZvq1ViwDOGURnzLmLAIX1ZYD0HYsD4C5Jz/d5hwPgHXRKotmHAroNXOrKOYcBbfQLUj2dhwN5Uj2KyQWHAMDefuocdYcBIhbDDePtgwGNC1kfo22DA7iIs1TG/YMApY0a0qKVgwBGvn/aWj2DAss3Bnzx9YMD5OZjrzm5gwIc7B7R3ZGDAZmCH91ReYMCdcyWCeFxgwIxK47nnXmDAyCQPj5tlYMDaCb+QgHBgwBC8NCV3f2DAsa+G5VOSYMCMKIQb4KhgwI1VZ2DawmDAAhuJWvffYMBFTPCX4v9gwKVhQoM/ImHAcTJPcKpGYcClwiy9uWxhwOmOnAT/k2HAF51BXgi8YcCuhAapYeRhwCkW9duVDGLA" + }, + "y": { + "dtype": "f8", + "bdata": "txZbvNxLdUAPAfICUUh1QPWzRwMJQnVAHB1+9RY5dUBUlxLMlC11QA7UmuijH3VAXa/xumwPdUDFx+xLHv10QNYP77Tt6HRAsRHkhRXTdEDJomIb1bt0QIS84+Zvo3RArY8iqyyKdEC3P92uVHB0QNObSegyVnRAQlamIxM8dEBnaF8nQSJ0QMRaQ9gHCXRANvdGYLDwc0B5gU1agdlzQBYEXQW+w3NAtriQgaWvc0A6UP8Ycp1zQL0zqJZYjXNApydSrYd/c0CZexdwJ3RzQDerKN5Ya3NAk5kWgzVlc0CQBLosz2FzQBwcj7cvYXNAIwgb8lhjc0ClVK6XRGhzQFZ3k2Lkb3NA8bF0NSJ6c0AtPYFb4IZzQG+tl975lXNA/qJ78kKnc0BEzd9zibpzQFrE03mVz3NAkOTv9ynmc0Dmx2hvBf5zQKO9CK3iFnRAzzbokXkwdEC58p7kf0p0QCskjyiqZHRAThXaeKx+dEDtMINkO5h0QKzqQskMsXRAws6OqtjIdEDDAWcCWt90QDmKi4lP9HRAqqvUdHwHdUD9HIklqRh1QH+fssqjJ3VA4gKd8UA0dUCSdtwDXD51QAidbbHXRXVAt427RZ5KdUCcJ5XmoUx1QLcWW7zcS3VA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "WkZLxW3QacB7eXGYN/hpwHozLw2KH2rAJu7uFPNFasATNi1GA2tqwNipoR9PjmrA2LgSQHCvasDCpkuPBs5qwIp311S56WrALElYOTgCa8ChqpAvPBdrwA7/ekKIKGvAQyQZRuo1a8CBgftoOz9rwEVh2aRgRGvAm/7zDEtFa8Dq52D590FrwMYlvg5xOmvAec05Iswua8CYID76Kh9rwJPpeey6C2vAzT5hWrT0asAzF6QNWtpqwHIKdXb4vGrAECbSzeScasAZ8lIefHpqwOinSDYiVmrA5WU/hkAwasCwFCjvRAlqwDMYooOg4WnABEABQMa5acD3Sce8KZJpwM5hWN89a2nA+Sq3jHNFacBU/g5iOCFpwBYvwnb1/mjADZCWKw7faMCOZXQK38FowOve+7m8p2jAhaf7B/OQaMC1wpANxH1owOB2bW9nbmjAd2NzvAljaMDc53Tsy1towJ29lADDWGjAYyVZxvdZaMCBXiO+Zl9owNV4VSUAaWjA0xEJJKh2aMD8Y9IdN4howP5mpSR6nWjAWb2PjDO2aMB78ZqeG9JowGgk0Gjh8GjAANEBqSsSacA1nrLPmTVpwAZJKhjFWmnAzD+MskGBacC2TY/8n6hpwFpGS8Vt0GnA" + }, + "y": { + "dtype": "f8", + "bdata": "aC0EoDrQcUDYlaj02M5xQEgabbjVynFAdFTmjjzEcUCHF6KbILtxQM7go0qcr3FAwUPBA9GhcUBrnbzJ5pFxQB0dN8YLgHFAk8LKw3NscUC/s9CXV1dxQNGnh330QHFAsZB4ZIspcUCjrBw0YBFxQCpU5wa5+HBA6NHuXt3fcEDEEoJWFcdwQEbOBM+ornBA/8dwoN6WcEC+69jL+39wQGlNQrNCanBAa5sXWfJVcEDVhGWpRUNwQGwy8s5yMnBAjY4flqojcEA0FmDfFxdwQFvC2CLfDHBApMaYBh4FcECq8zMR1v9vQGW0Bnuq+m9AbtPVScj6b0BPw5WTFwBwQEp/9bNnBXBAR3vhHEUNcEApHEr+mBdwQOFhZGNFJHBAht6NiSUzcEApCO1KDkRwQEmemJvOVnBA6x3bFzBrcEDBnvWh94BwQO1/mA3ml3BAfoYg17ivcEDb7YTkKshwQDDOxk314HBA7HecKtD5cECyNARjcxJxQOlxYYCXKnFAgMfFfPZBcUB8mwyOTFhxQKBAfOpYbXFASTmyhN6AcUB3iLm8pJJxQCNpSQR4onFA6wNQdCqwcUDhYBdSlLtxQGRjgoKUxHFA5o0T6hDLcUBVBae49s5xQGgtBKA60HFA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "eEeRl2wRasDe/Z6HaDlqwEVsx8y1YGrAItB/Z+KGasDZ5omdf6tqwCuKIDsjzmrAiQ0Ex2juasBX1+il8gtrwHrj+ilrJmvAAKNii4U9a8BJX/rG/lBrwKgkrmCeYGvAxWdSBzdsa8CgKxYYp3NrwD9jEwDZdmvA5JDiesN1a8CfIHytaXBrwEyGGR3bZmvAe5MwgjNZa8CCmQt4mkdrwPOQ5wlDMmvAGIDlHmsZa8AYlHzGWv1qwKm8dWdj3mrAwg/P0968asDs0TNELplqwFDU/D25c2rARB7rZuxMasAz2ANKOCVqwH6PHxEQ/WnAUbHfNujUacBTJtM0Na1pwJ0KnjFqhmnAUHT4svdgacDBF01XSj1pwJ96qprJG2nA74+Yqtb8aMCZZDlMy+BowIN05tf4x2jARe09TaeyaMB7QUyCFKFowO7ML3Bzk2jAyMk+n+uJaMDecVy0mIRowHHmySCKg2jAyHJb9cKGaMDzFZTZOY5owMAewSbZmWjA9TjHJn+paMAMw+p1/rxowAjMd4Ye1GjAO9jLRJzuaMCenuXZKgxpwDlnRop0LGnAD4+erhtPacAA5XPDu3NpwEHurYzqmWnAx2m6STnBacClR8z2NelpwHhHkZdsEWrA" + }, + "y": { + "dtype": "f8", + "bdata": "LcQH+Xloc0A4HRYBSWZzQNiMkXN5YXNAtnWyRBlac0CPb03ZPVBzQNxHxcgDRHNAnoYcio41c0ANBBcNCCVzQErwlUCgEnNAKiGPh4z+ckCR7TIeB+lyQMe/AXFO0nJA4FK7Z6S6ckBRzTSmTaJyQAM1QMWQiXJAZrvmhbVwckD51kcBBFhyQOnbeNfDP3JAfarDXzsockDED5/crhFyQJumsLVf/HFASYQWuovocUBd9x5tbNZxQJ5edl82xnFA2viulhi4cUCN7dwEPKxxQCAr0hHDonFAW5hSN8mbcUCREGKxYpdxQEZUk0OclXFAuisCFHuWcUCmHmSc/JlxQO8SW7EWoHFA1ZT0n7eocUB1OQBhxrNxQB0zqOEiwXFASIV5YKbQcUBv/83dI+JxQMvtUZ5o9XFA1ugqvjwKckBQ8BTTYyByQFSYn5udN3JADv2OuaZPckCm4UN1OWhyQFMv9IcOgXJAzkVp6t2ZckADcOylX7JyQPF8A6VMynJAdAeggV/hckC+XmtOVfdyQPcu51juC3NAvNQv4u4ec0DYckjMHzBzQIAg+jlPP3NAbnd2H1FMc0BI+xnC/1ZzQLzG2yU8X3NAexAtZ+5kc0Dw2EMABmhzQC3EB/l5aHNA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "afgXIfrRbcAfRuow7PltwNmZDKckIW7AoalPwDFHbsBnudcdpWtuwKwlQAUVjm7AfbBHkx2ubsDcCIzdYctuwAkoDACN5W7A0MhjE1P8bsBJwfUIcg9vwG2jhmqyHm/AJOEb++cpb8Ci1Ew38jBvwNl7kbO8M2/A7lp9Vz8yb8CPuDp1fixvwBAYAr2KIm/A5EuyDIEUb8A3iBUcigJvwIhTxgba7G7AbugKta/TbsC2b10lVLduwDFWspgZmG7Al97io1p2bsCR9+8oeVJuwINuFzvdLG7AfgXz8PMFbsAFDA0oLt5twK5HgD3/tW3A5sBYv9uNbcD2DIAaOGZtwCC0CUmHP23AszuzhDkabcA2LF8Bu/ZswLRFO7Ny1WzA2DsgJMG2bMBBKo1b/5pswBD4atx9gmzAD7SEu4NtbMDqSFrRTVxswNyRowkOT2zA4bqD0upFbMD67BCt/kBswHiac+BXQGzA2Gh8UPhDbMBY2Ch41UtswN2PJojYV2zA0cv8qN5nbMCHBxxguXtswFa+rhYvk2zARDmkwPutbMA65BCi0ctswD6ppzBa7GzAEFC+DjcPbcCyyQQdAzRtwFR41Z9TWm3A3KvLdLmBbcDrVh5VwqltwGn4FyH60W3A" + }, + "y": { + "dtype": "f8", + "bdata": "82gMqDbyc0B8U1ns3O9zQHHSu5/u6nNAiAybD3rjc0B+rujblNlzQP90Z7hbzXNA0mNqGfK+c0C3Jf7Mga5zQIvfpoE6nHNAGS8SPFGIc0CMf069/3JzQLDDRduDXHNAKX5hzR5Fc0C+VmBvFC1zQH/tgXyqFHNA1NZDxSf8ckDAbfph0+NyQC5GmeTzy3JAh2UBjM60ckBB/SZ7pp5yQE0+Vfa7iXJAvh3FqEt2ckAEvqP0jWRyQMrqhk+2VHJAlQcqrfJGckCWYyT6ajtyQEuPG6hAMnJAuJnBTI4rckCDlbhUZydyQOUQO8vXJXJADu0sN+QmckBT6fmNiSpyQGP4Zzy9MHJA/MhDRW05ckA1iY51gERyQB6Lla3WUXJA/8cfPklhckAo/aJYq3JyQMjqOpHKhXJAyLrpcG+ackC6WHkWXrByQFcVK+RWx3JALMs9OBffckA+SjMuWvdyQGxxpGbZD3NAAVdg000oc0AXboaFcEBzQObXRXv7V3NAaRftaqpuc0B0KP2IO4RzQAdyAUdwmHNASQUDCQ6rc0Bu2YjP3rtzQIbqN9SxynNAJO1MF1zXc0BpOlXcuOFzQAQwvRSq6XNA6vD+thjvc0B9pXQB9fFzQPNoDKg28nNA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "nufuQ9rGbcCN42pE9O5twGXmcqOJFm7A+JhZkCc9bsDrTS4IXmJuwL0HoxrBhW7A1T4iI+qmbsCARojyeMVuwBi+IOYU4W7AjNK+6G35bsDNlgZbPQ5vwAqvReBGH2/AMiKJDVksb8BvePT4TTVvwE1huqcLOm/Ak+Z3WYQ6b8AFmBewtjZvwLz9yLOtLm/AvM8As4Aib8Cnw97+UhJvwKgGvYRT/m7A8YUSRrzmbsCv1jKw0ctuwJjD09XhrW7A+DOYjEONbsD3RzFxVWpuwG888NR8RW7AIxjllyQfbsDMjt7yu/dtwH9IzjS1z23A9U05d4SnbcDUUXZNnn9twG2hinJ2WG3AJIh6eX4ybcDe1NqDJA5twIgMXwLS62zA9dwCg+rLbMDo60WQyq5swGaZv6TGlGzAjkoVNip+bMB//RnaNmtswBQFkogjXGzAgrfC+xtRbMD+hpwxQEpswPdp7w6kR2zADby2JU9JbMBu9yOfPE9swJ33p0lbWWzAGA/Syo1nbMDcR3T0qnlswPjYFTx+j2zA2FlZU8iobMBnp5zfP8VswLXcvU6S5GzAdzecxmQGbcA+NZ4sVSptwP+JQEL7T23AUY100+l2bcCjEmHzr55twJ7n7kPaxm3A" + }, + "y": { + "dtype": "f8", + "bdata": "g3pEQBK1cUA/hl9thbNxQCu279pgr3FAjM07jbCocUAiL/Hqh59xQJCb3YQBlHFA7ObgyD6GcUAfJ/agZ3ZxQM+bbf+pZHFAdx+nWTlRcUCGss8STjxxQA0RU9gkJnFAmrvb8f0OcUDE89+GHPdwQCh82NvF3nBAEhpWiUDGcEDXnjyv061wQCpsdSbGlXBATNlvs11+cEC/icM73mdwQB+wPwGJUnBA9Xqi5Js+cEDfsx2yUCxwQCgrsXncG3BAyjVB9W4NcEAvrSf+MQFwQOP0oSeS7m9ABYmK6aHfb0Bz0pCWvtVvQLMuBd0E0W9AxKDPcYLRb0AL8q3oNddvQDlCVLgO4m9AlQ1kau3xb0CqRFf7UQNwQMLQXCT7D3BA5CcCd80ecECXaIj1nS9wQDdlZdo7QnBA4fm6JXFWcECEUPg5A2xwQL/B3oWzgnBABSv9OUCacEDjUpMHZbJwQI+rs+bbynBAEMFk4V3jcECdIHXho/twQPKzrH5nE3FAZHwFy2MqcUAXUZsaVkBxQLuxDsX+VHFAIb8p3iFocUAvxq/jh3lxQDA2X17+iHFAY/5SdFiWcUA/vBprb6FxQORgEBgjqnFAw3elPVqwcUBdbZnUArRxQIN6REAStXFA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "TvN+hR7gZcDFHyas/QdmwLXdlt0NL2bACRpvy91UZsBihkDI/3hmwC5/sQULm2bAIa98xJy6ZsAtqt1yWddmwOmzK7bt8GbAA0mgXA8HZ8B2IYw0fhlnwMVxisYEKGfAclSW8HgyZ8BnhkBgvDhnwJH7ouq8OmfASi8TwXQ4Z8DeVvqB6jFnwEaaoiUxJ2fAwwIxx2cYZ8BBuWtKuQVnwFZJUt9b72bA7MHwZJDVZsDwmTWtobhmwFgi7KPjmGbAzgJRW7J2ZsA90AIBcVJmwJleVb6ILGbARDpKh2cFZsB1DKPbft1lwFX+qn1CtWXA8gNyIieNZcCB+0cfoWVlwPCHTRgjP2XAO2jtsxwaZcBb0AJX+fZkwIQeWO0e1mTAdXgFwuy3ZMDx0AhrupxkwIQSOcvWhGTASVR1LYdwZMB1y6d7BmBkwIp145OEU2TA+ySMvSVLZMB1qhtAAkdkwBRVtRwmR2TArw5U65BLZMC3E/jbNVRkwHTb0Nv7YGTAz2T33b1xZMC68+VGS4ZkwB2HdXlonmTATBPIg8+5ZMAi8ynqMNhkwOsWno00+WTATzh4q3ocZcDMrR/znEFlwLUy1a4vaGXAZ9Me/MKPZcBhyU8Q5LdlwE7zfoUe4GXA" + }, + "y": { + "dtype": "f8", + "bdata": "n2HoGm8idEDkO6fdwh90QH879bxnGnRAmvvjQW0SdECTpdWQ6gd0QJTHXCb++nNAk4bOfs3rc0B+qoephNpzQDHmH8lVx3NAuQz+gXiyc0ArAvNYKZxzQJqLrwOphHNACikSrTtsc0DeZm0vKFNzQGorBEe3OXNARx0QvzIgc0CyFbab5AZzQOx5VUMW7nJAljWhqQ/WckBt4Ot+Fr9yQGZrBGZtqXJAbabtMlOVckAMQaE0AoNyQNbe7ouvcnJAytFhkYpkckCLd+xLvFhyQA+Q5/lmT3JAGLu+raVIckD7Nmr/i0RyQAOlmdMlQ3JAp6w0OXdEckCtjZVdfEhyQOzFn5cpT3JA9KCSiWtYckC+ljVZJ2RyQOyJu/06cnJAN/p6on2CckDu0lwdwJRyQFZPqnfNqHJADyWth2u+ckDiWWSZW9VyQDJsZCRb7XJAikLTjCQGc0AKHlDtbx9zQJvqfefzOHNAewnTeGZSc0ANT0XRfWtzQH6HYynxg3NA0H5vlXmbc0DZOhTT0rFzQCK4Yw+8xnNAgt/dovjZc0AEUV/BUOtzQF21+RuS+nNAKSTgcpAHdECGW8AVJhJ0QBaAFFE0GnRAX04wx6MfdEBrcAe0ZCJ0QJ9h6BpvInRA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "e65jennpaMAJXJ0BrRFpwCQwVbqXOWnAFgNN3MVgacDtKUvCxYZpwMXBvTMpq2nAZStvpIbNacCTYqxmeu1pwN8tZcynCmrA14T/M7okasBfbNL9ZTtqwDVAgGdpTmrAiym0So1dasDZgBm9pWhqwAMcvY+Sb2rA4A5nrD9yasDCGN5PpXBqwIC/ayDIamrA0MhfILlgasBFMLp8lVJqwGG0ijiGQGrAPHL7tb8qasBpnF8egRFqwMAF/6oT9WnAzuax0MnVacDv7LRQ/rNpwNxPazETkGnAk3sKonBqacA/B2jMg0NpwP6DVpi9G2nAb5InZJHzaMDNKQm2c8towO6zCOrYo2jAv1qQ4DN9aMBkgTGx9FdowAbpgmWHNGjAAZTBv1ITaMAvXcEQt/RnwJ7PjSAN2WfA3ZXlLKXAZ8CWdHsAxqtnwNTpnyWsmmfAFgqnNomNZ8Bi9AdOg4RnwCkx15e0f2fA9Y/cBSt/Z8A8tiAn6IJnwDexZyPhimfA+Kel2v6WZ8BGcBIoHqdnwJZ2GUgQu2fA6kv+X5vSZ8AIaKwle+1nwNhfy6VhC2jAeATZJfgraMA4l7kf4E5owG5k5FO0c2jAM4ER7wmaaMBY1RTAccFowHuuY3p56WjA" + }, + "y": { + "dtype": "f8", + "bdata": "k+F4NvmacECdx10zSZpwQPLSRFHxlnBAzUe9QvuQcEBJKztSeIhwQK/47y+BfXBA1GMuqjVwcEC53ihRvGBwQNN6FgdCT3BAiZgCfvk7cEBqBMGkGidwQE4HsQTiEHBAIf5LJCDzb0BEouXi0MJvQO38bGVikW9AC+NFDWRfb0CA+xbdZi1vQE5xLNT7+25A0F/kSbLLbkDK4+hNFp1uQCrN7RGvcG5A1lSMYf1GbkDyRq4seiBuQCs8xCiV/W1Acl/AjLPebUBCmYHrLsRtQPCuAjBUrm1AK/Q+vmKdbUBIslO7i5FtQH+Z837xim1Ax7XJL6eJbUAu1+yLsI1tQKeNBN4Bl21AIzU/H4ClbUARkLZFAbltQLyNX75M0W1AgIwjERzubUCeHEetGw9uQIhhzdvrM25AlgAZ1SFcbkAlVKX2SIduQG2CVRXktG5A6CyE6G7kbkCaobaJXxVvQByamgQoR29AVlPG8jd5b0AXrZAe/qpvQBhtQijq229AtnhtFLcFcEAj09QmgBxwQCwvCTQOMnBAkn96tiJGcEAlNLBvg1hwQA1GOhH7aHBAUNVP11l3cEDj2loTdoNwQGkS36QsjXBA02tdX2GUcEDSewxc/5hwQJPheDb5mnBA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "MWpn22NbasDwK/5qR4RqwBU9z8wurWrAhZy/W6PVasAljMK/L/1qwM8zN0JhI2vAu/OkGslHa8DzRRGw/WlrwFUfS8ubiWvAlmGztkema8A+oT9Irr9rwISps9KF1WvA4QxW+47na8Ct47NxlfVrwIayXodw/2vAw1TspQMFbMBhpuKhPgZswOdonukdA2zAMVitj6r7a8BjaH0w+u9rwI6BrbMu4GvAaIu16XXMa8ALCgMHCbVrwMW/C/4rmmvAD503uix8a8DRqN09YltrwA5y46UrOGvAVRXbFe8Sa8CIDsCPGOxqwDksrroYxGrAflofnGObasB2D2RHb3JqwDx7JoeySWrAKuXZhKMhasC6pv1xtvppwCroFTdc1WnA5LIrLAGyacBmSoreC5FpwEZVSefbcmnASaUC1shXacDm69cyIUBpwBUKqZopLGnAJrMP+BscacBvpmHbJhBpwL7FoPNsCGnAr8rgqQQFacB+aUbg9wVpwGhtXNVDC2nAvfURLNkUacBMpEoYnCJpwNp6f69kNGnACImGXP9JacBqljF1LWNpwLnMEfClf2nANylROBafacC4ODsdI8FpwHRUvtpp5WnA1SfmN4ELasDZihC4+jJqwDFqZ9tjW2rA" + }, + "y": { + "dtype": "f8", + "bdata": "MeNwxruZbEBPlkftyJpsQKy2BGuNlmxAUb12hhWNbEDS/lC2fH5sQDOLglHtamxAsfVmFKBSbEB/PDV82zVsQFwnivryFGxALipfA0bwa0AF1yv4PshrQIz0VPNRnWtAVj5od/tva0DXoPUFv0BrQI19HaIlEGtAmGAmQ7zeakDn45o7Eq1qQO6/kZm3e2pARt3VhDtLakB0ZKqfKhxqQJ43324N72lAxgrVzWbEaUAWsO1yspxpQDaLtYhjeGlAfgLXX+NXaUDY3aA9kDtpQKGhlUq8I2lAHAgdpKwQaUDp0wqUmAJpQOR4QPCo+WhAwsQ6pPf1aEALGONlj/doQCpCfpZr/mhAXx0TUHgKaUDYCyKfkhtpQFbsBeiIMWlAvXfYdhtMaUCvqDg4/WppQJI425jUjWlAk7pciTy0aUDzsmOjxd1pQNxowGz3CWpAIjPhtFE4akDtoKUITmhqQC38WThhmWpAo/hv6/zKakCniGE9kfxqQGY7EF+OLWtAFYXmN2Zda0CSBQECjotrQH5LtNx/t2tALoffULzga0Bl0KXCywZsQAKVXcw/KWxAAuDHfrRHbEDjqO6C0WFsQOZhYRpLd2xA6ojo+uKHbEDg9zIDaZNsQDHjcMa7mWxA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "3nQHIHiab8Akc6qxisJvwH8eLu0M6m/AwEm0HEYIcMCJ1B92zBpwwP+jRsdjLHDAYeLqCdk8cMAQCySB/EtwwJmq1kOiWXDAYCASvKJlcMBL8uIZ229wwLWlTLgteHDAGTpGc4J+cMBo3L/txoJwwBm45sbuhHDAJGYMvvOEcMBg1cnE1YJwwCgRKf+afnDAG23VsU94cMAOwIUeBnBwwPTlB0/WZXDAVCKHz91ZcMCpoddYP0xwwNmxv2siPXDA2dJi3rIscMAQ+hpdIBtwwKDYMOCdCHDAlXgIMMLqb8BsvqKiQ8NvwB+2raYym2/ACm1jcwNzb8DW6KKXKktvwI0N2qcbJG/ACvHF7kf+bsB+BtYkHdpuwPpM6zEEuG7An58O/V+YbsAbxJBNjHtuwApS1MDcYW7APJ7F15tLbsBhJcAeCjluwOdJVHJdKm7ApnYMY8AfbsC8zva5URluwFyHWR8kF27A1O2U5D0ZbsBcEtDxmB9uwFQ/pdciKm7AVvmaBL04bsAIbs4dPUtuwP0iznltYW7AaItAvA17bsBICpOQ05duwFHjk4Frt27A+7uF63nZbsBUg+4FnP1uwNjAHgJpI2/A4jAyO3NKb8D95Rd0SXJvwN50ByB4mm/A" + }, + "y": { + "dtype": "f8", + "bdata": "XydyOdsJckAetq2yIghyQA6NjajXA3JAn3fsjgb9cUDu65grw/NxQBHb+lwo6HFAJE8kzFfacUCh5S6LecpxQMNYAaG7uHFAKznOg1GlcUDNFc+Dc5BxQKQJ7SdeenFATngwflFjcUAfNvVhkEtxQH8G/rlfM3FAh+6ZsAUbcUB8DR/oyAJxQMJOCa7v6nBA4DoPL7/TcEAtY3yuer1wQDlmF8NiqHBAb3XJm7SUcEAyxSZOqYJwQHip2jB1cnBAcKTXQ0dkcEBJvwOoSFhwQFqa7CecTnBAYTzd0l1HcEDqVnqrokJwQL4T0Wp4QHBA0S+JWOVAcEBi2K046ENwQBAgQk94SXBAp6mWeYVRcEBrDBdd+FtwQOowB6uyaHBAMCpseI93cEBQjiGpY4hwQIWz5Gz+mnBAqh7rzCmvcEBjc2lIq8RwQMXgRH5E23BANNUC4rPycEA3J+p5tQpxQOA2LqQDI3FAdCDo4Fc7cUAdKZSea1NxQPFBwgb5anFAKOmnyLuBcUCa10ffcZdxQKC28FDcq3FA+Gvn5b++cUDHJSvU5c9xQDPuYF4c33FAedAZZDfscUALFdHhEPdxQHlTL1+J/3FARodSSogFckCMYhI//AhyQF8ncjnbCXJA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "LSwW0kVxVMDXrEaMV8BUwPEbsxcnDVXAbMOgqNVWVcAhw6KGjZxVwCP1g3iE3VXAlMbXDv4YVsD+oozGTU5WwMGRTv3YfFbAAZ0OshikVsBaA5oMm8NWwBRd0acE21bAxePBmhHqVsB26589lvBWwEIzZ6h/7lbAH8Ox6dPjVsAORib1sdBWwGnWsElRtVbAAqWKUAGSVsBGY+N2KGdWwM6NyARDNVbAKFiotOH8VcBD2oUPqL5VwMUmoJJKe1XAdizso4wzVcDx6E9bPuhUwC7iCic6mlTAi6siUmJKVMCgMwF0nvlTwHS+tNDYqFPAewNusftYU8DkZu+87gpTwP5woFeUv1LAMHziEsd3UsCoUhczVzRSwKmgiFMI9lHAVnYIL4+9UcBAj7iTj4tRwPvr6IeaYFHAbuVvpSw9UcB93z+wrCFRwKjrUmxqDlHAVPZMtp0DUcCil3PhZQFRwKGE0VzJB1HA6y2NoLUWUcDsrKhj/y1RwAIYjxljTVHA5BADtoV0UcBGPDa19aJRwL6dC2Us2FHAxczJa48TUsDIw8+HclRSwGqtOYMZmlLA9m3MVbrjUsCLbPhufzBTwDnWTyGKf1PAHY5rKPXPU8BLUu1B1yBUwC0sFtJFcVTA" + }, + "y": { + "dtype": "f8", + "bdata": "U7LfTqaGdUAi8MzV4IJ1QGhJpIctfHVAMRnI059ydUBgii5wU2Z1QB75AAlsV3VAy1wj2RRGdUDN2s8sgDJ1QB04ss/mHHVAKVYqaIcFdUDJkpPBpex0QC4koAeK0nRA9NEC9X+3dEBZPsb31Zt0QD/jzk3cf3RAEJ8bHORjdEBD7GeDPkh0QIx22rQ7LXRA5ZxqCSoTdEDzj58eVfpzQJo3PPsE43NA+Q1UPn3Nc0D+6yZb/LlzQE60/OO6qHNAJUcO5uqZc0AxtFdYt41zQM3E+J5DhHNAQVmNJKt9c0BIW6cKAXpzQAvwUPJPeXNAtN433Zl7c0CxmNsn2IBzQHPFzpz7iHNAJHfUoOyTc0BeE1l3i6FzQO9TgJ6wsXNAe1y9QS3Ec0BHgajBy9hzQPu+iE9Q73NAd73NmnkHdEDvLoOOASF0QMgGmByeO3RAROirFAJXdECSv/MD3nJ0QMcZrBvhjnRAxc18G7qqdECLGCY9GMZ0QMOTyx6s4HRAn3A1qSj6dECSF2zvQxJ1QAOVJQW4KHVAGNyWyUM9dUC5lVykq091QEWJVzK6X3VAOTmH4EBtdUAliSFzGHh1QC+UX3chgHVA+J21nkSFdUCnh20Cc4d1QFOy306mhnVA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "D9pgZIjpYsCb3GXtcRFjwIj2bYSWOGPAD23tn4ReY8A3De06zoJjwMb4KBQKpWPAvJtd39TEY8CbPU1l0uFjwEDAOo+u+2PAprPRWh4SZMAERriz4CRkwMP7UzC/M2TAjaWdr44+ZMBhyTrWL0VkwF6icWmPR2TAHubvhqZFZMDbhsK4ej9kwEqHROUdNWTA03ozG64mZMAkS4A6VRRkwPkl2XpI/mPA8uFM0cfkY8Cql8c2HchjwMWHgtGbqGPAb6nVA5+GY8BXciZjiWJjwJWx9JnDPGPAQ+lCOLsVY8D7vsp14e1iwL1Nl+mpxWLATuS9OomdYsCdsAHO83ViwKPJN3RcT2LAJNs+HTMqYsBIcFCT4wZiwMChWULU5WHAEwjmDmXHYcA3qPo/7qthwKSiB3+/k2HA/lrX8B5/YcD0URlqSG5hwLrW1sFsYWHABPHIQ7FYYcBpbCpEL1RhwK7NP9bzU2HAUUxqpv9XYcAa0jP4RmBhwASrWcixbGHA3CdzEhx9YcBDLGo5VpFhwGihlpElqWHABzbsCkXEYcChzUz5ZeJhwAqSuvgwA2LA28DT6kYmYsDI9LgKQktiwOSlPRS3cWLALqgKezaZYsCRLyyuTcFiwA/aYGSI6WLA" + }, + "y": { + "dtype": "f8", + "bdata": "bOMvOY7lc0D6SIQbBuNzQDte9m7A3XNANVZdfszVc0BwaiJbQctzQH25V5o9vnNAyWkD/Oauc0CSXaD9aZ1zQCYTEln5iXNAaQGCcc10c0DBN9GvI15zQPipeNA9RnNAs9HcJGEtc0DQtT3K1RNzQF6Kitjl+XJAoqJ3i9zfckCNFUZoBcZyQNkLtmKrrHJAsxmfAxiUckDNPaWTknxyQFEydUxfZnJAZszfkr5RckCpaxI87D5yQH0+CuAeLnJAeMA5O4cfckAsxCuhTxNyQFERvoGbCXJA7rJXAocCckBrGkWsJv5xQGHlJjGH/HFA1g0gRq39cUAiUS6WlQFyQNxo1Ms0CHJADw36sXcRckBsZKJrQx1yQBNJ18F1K3JASV/nhuU7ckCcIdcNY05yQEdvqrS4YnJAon/1f6t4ckAk//HF+49yQMoYKOdlqHJAkMyTEqPBckAWow0TattyQCrwoiNw9XJAy7d1yGkPc0CwJa+pCylzQEGECW4LQnNALM93kiBac0B9W3k8BXFzQDuDtwR3hnNAWKChtzeac0AFqdgJDqxzQJAaXz7Gu3NAhSirvDLJc0Ad5eeULNRzQGjF5fCT3HNAFepycFDic0BLUg9wUeVzQGzjLzmO5XNA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "QMRL9FeydcBuIbNKacZ1wOvnQKsK2nXALPhvJQPtdcDppaOyG/91wL0Yw9UfEHbA/7N4M94fdsCQ6lshKS52wLI8ZirXOnbAJCwzh8NFdsASW66Izk52wKdm+vPdVXbAoOuFTt1adsA3BnIZvl12wLIBnvt3XnbAmULe2QhddsAkLxjddFl2wKZdMWbGU3bASAj17w1MdsCZF0ffYUJ2wDpqL0LeNnbAqMJ5fqQpdsA+ZNbw2hp2wBRclH2sCnbA/DY4FEj5dcD5AVgn4OZ1wF54Rxqq03XA1848pt2/dcC9R684tKt1wFhjxExol3XAAdWuwTSDdcAYQ+svVG91wHMhSj8AXHXADqOz/3BJdcDj1opG3Dd1wN+bhxJ1J3XAD1jM92oYdcAyfeSV6Qp1wNUmPBkY/3TAs9Z/yRj1dMBK5C2mCO10wKYIehL/5nTAHv92kQ3jdMB9/0qTP+F0wIhnAlSa4XTAVM9gzBzkdMDvkty0v+h0wH0qvJp173TARhIYByv4dMCwHVC3xgJ1wBtyUOYpD3XAd6PRpTAddcDBEZFGsix1wMw6U86BPXXA0LRZem5PdcAuaNJMRGJ1wFnKpaPMdXXAZa3u1s6JdcDd/U/dEJ51wEDES/RXsnXA" + }, + "y": { + "dtype": "f8", + "bdata": "+tfPYrn7bkA6N/3R3fVuQOLrwfze6m5A3YfFx9zabkBBzzeiBcZuQP30IP+VrG5ARgALpteObkAA8ADdIG1uQCNYUG7TR25AZ1PjjFsfbkAliGmaLvRtQPaR3tLJxm1AV2NJ4bCXbUAjRNJhbGdtQL0yg1WINm1AAQIwjJIFbUANHCAJGdVsQM4HI2eopWxA7n+6QMp3bEAZEfmgA0xsQIv1moHTImxAqIW4WrH8a0C1iD7IC9prQDqJGUlHu2tAnMW2G72ga0BAPyg7uoprQOC/2n9+eWtABoBl5jtta0CTloz+FWZrQNG/GoQhZGtAfa29ImRna0BIUJNl1G9rQEjQl9JZfWtAkaSkMc2Pa0Cd2zL++KZrQO6clgKawmtANaDxGmDia0ApJKcd7wVsQF0lr+bfLGxACG/BgsFWbEC/wvR2GoNsQOLLGyFqsWxA2c/hLCrhbEAq3WwZ0BFtQFtPG8vOQm1Aul/PJJhzbUBbkSWknqNtQCVQ6vtW0m1AtTAoqDn/bUDq0Tp3xCluQIU7cgN8UW5AEVv/GO11bkAKbxsErpZuQJQiocNfs25AmgmeHK/LbkBpLr2LVd9uQE9xzhEa7m5ApHkZ2dH3bkACr5yxYPxuQPrXz2K5+25A" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "Tm2+vUfhcMDs8RPskvZwwMdTMhq7C3HAfA4G6oIgccCu0wEVrjRxwPwg9BoCSHHAbu6260ZaccABRc2JR2txwC4PF6TSenHA+E/dJLuIccB61Je02JRxwCgP8S4In3HAYLO0CCynccC1Z4GlLK1xwN7+RJz4sHHAnZG86YSyccCi/mUQzbFxwN8ohiXTrnHAEy0ey5+pccAdFeEWQqJxwLuqcmbPmHHAnFNuIWONccDtuOlpHoBxwFbLWbwncXHAX+bwf6pgccC137mI1k5xwO8s3YzfO3HArIWijvwnccCZE+I8ZxNxwOj/s0tb/nDATK1DxxXpcMBT7bxi1NNwwMbOVMXUvnDA2h9111OqcMA8WhESjZZwwNlpJdK5g3DAqatSshBycMDGwn3sxGFwwFOrOMUFU3DAWQeoAv5FcMA4VHFw0zpwwG/oGXKmMXDAh7YUpZEqcMDdVI+TqSVwwG023nj8InDAmeM0GJIicMC27yGmayRwwFv6D8WDKHDAj+DVlM4ucMA++SjVOTdwwAhzjRqtQXDAoEUrFQpOcMCbQrroLFxwwEE/hpTsa3DAJqJdaht9cMDNWxGTh49wwLn2BZ/7onDAB2syIT+3cMDhIctSF8xwwE5tvr1H4XDA" + }, + "y": { + "dtype": "f8", + "bdata": "MVkDFnnzZkDIFELpmPJmQHtXsgyN7GZADEsHCmfhZkAmtos3R9FmQEUeVlpcvGZAbNqfHuOiZkCzlMhnJYVmQDmxBHp5Y2ZAkUAkAEE+ZkB7SEjw5xVmQAAZvFLj6mVA9P9+7q+9ZUAh/lbf0I5lQKFKhhnOXmVAFrVy3zIuZUAbvLYtjP1kQD38LyJnzWRAHyStYk+eZEBlst6HzXBkQP9lIZFlRWRAoJ2fZZUcZEDgMSBn0/ZjQPoOphqN1GNAJ4zE6iW2Y0B97kEH9ptjQKOETGVJhmNA6U0o4151Y0BbPNSRZ2ljQP4AuCaGYmNAlTL3ls5gY0A5043dRWRjQN0d3uzhbGNArYLZy4l6Y0B8PXDeFY1jQAVrdVhQpGNA5Fyq2fW/Y0CvjSwxtt9jQEFZD0Y1A2RA7Mt+IgwqZEAHr2QeylNkQG2ULSb2f2RAeA76GRCuZEDnakFBkt1kQAz7r87yDWVA793bb6U+ZUD/6kjkHG9lQHsoH5fMnmVAsGXvNirNZUBvNedGr/llQKWP6KTaI2ZAjJsZADJLZkDsL647Q29mQKHy5bmlj2ZAGQV/i/urZkDPEC2A8sNmQBJl/hRF12ZAK6r7PbvlZkBEVrkIK+9mQDFZAxZ582ZA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "CKWjVckWd8DYpY/2ySp3wGeKYbBMPnfAGkx86xhRd8DcXpoh+GJ3wK/O9Hu2c3fA5zqgaSODd8DiimssEpF3wG/Bp1panXfAgn5gVNind8DwLLGqbbB3wLYiC3gBt3fA+qdsqIC7d8Crbbcw3r13wMLwhTQTvnfA2QwSGh+8d8DtBPOLB7h3wHT0rWjYsXfAOVVIoKOpd8AldkAAgZ93wHLNgu6Nk3fABmkkFO2Fd8CM09n4xXZ3wLwKTpBEZnfA3RumuphUd8DqLqO59UF3wADM9ZuRLnfAWJlxoKQad8DnX+iSaAZ3wGuNhSQY8nbAu3aQQe7ddsC/JoNmJcp2wNB3Zfb2tnbAmohYlJqkdsCuXTWCRZN2wJzIEgYqg3bAQqdy2HZ0dsBIdL2cVmd2wAI9lWXvW3bALrhmRmJSdsCuz3jzykp2wNnkkHE/RXbAbuUU1s9BdsBtcWQYhkB2wAZj8PRlQXbAYpJk4mxEdsATRAMZkkl2wCXrHKzGUHbAyV9atfVZdsCc+VuRBGV2wDm3/SzTcXbADFVgYjyAdsD6d6lkFpB2wMVhQjkzoXbAzoA1PWGzdsDOBCi1a8Z2wB/cTWYb2nbAWXKcNjfudsBFhWvShAJ3wAilo1XJFnfA" + }, + "y": { + "dtype": "f8", + "bdata": "tmpUIV7ebkA+A/hVq9duQIrYTffQy25AOF7GZvG6bkDFN6KVPaVuQM0X/Hb0im5AYpAxSWJsbkD4cry430luQDg3/t7QI25AdHTnH6T6bUC4mcXp0M5tQASm11rWoG1A2LGW0DlxbUA+yN9khUBtQIIcYV1GD21A44HUkQvebEDXuKvNY61sQPxb4DHcfWxAY8+Ym/5PbED+kEUUUCRsQMbQvk9P+2tArZrBPHPVa0BekfarKbNrQMDZahHWlGtAkyEXZNB6a0BDfrkeZGVrQHQ45mTPVGtA6o3KTkJJa0AyNqxd3kJrQA1Nuhq2QWtAfoZJ4cxFa0BynxfVFk9rQOpIsgR5XWtAdMSdt8lwa0Ajg1jn0IhrQBLE3OFIpWtAh9XIE9/Fa0AMmeP3NOprQOCMRinhEWxAZh4SlXA8bEAMjTXIZ2lsQAw1glVEmGxAfqH7T37IbEDzERvViflsQGbbjqLYKm1ABr3csttbbUDWRzrcBIxtQP8N6GzIum1ASYdjwJ7nbUCBXdjIBRJuQHTqW4iCOW5A8LWsdaJdbkDWLGvI/H1uQIXuB6kzmm5A7hz2QPWxbkAnKAyo/MRuQICMYqwS025Az8Vscg7cbkC0F3zr1d9uQLZqVCFe3m5A" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "iUQzHs97dsAPwYIZv492wDaD0OtIo3bAA6jq6DO2dsDKdVQxSch2wLhAcFFU2XbAd1Kj2SPpdsBkibrtifd2wOrC78lcBHfARDoOPHcPd8DOeVYPuRh3wNPs6GkHIHfA1huoGk0ld8C5qrDWeih3wD7NtGWHKXfAgYi6vG8od8A8L+8GNyV3wAB/dpzmH3fALgdQ540Yd8Ckd6E2Qg93wDyG54AeBHfAbbPAFUP3dsA1xzRA1eh2wJbeiNr+2HbAaszZ1O3HdsDC7Nyv07V2wBLpSe3konbAeOmNd1iPdsBR9YECZ3t2wAaK8mZKZ3bAUHfV+jxTdsAGsRToeD92wG/j2IM3LHbApyQ9qLAZdsB+H04SGgh2wDKfKsam93XAVZsJe4bodcB5+9IQ5dp1wACG3BDqznXALRw8O7jEdcAy5vshbbx1wEnNVNMgtnXAdw3ok+WxdcB0QsKpx691wOqhwTjNr3XAWabGMPaxdcBL0+JNPLZ1wD8LhSqTvHXAwMBuY+jEdcBPtgnNI891wDyZg7kn23XA+xzkTtHodcCQ4yPs+Pd1wDn7HpxyCHbAWIcVlQ4adsCsv0jDmSx2wMU2Il3eP3bAcKw3f6RTdsBk42bOsmd2wIlEMx7Pe3bA" + }, + "y": { + "dtype": "f8", + "bdata": "5eVixTSAcEArUHqTkn1wQDidoDJdeHBAL6FovqNwcEB395aefGZwQJLxJEYFWnBAES3V3WFLcEDulFHbvDpwQN4GA4ZGKHBAPtcHazQUcEDYx76Dgf1vQDuEGodT0G9Axac77GGhb0BejC/dNHFvQJ57AxdYQG9AeQByVFkPb0Dy3Mmyxt5uQAwQtxUtr25AtJWZjhaBbkCTOwvMCFVuQMkoHpaDK25AL9C4W/8EbkAsYELV6+FtQCDwlMCuwm1AU13huaKnbUAb1dw0FpFtQGNiMplKf21AkIrMhHNybUBmQB02tmptQLxyFiApaG1Ay48MqdNqbUBZ3D8VrnJtQHbgSp2hf21Aadk0sIiRbUAQi2hgL6htQH5hU/pTw21A5f73wqfibUBmcEvczwVuQDSmxkxmLG5Au64vJ/tVbkAewUDPFYJuQJxof1c2sG5AJxNN9NbfbkBqtfx/bRBvQHzYhwttQW9AZshYd0dyb0AOKYgPb6JvQLQ04iZY0W9AGHELrHr+b0A92hbaqRRwQBhYWnuzKHBA/UXmGiA7cECIdsZHuktwQIk2/9lRWnBAd6E7frxmcEDNZpIw1nBwQKXm/KSBeHBA7KJRnKh9cECuiMskPIBwQOXlYsU0gHBA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "9ZWKtcFDcsCfC6/mx1dywCriiXqBa3LADP9jOrV+csDcPLRzK5FywLp5rZmuonLA7BiS4AuzcsBbbgrRE8JywJu20tGaz3LAmEExpnnbcsAGAMbfjeVywHlVaUK67XLAhID4GOfzcsDToRl6AvhywE7sL3wA+nLACUzpV9v5csBmSgF5k/dywGCRCH0v83LAWpg0ILzscsAWI28YTORywC64EN/32XLAYXrjad3NcsB+TTzUH8BywKxXJvnmsHLA+TzI/16gcsAmZ1Lbt45ywG7T6b8kfHLAFtIijttocsB7g7o2FFVywNtcVBgIQXLAoFoSWfEscsBhjOo9ChlywEo1o4GMBXLA6b5frbDyccDTMaR0reBxwBncqha3z3HAXl7Yxv6/ccB8sgUesrFxwHIdPpb6pHHAtqxwEv2ZccCFNHJz2ZBxwDAmhjuqiXHAgHJ6QYSEccCofzV0doFxwHCGZa+JgHHAIPrOocCBccAJgoTFF4VxwKUWH2qFinHAJZ7Y0PmRccDIgzdaX5txwJfRxsSapnHAgeAkfIuzccDNToP3C8JxwC8ihiby0XHA6UpG6w/jccC9oRWgM/VxwC9hgKcoCHLAq2bqBLgbcsAbkA38qC9ywPWVirXBQ3LA" + }, + "y": { + "dtype": "f8", + "bdata": "gR/BZ1QUcUAS/2k+eRJxQPgtWRIMDnFA4JRquhkHcUBMf9lctv1wQH27zjT98XBAiy5kQxDkcECp9wLtF9RwQOA5OoRCwnBADWJiw8OucEClo5I21JlwQB/hm5ewg3BA0cDkHZlscEAa1yXE0FRwQKssIoacPHBA3aaPmEIkcEA+tHOdCQxwQDnRha5v6G9ArJYruiS6b0C87YOkuI1vQEOjOUesY29Apnc5mXk8b0Aode1MkhhvQDNjc4Ze+G5A2OmKrTvcbkAlk6dee8RuQO6EOH5isW5ADJPUcCijbkAeSI569pluQGfvQUfnlW5AWs84nQaXbkAs+gE7UZ1uQMXE4+C0qG5A93/KhRC5bkAR6xq3NM5uQCdvUiLk525AHvHlRtQFb0DwTFtOridvQL+pKggQTW9ALQ2NBo11b0D6Ev7Yr6BvQC+I4GD7zW9ArdlpPOz8b0BG1NshfRZwQDUT3wnNLnBABtlKUR9HcECifklsLV9wQMiPw5SxdnBAiELClGeNcEBVVEmMDaNwQKRqarBkt3BA/7tnATLKcEANtdX1PttwQCQ4yxha6nBApKBVmVf3cEAYcZDJEQJxQLoH8ItpCnFAxlaCrUYQcUCC1x8smBNxQIEfwWdUFHFA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "TUwYI6ipd8C9mGTvk713wOcDiDkV0XfAxgQQbvPjd8AiPpTS9/V3wKzVdCTuBnjAHUFwMKUWeMDI2Vhh7yR4wBpGTESjMXjAujftAJw8eMD9xELEuUV4wJdfBx3iTHjA/KhbSABSeMAErP5tBVV4wMzPXMvoVXjA1p74zKdUeMDEruMVRlF4wCn8MXXNS3jA21OGyU1EeMBvUArT3Dp4wFRwV/SVL3jAp0MI45kieMCLGNhIDhR4wE9YZFYdBHjA6XTMSPXyd8B5XJPjx+B3wO94R+DJzXfANeqTVTK6d8DfknYXOqZ3wIFyahIbknfAU2tkow9+d8DayInuUWp3wGWPizYbV3fAaL6PNqNEd8CyRoqAHzN3wIqX2uHCInfAOXfwz7wTd8A9kqPeOAZ3wNcKzUFe+nbAXquRW0/wdsCkjqZYKeh2wDKGsdsD4nbAf7O6uPDddsBiLnbB+9t2wMe3+6Iq3HbAAOlP1XzedsAWoe6c6+J2wBc4Uh5q6XbAvNM+g+XxdsCjsGUxRfx2wMXkwRFrCHfAMJ3f5zMWd8CTrhC4dyV3wB4EZjsKNnfAIIgdYLtHd8A6ARDVV1p3wEV3ip6pbXfA+F/jsniBd8AJZQWdi5V3wE1MGCOoqXfA" + }, + "y": { + "dtype": "f8", + "bdata": "rIPbSLarcECsrwXu8qhwQKKBjcSTo3BANDo4YaibcEB57qC8R5FwQKhZl/CPhHBA/YXQ4KV1cEDCjObPtGRwQPfK3eHtUXBAaYGbjYc9cEChUOv+vCdwQIvL3WrNEHBA5OnjsPbxb0Bh4jq/F8FvQLhIxsGLj29Apxh7b+Jdb0DBTmLUqyxvQPbuxq92/G5AcTAp1s7NbkBLy6ebO6FuQJPZd0s+d25As93dsFBQbkBiuue14yxuQAlP6BteDW5AKrZqURvybUByqv1oatttQIZS2DONyW1AzLfxgre8bUAMp7SQDrVtQBDuA5Wosm1AOC3IhIy1bUBnK8L9sb1tQKoz3F4By21AhvOzDFTdbUCQDJbhdPRtQMGIpscgEG5Anwt3ewcwbkACVtZ0zFNuQDrTNfMHe25A1q2aKkilbkAVhLGNEtJuQJ1RRzHlAG9A5XogRTgxb0AK7Oidf2JvQNukxksslG9AGGbzOK7Fb0DM6qrLdfZvQOu3WMP6EnBAhC/d0dEpcEBtW4TRfT9wQD4E4eW/U3BARKRMTF1mcECb2VcGIHdwQHCCZ3bXhXBAHz647FiScECSTS8jgJxwQHKvkaYvpHBAvUjwK1GpcEBLU1HR1atwQKyD20i2q3BA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "WD6IJzJ2ccCCY6uAOYpxwB/SANz1nXHAqrvB+i2xccBpg7cdqsNxwJiS7qY01XHA4Zg7tZrlccCaH9C3rPRxwBFeMvg+AnLA2x4IGSoOcsBt8ESISxhywHNwcOOFIHLAE9fhTMEmcsC/iPmw6ypywK3jj/r4LHLAFjMBNuMscsBCIHGiqipywIOOE7FVJnLATPV88vAfcsC+azDyjhdywAIc1QBIDXLAAiWv7TkBcsDlfCiwh/NxwAOhZAJZ5HHA9EIF7tnTccDpL25MOsJxwKzz+jutr3HABMq4i2icccDp8lIfpIhxwEog9kyZdHHAOTUBN4JgccB1u2UjmUxxwGgqodIXOXHAzEU52DYmccCQd6H2LBRxwDskZYAuA3HAbLBjwGzzcMDBbNZqFeVwwH4fvxhS2HDAbLI/z0fNcMDy/jiUFsRwwDIvaBHZvHDA+B8QR6S3cMAEFw9Ph7RwwCZ+ETGLs3DARrBgyLK0cMA90Zm7+rdwwCK5ZIZZvXDAicUOlb/EcMDDfrlxF85wwDEDmgJG2XDAn6qU2CrmcMBf31CNoPRwwAVMtC99BHHAGLWKvZIVccCDn/morydxwC+tPGifOnHABcUJDitOccBGAOPoGWJxwFg+iCcydnHA" + }, + "y": { + "dtype": "f8", + "bdata": "UTJ1GXIHckA6YtOUowVyQCF8nN1CAXJAMuKKplz6cUCb9qvyBPFxQN5FVNtW5XFAszqFQXTXcUDcWahrhcdxQDQPvZC4tXFAWeVLUkGicUCe+qMmWI1xQFQXFbU5d3FABG8BJiZgcUC6WcVoYEhxQObNkHEtMHFAHMFlcdMXcUA5kn8Kmf9wQPQIcoPE53BAfC9S+5rQcEC5RzihX7pwQIpnYPFSpXBAefoe+rGRcED2sseqtX9wQOmaiC6Sb3BAZEcYVXZhcECLGe4Ki1VwQE5kjuLyS3BAWsVCsMlEcEAAkGE5JEBwQHJtDvgPPnBACPMi9JI+cEDrkbCxq0FwQCedTjVRR3BAkuknHnNPcEDRdXzV+VlwQIhODdPGZnBAcTis9bR1cEBcP+7umIZwQFrHyMBBmXBA5sWsS3mtcEAm8oPrBMNwQB6QyCGm2XBAl3jKShvxcEAElBNcIAlxQLeIw6lvIXFANiimsMI5cUDOb7ri0lFxQMDc2HNaaXFAlXknJBWAcUAUaRAGwZVxQIm5fD0fqnFA7tIotvS8cUAMowHPCs5xQIF5mfgv3XFA7/XoRDjqcUAqELvm/fRxQGKhUp9h/XFAN2QLGUsDckBWi+8tqQZyQFEydRlyB3JA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "BbOipLD/cMALGiPYGBRxwLOwnS9FKHHAClh5J/s7ccB+FneTAU9xwKy6h0QhYXHAHY7cqCVyccCkz2Jk3YFxwMur798akHHAMmt9zbScccD4RPqfhqdxwPFRTfVwsHHAFhxe8Vm3ccBHwBaJLbxxwBIRh7zdvnHAohiAv2K/ccDnMDIQu71xwEsXjHvruXHA8E1OD/+zccABLvv5BqxxwNCqAFkaonHAE1Ss9VWWccDbEKzx24hxwPjDDWTTeXHAKgPd52dpccBPwqcdyVdxwGjRWCEqRXHAE+L49cAxccBfFATpxR1xwBF3Gu9yCXHAai3l+wL1cMCZ1BdXseBwwKckfvC4zHDAyosItVO5cMBwn8fmuaZwwH68vXkhlXDAvihgd72EcMAno41qvXVwwKLHp9VMaHDAZ0RftJJccMBg8KAKsVJwwHe964HESnDA4LUtFuREcMB4KRnTIEFwwP1qs6KFP3DAhYasLRdAcMBixNvN00JwwOkqCJOzR3DAcR/vWahOcMCSXEb1nVdwwINLQmh6YnDABP/2MR5vcMBfK7moZH1wwEQOdmQkjXDAR9HNti+ecMCuCJQvVbBwwET5NSxgw3DAEbRmcBnXcMBWMVbGR+twwASzoqSw/3DA" + }, + "y": { + "dtype": "f8", + "bdata": "MlUaUab1bUAM4csoBPNtQAZmqFU6621AMZvwbl/ebUAEJiy+mMxtQAwCAtMZtm1Ac9Op7SObbUD+8adBBXxtQGwn+RIYWW1A7BBAsMEybUDzk+tMcQltQEi8qr6e3WxAj5bVIcmvbEBBPrtodYBsQEeNAtosUGxAsPR7gnsfbED4cuee7u5rQA7zSAITv2tAkVxvfXOQa0AGJE9Ml2NrQKRDwI0AOWtAcWMRyioRa0Bu8baMiexqQAZ9JRWHy2pA43SjIoOuakB4LpDe0ZVqQNPFRei6gWpAG+tZhXhyakD1M5j4NmhqQBA0oAEUY2pAI7+bhh5jakB5nQdpVmhqQAQNDIascmpAQQ5k4gKCakB7JFQBLZZqQFlKtGXwrmpAKNGWOwXMakD0E6AoF+1qQOitskDGEWtAcoIqHKg5a0BSj38MSWRrQC1P0WstkWtAYmaNA9O/a0AwTiGGsu9rQLt1bxdBIGxACX6V3/FQbEA7SXOjN4FsQDjlUV6GsGxAERcG2FTebEAIgPQyHgptQKDhdG1jM21AcKc20qxZbUAEKXpTi3xtQDV9L82Zm21AwYhUKn62bUBqWD9q6sxtQLXh3oKd3m1ATOZhHWTrbUDAxiArGfNtQDJVGlGm9W1A" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "pw/qoCAfcMDJBc40jjNwwM2srTzMR3DAb+qgAaBbcMDg9fcA0G5wwPy0C5MkgXDAkzmsjGiScMDCH1nZaaJwwGp5hAz6sHDA9e466O69cMBAgKrXIslwwLt/JFx10nDAPphea8vZcMBBeeG9D99wwL6pwQwz4nDABnrvPSzjcMCWjJ1++OFwwDNicUub3nDAGShmZh7ZcMBjHn+6kdFwwC2vmy0LyHDABiPzYKa8cMAKL/BghK9wwEPSVEXLoHDA/468wqWQcMBdfb2uQn9wwCuDD3jUbHDACrpDlJBZcMCSUrTkrkVwwFO6bhRpMXDA/iju8PkccMDqw4u/nAhwwPgkJiMZ6W/AUt3aMQfCb8BGzar+dJxvwAxb94PPeG/AT6r0Jn5Xb8CrgcGL4ThvwIiJFn1SHW/AKPi56iAFb8A0taIBk/BuwBl+a2Dk327AXXVkakXTbsDftji72spuwD0Mv7y8xm7Ar8ApYPfGbsCp+mL7ictuwJEU+kpn1G7Ak12cmHXhbsBwq6kFj/JuwLZpDPmBB2/A3YkWrxEgb8DcCsLp9jtvwHjcVb/gWm/A4LoXhXV8b8A7QmLTU6BvwF7TLKATxm/AqMjRbEftb8Bq1NPBvgpwwKcP6qAgH3DA" + }, + "y": { + "dtype": "f8", + "bdata": "kWwMtbKzbUBslUV407FtQImJ+Y/Kqm1A3mbWY6yebUAUaPcZnI1tQAQl8TDLd21ADINB8HhdbUCKv8Ow8T5tQP34PP+NHG1AA42Dm7H2bEAfTCpXys1sQPy99tZOomxAMmi+Or10bEA5SZGvmUVsQD+pVvBsFWxA20w0ucLka0BKZj4yKLRrQMjpB1YqhGtAeN+2WFRVa0CKzj4ULihrQPZtVH46/WpA2JKRLPbUakDVLBfr1a9qQHx9xWlFjmpAqjPhA6ZwakDwba+lTVdqQM28O9OFQmpAtQsb04oyakAA9ZX/iidqQBygNUCmIWpAfCU5re0gakDg5P9dYyVqQO2g+GL6LmpAbvgm65Y9akC4Z9KUDlFqQLXKdOgoaWpAucyD/J+FakBoMjpAIaZqQN7KFGtOympAgmBMjr7xakDbazNF/xtrQMyxBAGWSGtAEl5gbAF3a0BJenDiuqZrQMifdPU312tA+RRIAOwHbEAHr1W+SThsQAArWuXEZ2xAH3RQvNOVbED2huuq8MFsQOw6F72b62xA8vUbFlwSbUAtxTBPwTVtQLD+gr1kVW1AHr8BnOpwbUDae40VA4htQNSRhyxrmm1Alycife2nbUB/xDzYYrBtQJFsDLWys21A" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "GJTdJolWasBbT0MuA4FqwIHhg1cdrGrAYjshnVrXasC20cWTPQJrwBiUDtZJLGvAaBddbQVVa8BCXJsz+ntrwN4R7ym3oGvAok16wNHCa8DNCnML5+FrwHXmEOKc/WvAO9UQ5KIVbMBaR9hisylswEB/kyuUOWzAsdcEMBdFbMAcVBsMG0xswEf/zGaLTmzATyocLWFMbMBFWpymokVswPNfO2NjOmzA4m6DAsQqbMA4yfrU8RZswB55s1gm/2vARFeIkqbja8AuE+tFwsRrwA7shw3TomvApS5eVzt+a8DsVz9HZVdrwLn88ILBLmvAPHVu68UEa8BIC/5G7NlqwNlt+d+wrmrAvvJJHJGDasAtWq4RCllqwNMZ6RqXL2rAV5LzcbAHasBfA0TTyeFpwNXAGS5RvmnA1GSdZa2dacAC6nEmPYBpwKRPGNRVZmnAaU9CkUJQacAkjeJlQz5pwENlcoWMMGnAmBGIt0UnacB4VHTkiSJpwIFYNsdmImnADSeoxdwmacBPOlfv3i9pwAOEDCNTPWnA1guXWhJPacCfTv0b6WRpwCQLzQ6YfmnAMmXYs9SbacDga0s9SrxpwAA+p4Sa32nAyE/ZG18FasA1slZ2Ki1qwBiU3SaJVmrA" + }, + "y": { + "dtype": "f8", + "bdata": "lCClFao+ZkB9aUsY9URmQLI8Tyn3RWZAAJclXK1BZkBO4xEhJDhmQNbCESF3KWZAEw6i7dAVZkBxxUWFav1lQHIWNa6K4GVAvPgTKYW/ZUB91gO+uZplQGnk0CaTcmVAUwJh2YVHZUAVEea1DhplQFSRp5yx6mRAmSt+7/e5ZEDAp1YDb4hkQO0sQIamVmRAz92q3i4lZECXpo+Il/RjQCMhQHVtxWNAc7+VcjmYY0APCiKefm1jQHnu3ui4RWNAbz2ur1shY0DmHLts0ABjQPgEiIV15GJAQLMgOZ3MYkA2RoqxjLliQIp4JTt7q2JA/uNIpJGiYkCkiuTG6Z5iQIv3hT2OoGJABHaWRHqnYkAUlizImbNiQDTpSJ7JxGJAZQvV7NfaYkBLHz26hPViQClRAKeCFGNA6SEeznc3Y0A5gtXJ/l1jQKtswdmnh2NAbOb9JvqzY0BgMakideJjQLaEyPqREmRARrBWIcVDZECTXw7hf3VkQPPbWfsxp2RAqKW3SkvYZEChTtZkPQhlQIfUqjd9NmVAjkjTnIRiZUCYt7Pe04tlQCur5CrzsWVApMvA7XPUZUA3iCET8vJlQO1xqCgVDWZAfklLXpEiZkBXnTpiKDNmQJQgpRWqPmZA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "tIYbGG1kY8A9Ga3G6o1jwKA0huePuGPA3GefyODjY8CousPFXw9kwEqb/7SOOmTAR7yTVPBkZMAga0a2CY5kwMmK9aNjtWTAD+9e+YvaZMA/IDTvFv1kwBA2uVOgHGXAsgFkrcw4ZcAbjjBESlFlwP1ZqQ7SZWXAZcPzfyh2ZcDb+4o0HoJlwFaAtHuQiWXA82EfvGmMZcB6goqyoYplwIwMvIk9hGXA96KEy095ZcA5wPkq+GllwIU+gyhjVmXAkLvGkMk+ZcDBQOfXbyNlwLUP91KlBGXAUIDbUcPiZMArZD4cLL5kwA5afNRJl2TAIe/KQ41uZMBhgBOTbERkwJPFN/RhGWTALCWiP+rtY8CM4yWKg8JjwHyMSberl2PAKFwgDN9tY8DbzdXGlkVjwPPXAL9HH2PA2eS6EmH7YsCJklHkStpiwGkYOixlvGLA0HGyogaiYsD2vDfEe4tiwE5pq/MFeWLAWLeqvNpqYsB3qD44I2FiwBHeppX7W2LAfi2ZyHJbYsBSCeNdil9iwAWM6nY2aGLAZi4c7F11YsD6TOGV2oZiwKbZS7t5nGLARDc2pfy1YsAEgCxUGdNiwJCQD1d782LAi0UDwMQWY8BoeuE0jzxjwLSGGxhtZGPA" + }, + "y": { + "dtype": "f8", + "bdata": "NAd12cC8ZUCqkF8vc8ZlQPNGcsyxymVAM0bdYHDJZUB72+6QssJlQO1Jg+qLtmVAweFMrB+lZUBm7ZhfoI5lQAb8uUVPc2VA5rfAmntTZUDLTKivgS9lQN7/kN7JB2VAVaoRXMfcZEDICg7p9q5kQKEx22jdfmRAqqHLXwZNZEA9LoFeAhpkQANmml5l5mNA3NF7FcWyY0BDABJCt39jQDnrd/rPTWNA55Zt/p8dY0D90HwTs+9iQM/kjW+OxGJA2DeENq+cYkDBjkMPiXhiQBLVOtSEWGJAZW1BY/88YkC0NTmQSCZiQAKSgj2iFGJANhzinD8IYkBUSAKbRAFiQNu0P3fF/2FATGbuiMYDYkB2R8IyPA1iQIh0fwQLHGJAZJmQCggwYkDNiZxK+UhiQEW1sWuWZmJAc6wfiImIYkBaCJ4mcK5iQMYD7lfc12JAvke69VUEY0BF/xf/WzNjQN9Utg5mZGNA0P5+5uWWY0B1TSwMScpjQFT+J3L6/WNArnTiJ2QxZEBxTbwM8WNkQLfOlIAOlWRAdYgWDS7EZEDKiPACx/BkQCmNTQZYGmVATTULhmhAZUDZ33AZimJlQLvQb8BZgGVAd7fLAoGZZUA3qOrqtq1lQDQHddnAvGVA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "l34QU8gYYsA3HmYL7EBiwHRMVPGcaGLAxpVV5GePYsAm4+Be3LRiwI1NyryN2GLA+ptidhT6YsCSYcNMDxljwH+y4GMkNWPAO0UuRwJOY8Cj+uPVYGNjwGB8NBQCdWPAlBoX37KCY8DcapuAS4xjwPBsGCOwkWPA7RrpIdGSY8B4Nsw2q49jwBm2Y4NHiGPASEa4drt8Y8CIsQ2PKG1jwBKEvPi7WWPAmLUqC65CY8BJaF+lQShjwLDCC2zDCmPAJIE764jqYsAwEzKe78diwEMCROBbo2LAYyC/yTd9YsDP1S388VViwGgrcmH8LWLAvFlb4coFYsCRQnQR0t1hwDL92eKFtmHALFPvUViQYcABpLwbuGthwGAxu3wPSWHAAYOv/MIoYcBZsBBLMAthwOxcSi+t8GDAGJ3tj4bZYMBfdKKT/8VgwJLrYN5QtmDAerYm7aeqYMCh8gWSJqNgwOy0C5Lin2DAv/EaZuWgYMC953IfLKZgwK2+MHCnr2DAKK6z1zu9YMBn6WLywc5gwLXs7esG5GDAase7Es38YMD5vN2KzBhhwHovfh60N2HA1z9vKSpZYcDW4i2dzXxhwE07Zxo3omHAeKbPHPrIYcBsxOU1pvBhwJd+EFPIGGLA" + }, + "y": { + "dtype": "f8", + "bdata": "G6cJGU0/ckBN6ojg7z1yQFd+FI3QOXJAdri7E/syckD+4/xGgylyQApGRp2EHXJAt8VN4SEPckCFRibNhP5xQG1sN5Hd63FA9dl2SGLXcUAnV3hbTsFxQK4WHNThqXFAsuzOo2CRcUBBP3feEXhxQL1RSuw+XnFAUuzftDJEcUBS+e3FOCpxQBFMInicEHFASzqWFKj3cEAL81X9o99wQCCRbNvVyHBAZ+XV1H+zcEACDaDM359wQJBbaa8ujnBA7EZDzp9+cEByQdlJYHFwQN9Bi4+WZnBA0KX36WFecEBcvDcm2lhwQDY91k4PVnBA2utHfQlWcECmXG3CyFhwQKYAYiZFXnBAGAaZv25mcEA1AwXhLXFwQASLxF5jfnBANHqM6OiNcEBOusl4kZ9wQF0iONcps3BA9atzLXnIcEBMDtWrQd9wQEyNuzxB93BAZfI7RDIQcUCasAhqzClxQC6OSWvFQ3FAkykC8tFdcUA5kJZvpndxQPQS9Pf3kHFARKfiGn2pcUBbfAi57sBxQHnmNdII13FAYD+jSovrcUAnnuSkOv5xQPUHeK7gDnJAy5b5HE0dckDUmjUaVilyQNVsgr3YMnJAvPQBcbk5ckDFMKVB5D1yQBunCRlNP3JA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "nIHdLiD/YsBsbq2p+SdjwCF+2VMKUWPAJk2IENt5Y8Cr6k189aFjwFUEkUTlyGPADy3yeDnuY8B2lOLShRFkwB/8s+9jMmTADPSSeXRQZMDu9Q08YGtkwNFHByHZgmTAKfYzE5uWZMDu7JbDbKZkwHtgu08gsmTArF3MxpO5ZMDWdQeMsbxkwDL4bJVwu2TAfOP3hdS1ZMBPgxGj7atkwNhRX6XYnWTAIgN0Zb6LZMB/XlVl03VkwD6NLjhXXGTAY6PoyZM/ZMCbQ8CI3B9kwGZMRnON/WPAVn2JDQrZY8BIEG9AvLJjwC6KfyYTi2PAhdKiyYFiY8A0U3LVfTljwAj+6EF+EGPA9jhP+vnnYsDjnkuEZsBiwLYXAas2mmLApwkXMtl1YsDscHGUt1NiwIPEPNI0NGLArxnFUawXYsA2dFnWcP5hwBo+PJDL6GHArDdZSPvWYcAXoyiqM8lhwBPnz62cv2HAWmAyJFK6YcDPqEJmY7lhwBZbfijTvGHASXIVc5fEYcAICNS+mdBhwHiTeja34GHAlB/HG8H0YcCjaApPfQxiwCGcv/emJ2LAzLY9TO9FYsD4Rj92/mZiwFa0qZF0imLAkQuxwuqvYsBeiTFg9NZiwJyB3S4g/2LA" + }, + "y": { + "dtype": "f8", + "bdata": "NJAQ4YCZbUAR8r8AvpttQIHx2ypzmG1AQkcb7KmPbUAp0pzAe4FtQHnX+8kRbm1AYQUCWKRVbUA0RVFFejhtQM0i3ynoFm1ARuiVZU/xbEDRJeMFHchsQKDlZonIm2xAuAtZhdJsbEA0PJIwwztsQOgYctgoCWxAD9wcRJbVa0ABjr0KoaFrQOC7n+HfbWtA5j4L5+g6a0BbC9buTwlrQKYHm9Wk2WpA+qVx33GsakCJneAmOoJqQAQMlyB4W2pAfQU7OJw4akAY11OKCxpqQI3SAb8eAGpAx1LWCCHraUDA4LVKT9tpQN0iPWfX0GlAM9mou9fLaUBv88LHXsxpQIY31ANr0mlA1HUU5erdaUAba4wQve5pQKO51buwBGpA/VegOoYfakD39mK37z5qQAqqHhWSYmpAOPmm9wWKakBVym/v2LRqQFOGe8WO4mpADrCm46ISa0Cj2zvViURrQGKGdNuyd2tAtINRkYmra0A4Mwmad99rQEQAK1XmEmxAfhyHk0BFbEDmLedH9HVsQJPLsC50pGxAe/+kZznQbEA8Sxj9xPhsQMlsNFShHW1AFroXgmM+bUCbn/SBrFptQCC4rUgqcm1AEBDPspiEbUAoUTJKwpFtQDSQEOGAmW1A" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "nVSOcDHWY8AXfu+8l/9jwD2kQPtoKWTA5kIR4CtTZMBwIZBJZ3xkwKTZ5Z6jpGTAtYIbK2zLZMBfSZ9vUPBkwOQOkWrlEmXAvJkkzcYyZcDeDJUemE9lwE24XcgFaWXA4UKuCMZ+ZcCP61rImZBlwEpW3FFNnmXAoBZM57inZcDF66o1waxlwBpRIqRXrWXAv39bfnqpZcCmEXH5NKFlwCbvbBOflGXA4NGwTd2DZcBDOBNDIG9lwOTr4xqkVmXA/ghx2q86ZcBJnwaXlBtlwGByvoqs+WTArwjKDlrVZMDvJS5+Bq9kwHYiKwQhh2TAqITIWR1eZMAQKyt2cjRkwJOlgzWZCmTAeqR9+grhY8C5VClOQLhjwHnsW4KvkGPA9oN9WstqY8CJsqe+AUdjwOF72ny6JWPADj3kG1YHY8CE8mXDLOxiwFL0HzyN1GLAsdZsC7zAYsANRoGs8rBiwMJcselepWLA/A6fVyKeYsAq7dLzUZtiwMTD2ef1nGLA37GXcQmjYsDRYhXxeq1iwG9inxssvGLAB0OjU/LOYsDiuUskl+ViwO4ndd/Y/2LAD2UwXGsdY8BzNqvT+D1jwLys/dkiYWPASL4KcIOGY8AQtlkrrq1jwJ1UjnAx1mPA" + }, + "y": { + "dtype": "f8", + "bdata": "aW6CZd9ba0A2qe6e1F9rQD75YuhNXmtAcf4qr09Xa0DihPc77kprQC+xCHhNOWtA6DgEhaAia0AnyaUoKQdrQI/L9w0352pA4Oc93ibDakBQiS80YZtqQJz/jWxZcGpARE+GV4xCakAzR6nOfhJqQHn1kzO84GlAhzKm29StaUCr7VttXHppQPmPBzToRmlAdbLHbg0UaUAjOaCfX+JoQN99nt9usmhAHZXhPMaEaEARBkMn6lloQL3iMfBWMmhAs30aYn8OaEABrXBzy+5nQFhhIhmX02dA2T7dOzG9Z0BE4izT2qtnQHu2CSnGn2dA0vH6RxaZZ0C61HKV3pdnQED6i5kinGdAherK9NWlZ0DDpQGE3LRnQKcO7bEKyWdA8Xif9SXiZ0ALrkl85f9nQMrtdfzyIWhATjpQsOtHaEAU+CV0YXFoQPLe3QXcnWhAApfJYdrMaEBeOt041P1oQE1JD3w7MGlAwj9m+H1jaUBzmgj/BpdpQF9EgRRBymlAhn9Vopf8aUBeogKmeC1qQNKJgVhWXGpAWlCDyaiIakBbdr5p77FqQKrH1H+y12pAK1+Yg4T5akDBf8BbAxdrQAC6dHrZL2tAHAd11b5Da0B7DA+3eVJrQGlugmXfW2tA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "/DQVmeviYsBviGhtfQtjwC95YS/tM2PAFwHglMVbY8BPQM0Kk4JjwOJGVwTlp2PAaQlnQU/LY8Cbk50Ia+xjwI+4SVHYCmTA5P712T4mZMCS0GYoTz5kwA5nInDDUmTAP8flXGBjZMAAj7u+9W9kwJ5rwRVfeGTAPs4G/IN8ZMCOyFFsWHxkwETM/OTcd2TAnCuIZh5vZMDUgeNNNmJkwKVn3ApKUWTAM9eHs4o8ZMCiN+F1NCRkwH0LPOmNCGTATpKCQefpY8BGRpNmmchjwLL8X/IEpWPAq6i6GJF/Y8BMfvx7qlhjwGq+6/HBMGPAvCVyPEsIY8BeUtm5u99iwAgJWxCJt2LAttDg2CeQYsC2uNBMCmpiwGNDvPqeRWLAYXiyhU8jYsCdRtdyfwNiwHz5uAiL5mHAEw6pQ8bMYcDYwSDie7ZhwB7184vso2HA6zrHFk6VYcDqDunpyophwKkfU4OBhGHA5G44H4SCYcCJ0iCD2IRhwMBBK+13i2HA+nynJ0+WYcDuNs7APqVhwCIg9mUbuGHAJ0c9Ya7OYcCsTzo4tuhhwIkz6WnnBWLAVqmsSe0lYsA58uj0akhiwFupb2D8bGLAohqvejeTYsAfbFtfrbpiwPw0FZnr4mLA" + }, + "y": { + "dtype": "f8", + "bdata": "vIhzv9CMcEADd4pXn4xwQGv6MaqpiXBAX4UeTfiDcEDqDoTDm3twQBa5ME6scHBAa6ozpUljcECKJ9ybmlNwQBzKG7DMQXBAInyShhMucEBz9cJUqBhwQIM5IjvJAXBAMM/GIXHTb0B1HxVHeKFvQLRk6dg4bm9AcGNAfUc6b0D+6i7eOgZvQKQj3vSp0m5AWXyiUyqgbkATaiN0Tm9uQLhffg6kQG5AiVg1frIUbkBmS5E5+ettQB5X61/uxm1AsgoNY/2lbUCgmInPhYltQLrtlzfacW1AsY+RQz9fbUD89szq6lFtQLQIFdcDSm1A67mD9KBHbUB5JgUvyUptQL31Q15zU21AK0k5YIZhbUDuKBNi2XRtQKz6nVY0jW1AxovZmFCqbUDKGeK42cttQCf92nBu8W1Aio8Uv6EabkAL6Toi/EZuQCtX+PP8dW5AXBwe3hunbkAfFxlmytluQG1DN4p1DW9AHlwPbIdBb0C9yTUDaXVvQMD3UdODqG9AsV2doEPab0BBEu0ODAVwQHwhcUe7G3BAWoCIre0wcEBy0nvFZURwQMQShRbrVXBAZ6OczkplcED99uFVWHJwQKBB9M/tfHBANQPEieyEcECB4Z5SPYpwQLyIc7/QjHBA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "//wmEqs0VsDf1qAU1oVWwKuD4xf91lbAKrFMuDQnV8Dv/5VIlHVXwJ7+unQ4wVfAUIBb1UUJWMD4tCFs60xYwHwW9gFli1jAGdMiYP3DWMAA4PNdEPZYwIcV37wMIVnAUDPPzXVEWcCUzcva5F9ZwFYg5VAKc1nAUaMDp659WcBQ4v3+sn9ZwCpcIX8ReVnAd7QqY91pWcBY/3vEQlJZwJH4MhqGMlnAyyuScgMLWcBBFP1nLdxYwKqzjdSLpljAWdMHSLpqWMDc6KBEZilYwHJquUdN41fAml47pDqZV8BMZtg0BUxXwP7l1eyM/FbA0PN2TrirVsCCOGDOcVpWwNseiSulCVbA1eFuwzy6VcAA5UjqHm1VwKwk8k4rI1XAD5YZcjjdVMBtZRM4EZxUwGvDV5xyYFTAIUNajQkrVMCuw+/2cPxTwFDV8QAw1VPAMQM3h7i1U8BsH1HPZZ5TwCmBz397j1PAFhwF3CSJU8DjnItGdItTwJyH7wtjllPARgYgdtGpU8AFB2ooh8VTwHnd88Iz6VPAKTXfy28UVMCkHG3bvUZUwAWUvQeMf1TAA4oLjDW+VMAlp5mmBAJVwImk5ac0SlXAzv0oLfSVVcD9M7B/Z+RVwP78JhKrNFbA" + }, + "y": { + "dtype": "f8", + "bdata": "kXMTjGiMcEDtqTyxe4xwQDO2Wl2ciXBAx3dO5dKDcEASTzcSMHtwQC31wvDMb3BAWPuEiMphcECcsih8UVFwQHZfk5ORPnBAM5tMMcEpcECG4r60HBNwQKPBM5bL9W9A2NCkYcXCb0AgT9HLuo1vQJsMh65FV29AHYkf/wMgb0D3F1QEluhuQDHiWIWcsW5ANT6D97Z7bkDTDMSvgUduQOawMx2UFW5A8OjSEX/mbUDUnHoey7ptQE0NvQb3km1A9V81UXZvbUAiC3D4r1BtQP4XOED9Nm1A3aCrsqgibUClkAZI7RNtQEfElrv1Cm1ArrDJD9wHbUCKEbtCqQptQPN0HzRVE21ASUzWvMYhbUAWJN/30zVtQBlk3rtCT21ABR7RQ8ltbUAglQYFD5FtQA3Y8q+tuG1AVX3xWDLkbUBHu5vFHhNuQKv86trqRG5A/fABKAZ5bkCp/CKJ2a5uQPjMFN7I5W5AbHf9zjQdb0DVmJKafFRvQNbWYej/im9AqkXpmSDAb0AgpjqVRPNvQGeV+8HrEXBAp6DJQKYocEBqLQHajz1wQOeoFOVrUHBAgA3hrQNhcEB7CVoTJ29wQMk1JBOtenBAQW+IQHSDcEClS2clY4lwQJFzE4xojHBA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "J63cRC4pVsCVyGaLE3tWwNao+YRWzlbAkZW+rwUiV8C81wxQLnVXwHnrejDfxlfAdsCDXSsWWMC6p9LULGJYwHJfbCAHqljAaRUm1unsWMAnjiv0EipZwPL3uhPRYFnAUii2a4WQWcCSuDSdpbhZwOcU30S92FnA61OGTG/wWcDwniX5dv9ZwN3+PbKoBVrADkxKgPICWsCyd9xAXPdZwDcFzY8H41nApuC+ZS/GWcBaVRJtJ6FZwMpKNw9bdFnAPrAePUxAWcDNyVL2kQVZwCOd+5LWxFjAteXF1dV+WMBIvEXLWjRYwOOkAH095lfAYFfLfmCVV8Do3JRdrkJXwG5KEfcW71bA5nT5wYybVsCPtMEOAklWwMSnv0hm+FXAzqO1P6OqVcDJJqKBmmBVwNJvgswiG1XAmOpxnwXbVMBTIzXy/KBUwDeHzxmxbVTAm49A4LZBVMCDlfDUjR1UwDQfsdqeAVTA/t2B9zruU8BnzoxpmuNTwOgoAwTc4VPAeVS01QTpU8B8MmIaAPlTwMRR/XafEVTAJlEagJsyVMCGbxqJlFtUwBForrkTjFTA+aiOZozDVMB+AYGpXQFVwM1GDDTURFXAsjqQVyyNVcBdId08lNlVwCet3EQuKVbA" + }, + "y": { + "dtype": "f8", + "bdata": "RPjfYcA2a0DUunUU1ztrQGIw3NYSO2tAwqNJ4nU0a0BrgUxlEyhrQGneJ0wPFmtAmvSg2J3+akC2z2sKA+JqQHzT7tmRwGpAgzSZR6uaakBAc4ZCvXBqQN31nmlBQ2pAdqvSqrsSakCN9mzEuN9pQHfX16zMqmlAXndu5ZB0aUAh8Tu9oj1pQK3XsYihBmlAMPmB0yzQaEDZ39eR4ppoQHZhMFZdZ2hAzioAkTI2aEAXwD3f8AdoQJc8uGwe3WdAHq3qbje2Z0Bp2rS8rJNnQLaHDofidWdAnYFqNi9dZ0C+bxRw2klnQN1kYEYcPGdAuPUGlhw0Z0D3loWS8jFnQFmi0oKkNWdAXzYoryc/Z0BTwBqAYE5nQGcEoc4iY2dAjYAlZDJ9Z0B8sS2pQ5xnQAChnID8v2dAcMIUTfXnZ0AB9IIduhNoQCHlav3LQmhAu2slZaJ0aECBqeTFrKhoQNtTAS1U3mhAKebQ+fwUaUA1ww6hCExpQC/runjXgmlAPWI4h8q4aUA092tQRe1pQBHmoZuvH2pAdsUVLXdPakCsDBxuEXxqQPzgHv/8pGpA5CrgLsPJakCZe8BS+elqQEkoJPxBBWtANy51B04ba0Bmy6+B3StrQET432HANmtA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "Wvlwoeb8VcAYNj8evE5WwM7S0IUjpFbA6CaLHyX8VsCQXnimwVVXwCSEtS31r1fAcdFhEroJWMATb4TyC2JYwGFjT6Dqt1jAP/4wCV0KWcBJbUgIdFhZwNLtDRxNoVnATZpS9xTkWcAHJSbmCSBawLm9sP99VFrA/2+jHtmAWsDzz4eamqRawLzl7rxav1rAKuVE7svQWsCCHuGWu9hawMFYxbES11rAHO5iD9bLWsDD/qNHJrdawOU6YVs/mVrAiHxWBnhyWsCwBY/DQENawGAbI4ciDFrA41T5ML3NWcBR3Qu9xYhZwBa9cjYEPlnA/tslc1HuWMD5xQmflJpYwPeEZ53AQ1jAnn5oSNHqV8Cy15GWyJBXwJRKhq6rNlfA98eI8X/dVsD+ClUFSIZWwFM35eUAMlbAbJqkB5/hVcCoA2CSC5ZVwB1k/LwhUFXA/1WdUawQVcAX4W9hY9hUwJGhwy7qp1TAYvF+U81/VMCNo0spgWBUwJo/G3hgSlTAPqPVbqs9VMCg0C3phjpUwLPouAT8QFTAqmt9BvhQVMDkcEeRTGpUwFtAJCywjFTAiDl/F7+3VMDj4HVu/OpUwJ7bG5HTJVXAixGU05lnVcCthRxtkK9VwFr5cKHm/FXA" + }, + "y": { + "dtype": "f8", + "bdata": "0WpiNtE3Y0AZSQQK7ERjQN7iFqJBTGNAgYV8uLxNY0B1IaIBWUljQECy9DgjP2NA9QLz+zgvY0Dx7UZ0yBljQNxB39EP/2JAaK6OllzfYkAl7Tq1CrtiQD0/KIeDkmJAs9lmmjxmYkDAlthctjZiQA/1q6d6BGJA2OqELxvQYUAaUtvdL5phQFLOWBhVY2FAaUM0+yksYUDssa6LTvVgQPkf7Odhv2BAEN9qeQCLYEB/5lMvwlhgQJk2yMU4KWBA0BhTPtz5X0BvClFoxahfQCaJQD4YYF9AcvvwjacgX0A7odZaK+teQLqHS8g+wF5AG+SRV16gXkAIEbF+5oteQOawRJwSg15AuN1HS/yFXkAo5s8Ym5ReQGMFjpzErl5AOgDR8yzUXkBk3aGdZwRfQLpEfbXoPl9AYaMYiQaDX0CrHJqE+89fQKHH1zd0EmBAoDGDemtAYEA+DGc2XnFgQB6LFnG+pGBAlSFyJffZYECBLubzbRBhQBjFMOKER2FAesWbJZx+YUAWJXryE7VhQEUDqEtO6mFAXB7NzLAdYkD7cDBqpk5iQGICCiGhfGJAPO9skxunYkBu4B6Lms1iQPve+l6u72JAUeTSNvQMY0BetSQqFyVjQNFqYjbRN2NA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "CxShW4wWUsAdQvFiq2ZSwNH4pU2etVLAWstRHIACU8DqEkHOcUxTwOxoUOicklPAS1ML4zXUU8BaoAZ5fhBUwDwUxs7HRlTAIJXsbXR2VMAxsvcN+p5UwOW6WSXjv1TA2vhmPtDYVMB0KTkMeelUwN4TZjyt8VTAHvEoA1XxVMA2GWhgcehUwPzAzhwc11TAsDEDf4e9VMAmaNK5/ZtUwDkZ+BTgclTA6l3z0qVCVMC4exrX2gtUwL4p2Q8ez1PA8UCyqR+NU8Cp/T0Qn0ZTwCYK78Jo/FLAwc/oA1SvUsBZk59nQGBSwKppVUwTEFLAixPNQLW/UcDdhLxhD3BRwKyuo7UIIlHAK8+wjoPWUMC9+0n6Wo5QwNEErEVgSlDA9KvRnlgLUMB2Ngix9aNPwKQgH7DaPU/Ah8k8ZYjlTsAYzWT//ptOwEbCNMsTYk7AoAwzyG44TsDQ/oPBiB9OwG28iu+pF07AUCNuJukgTsAQWuGTKztOwNMU8AwlZk7Amufs6lihTsAF0gB1G+xOwOlHQ9KTRU/ApvO1fr6sT8CQ4wEeOBBQwCP6vbqsT1DAk5O5BgWUUMCg0YHEetxQwJOVCcc7KFHA0HpLU2x2UcANjqKdKcZRwAsUoVuMFlLA" + }, + "y": { + "dtype": "f8", + "bdata": "BSeWBfwgc0AFWFIHCh9zQCgwHXgbGnNAQ/4epj4Sc0BdlbFfigdzQLWuObEd+nJAmvEXix/qckD82bZQvtdyQGAZ/VEvw3JAnLqqMK6sckBRkWEzfJRyQJupTojfenJA4uiZeSJgckDzU+qVkkRyQGgBcM9/KHJA9DwAlDsMckBmeeTgF/BxQEcpCVVm1HFAyUw+RHe5cUAGajjOmJ9xQI3C9fsVh3FAcw8Z5jVwcUBNELHmOltxQPQVw9hhSHFAM8fGZ+E3cUCIHxNx6SlxQBudCHmiHnFA9VGLNS0WcUAcuyEvohBxQFqSy3kRDnFAEgNfhoIOcUCah/MM9BFxQD8JmRBcGHFAD3xQ/KchcUAD7vHYvC1xQA6zY5t3PHFAQ88/iq1NcUDNycC5LGFxQDh0jpy8dnFAFqXGpx6OcUCKGmYID6dxQC9TA2hFwXFAvLugvnXccUALlzUvUfhxQIbybeyGFHJAHyUKI8UwckBBBzbnuUxyQK52JyIUaHJAUupSfYSCckCM2otIvptyQJ59dVh4s3JAaKO+2m3JckBTFsEdX91yQP97QUkS73JA+NM3BlT+ckBR6bkT+ApzQNPFV8fZFHNAQNR1d9wbc0AkNnDO6x9zQAUnlgX8IHNA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "X7GEnSO7UsA9iRensAxTwCGi7IY7X1PAIfUs0dSxU8A+HjHwjANUwNmrcNt2U1TA1v8Kx6qgVMA2gh/ESOpUwFv0Vkp7L1XARNxBo3lvVcARgIcwiqlVwO/FTIYE3VXAmkq5U1MJVsCVsBEU9i1WwOjnfoOCSlbANChJ06VeVsDnkAiaJWpWwLy+En3gbFbA3uU5kc5mVsC70cRxAVhWwAMrXQ2kQFbASyWIKfogVsDyyBKeX/lVwEkJrEpHylXAu1yxyTmUVcDPUPTj01dVwANl9snEFVXAmkLCF8zOVMDiQCSpt4NUwDJLjkRhNVTAByBrI6zkU8C2IglfgpJTwAh5lEnSP1PAmQTSuovtUsCfTXBYnZxSwIhC0OHxTVLAoqAdh20CUsD4Cm5T67pRwJ2kZrE6eFHAVxObER07UcCS/Xa5QwRRwOd+DcFN1FDAUgaiRcarUMCoIiXWIotQwDypNx7CclDAskaR0+piUMCe+eboyltQwF1fpAh3XVDAZGf6WOpnUMBAS/GJBntQwH37VC2UllDA5/l8V0O6UMCjRR2HrOVQwEPyf9FRGFHAE5bAT6BRUcDVLObI8ZBRwPN9B5SO1VHA5ocDra8eUsDNvcT1gGtSwF6xhJ0ju1LA" + }, + "y": { + "dtype": "f8", + "bdata": "NFkvGFECbUCayVZQ1wVtQM3XzidiA21ABnGEv/j6bEBDOpp9s+xsQFEio8a72GxAsiWShUu/bEBYhbuDrKBsQO64zpI3fWxAxec1i1NVbEATLcYhdClsQHbuIZgY+mtA97+aS8rHa0B1fcEmG5NrQKZMKPqjXGtArS0iwQIla0BuyoXX2OxqQJ2tpCXJtGpA8XPER3Z9akCnkXS2gEdqQMLGGPWEE2pAPlzuyxniaUBS+LCSzrNpQCKg05ApiWlA9OUDeKZiaUCIAWH9tEBpQNyBd5W3I2lA0G6tVgIMaUD7MVsF2vloQG68VExz7WhAd3klJPLmaEBiKrpqaeZoQFVOp6za62hAJtKqIDb3aEDHEHbVWghpQLFTOxEXH2lAoKrp4Sg7aUATvnTcPlxpQEnJ/Qj5gWlAV7sw+emraUCOFK4FmNlpQBPR6K5+CmpAs9t4HRA+akDwRoe9tnNqQMPuqvDWqmpASA9L0dDiakDUiGoCAhtrQI6LmobHUmtAr6S+mH+Ja0CE4UaBi75rQB8Aj2JR8WtA9FQr9z0hbECI3RQ9xk1sQN9z3QhpdmxA+ptafLCabECYKohcM7psQKIaw0KW1GxAFTnnpYzpbEDgqU642fhsQDRZLxhRAm1A" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "+8Fzu/0lZMCNeSgdsk9kwIZP1c7aeWTA019hh/2jZMD6IgcPoM1kwK4v1aFJ9mTAdHf4TYQdZcDP8tdJ3kJlwN9sIT7rZWXAORgKgEWGZcAiaTM4j6NlwA/Y3HJzvWXAoAZNFqfTZcAei6e86eVlwDCJt24G9GXA9kmRPdT9ZcDkNE25NgNmwCXGg0MeBGbAD0KbPIgAZsB3vWMLf/hlwIRo6/4Z7GXAQJ/iCn3bZcD92lNf2MZlwKn+3dxnrmXA2mkGZ3KSZcADmJoWSXNlwNO1dU5GUWXAKHlUtcwsZcCPr68XRgZlwO6A2zQi3mTAR4bletW0ZMDE4N2014pkwLriXq+iYGTAGihD17A2ZMCe3IrWew1kwAsydjN75WPApKHU9SK/Y8Byk3ZW4ppjwLigkXwieWPALDK/TEVaY8BcKwpNpD5jwJU/Q6GPJmPAbiKNIk0SY8BE08KUFwJjwGWsA/wd9mLAip9TFIPuYsAfMNvsXOtiwCNn66e07GLAa1h/YIbyYsBREog1wfxiwJIz4npHC2PApCRnD+8dY8BTTyDXgTRjwCbhOVi+TmPAqtrteFhsY8AijEBc+oxjwBE8DltFsGPARZGXFtPVY8C5ZnChNv1jwPvBc7v9JWTA" + }, + "y": { + "dtype": "f8", + "bdata": "5R+0H6DLakBY/+kK8s9qQDSeH6/IzmpAHE7YaifIakB13yN5IbxqQH3i1rnZqmpAMb9iTIKUakBODXP+W3lqQB3g9Y+1WWpAQT2wzuo1akCfS/WLYw5qQKGbhG+S42lA5f34qvO1aUC0i4yRC4ZpQN7ERhhlVGlA/A/uQpAhaUCLtk2CIO5oQEcDjAirumhACvxoGMWHaED79ExUAlZoQIDGDhLzJWhAm8BLuCL4Z0CatA8qFs1nQB7qYUVKpWdAhQYVeTKBZ0D9dPR1N2FnQHx9Gv+1RWdA2Nff3P0uZ0BLLHH1UB1nQCm/qY3iEGdA67ZdtNYJZ0DyVMPZQQhnQG5/KpQoDGdAA5Gukn8VZ0AVBgm+KyRnQBrTJYcCOGdA1XaVYspQZ0AMuHZvO25nQKrp80cAkGdAq/f2+La1Z0ABwUUe8t5nQEOozh86C2hA/ACNjA46aEAbKReP52poQAyunXc3nWhAo6vkVmzQaEBqVI+l8QNpQP/V8fIxN2lAi/iHlphpaUCRLSdfk5ppQDJWCTuUyWlA20ji0xL2aUC0zVQajh9qQKcDTLyNRWpASFn7gaNnakAdzJCNbIVqQB8g+nmSnmpAUEJ9VcyyakAu90x138FqQOUftB+gy2pA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "M51N0+OLZMAhlV9vzLRkwIc/oyKn3WTAs3/GbP0FZcCwoIhNWi1lwJ9OGZhLU2XAGCtFPmN3ZcCZY6+POJllwLxZemlpuGXAtJPuUpvUZcDiTOaDfO1lwKB6BNLEAmbAnjUHgjYUZsDsX9b6niFmwAApR1jXKmbAarzq28QvZsA05qA6WTBmwFarDcaSLGbAlpR5cXwkZsAjhw6yLRhmwOJLzTrKB2bAQCEBlYHzZcBasV2WjttlwFldV7Y2wGXA1d2kRMmhZcAgqzKDnoBlwE50I6YWXWXAMTDEvJg3ZcASLp2GkRBlwNY6Azhy6GTAFsu7Ma+/ZMCNmGyvvpZkwNPUqXAXbmTAZ66FYC9GZMBIO4g/eh9kwEfg71No+mPAxBIIJGXXY8AwEEc+1rZjwHYwuxIamWPAH0Ie4YZ+Y8CHeqm+aWdjwDSff7YFVGPAUu81B5NEY8Bb3a9/PjljwIzNJv0oMmPAItbWC2cvY8D6AGWrADFjwOruqzfxNmPAcCgydidBY8BtDyPIhU9jwNx+OYDiYWPAZuOiWwh4Y8AiKHwct5FjwKlcKESkrmPABJdk63vOY8AoUaa14fBjwOdYAt1xFWTA3D+TU8I7ZMCE3Rf3Y2NkwDOdTdPji2TA" + }, + "y": { + "dtype": "f8", + "bdata": "cw1SZSgCcEA19zaPTAJwQNjQa61h/29AcY0smbn0b0BsubTKv+RvQNxX1piiz29AhsPHQZ+1b0DxvH85AZdvQHHf2U4hdG9AsE3+qWRNb0ChwvemOyNvQAIZy48g9m5AM5zBOZbGbkC4/+qJJpVuQA+9I+VgYm5AEAEokNgubkBClmkEI/ttQMXSfz7Wx21AYh8bC4eVbUDL/GlXx2RtQD1v04kkNm1AkYzS5yUKbUCS05gNS+FsQIdj6XsKvGxAtrVeQNCabECf2/+7/H1sQFRZsovjZWxAh3uzlcpSbEC8oNg+6URsQJ+M4slnPGxAMdK14l45bEBzD8tW1ztsQHiMpvvJQ2xAQE2hwx9RbEAdTMcAsmNsQNDnCNVKe2xAghh6zqWXbECXNtqtcLhsQNF4JFVM3WxA+i91280FbUArfiPDfzFtQOUQjE7jX21AQ1+w73GQbUDoGoDOnsJtQGvEYGHY9W1AFGpSE4opbkCLGunyHV1uQOH3OGX+j25A3mPH15fBbkBWlpZsWvFuQNMIcpu7Hm9AFU/BwzdJb0CC1lOqU3BvQHge0t6dk29ABJ/HBLCyb0Cf9or8L81vQAIrp+jQ4m9Adb7PDFTzb0Cr59iDif5vQHMNUmUoAnBA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "eRml3UNkY8DBiADILI1jwJcEj2D1tWPAMcqBWyfeY8DKmukhTgVkwA455CP4KmTAOc0BIrhOZMBFvyZqJnBkwHjiUgTijmTA84Ply5GqZMCBhi5y5cJkwCiNXmeW12TAaIwyp2joZMCYGAlnK/VkwO5/aKO5/WTA5S9bi/oBZcA8/WrI4QFlwKSEaqJv/WTA5tak/rD0ZMCqzHU6v+dkwPqAt+G/1mTAh1naQeTBZMDlgOPaaKlkwJef8K+UjWTAjdY9ebhuZMDTbgO6LU1kwG1e0rxVKWTA0bxgeZgDZMBRs/hmY9xjwH2h9D4otGPACXDhsluLY8DI3wMadGJjwEmeFhroOWPAj8UkTy0SY8CNAGf2tutiwMPSAKD0xmLA5I9n61CkYsC5oh1SMIRiwE8yQwTwZmLAKHpJ2uRMYsAS3NheWjZiwN+Bs/ORI2LAgB4QFMIUYsCC45K2FQpiwCsKr9CrA2LA5Wfa/JYBYsDThZdE3QNiwNm/8g54CmLAKjalM1QVYsB2D6YyUiRiwEPeiI9GN2LApiOgT/pNYsAOEnaZK2hiwJoAzXOOhWLAuor9oc2lYsBgKjObi8hiwEgruplj7WLAhwZMv+oTY8BwUApLsTtjwHkZpd1DZGPA" + }, + "y": { + "dtype": "f8", + "bdata": "iVmYCAZ8cEC3WdZO4XtwQLbl4D/4eHBANG/STFNzcEDQ0dzUAmtwQF1rzPUeYHBAsX8URsdScECSzi95IkNwQA4eX+9dMXBApVQLMq0dcEAp50heSQhwQAhnXP7g4m9ABZq6s8myb0AdcZZa2IBvQO9N5M+dTW9AavNyq64Zb0Am7umQoeVuQLWG2HoNsm5An6DIBIh/bkC0w0u5o05uQDkE7WjuH25AMrLYju/zbUCI8+LHJsttQMwjYWAKpm1ArKAH/QWFbUCyTK9ieWhtQENtjGC3UG1AUqH83wQ+bUC+paQcmDBtQMyuIQeYKG1AC58W1BsmbUByudy4KiltQGgLm9a7MW1AcDQBVLY/bUDp6Vql8VJtQMYmKwI2a21A2ub5Bj2IbUCaGn+BsqltQLqe2mQ1z21ATtcU41j4bUAsabeopSRuQJGn6jabU25AucYrWLGEbkClvmKrWbduQMnj3UAB625AgVGFRBIfb0Bq63Gw9VJvQC5l+wIVhm9AtrNG89u3b0AQo2IfuudvQBF/iVeSCnBArsRF88sfcECfVEVSTDNwQOmwv+PaRHBAX1/XukRUcECoaVAiXWFwQEU1Ph7+a3BAao4w2gh0cECxUqACZnlwQIlZmAgGfHBA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "EBZlXI7uVsDXIIRlNkJXwBLWpLR0mFfAMmXTIU/wV8DWmbrZxkhYwE1PyEDboFjAPz9924z3WMB2O3kz4EtZwHha3rDgnFnACnHHX6PpWcCh/ceZSTFawNHGvIsDc1rAf++bkBKuWsCs/m9ay+FawLnjOeOXDVvAIrcYIPkwW8CdA8lxiEtbwE28Ts74XFvA/XlqoBdlW8Dp1lFazWNbwCJWAbodWVvAqKthvidFW8As4V9NJShbwL8e/YtqAlvAEzY96mTUWsCy4LflmZ5awKxuZYalYVrA9AAKmjgeWsAqD2CzFtVZwCq90fITh1nAq24unxI1WcBsTFWVAOBYwCd7RJbUiFjA8j5ee4swWMCoEwBZJdhXwCQLu5eigFfAt++XDAErV8C9bdQYOdhWwFDacNk6iVbAvU24bus+VsCcO6djIvpVwCpCuDynu1XAeKIsNS+EVcAz/14xW1RVwMQmFey1LFXAA44aZLINVcChqrKOqvdUwAqtqlLe6lTAknP/znLnVMDJVzHvce1UwBUmfk7K/FTAdLVUak8VVcCdyG8jujZVwKq9IYypYFXAwqt6AaSSVcDIbxmMGMxVwJNIqIRgDFbAelpBd8FSVsCQ+0BAb55WwBAWZVyO7lbA" + }, + "y": { + "dtype": "f8", + "bdata": "NoE5eU2aZkB/qOZJG6RmQOJMm4UVqGZAzEzfojCmZkA4ESYgcp5mQO8G33PwkGZAOQJOy9J9ZkCBieiYUGVmQP2igfOwR2ZAsKQWyEklZkBMIJPgfv5lQADYXsLA02VApEv9Z4ulZUAGjXHZZHRlQGdveafbQGVAKboHToULZUB006yC/NRkQJON13PfnWRAnLcD/s1mZEBJSAncZzBkQDkczddK+2NAoyWTABHIY0CdliHsTpdjQFsvxQeSaWNAnsoY/l4/Y0AcCTY2MBljQCpIq3B092JApLU8ho3aYkDiTRRMz8JiQGP8l6B+sGJAKDCno9CjYkDTToMc6pxiQIT7IQ/fm2JAfp8egrKgYkBgmvN1VqtiQA+PlA2su2JAvgf054PRYkCdxnCpnuxiQNoknLOtDGNAGHJECVQxY0Ad4S1cJ1pjQJSna0GxhmNAS+3aiHC2Y0AAQNuz2uhjQGijBYddHWRAMAhVsmBTZEDo2/GKR4pkQCk7n9FywWRAAayjgEL4ZEB0kvGbFy5lQAELTf5VYmVAK5I1HmaUZUA0w3HFtsNlQJg9Qra+72VAiPh1Of4XZkDdWt2QADxmQJaS6UldW2ZADfihbLl1ZkBTu4CDyIpmQDaBOXlNmmZA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "4Rbrbd31aMBkxB2KsB9pwBSW5Ou/SWnAdiKSk5FzacC4SYQ0rJxpwI7t+pSYxGnAicrq5+LqacDXW+EcHA9qwIOCKyLbMGrAPYOYFb5PasBBXmVga2tqwDn5GLuSg2rAZVxfFu6XasCql0BmQqhqwOPeZU1gtGrAFxV8piS8asB7RyXqeL9qwGxmUXBTvmrAWLFAjLe4asAWl96Cta5qwLoEkVtqoGrAzQMFjP+NasAp4+x/qndqwES7DP6rXWrAzcBWbE9AasCPYjj16R9qwEyNkpDZ/GnAgZ0p84PXacBYlqNnVbBpwOFObJS/h2nAvK4OMjheacCBKL+1NzRpwA7g9fM3CmnAvvENv7LgaMDy2uqFILhowH3ypPb2kGjA2DAyqadraMBcXunVnkhowDNcmxtCKGjACgfRWO8KaMAErISb+/BnwN3RbCqy2mfA+u6jqlPIZ8AjYCZkFbpnwM2BRqcgsGfAQjLXVJKqZ8BQU2iKeqlnwAJCiHPcrGfAbtqRQK60Z8BksyFD2cBnwK8G4C860WfAenLghKHlZ8Aqom4T1P1nwNIruKuLGWjAj7Vh6Hc4aMDl4LgXP1powDeV3j9/fmjACgj3Os+kaMDIMyfov8xowOEW623d9WjA" + }, + "y": { + "dtype": "f8", + "bdata": "aKUA9lE0a0AY8SPlMDdrQJiETNe1NGtANi6B/ucsa0DhPq393R9rQFjm96a9DWtAZ1EQjrv2akDuvaxvGttqQP7d9m8qu2pAQwYXMkiXakDqaYDL229qQJfICZZXRWpAqkA+5DYYakCvWaib/OhpQN/VJLkxuGlAHpOKw2OGaUAMAygxI1RpQOfxvMQBImlAVQaw5pDwaEAwUUr/X8BoQDlMwNb6kWhAHdK+/+dlaECxGRRRpzxoQBDr4HKwFmhAgJ2Fg3H0Z0DLlTnYTdZnQGC969ycvGdAwKuvFqmnZ0AiBZdLr5dnQOIEatLdjGdAsoM+DFSHZ0CTV3MJIodnQP8OGFtIjGdAKS5IEbiWZ0DQsn7mUqZnQMcyZJfrumdAiOUYZkbUZ0A0yH3HGfJnQMo6hjgPFGhA9lYnOcQ5aED3JA1qy2JoQHv22MmtjmhAlrZQDuy8aEAd8pUVAO1oQDOoNWteHmlAimGo3HdQaUAFRa0Yu4JpQKRjy1SWtGlAlp8y9HjlaUBPljEr1RRqQKjff5ohQmpA6qaz3dpsakAx2l4IhZRqQEZ8gg2tuGpAYXtFDerYakCRFSeF3vRqQMhxOl85DGtA0bFY3bYea0D+SJ9dISxrQGilAPZRNGtA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "FwIBrjQHacBb1cyDtDBpwBN9CKlrWmnAwH32HeGDacA6bmKhnKxpwL38bw0o1GnAfopNrhD6acDxV+iO6B1qwNg43bdHP2rAVrMIXc1dasC31Ev2IHlqwEFXV0DzkGrAQT+UIv+kasDiEI93CrVqwABKoLXmwGrADevodXHIasAAhRvYlMtqwLFc8MFHymrAPJaM+Y3EasDj0o8aeLpqwPAB6GUjrGrAJx/3bLmZasD0/QCZb4NqwETbPpCGaWrAehRaeklMasCk7m0mDSxqwKG8CBUvCWrAz+v1aBTkacCuouPBKL1pwFzWNgTdlGnAvlGXEaZracArfOl1+0FpwNE9jQxWGGnA9MvPoS7vaMChLYmU/MZowLLK3Xs0oGjAM1QQ1UZ7aMB58Ti9nlhowBsclLqgOGjA2FrumKkbaMBCm3pcDQJowLbkH04W7GfAKEEBJATaZ8A+2LBIC8xnwAJEJkNUwmfApB4xQfu8Z8DvwbzFD7xnwMtM0nuUv2fAzm/bLn/HZ8BeczzouNNnwMSa7zEe5GfARrFgfX/4Z8BaaF6toRBowLNpkcE+LGjA3sOHoQZLaMDSvgcFoGxowNQ4CHepkGjAoGFfcLq2aMAt4vOGZN5owBcCAa40B2nA" + }, + "y": { + "dtype": "f8", + "bdata": "qtbAvhcja0CDqu8dvSVrQJbo12AII2tA3v/RYAEba0CWVpBmvw1rQFTMleZo+2pAaemqETPkakAiRZU6YchqQAWm0BJEqGpAu0aAwDiEakDTJj/Qp1xqQPUZ3wUEMmpANzKGD8kEakAjFfAeetVpQAfN42ygpGlA/N8tq8lyaUBjLKFphkBpQOmrxnJoDmlA9F38JAHdaEAF8s3M36xoQJY8TgWQfmhAXhcnI5hSaEBZO/audyloQF1BYfOlA2hAXcYRo5DhZ0CNWIWamsNnQGUbTMEaqmdAeOT1DVuVZ0A3+oivl4VnQEO88F7+emdAbY5e2q11Z0BQtB2MtXVnQF7E3F0Ve2dAGmTuuL2FZ0C4kYCzj5VnQPxTR2pdqmdAhbqWherDZ0DvG2ro7OFnQM3iXIcNBGhARl4lZekpaEC5P7WxElNoQJvvvggSf2hAONQDzGetaEBGDX+Vjd1oQD3xOr33DmlAmo1m7hZBaUBLLxTHWXNpQMQM630upWlARukEiQTWaUCyIi1BTgVqQAcbwXyCMmpAdDWKHR5dakC3Zg+NpYRqQJszDyOmqGpAG1MScrfIakCWTFJ2fORqQFB7haOk+2pA1eWBzuwNa0DoOhHwHxtrQKrWwL4XI2tA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "2LozhhxkZsADHzg2XoxmwOnUhMPbs2bATX6DoiLaZsDSiMXMw/5mwEPIDQNVIWfAHRh+AXJBZ8DFHmuivV5nwBChiuzieGfAbLdsCZaPZ8AN+nQhlaJnwBqX1RqpsWfASF5iOaa8Z8BdLGydbMNnwAbBNKDoxWfAf9TuDBPEZ8B6F6U18b1nwEl8y+OUs2fAqoynJBylZ8AWciXysJJnwAuHFrmIfGfAwZo6vuNiZ8CMY9VjDEZnwCPX7FFWJmfAhDqigx0EZ8CWvmU8xd9mwGOICui2uWbA/Uj+6GCSZsDOVxtYNWpmwBwEtrmoQWbA8Q6lqzAZZsBUmhmQQvFlwFMbJDlSymXAbebBmNCkZcCbx0F5KoFlwEDmtUHHX2XAJkAGygdBZcCnsglCRSVlwLxZ1C7QDGXAs6Epge/3ZMBTfbfH3+ZkwKeZb3/S2WTAbg38g+3QZMC54O+hSsxkwGvw8Uv3y2TAVDy7c/TPZMBExFmHNthkwMPlv5Kl5GTAhOI+hR31ZMA2CCOabgllwL4LQuNdIWXAH7Pp86U8ZcBwAD+q91plwIXFxRT7e2XARdt2cVCfZcA8FoFDkcRlwKNSj3xR62XAoFM1tiATZsATWPZ3iztmwNi6M4YcZGbA" + }, + "y": { + "dtype": "f8", + "bdata": "kXff+1Gwc0CM/LfDzq1zQChZTC2XqHNAD92XWrqgc0AIbPYZT5ZzQPvZ/aNziXNAyVDVQ016c0C7AgnrB2lzQG/tE7LVVXNA2WMRR+5Ac0Cb2DtMjipzQONdDaj2EnNAIv3/yGv6ckCE7g/fNOFyQLZtPw2bx3JAPhlzleitckAlMA4BaJRyQFZvv0hje3JAqanx/SJjckADdE547UtyQGdwtQkGNnJAPQn4OqwhckDa/48TGw9yQGhYZ26I/nFArEWiXSTwcUA0LzCfGORxQCxCuCOI2nFAkr1AqY7TcUCo8LZqQM9xQINTQeWpzXFAIu4FtM/OcUC7IM6CrtJxQAOOrhc72XFAUCWXc2LicUBU2WwJCu5xQJIwDQsQ/HFAAk1cy0sMckBSAEE0jh5yQGKzOE+iMnJAUPn23k1IckAxNVMIUl9yQOBUmghsd3JA/Msz91WQckB4IGiQx6lyQP/d/AZ3w3JAAPNF2hndckCdiz+uZfZyQMiYPSMRD3NAe2a/qtQmc0DP7v1Waz1zQJTh2qKTUnNAvHPsLxBmc0ALuH54qHdzQHMvhnMph3NA+gWoKGaUc0AKm6oyOJ9zQFz70y6Ap3NAjkPzFyatc0An3AyMGbBzQJF33/tRsHNA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "zW5FcFz7ecDSoXn9Vg96wOr4T9n1InrAM2KRGgA2esBhbxCHPkh6wDpI2jN8WXrAoLS0HodpesCZBiy/MHh6wFQmjI1OhXrAOkA9frqQesCwQh5wU5p6wKAUnYz9oXrA5sl1mKKnesAWny40Mqt6wMexlQuirHrABrW28+2resBAu/H2F6l6wPgEEE8opHrAQ/9nTS2desDCplUxO5R6wP7Ef+1riXrAvmGU3N58esBrt1ZmuG56wAl2BpYhX3rAcZ9So0dOesA7TjFvWzx6wP7VGPaQKXrAG3k1uR4WesA8FVEgPQJ6wNBXN9Yl7nnA9AlxIRPaecCxoDs7P8Z5wOdcp6bjsnnAOdbFiTigecDBz8wKdI55wPW8BbPJfXnAvYpR2WluecDqRPIVgWB5wHhKMcE3VHnA+0FZfrFJecD0PVfUDEF5wMPmLtViOnnAI4BC1cY1ecBXt0EzRjN5wLbaYTHoMnnA3/ZP4K00ecBx6xkckjh5wF9tF5uJPnnAVLenDoNGecBs8GRVZ1B5wJusO74ZXHnA8uujW3hpecC5MwpmXHh5wM1OS6yaiHnAynD8EASaecAXWBQTZqx5wKwJaWCLv3nAkT1ZcDzTecA54OAkQOd5wM1uRXBc+3nA" + }, + "y": { + "dtype": "f8", + "bdata": "FdGY1LWvcUCsXjomYa1xQMohSOhbqHFAllW1qrSgcUCUMnKggZZxQBIaCF/giXFAkuvJiPV6cUBIa5Fi7GlxQPzwPVb2VnFADGlgY0pCcUDIY7R/JCxxQL/rNOnEFHFAL5rFa2/8cEDQZ4ycauNwQJGfNg3/yXBA+Ml6eXawcEAAHjrxGpdwQCHQrQE2fnBA+FsP4A9mcEAQmiaY7k5wQOQkHUEVOXBA+F/kOsMkcEAvlmJ2MxJwQHlhfMqbAXBABYHUr1jmb0Akpj77Hc5vQNlPrL7Num9As8VH/5+sb0B6vnLdvaNvQDDwex1BoG9AF+7h3DOib0ANHvx0kKlvQIHfXotBtm9A3VjLTyLIb0A1RPfm/t5vQJYB9wCV+m9AcdLKTEoNcEA0izZwUB9wQGqIDqMoM3BAqg3KVZlIcEDnZf1XZF9wQPxgvIxHd3BAMXVeqv2PcEDbSHgDP6lwQJeyw1bCwnBAbyOboz3ccECaKKAAZ/VwQFJoHnL1DXFALkG9vaElcUDlAho5JzxxQAx885BEUXFAPyelhrxkcUCWXMyhVnZxQCFBFNTfhXFAVllNDSuTcUDTMCO+EZ5xQC/19Ed0pnFAmJiMWDqscUAZdaowU69xQBXRmNS1r3FA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "ZiHdvBdtcsBSkAgzfYFywOB4k7yhlXLA0emH7EqpcsA5Vrm7P7xywIywLi5JznLAIu+e8jLfcsC5XzH6y+5ywC+fyQbn/HLAH3dCLlsJc8DH/BpRBBRzwCm2PYPDHHPAwdqxZX8jc8DJhjJwJChzwGFs1imlKnPAcq0jUPoqc8BXhR7sIilzwDeuFVUkJXPAFWQkIQofc8BI9ZYD5hZzwFlbk5nPDHPAuMeaJeQAc8CF0Ko6RvNywMJp9Fcd5HLAuo1LdpXTcsDU4ZuI3sFywNhL1PArr3LAF+Hc6rObcsCTfEfvrodywJVGgw9Xc3LAakpuTedecsCopi3wmkpywGrLPNisNnLAwICm1FYjcsDFD1f70BBywEzsbQZR/3HAxb1muAnvccAFzt1IKuBxwFrtmtvd0nHApA1wA0vHccDch1ZSk71xwLmUD/jStXHAsmhicCCwccBOGOVBjKxxwEduDc4gq3HA/LwUM+KrccB9AQZAzq5xwKr9GHvcs3HA99lHOv66ccCQ/9fNHsRxwN/KWrwjz3HAfAt4D+3bccB0lKOwVepxwLTzsNQz+nHAb0cNdVkLcsBCkT/VlB1ywN9LLBOxMHLAJ9B5wHZEcsB3nFiDrFhywGYh3bwXbXLA" + }, + "y": { + "dtype": "f8", + "bdata": "TGbRYrBUc0CHqnwyNVNzQPKtFAkiT3NA7jdguIJIc0DvCsZ1aj9zQK6QlaLzM3NA8VGCfz8mc0AnLDDMdRZzQFYJ6FPEBHNA6oXDaF7xckDCzNBOfNxyQF1x3phaxnJAzKrIeDmvckAqkEUFXJdyQLxuTHcHf3JALqtMYYJmckADk3riE05yQAfeg9gCNnJAzD8CEpUeckABQgCEDghyQMq324Sw8nFA5InBDrnecUDlkOgLYsxxQK/tlK7gu3FAoCLL1mStcUAmfXKHGKFxQCWaeWwfl3FAVXpec5aPcUDvREZ3k4pxQOMZmAEliHFAotXSH1KIcUAXFBhPGotxQBfJp311kHFAQSFIIlSYcUBax1Vpn6JxQEbY+XY5r3FA1njFvf29cUD01rdowc5xQIcOe9dT4XFAYJVvK3/1cUCfEe3jCAtyQNJg84eyIXJAmZtfWzo5ckCTepcdXFFyQCkPgs/RaXJAnJSPflSCckAucYMSnZpyQOt+qxtlsnJApHYun2fJckCR4SDfYd9yQB03HBwU9HJAiqAmTkIHc0AbDdPStBhzQESGoA45KHNA47DE/6E1c0D+s7fAyEBzQNvbBvmMSXNA/rgmO9VPc0B3mDROj1NzQExm0WKwVHNA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "YZ2+DITK6MDSU5Yzu8rowPJqhfrwyujAzsKPxSTL6MBQa3r+VcvowJdlfxaEy+jANMTrh67L6MA1eaPX1MvowAxthpb2y+jAl9KyYhPM6MBWEaHoKszowE4OFuQ8zOjA0BTpIEnM6MAUIZt7T8zowOHVveFPzOjAi/IoUkrM6MBBrv3cPszowO3ud6MtzOjAVeON1xbM6MAoGF+7+svowDSsdKDZy+jAO9DU5rPL6MBCQOz7icvowFfeUFlcy+jAYAdhgyvL6MDuoMMH+MrowLM5zXvCyujAdeTOeovK6MDItVOkU8rowFb/UZobyujA/4ZV/+PJ6MB/DKh0rcnowBd1fZh4yejAS+ooBEbJ6MClHmBKFsnowIXCkfXpyOjASvtThsHI6MCKae9xncjowCn4CiF+yOjAGE987mPI6MAtWkAmT8jowFngngRAyOjAiKp7tTbI6MBFNddTM8jowIpegOk1yOjAvfL3bj7I6MCAa4bLTMjowDahg9VgyOjAPp/PUnrI6MCEPHv5mMjowEaPnnC8yOjAFM5aUeTI6MAIsgQoEMnowLn4c3U/yejAvjh0sHHJ6MDo2lJHpsnowOu1haHcyejAi4JlIRTK6MAMJfclTMrowGGdvgyEyujA" + }, + "y": { + "dtype": "f8", + "bdata": "CmLkFjUUxEDMMggjEBTEQMkXqWvME8RA7rwxtWoTxEDMpg4b7BLEQGkaeAxSEsRAi/ZISJ4RxED+j+7X0hDEQF9AgAnyD8RAcsoPaf4OxECd+EW5+g3EQLDjYOvpDMRAUxurFs8LxEBucYRvrQrEQANqFj6ICcRAiEXP1GIIxEBlQr+GQAfEQJoI9J0kBsRAzjfuURIFxEBZxEy+DATEQLIzydkWA8RAIN6ebTMCxEAaJXYNZQHEQAsP6w+uAMRAa/bEhxAAxECA+PI9jv/DQGmVXqwo/8NA2YWj+eD+w0D4Mbn1t/7DQB14lxeu/sNADJnde8P+w0CsMn/k9/7DQPg5eLlK/8NAMuqFCrv/w0BUqt+RRwDEQF0D6LfuAMRAgvLKl64BxEDqMfwEhQLEQM6IhZFvA8RApNgSlWsExEB/dqc0dgXEQLt05mqMBsRA/dbVEKsHxEDZRQPnzgjEQLy87570CcRA4t6m5BgLxEBdIWZoOAzEQHPKN+hPDcRAuOllOVwOxECJ4KlRWg/EQBDW/U9HEMRA44L2hCARxEBkG4164xHEQGHBQvuNEsRATMiIGB4TxEBONlswkhPEQE9B/fHoE8RAEwvKYSEUxEA3iw7cOhTEQApi5BY1FMRA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "olJ6E0w9ZsDuGAlqaGZmwGjoU1n4jmbAyLTlOYa2ZsDfzs1Qn9xmwM+4aBzVAGfA0JLolL4iZ8AcZftc+UFnwLydG98qXmfASS5PVAF3Z8BgK1uxNIxnwP7nu3eHnWfA2moDaMeqZ8AB3pgTzrNnwOU3MkyBuGfA8sXEb9O4Z8DUUxCQw7RnwGQ8UnVdrGfArY8YfLmfZ8DnbphO/I5nwM2UVHpWemfAFYRI4wNiZ8Ao2jAWS0ZnwOSn6Ht8J2fANmAtcPEFZ8Cu4G0+C+JmwE1ilAcyvGbAPOb9k9OUZsAIMQsVYmxmwBr55tlSQ2bAxwdC+xwaZsCVROABOPFlwJCr4IsayWXAb96t9DiiZcA+Sn0DBH1lwEfWL6TnWWXAqvRIrkk5ZcBfEIi9iBtlwCEufR/7AGXAJ7o02e3pZMAunNDHo9ZkwLuQlt5Ux2TAjFSmhC28ZMBPXS4UTrVkwHqzlHzKsmTAeh6kCKq0ZMDwW2VJ57pkwB684SVwxWTAr2yhDybUZMAZL01b3uZkwBxlcrxi/WTAQ3UC43EXZcCescQ4wDRlwKBAlbz4VGXAVhf1+L13ZcBT2B8Tq5xlwBZJle9Uw2XA0tbFaEvrZcAMCF2UGhRmwKJSehNMPWbA" + }, + "y": { + "dtype": "f8", + "bdata": "ALIIUQNTb0BYD960rk9vQF6/zuv8Rm9AU5/tLQc5b0DaQin59SVvQN622JsADm9AYxNQlGzxbkC1K07HjNBuQLEJjI/Aq25AWp4nqXKDbkBG6Av8F1huQBSQ2EguKm5AxY0gvDr6bUCk1yFsyMhtQHqMVsVmlm1Azclx6qdjbUC8234MHzFtQNlE8L9e/2xA1P50U/fObEBRL2UtdaBsQK9thDRfdGxANda2SDVLbEC65BfQbiVsQCTyplx5A2xA/OB1brfla0BF1PNVf8xrQPaokDkauGtAqWOPQcOoa0AqA2/spp5rQDhu243imWtAEtWc+YOaa0CnQ3xbiaBrQPG5kTzhq2tAO2fstWq8a0DeGALQ9dFrQBgL0Q1E7GtAm4sgIgkLbEDpsNLM6y1sQC8yxd2GVGxAu3lSWmp+bEDVnB/CHKtsQKMZiW8c2mxAZx6wD+EKbUAjleUt3TxtQEIC+M1/b21ASxe+EDaibUANKRrebNRtQFfZoo+SBW5AGmUblxg1bkBSLvIbdWJuQNUhFoskjW5AHDmbFKu0bkCGG9sSlthuQGkxAFd9+G5APpc2VwQUb0ALaRY72ypvQLPWPMO/PG9AKDx0CX5Jb0Dx3z0X8VBvQACyCFEDU29A" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "MMojFYAD5ECXdayNSQPkQMZdwFQTA+RAl0SmB94C5EDC5/hAqgLkQHeP5pZ4AuRAwXF9mUkC5EBA2gnRHQLkQC3Sirz1AeRAbcNB0NEB5EAhQ2F0sgHkQNPV3gOYAeRA6hlry4IB5ECgVZMIcwHkQL7tDuloAeRA9Mo6imQB5EBuLsT4ZQHkQLTsgzBtAeRAfXmKHHoB5EB4oVyXjAHkQPtBYGukAeRANMN3U8EB5EDbkcr74gHkQP5SuAIJAuRAXxD0+TIC5EAWKMRnYALkQHNfY8iQAuRA/xh/j8MC5ED9WM4p+ALkQNL7vP4tA+RAK0cmcmQD5EAs0hnmmgPkQPqipbzQA+RAy1CgWQUE5ECs+W0kOATkQB7quoloBORAkvIm/ZUE5EBHk9z6vwTkQH5hDwnmBORA2FBduQcF5EAf4A6qJAXkQM+IMoc8BeRAOjuQC08F5EAFJXIBXAXkQKh7QENjBeRABYfuu2QF5EDTrzdnYAXkQMrgq1FWBeRAkxaLmEYF5EBJiHBpMQXkQItezgEXBeRA2ng7rvcE5EBGRpXJ0wTkQLM1+LurBORASrqR+X8E5ED0T08BUQTkQFBRblsfBORAEsvwl+sD5EACx/tMtgPkQDDKIxWAA+RA" + }, + "y": { + "dtype": "f8", + "bdata": "Ls52H2vKusD35LYjdsq6wJqqSty7yrrAutr2fjvLusCu4YOZ88u6wOG07xXizLrA8cF6QATOusDBZ37PVs+6wI899uzV0LrA8H6gQX3SusCTVpUBSNS6wG2CMPow1rrAaPYkoTLYusB4wo4kR9q6wEuf1Hto3LrAqiooeZDeusApEHLbuOC6wOchdmDb4rrAsML61vHkusBk+b4w9ua6wHsUC5Ti6LrAxuqobLHqusCfgBJ8Xey6wF4hqOjh7brA/s3BSzrvusCmMnO+YvC6wBsc3eRX8brA0Zjr9xbyusApg2TNnfK6wEUWL97q8rrAkVbCSv3yusCKc63d1PK6wBHKMgxy8rrAr8Xz9NXxusBWe7FcAvG6wChpK6n577rAdDwr2r7uusCUydGAVe26wGlxPrXB67rA7fauCgjqusAXNzqCLei6wDBBTHw35rrA3ekNqSvkusBEFeX3D+K6wHKTPYbq37rAX37MjcHdusD0i4FSm9u6wJe0WhB+2brAveRO6W/XusA7LYTTdtW6wPMKBYiY07rADu4mctrRusCWJtKfQdC6wLPO2LLSzrrAkziH05HNusDe2JSkgsy6wOqnmDioy7rATJAfCQXLusCExH7vmsq6wC7Odh9ryrrA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "LZUF6scpz0DOa/sUCCnPQLy3PjxMKM9A1c+sgJYnz0CPJWfx6CbPQJFI2oVFJs9Ap60JGK4lz0B5xDBfJCXPQBjwyOqpJM9A1dECHkAkz0BGB8Ar6CPPQNcHGROjI89A0Dd5nHEjz0AJk1lXVCPPQHKFoJhLI89AnqireVcjz0CJMAbYdyPPQAndzFWsI89ACU6+WvQjz0CgpPQVTyTPQANwQ4C7JM9A2AgzXzglz0CttJBIxCXPQOM7iaZdJs9ArwpCvAInz0DmhuOqsSfPQNL7BXdoKM9AYF9xDiUpz0CrQx9O5SnPQP2HbQinKs9A5s5vC2grz0DYZU0nJizPQKgmmTTfLM9AqeyQGpEtz0AdfjLVOS7PQPtFFHvXLs9ArujwQmgvz0ArntWI6i/PQDpK5NJcMM9AtIWb1b0wz0CXLZh3DDHPQN+SxdRHMc9AtAvzQG8xz0ABZ8dJgjHPQMWZDLiAMc9AAuRPkGoxz0DXnNQSQDHPQA3M2boBMc9Ata00PbAwz0DULESGTDDPQIFGQ7fXL89AFRoCI1Mvz0DwJw9KwC7PQEXhW9YgLs9AdCxplnYtz0B03Ql4wyzPQKFVyoIJLM9Al4UN0korz0A/ZPCOiSrPQC2VBerHKc9A" + }, + "y": { + "dtype": "f8", + "bdata": "i6o4diDO2cABRkatLc7ZwCYdBNZHztnAxryRpG7O2cCpJ1+ooc7ZwLdVc03gztnABGkZ3inP2cDSu++Efc/ZwMDOUk/az9nA5xMdMD/Q2cB4nbMCq9DZwHXXVo4c0dnAsq6tiZLR2cDU3YCeC9LZwGuNm22G0tnA8wfGkgHT2cDg9s6oe9PZwMBzl03z09nAOjAWJmfU2cCQEUbi1dTZwO/X9EA+1dnAa8ZmE5/V2cBjvcRA99XZwDHUSslF1tnAdjcuyYnW2cAH5DF7wtbZwBXC4jrv1tnACqV0hg/X2cCeyDoAI9fZwP2Gt28p19nABTRAwiLX2cAsQjMLD9fZwCEUwIPu1tnAEB5BisHW2cClNyqhiNbZwKY4jm1E1tnAtilAtfXV2cAMdpVcndXZwHyez2M81dnA6+405NPU2cAcouAMZdTZwFuyUx/x09nAG03Qa3nT2cCMeopN/9LZwCAGuSaE0tnARBGSXAnS2cBW9D5TkNHZwD8r02ka0dnAOAJS9qjQ2cBxjM5BPdDZwBoisYTYz9nAZzYt43vP2cADyvFpKM/ZwE4UHgvfztnA8DeDm6DO2cDU9zrQbc7ZwBFrmjxHztnAX6OGUC3O2cC5HTBXIM7ZwIuqOHYgztnA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "qV3Fyqql5MAK85up2qXkwA/XOnUJpuTAkynmpTam5MAKCoq4YabkwBvLNjCKpuTA6FWLl6+m5MDnoQmC0abkwMNlUY3vpuTAc3A9Ygmn5MDgbuC1HqfkwOhAXkovp+TAW2ef7zqn5MB6gtyDQafkwGZMAPRCp+TAQ/PeOz+n5MB/MkJmNqfkwDoIyowop+TAcWGi1xWn5MChlA59/qbkwNP8y8DipuTAj31N88Km5MCzKdJwn6bkwPyxWaB4puTAX6N58k6m5MDA1xbgIqbkwEHMBun0peTATNacksWl5MDRaidmlaXkwH7ZYe9kpeTAG//eujSl5MCyhnFUBaXkwCpYlkXXpOTAxczlE6uk5MAuLpA/gaTkwCfk6UFapOTAQ4cLjDak5MCC1YmFFqTkwFRASYv6o+TAeHtw7uKj5MA+Gn3zz6PkwPflfNHBo+TAwC1usbij5MDq3sittKPkwNa+MdK1o+TA/qRYG7yj5MAaFwJ3x6PkwIorPMTXo+TAlRi+0+yj5MBZW3FoBqTkwJfoIjgkpOTAYGVa7EWk5MBo91Qja6TkwHnVIHGTpOTAhGHWYL6k5MAoQOt166TkwBKWmy0apeTAgFNlAEql5MCaQZFjeqXkwKldxcqqpeTA" + }, + "y": { + "dtype": "f8", + "bdata": "ZWzEGrWw08CDVk+Aw7DTwJ4ryqvesNPAq/plTgax08DmsCv1ObHTwBCRSQp5sdPAocPF1sKx08BgE5GEFrLTwAXT8yBzstPA2+JNn9ey08Bd3CHcQrPTwLSPYqCzs9PAvz75pCi008CUXHqWoLTTwJUR/hgatdPAdlwRzJO108AUYbRODLbTwN9PWkOCttPA60vfU/S208C70mg1YbfTwENnJazHt9PAgKDgjia408CNOmHKfLjTwL1lh2TJuNPAKUgifwu508A/eXRaQrnTwAsqYFdtudPA/aw0+Yu508BvIhjnnbnTwPMwCe2iudPAyd11/Jq508D3z2UshrnTwH2DN7lkudPATy7xAze508APUyeR/bjTwNIxfAe5uNPAWXK8LWq408C8gZ7oEbjTwBcsKzixt9PAc/bWNEm308AUo1QM27bTwK4XKv5nttPA348RWPG108AqnDFyeLXTwDjlNqv+tNPA3gJbZIW008A67WP9DbTTwMSjp9CZs9PA4JkfLyqz08DUSpdcwLLTwDkIAYxdstPAGKf72wKy08AuIpNTsbHTwMecRd9psdPARWtVTi2x08AW529Q/LDTwNDdr3PXsNPAdGEBI7+w08CEpeuks7DTwGVsxBq1sNPA" + }, + "type": "scatter" + }, + { + "hoverinfo": "skip", + "legendgroup": "Ellipsen", + "line": { + "color": "red", + "width": 1.5 + }, + "mode": "lines", + "name": "Ellipsen (×1000)", + "showlegend": false, + "x": { + "dtype": "f8", + "bdata": "FLX7htN16kApvx28onXqQCu46B1zdepACVN7NkV16kApi/uKGXXqQDJvFJrwdOpAt7eG2sp06kBpU9C5qHTqQPrP7pqKdOpA1zhA1XB06kCarIWzW3TqQESICnNLdOpAIp3yQkB06kAcdbFDOnTqQAEyrIY5dOpA2hgHDj506kCeW5/MR3TqQEgzMaZWdOpA0dupb2p06kA4hKTvgnTqQDzIEN+fdOpA5NAA6sB06kDyxZyw5XTqQB3OOMgNdepAvXeKvDh16kBrCPoQZnXqQCvhC0KVdepA897dxsV16kBCZbQS93XqQCuTkpYodupAzwLZwll26kA5YOYIinbqQEYftdy4dupAnaBxtuV26kCiKwQUEHfqQKNGino3d+pAwia7d1t36kCsLTOje3fqQKqzop+Xd+pAvq/cG6936kC5LMLTwXfqQGHgB5HPd+pAd6fTK9h36kDeHTCL23fqQIkDVaXZd+pATZzDf9J36kApuDYvxnfqQHCSZte0d+pAMDahqp536kBhlDjpg3fqQA/zx+Bkd+pAtdJS60F36kCp1j9uG3fqQPGlMtnxdupAoBnIpMV26kABZDhRl3bqQE4n42RndupAtrLJajZ26kBE0PvwBHbqQBS1+4bTdepA" + }, + "y": { + "dtype": "f8", + "bdata": "nd3ZzrEk2EALj/z1oSTYQP0P3hSFJNhAKLpCf1sk2EDvAsmtJSTYQNqdizzkI9hAhLFc6Zcj2EA/QJ+RQSPYQI4BxS/iIthADvN32Hoi2EDQ23e3DCLYQO7ZNAyZIdhAMtQwJiEh2EBUTzJhpiDYQKitUyEqINhAG0f6zq0f2ECaDcHSMh/YQPGVYpG6HthAKl+uZ0Ye2ECXEZWm1x3YQFAsV49vHdhA2TPhTw8d2EDV8F//txzYQPKqFptqHNhA1oyAAygc2EDgg8X58BvYQGD8iR3GG9hAXtMf66cb2EARvR26lhvYQPc1YbySG9hAgd99/Zsb2EDP65tishvYQOv5xarVG9hArYClbwUc2EC9pasmQRzYQLIjoyKIHNhAlrGmldkc2ECAOnaTNB3YQA8hJBSYHdhABMsS9wIe2ECJyDkGdB7YQOMaqfnpHthAGWpAe2Mf2ECOYo8q3x/YQBn806BbINhAYBULddcg2EAmmQdAUSHYQC1QhKDHIdhAypEkPzki2ED9NljSpCLYQDqHFyIJI9hAF0psC2Uj2EC6vL2DtyPYQADb1Zv/I9hAXTmXgjwk2ED+kluHbSTYQKks9BuSJNhASD5G1qkk2EDFtn5xtCTYQJ3d2c6xJNhA" + }, + "type": "scatter" + }, + { + "hoverinfo": "text", + "hovertext": [ + "Punkt 0645
E=-50770.0587 m
N=10258.9140 m
U=-179.1696 m", + "Punkt 0656
E=-177.6876 m
N=235.6959 m
U=34.3682 m", + "Punkt 0995
E=40987.1448 m
N=-6878.7003 m
U=-96.8296 m", + "Punkt 10001
E=-433.8645 m
N=183.8925 m
U=9.7203 m", + "Punkt 10002
E=-444.7390 m
N=229.2097 m
U=9.4150 m", + "Punkt 10003
E=-435.5873 m
N=260.4467 m
U=9.5671 m", + "Punkt 10004
E=-450.9821 m
N=310.5141 m
U=9.3110 m", + "Punkt 10005
E=-441.5114 m
N=321.1252 m
U=9.5376 m", + "Punkt 10006
E=-452.1203 m
N=357.6498 m
U=9.3968 m", + "Punkt 10007
E=-410.7894 m
N=268.7457 m
U=9.7379 m", + "Punkt 10008
E=-416.0129 m
N=329.1409 m
U=9.5491 m", + "Punkt 10009
E=-420.1620 m
N=350.7908 m
U=9.8214 m", + "Punkt 10010
E=-391.6044 m
N=356.7477 m
U=9.7423 m", + "Punkt 10011
E=-346.2790 m
N=176.3496 m
U=9.6431 m", + "Punkt 10012
E=-367.9614 m
N=232.5230 m
U=9.7163 m", + "Punkt 10013
E=-345.9883 m
N=233.5130 m
U=9.6222 m", + "Punkt 10014
E=-358.7829 m
N=249.6446 m
U=9.7194 m", + "Punkt 10015
E=-377.5536 m
N=252.1698 m
U=9.8057 m", + "Punkt 10016
E=-380.4653 m
N=268.9156 m
U=9.8778 m", + "Punkt 10017
E=-337.6811 m
N=263.2198 m
U=9.7920 m", + "Punkt 10018
E=-362.3982 m
N=347.1660 m
U=10.0742 m", + "Punkt 10019
E=-332.5234 m
N=293.7775 m
U=9.7983 m", + "Punkt 10020
E=-328.8973 m
N=315.4801 m
U=10.1586 m", + "Punkt 10021
E=-328.6819 m
N=323.7598 m
U=10.1717 m", + "Punkt 10022
E=-321.0816 m
N=319.3799 m
U=10.0395 m", + "Punkt 10023
E=-315.1457 m
N=315.2970 m
U=10.1631 m", + "Punkt 10024
E=-305.1054 m
N=323.5352 m
U=10.1236 m", + "Punkt 10025
E=-290.7386 m
N=319.2674 m
U=10.2364 m", + "Punkt 10026
E=-331.7551 m
N=352.2832 m
U=10.1206 m", + "Punkt 10027
E=-285.8754 m
N=339.3137 m
U=10.1494 m", + "Punkt 10028
E=-270.6567 m
N=169.3202 m
U=9.6177 m", + "Punkt 10029
E=-258.1977 m
N=223.3178 m
U=9.3714 m", + "Punkt 10030
E=-271.9662 m
N=225.3766 m
U=9.4000 m", + "Punkt 10031
E=-291.8355 m
N=258.9762 m
U=9.6856 m", + "Punkt 10032
E=-279.0232 m
N=274.1700 m
U=9.5511 m", + "Punkt 10033
E=-291.6018 m
N=286.4203 m
U=9.6785 m", + "Punkt 10034
E=-213.7569 m
N=163.5787 m
U=9.5656 m", + "Punkt 10035
E=-212.1749 m
N=214.2639 m
U=9.9036 m", + "Punkt 10036
E=-199.7680 m
N=250.9934 m
U=9.8278 m", + "Punkt 10037
E=-206.4707 m
N=270.4144 m
U=9.8190 m", + "Punkt 10038
E=-238.0384 m
N=268.9180 m
U=9.9127 m", + "Punkt 10039
E=-252.5244 m
N=274.3192 m
U=9.9198 m", + "Punkt 10040
E=-207.9122 m
N=295.9435 m
U=9.9899 m", + "Punkt 10041
E=-237.8105 m
N=304.7580 m
U=10.3098 m", + "Punkt 10042
E=-223.9892 m
N=326.4053 m
U=10.1766 m", + "Punkt 10043
E=-240.0383 m
N=344.0350 m
U=10.1361 m", + "Punkt 10044
E=-202.0365 m
N=330.5748 m
U=10.3666 m", + "Punkt 10045
E=-159.6180 m
N=159.1645 m
U=9.5508 m", + "Punkt 10046
E=-161.1395 m
N=203.8691 m
U=9.3632 m", + "Punkt 10047
E=-153.8438 m
N=221.6118 m
U=9.4245 m", + "Punkt 10048
E=-151.9920 m
N=249.5275 m
U=9.6144 m", + "Punkt 10049
E=-144.7918 m
N=276.6563 m
U=9.8206 m", + "Punkt 10050
E=-150.4233 m
N=303.0722 m
U=9.9879 m", + "Punkt 10051
E=-174.0200 m
N=307.1844 m
U=10.1086 m", + "Punkt 10052
E=-174.9210 m
N=336.8348 m
U=10.1085 m", + "Punkt 10053
E=-142.7373 m
N=325.4307 m
U=10.0983 m", + "Punkt 10054
E=-94.1534 m
N=138.2386 m
U=9.5356 m", + "Punkt 10055
E=-91.8068 m
N=201.7209 m
U=9.2830 m", + "Punkt 10056
E=-77.5657 m
N=215.6839 m
U=9.2559 m", + "Punkt 10057
E=-90.0697 m
N=248.5233 m
U=9.5956 m", + "Punkt 10058
E=-71.9876 m
N=289.4655 m
U=9.6948 m", + "Punkt 10059
E=-79.8908 m
N=328.0230 m
U=9.8556 m", + "Punkt 1675
E=15956.8112 m
N=-26442.5640 m
U=-36.1452 m", + "Punkt 666
E=-96.6021 m
N=165.0585 m
U=9.6125 m", + "Punkt 812
E=-163.7436 m
N=199.3798 m
U=9.7175 m", + "Punkt 816
E=-165.5001 m
N=240.9768 m
U=9.7124 m", + "Punkt ESTE
E=-42283.8681 m
N=-20180.6694 m
U=-135.7788 m", + "Punkt FH11
E=-201.6397 m
N=202.9649 m
U=9.7825 m", + "Punkt FH13
E=-414.9830 m
N=267.9995 m
U=10.2531 m", + "Punkt FH14
E=-202.1179 m
N=202.4182 m
U=9.8366 m", + "Punkt FH15
E=-294.6941 m
N=294.8936 m
U=10.4430 m", + "Punkt FH3
E=-156.0635 m
N=248.4798 m
U=10.4274 m", + "Punkt FH4
E=-178.2734 m
N=299.9442 m
U=10.4420 m", + "Punkt GNA2
E=54192.3247 m
N=24704.5587 m
U=-254.2116 m" + ], + "marker": { + "color": "black", + "size": 8 + }, + "mode": "markers+text", + "name": "Netzpunkte", + "text": [ + "0645", + "0656", + "0995", + "10001", + "10002", + "10003", + "10004", + "10005", + "10006", + "10007", + "10008", + "10009", + "10010", + "10011", + "10012", + "10013", + "10014", + "10015", + "10016", + "10017", + "10018", + "10019", + "10020", + "10021", + "10022", + "10023", + "10024", + "10025", + "10026", + "10027", + "10028", + "10029", + "10030", + "10031", + "10032", + "10033", + "10034", + "10035", + "10036", + "10037", + "10038", + "10039", + "10040", + "10041", + "10042", + "10043", + "10044", + "10045", + "10046", + "10047", + "10048", + "10049", + "10050", + "10051", + "10052", + "10053", + "10054", + "10055", + "10056", + "10057", + "10058", + "10059", + "1675", + "666", + "812", + "816", + "ESTE", + "FH11", + "FH13", + "FH14", + "FH15", + "FH3", + "FH4", + "GNA2" + ], + "textposition": "top center", + "x": [ + -50770.05868912979, + -177.68758213714906, + 40987.14475242994, + -433.8645479975819, + -444.7390333247924, + -435.5872518484344, + -450.9820618720451, + -441.51142715738723, + -452.12027234359056, + -410.789428596095, + -416.01293761258756, + -420.16200293656857, + -391.6044095798096, + -346.27899564659725, + -367.96143095711767, + -345.98825179516734, + -358.782869111985, + -377.5536373478154, + -380.4653368425429, + -337.6811093499919, + -362.39815484415146, + -332.5234357900165, + -328.89731292502245, + -328.6818541431988, + -321.0815920608002, + -315.14574865196255, + -305.10537793394934, + -290.73858167881536, + -331.75506596424225, + -285.87542424599815, + -270.65669262785707, + -258.1977054890761, + -271.96624983312864, + -291.8354629412489, + -279.02316877523407, + -291.6017824139326, + -213.75685485376738, + -212.17488649242205, + -199.76797181231274, + -206.47074325683008, + -238.0383948252539, + -252.52439335286124, + -207.91219428651013, + -237.81047974010292, + -223.9891910783257, + -240.03825990418605, + -202.03647820194982, + -159.61795976164115, + -161.1394666625376, + -153.84377298142158, + -151.99198281488697, + -144.79175755935458, + -150.4233281741907, + -174.02001420596523, + -174.92098531618865, + -142.73729137682972, + -94.15336530504511, + -91.80684565358028, + -77.56566344042652, + -90.06966055105865, + -71.98755381403251, + -79.89076048041814, + 15956.811248472934, + -96.60213751234593, + -163.74360696682288, + -165.5000997867287, + -42283.86809325304, + -201.6396503647304, + -414.98299577748975, + -202.11793201838967, + -294.6941160136795, + -156.06351554190206, + -178.27339441800706, + 54192.32468256466 + ], + "y": [ + 10258.913972110307, + 235.69589868626093, + -6878.700315901237, + 183.8924770122804, + 229.20972216423704, + 260.44667379669994, + 310.5141435446614, + 321.1251602489893, + 357.64977743493023, + 268.74571889109444, + 329.1409467952837, + 350.7907509338832, + 356.74772868211835, + 176.3495598178734, + 232.5229570390016, + 233.51303476069197, + 249.64459906857965, + 252.16980251003608, + 268.9155630911593, + 263.21980786798633, + 347.16604166087524, + 293.7774500615618, + 315.48008590100574, + 323.75984407225997, + 319.3798803978522, + 315.29700711663065, + 323.535219144854, + 319.26741162901953, + 352.28315312547585, + 339.3136931268799, + 169.32016360849502, + 223.31778966202364, + 225.3765595708624, + 258.97618350915224, + 274.16999172191623, + 286.4202879280776, + 163.57870888154466, + 214.26386988273063, + 250.9934191667397, + 270.4143750740704, + 268.91802835014585, + 274.31922718174684, + 295.94347733111357, + 304.75795641905216, + 326.4052717945616, + 344.0349790848408, + 330.5748275330297, + 159.16447175525335, + 203.86910624292852, + 221.61182490136002, + 249.52749999636643, + 276.6563324910618, + 303.072238869132, + 307.18441630869097, + 336.8347617095979, + 325.43068655275226, + 138.23855367050317, + 201.72089593314308, + 215.6839315745106, + 248.52327233073666, + 289.4655368398485, + 328.02295526836434, + -26442.56404128442, + 165.05847680908929, + 199.37980872606502, + 240.9768148982843, + -20180.669365569538, + 202.96487838656364, + 267.99952369795295, + 202.41817821325733, + 294.8935984343935, + 248.47977798016697, + 299.94424611936336, + 24704.558737468447 + ], + "type": "scatter" + } + ], + "layout": { + "template": { + "data": { + "barpolar": [ + { + "marker": { + "line": { + "color": "white", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "barpolar" + } + ], + "bar": [ + { + "error_x": { + "color": "#2a3f5f" + }, + "error_y": { + "color": "#2a3f5f" + }, + "marker": { + "line": { + "color": "white", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "bar" + } + ], + "carpet": [ + { + "aaxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "#C8D4E3", + "linecolor": "#C8D4E3", + "minorgridcolor": "#C8D4E3", + "startlinecolor": "#2a3f5f" + }, + "baxis": { + "endlinecolor": "#2a3f5f", + "gridcolor": "#C8D4E3", + "linecolor": "#C8D4E3", + "minorgridcolor": "#C8D4E3", + "startlinecolor": "#2a3f5f" + }, + "type": "carpet" + } + ], + "choropleth": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "choropleth" + } + ], + "contourcarpet": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "contourcarpet" + } + ], + "contour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ], + "type": "contour" + } + ], + "heatmap": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ], + "type": "heatmap" + } + ], + "histogram2dcontour": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ], + "type": "histogram2dcontour" + } + ], + "histogram2d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ], + "type": "histogram2d" + } + ], + "histogram": [ + { + "marker": { + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "histogram" + } + ], + "mesh3d": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "type": "mesh3d" + } + ], + "parcoords": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "parcoords" + } + ], + "pie": [ + { + "automargin": true, + "type": "pie" + } + ], + "scatter3d": [ + { + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatter3d" + } + ], + "scattercarpet": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattercarpet" + } + ], + "scattergeo": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergeo" + } + ], + "scattergl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattergl" + } + ], + "scattermapbox": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattermapbox" + } + ], + "scattermap": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scattermap" + } + ], + "scatterpolargl": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolargl" + } + ], + "scatterpolar": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterpolar" + } + ], + "scatter": [ + { + "fillpattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + }, + "type": "scatter" + } + ], + "scatterternary": [ + { + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "type": "scatterternary" + } + ], + "surface": [ + { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ], + "type": "surface" + } + ], + "table": [ + { + "cells": { + "fill": { + "color": "#EBF0F8" + }, + "line": { + "color": "white" + } + }, + "header": { + "fill": { + "color": "#C8D4E3" + }, + "line": { + "color": "white" + } + }, + "type": "table" + } + ] + }, + "layout": { + "annotationdefaults": { + "arrowcolor": "#2a3f5f", + "arrowhead": 0, + "arrowwidth": 1 + }, + "autotypenumbers": "strict", + "coloraxis": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "colorscale": { + "diverging": [ + [ + 0, + "#8e0152" + ], + [ + 0.1, + "#c51b7d" + ], + [ + 0.2, + "#de77ae" + ], + [ + 0.3, + "#f1b6da" + ], + [ + 0.4, + "#fde0ef" + ], + [ + 0.5, + "#f7f7f7" + ], + [ + 0.6, + "#e6f5d0" + ], + [ + 0.7, + "#b8e186" + ], + [ + 0.8, + "#7fbc41" + ], + [ + 0.9, + "#4d9221" + ], + [ + 1, + "#276419" + ] + ], + "sequential": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ], + "sequentialminus": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ] + }, + "colorway": [ + "#636efa", + "#EF553B", + "#00cc96", + "#ab63fa", + "#FFA15A", + "#19d3f3", + "#FF6692", + "#B6E880", + "#FF97FF", + "#FECB52" + ], + "font": { + "color": "#2a3f5f" + }, + "geo": { + "bgcolor": "white", + "lakecolor": "white", + "landcolor": "white", + "showlakes": true, + "showland": true, + "subunitcolor": "#C8D4E3" + }, + "hoverlabel": { + "align": "left" + }, + "hovermode": "closest", + "mapbox": { + "style": "light" + }, + "paper_bgcolor": "white", + "plot_bgcolor": "white", + "polar": { + "angularaxis": { + "gridcolor": "#EBF0F8", + "linecolor": "#EBF0F8", + "ticks": "" + }, + "bgcolor": "white", + "radialaxis": { + "gridcolor": "#EBF0F8", + "linecolor": "#EBF0F8", + "ticks": "" + } + }, + "scene": { + "xaxis": { + "backgroundcolor": "white", + "gridcolor": "#DFE8F3", + "gridwidth": 2, + "linecolor": "#EBF0F8", + "showbackground": true, + "ticks": "", + "zerolinecolor": "#EBF0F8" + }, + "yaxis": { + "backgroundcolor": "white", + "gridcolor": "#DFE8F3", + "gridwidth": 2, + "linecolor": "#EBF0F8", + "showbackground": true, + "ticks": "", + "zerolinecolor": "#EBF0F8" + }, + "zaxis": { + "backgroundcolor": "white", + "gridcolor": "#DFE8F3", + "gridwidth": 2, + "linecolor": "#EBF0F8", + "showbackground": true, + "ticks": "", + "zerolinecolor": "#EBF0F8" + } + }, + "shapedefaults": { + "line": { + "color": "#2a3f5f" + } + }, + "ternary": { + "aaxis": { + "gridcolor": "#DFE8F3", + "linecolor": "#A2B1C6", + "ticks": "" + }, + "baxis": { + "gridcolor": "#DFE8F3", + "linecolor": "#A2B1C6", + "ticks": "" + }, + "bgcolor": "white", + "caxis": { + "gridcolor": "#DFE8F3", + "linecolor": "#A2B1C6", + "ticks": "" + } + }, + "title": { + "x": 0.05 + }, + "xaxis": { + "automargin": true, + "gridcolor": "#EBF0F8", + "linecolor": "#EBF0F8", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "#EBF0F8", + "zerolinewidth": 2 + }, + "yaxis": { + "automargin": true, + "gridcolor": "#EBF0F8", + "linecolor": "#EBF0F8", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "#EBF0F8", + "zerolinewidth": 2 + } + } + }, + "xaxis": { + "title": { + "text": "E [m]" + }, + "scaleanchor": "y", + "scaleratio": 1, + "showgrid": true, + "gridcolor": "lightgrey" + }, + "yaxis": { + "title": { + "text": "N [m]" + }, + "showgrid": true, + "gridcolor": "lightgrey" + }, + "title": { + "text": "Netzplot im ENU-System mit Konfidenzellipsen (Ellipsen ×1000)" + }, + "width": 1100, + "height": 900, + "plot_bgcolor": "white", + "annotations": [ + { + "align": "left", + "bgcolor": "white", + "bordercolor": "black", + "borderwidth": 1, + "showarrow": false, + "text": "Maßstab Ellipsen:
Dargestellte Größe = Konfidenzellipse × 1000", + "x": 0.02, + "xref": "paper", + "y": 0.05, + "yref": "paper" + } + ] + }, + "config": { + "scrollZoom": true, + "plotlyServerURL": "https://plot.ly" + } + } + }, + "metadata": {}, + "output_type": "display_data", + "jetTransient": { + "display_id": null + } + } + ], + "execution_count": 69 }, { - "cell_type": "code", - "id": "efef62555453950e", "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": null, "source": [ + "from Koordinatentransformationen import Transformationen\n", + "trafos = Transformationen(pfad_datenbank)\n", + "\n", + "dict_koordinaten_utm = trafos.ecef_to_utm(\n", + " dict_koordinaten_ausgleichungsergebnis,\n", + " pfad_tif_quasigeoidundolation)\n", + "koordinaten_utm = (dict_koordinaten_utm)\n", + "print(koordinaten_utm)" + ], + "id": "844b818e7a3db233" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": null, + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "\n", + "# 1. Wir nutzen dein existierendes 'dict_koordinaten'\n", + "# Da stehen nur die echten Punkte drin (74 Stück)\n", + "namen = list(dict_koordinaten_ausgleichungsergebnis.keys())\n", + "\n", + "# Die SymPy-Matrizen aus dem Dictionary in flache Listen umwandeln\n", + "koordinaten_liste = []\n", + "for k in namen:\n", + " matrix_werte = dict_koordinaten_ausgleichungsergebnis[k]\n", + " # Umwandlung von SymPy Matrix zu einfachen Floats\n", + " koordinaten_liste.append([float(matrix_werte[0]), float(matrix_werte[1]), float(matrix_werte[2])])\n", + "\n", + "# 2. DataFrame direkt aus der gefilterten Liste erstellen\n", + "# Hier passen index (74) und Daten (74 Zeilen) nun perfekt zusammen!\n", + "df_x_final = pd.DataFrame(koordinaten_liste, columns=['X [m]', 'Y [m]', 'Z [m]'], index=namen)\n", + "df_x_final.index.name = 'Punktnummer'\n", + "\n", + "# 3. UTM-Daten aufbereiten (wie gehabt)\n", + "# Wir stellen sicher, dass wir die Werte aus koordinaten_utm flachklopfen\n", + "utm_flach = {k: np.array(v).flatten().tolist() for k, v in koordinaten_utm.items()}\n", + "df_utm_final = pd.DataFrame.from_dict(utm_flach, orient='index', columns=['Rechtswert [m]', 'Hochwert [m]', 'Höhe [m]'])\n", + "df_utm_final.index.name = 'Punktnummer'\n", + "\n", + "# 4. Zahlenformatierung (Wissenschaftliche Notation unterdrücken)\n", + "df_x_final = df_x_final.map(lambda val: f\"{val:.4f}\")\n", + "df_utm_final = df_utm_final.map(lambda val: f\"{val:.4f}\")\n", + "\n", + "# 5. Export-Dictionary\n", + "ergebnisse = {\n", + " \"df_globaltest\": df_globaltest,\n", + " \"df_redundanz\": Redundanzanteile,\n", + " \"df_ellipsen\": Standardellipse,\n", + " \"df_konfidenzellipsen\": Konfidenzellipse,\n", + " \"df_koordinaten_geozentrisch_kartesisch\": df_x_final,\n", + " \"df_koordinaten_utm\": df_utm_final\n", + "}\n", + "\n", + "# Für die geozentrischen Koordinaten\n", + "df_x_final.index.name = 'Punktnummer'\n", + "\n", + "# Für die UTM-Koordinaten\n", + "df_utm_final.index.name = 'Punktnummer'" + ], + "id": "343b70a659e335f8" + }, + { + "metadata": {}, + "cell_type": "code", + "outputs": [], + "execution_count": null, + "source": [ + "importlib.reload(Export)\n", "# Erzeugung eines Protokolls der hybriden Netzausgleichung\n", "\n", "# Input (später: an den Anfang des Notebooks schieben)\n", @@ -22558,13 +82250,15 @@ " \"df_globaltest\": df_globaltest,\n", " \"df_redundanz\": Redundanzanteile,\n", " \"df_ellipsen\": Standardellipse,\n", - " \"df_konfidenzellipsen\": Konfidenzellipse\n", + " \"df_konfidenzellipsen\": Konfidenzellipse,\n", + " \"df_koordinaten_geozentrisch_kartesisch\": df_x_final,\n", + " \"df_koordinaten_utm\": df_utm_final\n", + "\n", "}\n", "\n", "Export.Export.speichere_html_protokoll(metadaten, ergebnisse)" ], - "outputs": [], - "execution_count": null + "id": "23aa13721f563c90" } ], "metadata": { diff --git a/Datenbank.py b/Datenbank.py index ef43113..e5e74b9 100644 --- a/Datenbank.py +++ b/Datenbank.py @@ -1,78 +1,109 @@ +from decimal import Decimal import os import sqlite3 -from typing import Any - import sympy as sp from sympy import MutableDenseMatrix +from typing import Any from Berechnungen import Einheitenumrechnung -from decimal import Decimal - - class Datenbank_anlegen: + """Legt die SQLite-Datenbank für die Ausgleichungsrechnung an. + + Die Klasse erstellt die Datenbankdatei nur dann, wenn am angegebenen Pfad noch + keine Datenbank existiert. In diesem Fall werden die Tabellen und Constraints + per SQL-Skript angelegt. + + Angelegte Tabellen: + - Netzpunkte, + - Beobachtungen, + - Instrumente, + - Genauigkeiten, + - Varianzkomponentenschaetzung. + + :ivar pfad_datenbank: Pfad zur SQLite-Datenbankdatei. + :vartype pfad_datenbank: str + """ def __init__(self, pfad_datenbank: str) -> None: + """Initialisiert den Datenbankpfad und legt die Datenbank bei Bedarf an. + + Beim Erstellen der Instanz wird db_anlegen() aufgerufen. Existiert die + Datenbankdatei unter dem übergebenen Pfad bereits, erfolgt keine Änderung. + + :param pfad_datenbank: Pfad zur SQLite-Datenbankdatei. + :type pfad_datenbank: str + :return: None + :rtype: None + """ self.pfad_datenbank = pfad_datenbank self.db_anlegen() def db_anlegen(self) -> None: - # pfad = r"C:\Users\fabia\OneDrive\Jade HS\Master\MGW2\Masterprojekt_allgemein\Masterprojekt\Programmierung\Campusnetz\Campusnetz.db" + """Legt die SQLite-Datenbank an, sofern die Datei nicht existiert. + + Prüft, ob die Datenbankdatei am Pfad vorhanden ist. Falls nicht, wird eine neue + SQLite-Datenbank erstellt. + Anschließend werden die Änderungen committet und die Verbindung geschlossen. + + :return: None + :rtype: None + """ if not os.path.exists(self.pfad_datenbank): con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() cursor.executescript("""CREATE TABLE Netzpunkte ( - punktnummer TEXT(10), - naeherungx_lh NUMERIC(9,3), - naeherungy_lh NUMERIC(7,3), - naeherungz_lh NUMERIC(8,3), - naeherungz_lh_niv NUMERIC(8,3), - naeherungx_us NUMERIC(9,3), - naeherungy_us NUMERIC(7,3), - naeherungz_us NUMERIC(8,3), - normalhoehe_hfp NUMERIC(5,3), - datumskoordinate_x INTEGER DEFAULT 0, - datumskoordinate_y INTEGER DEFAULT 0, - datumskoordinate_z INTEGER DEFAULT 0, - stabw_vorinfo_x NUMERIC(3, 8), - stabw_vorinfo_y NUMERIC(3, 8), - stabw_vorinfo_z NUMERIC(3, 8), + punktnummer TEXT(10), + naeherungx_lh NUMERIC(9,3), + naeherungy_lh NUMERIC(7,3), + naeherungz_lh NUMERIC(8,3), + naeherungz_lh_niv NUMERIC(8,3), + naeherungx_us NUMERIC(9,3), + naeherungy_us NUMERIC(7,3), + naeherungz_us NUMERIC(8,3), + normalhoehe_hfp NUMERIC(5,3), + datumskoordinate_x INTEGER DEFAULT 0, + datumskoordinate_y INTEGER DEFAULT 0, + datumskoordinate_z INTEGER DEFAULT 0, + stabw_vorinfo_x NUMERIC(3, 8), + stabw_vorinfo_y NUMERIC(3, 8), + stabw_vorinfo_z NUMERIC(3, 8), CONSTRAINT pk_Netzpunkte PRIMARY KEY (punktnummer) ); """); cursor.executescript("""CREATE TABLE Beobachtungen( - beobachtungenID INTEGER, - beobachtungsgruppeID INTEGER, - punktnummer_sp TEXT(10), - punktnummer_zp TEXT(10), - instrumenteID INTEGER, - tachymeter_richtung NUMERIC(8, 6), - tachymeter_richtung_ausschalten INTEGER DEFAULT 0, - tachymeter_zenitwinkel_roh NUMERIC(8, 6), - tachymeter_zenitwinkel NUMERIC(8, 6), - tachymeter_zenitwinkel_ausschalten INTEGER DEFAULT 0, - tachymeter_distanz_roh NUMERIC(8, 4), - tachymeter_distanz NUMERIC(8, 4), - tachymeter_distanz_auschalten INTEGER DEFAULT 0, - tachymeter_instrumentenhoehe NUMERIC(3, 8), - tachymeter_prismenhoehe NUMERIC(3, 8), - gnss_bx NUMERIC(7, 4), - gnss_bx_ausschalten INTEGER DEFAULT 0, - gnss_by NUMERIC(7, 4), - gnss_by_ausschalten INTEGER DEFAULT 0, - gnss_bz NUMERIC(7, 4), - gnss_bz_ausschalten INTEGER DEFAULT 0, - gnss_s0 NUMERIC(1, 8), - gnss_cxx NUMERIC(1, 8), - gnss_cxy NUMERIC(1, 8), - gnss_cxz NUMERIC(1, 8), - gnss_cyy NUMERIC(1, 8), - gnss_cyz NUMERIC(1, 8), - gnss_czz NUMERIC(1, 8), - niv_dh NUMERIC(8, 6), - niv_strecke NUMERIC(8, 6), - niv_anz_standpkte INTEGER, - niv_ausschalten INTEGER DEFAULT 0, - dateiname TEXT(200), + beobachtungenID INTEGER, + beobachtungsgruppeID INTEGER, + punktnummer_sp TEXT(10), + punktnummer_zp TEXT(10), + instrumenteID INTEGER, + tachymeter_richtung NUMERIC(8, 6), + tachymeter_richtung_ausschalten INTEGER DEFAULT 0, + tachymeter_zenitwinkel_roh NUMERIC(8, 6), + tachymeter_zenitwinkel NUMERIC(8, 6), + tachymeter_zenitwinkel_ausschalten INTEGER DEFAULT 0, + tachymeter_distanz_roh NUMERIC(8, 4), + tachymeter_distanz NUMERIC(8, 4), + tachymeter_distanz_auschalten INTEGER DEFAULT 0, + tachymeter_instrumentenhoehe NUMERIC(3, 8), + tachymeter_prismenhoehe NUMERIC(3, 8), + gnss_bx NUMERIC(7, 4), + gnss_bx_ausschalten INTEGER DEFAULT 0, + gnss_by NUMERIC(7, 4), + gnss_by_ausschalten INTEGER DEFAULT 0, + gnss_bz NUMERIC(7, 4), + gnss_bz_ausschalten INTEGER DEFAULT 0, + gnss_s0 NUMERIC(1, 8), + gnss_cxx NUMERIC(1, 8), + gnss_cxy NUMERIC(1, 8), + gnss_cxz NUMERIC(1, 8), + gnss_cyy NUMERIC(1, 8), + gnss_cyz NUMERIC(1, 8), + gnss_czz NUMERIC(1, 8), + niv_dh NUMERIC(8, 6), + niv_strecke NUMERIC(8, 6), + niv_anz_standpkte INTEGER, + niv_ausschalten INTEGER DEFAULT 0, + dateiname TEXT(200), CONSTRAINT pk_Beobachtungen PRIMARY KEY (beobachtungenID), CONSTRAINT fk_Beobachtungen_Netzpunktesp FOREIGN KEY (punktnummer_sp) REFERENCES Netzpunkte(punktnummer), CONSTRAINT fk_Beobachtungen_Netzpunktezp FOREIGN KEY (punktnummer_zp) REFERENCES Netzpunkte(punktnummer), @@ -80,41 +111,68 @@ class Datenbank_anlegen: ); """); cursor.executescript("""CREATE TABLE Instrumente( - instrumenteID INTEGER, - typ TEXT(200), - name TEXT(200), + instrumenteID INTEGER, + typ TEXT(200), + name TEXT(200), CONSTRAINT pk_Instrumente PRIMARY KEY (instrumenteID) ); """); cursor.executescript("""CREATE TABLE Genauigkeiten( - genauigkeitenID INTEGER, - instrumenteID INTEGER, - beobachtungsart TEXT(25), - stabw_apriori_konstant NUMERIC(3, 8), - stabw_apriori_streckenprop NUMERIC(3, 8), + genauigkeitenID INTEGER, + instrumenteID INTEGER, + beobachtungsart TEXT(25), + stabw_apriori_konstant NUMERIC(3, 8), + stabw_apriori_streckenprop NUMERIC(3, 8), CONSTRAINT pk_Genauigkeiten PRIMARY KEY (genauigkeitenID), CONSTRAINT fk_Genauigkeiten_Instrumente FOREIGN KEY (instrumenteID) REFERENCES Instrumente(instrumenteID) ); """); cursor.executescript("""CREATE TABLE Varianzkomponentenschaetzung( - varianzkomponenteID INTEGER, - instrumenteID INTEGER, - beobachtungsgruppe TEXT(50), - varianz_varianzkomponentenschaetzung NUMERIC(3, 16) DEFAULT 1, + varianzkomponenteID INTEGER, + instrumenteID INTEGER, + beobachtungsgruppe TEXT(50), + varianz_varianzkomponentenschaetzung NUMERIC(3, 16) DEFAULT 1, CONSTRAINT pk_Varianzkomponentenschaetzung PRIMARY KEY (varianzkomponenteID), CONSTRAINT fk_Varianzkomponentenschaetzung_Instrumente FOREIGN KEY (instrumenteID) REFERENCES Instrumente(instrumenteID) ); """) - con.commit() cursor.close() con.close() class Datenbankzugriff: + """Zugriff auf die SQLite-Datenbank des Ausgleichungsprogramms. + + Die Klasse stellt Methoden zur Verfügung für: + + - Schreiben in die Datenbank durch alle set_* Methoden + - Lesen aus der Datenbank durch alle get_* Methoden + + :ivar pfad_datenbank: Pfad zur SQLite-Datenbankdatei. + :vartype pfad_datenbank: str + """ def __init__(self, pfad_datenbank: str) -> None: + """Initialisiert den Datenbankzugriff. + + :param pfad_datenbank: Pfad zur SQLite-Datenbankdatei. + :type pfad_datenbank: str + """ self.pfad_datenbank = pfad_datenbank def set_koordinaten(self, dict_koordinaten: dict, koordinatenart: str) -> None: + """Schreibt Koordinaten in die Tabelle Netzpunkte. + + Die Koordinaten werden aus `dict_koordinaten` gelesen und abhängig von der koordinatenart + in die entsprechenden Felder geschrieben. Es werden nur Einträge aktualisiert, deren + Zielspalten aktuell ``NULL`` sind. + + :param dict_koordinaten: Dictionary mit Punktnummer → (X, Y, Z). + :type dict_koordinaten: dict + :param koordinatenart: Art der Koordinaten ("naeherung_lh" für die Koordinaten im lokalen Horizontsystem aus der Tachymetermessung oder "naeherung_us" für die Näherungskoordinaten der Netzpunkte im geozentrisch-kartesischen-system). + :type koordinatenart: str + :return: None + :rtype: None + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() @@ -127,18 +185,33 @@ class Datenbankzugriff: float(wert[2]), str(punktnummer) )) - + # Der Import für die Koordinatenart "naeherung_lh" ist im Zuge möglicher Erweiterungen zu implementieren. if koordinatenart == "naeherung_lh": pass elif koordinatenart == "naeherung_us": cursor.executemany(f"""UPDATE Netzpunkte SET naeherungx_us = ?, naeherungy_us = ?, naeherungz_us = ? WHERE punktnummer = ? AND naeherungx_us IS NULL AND naeherungy_us IS NULL AND naeherungz_us IS NULL""", daten) - con.commit() cursor.close() con.close() def set_instrument(self, typ: str, name: str, liste_beobachtungsarten: list) -> None: + """Fügt ein Instrument hinzu und initialisiert Varianzkomponenten. + + Ist das Instrument (typ, name) noch nicht in der Datenbank vorhanden, wird es in die Tabelle Instrumente eingefügt. + Zusätzlich werden Einträge in Varianzkomponentenschaetzung für die angegebenen + Beobachtungsarten erzeugt. Falls die Varianzkomponentenschätzung noch leer ist, wird + ein zusätzlicher Eintrag für die Beobachtungsgruppe "Anschlusspunkte" angelegt. + + :param typ: Instrumenttyp. + :type typ: str + :param name: Instrumentname. + :type name: str + :param liste_beobachtungsarten: Liste der Beobachtungsgruppen zur Initialisierung. + :type liste_beobachtungsarten: list + :return: None + :rtype: None + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_instrumente = cursor.execute("SELECT * FROM Instrumente WHERE typ = ? AND name =?", (typ, name)).fetchall() @@ -175,9 +248,27 @@ class Datenbankzugriff: def set_genauigkeiten(self, instrumenteID: int, beobachtungsart: str, stabw_apriori_konstant: float = None, stabw_apriori_streckenprop: float = None) -> None: + """Speichert a-priori Genauigkeiten für die Beobachtungsgruppen pro Instrument. + + Prüft, ob instrumenteID existiert und ob mindestens eine Genauigkeitsangabe übergeben wurde. + Je nach Beobachtungsart werden Einheitenumrechnungen durchgeführt (z. B. mgon → rad bzw. mm → m). + Der Eintrag wird nur ergänzt, wenn in Genauigkeiten kein identischer Datensatz vorhanden ist. + + :param instrumenteID: ID des Instruments in der Tabelle Instrumente. + :type instrumenteID: int + :param beobachtungsart: Bezeichnung der Beobachtungsart. + :type beobachtungsart: str + :param stabw_apriori_konstant: Konstanter Anteil der Standardabweichung (optional). + :type stabw_apriori_konstant: float | None + :param stabw_apriori_streckenprop: Streckenproportionaler Anteil der Standardabweichung (optional). + :type stabw_apriori_streckenprop: float | None + :return: None + :rtype: None + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() + # Überprüfung auf vorhandensein der Instrumentes in der Tabelle Instrumente instrumentenname = cursor.execute("SELECT name FROM Instrumente WHERE instrumenteID = ?", (instrumenteID, )).fetchone() if instrumentenname is None: @@ -188,6 +279,7 @@ class Datenbankzugriff: return instrumentenname = instrumentenname[0] + # Überprüfung, ob Genauigkeitsinformationen vom Benutzer übergeben wurden. if stabw_apriori_konstant is None and stabw_apriori_streckenprop is None: print( "Es wurden keine Genauigkeiten importiert. Bitte stabw_apriori_konstant und / oder stabw_apriori_streckenprop angeben.") @@ -195,6 +287,7 @@ class Datenbankzugriff: con.close() return + # Umrechnen der Einheiten in Radiant und Meter if beobachtungsart == "Tachymeter_Richtung" or beobachtungsart == "Tachymeter_Zenitwinkel" : stabw_apriori_konstant = Einheitenumrechnung.mgon_to_rad_Decimal(stabw_apriori_konstant) @@ -207,6 +300,7 @@ class Datenbankzugriff: if isinstance(stabw_apriori_streckenprop, Decimal): stabw_apriori_streckenprop = float(stabw_apriori_streckenprop) + # Überprüfen, ob die Genauigkeitsinformation für die jeweilige Beobachtungsart des Instruments bereits vorhanden ist. Wenn nein, wird die Benutzereingabe in die Datenbank gespeichert. sql = "SELECT 1 FROM Genauigkeiten WHERE instrumenteID = ? AND beobachtungsart = ?" params = [instrumenteID, beobachtungsart] @@ -248,6 +342,7 @@ class Datenbankzugriff: ) print( f"Die Genauigkeitsangabe für die Beobachtungsart {beobachtungsart} des Instrumentes {instrumentenname} wurde erfolgreich hinzugefügt.") + else: print("Die Genauigkeitsangabe ist bereits in der Datenbank vorhanden.") @@ -258,9 +353,28 @@ class Datenbankzugriff: def set_datumskoordinaten(self, liste_datumskoordinaten_x: list, liste_datumskoordinaten_y: list, liste_datumskoordinaten_z: list, liste_datumskoordinaten_x_y_z: list) -> None: + """Setzt Datumskoordinaten für Netzpunkte unter Berücksichtigung von Vorinformationen. + + Für die übergebenen Punktlisten werden die Felder datumskoordinate_x, datumskoordinate_y + und / oder datumskoordinate_z auf 1 gesetzt. Ein Setzen erfolgt nur, wenn zu der jeweiligen Koordinate + eine Vorinformation zur Standardabweichung (stabw_vorinfo_*) vorhanden ist. Eine 1 bedeutet, + dass dieser Punkt für die Datumdefinition verwendet wird. + + :param liste_datumskoordinaten_x: Liste der Punktnummern mit Datumsdefinition in X. + :type liste_datumskoordinaten_x: list + :param liste_datumskoordinaten_y: Liste der Punktnummern mit Datumsdefinition in Y. + :type liste_datumskoordinaten_y: list + :param liste_datumskoordinaten_z: Liste der Punktnummern mit Datumsdefinition in Z. + :type liste_datumskoordinaten_z: list + :param liste_datumskoordinaten_x_y_z: Liste der Punktnummern mit Datumsdefinition in X, Y und Z. + :type liste_datumskoordinaten_x_y_z: list + :return: None + :rtype: None + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() + # Überprüfen, ob Genauigkeitsinformationen zu den Punkten in der Datenbank gespeichert sind. Ist dies der Fall, wird eine 1 in das entsprechende Tupel geschrieben. liste_stabw_vorinfo_x = [str(row[0]).strip() for row in cursor.execute( "SELECT punktnummer FROM Netzpunkte WHERE stabw_vorinfo_x IS NOT NULL").fetchall()] liste_stabw_vorinfo_y = [str(row[0]).strip() for row in cursor.execute( @@ -277,6 +391,7 @@ class Datenbankzugriff: cursor.execute(f"UPDATE Netzpunkte SET datumskoordinate_x = 1 WHERE punktnummer = ? AND stabw_vorinfo_x IS NOT NULL", (str(punktnummer),)) else: print(f"Die X-Koordinate des Punktes {punktnummer} wurde nicht in eine Datumskoordinate geändert, weil keine Vorinformationen zur Standardabweichung der X-Koordinate des Punktes vorliegen. Diese bitte zuerst erfassen und Datumsdefinition wiederholen.") + if liste_datumskoordinaten_y != []: for punktnummer in liste_datumskoordinaten_y: punktnummer = str(punktnummer).strip() @@ -308,26 +423,48 @@ class Datenbankzugriff: def set_datumskoordinaten_to_neupunkte(self, liste_datumskoordinaten_x: list, liste_datumskoordinaten_y: list, liste_datumskoordinaten_z: list, liste_datumskoordinaten_x_y_z: list) -> None: + """Setzt Datumskoordinaten für angegebene Punkte wieder zurück. + + Für die übergebenen Punktlisten werden die Felder datumskoordinate_x, datumskoordinate_y + und / oder datumskoordinate_z auf 0 gesetzt. Dadurch werden diese in der Ausgleichung wieder + als Neupunkte behandelt und werden nicht für die Datumsdefinition verwendet. + + :param liste_datumskoordinaten_x: Liste der Punktnummern, deren X-Datumsfestlegung zurückgesetzt wird. + :type liste_datumskoordinaten_x: list + :param liste_datumskoordinaten_y: Liste der Punktnummern, deren Y-Datumsfestlegung zurückgesetzt wird. + :type liste_datumskoordinaten_y: list + :param liste_datumskoordinaten_z: Liste der Punktnummern, deren Z-Datumsfestlegung zurückgesetzt wird. + :type liste_datumskoordinaten_z: list + :param liste_datumskoordinaten_x_y_z: Liste der Punktnummern, deren X-, Y- und Z-Datumsfestlegung zurückgesetzt werden. + :type liste_datumskoordinaten_x_y_z: list + :return: None + :rtype: None + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() + + # Überprüfung, ob eine Benutzereingabe in der entsprechenden Liste vorgenommen wurde. Wenn ja, wird ein UPDATE in der Datenbank durchgeführt. if liste_datumskoordinaten_x != []: for punktnummer in liste_datumskoordinaten_x: punktnummer = str(punktnummer).strip() cursor.execute( f"UPDATE Netzpunkte SET datumskoordinate_x = 0 WHERE punktnummer = ?", (str(punktnummer),)) + if liste_datumskoordinaten_y != []: for punktnummer in liste_datumskoordinaten_y: punktnummer = str(punktnummer).strip() cursor.execute( f"UPDATE Netzpunkte SET datumskoordinate_y = 0 WHERE punktnummer = ?", (str(punktnummer),)) + if liste_datumskoordinaten_z != []: for punktnummer in liste_datumskoordinaten_z: punktnummer = str(punktnummer).strip() cursor.execute( f"UPDATE Netzpunkte SET datumskoordinate_z = 0 WHERE punktnummer = ?", (str(punktnummer),)) + if liste_datumskoordinaten_x_y_z != []: for punktnummer in liste_datumskoordinaten_x_y_z: punktnummer = str(punktnummer).strip() @@ -340,6 +477,16 @@ class Datenbankzugriff: con.close() def set_normalhoehe_hfp(self, liste_normalhoehe_hfp: list) -> LiteralString | str: + """Speichert Normalhöhen von amtlichen Höhenfestpunkten (HFP) in Netzpunkte. + + Existiert die Punktnummer bereits in der Tabelle Netzpunkte, wird das Attribut normalhoehe_hfp aktualisiert. + Andernfalls wird ein neuer Datensatz mit Punktnummer und Normalhöhe eingefügt. + + :param liste_normalhoehe_hfp: Liste mit HFP-Informationen (u. a. Punktnummer und Normalhöhe). + :type liste_normalhoehe_hfp: list + :return: Zusammenfassung der durchgeführten Aktualisierungen bzw. Hinweis, falls keine Daten übergeben wurden. + :rtype: str + """ liste_hfp_in_db = self.get_normalhoehe_hfp() if liste_normalhoehe_hfp != []: con = sqlite3.connect(self.pfad_datenbank) @@ -369,22 +516,36 @@ class Datenbankzugriff: return f"Es wurden keine neuen Normalhöhen übergeben. Folgende Normalhöhen sind in der Datenbank enthalten: {liste_hfp_in_db}" def set_beobachtung_ausschalten(self, dict_beobachtung_ausschalten: dict) -> None: + """Schaltet ausgewählte Beobachtungen für die Ausgleichung aus. + + Die zu deaktivierenden Beobachtungen werden über dict_beobachtung_ausschalten übergeben. + Der Schlüssel wird ausgewertet und das zugehörige *_ausschalten-Tupel in der Datenbank + auf 1 gesetzt (z. B. Richtungen, Zenitwinkel, Strecken, GNSS-Komponenten, Geometrisches Nivellement). + Dadurch wird die jeweilige Beobachtung in allen folgenden Iterationen nicht mehr berücksichtigt. + + :param dict_beobachtung_ausschalten: Dictionary zur Steuerung, welche Beobachtungen deaktiviert werden, in der Form: {Beobachtung: "beobachtung_ausschalten"} zum ausschalten und {Beobachtung: ""} fürs beibehalten. + :type dict_beobachtung_ausschalten: dict + :return: None + :rtype: None + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() for beobachtung, ausschalten in dict_beobachtung_ausschalten.items(): + # Nur in die Schleife gehen, wenn im Value des Dicts "beobachtung_ausschalten" enthalten ist. if ausschalten == "beobachtung_ausschalten": beobachtung_gesplittet = beobachtung.split("_") + + # Distanz if beobachtung_gesplittet[1] == "SD": - #print(f"SD: {beobachtung_gesplittet}") try: cursor.execute(f"""UPDATE Beobachtungen SET tachymeter_distanz_auschalten = 1 WHERE beobachtungenID = ? AND beobachtungsgruppeID = ? AND punktnummer_sp = ? AND punktnummer_zp = ?""", (beobachtung_gesplittet[0], beobachtung_gesplittet[2], beobachtung_gesplittet[3], beobachtung_gesplittet[4])) except: print(f"Die Beobachtung {beobachtung} konnte aufgrund eines Fehlers nicht ausgeschaltet werden.") + # Richtungen if beobachtung_gesplittet[1] == "R": - #print(f"R: {beobachtung_gesplittet}") try: cursor.execute(f"""UPDATE Beobachtungen SET tachymeter_richtung_ausschalten = 1 WHERE beobachtungenID = ? AND beobachtungsgruppeID = ? AND punktnummer_sp = ? AND punktnummer_zp = ?""", @@ -392,8 +553,8 @@ class Datenbankzugriff: except: print(f"Die Beobachtung {beobachtung} konnte aufgrund eines Fehlers nicht ausgeschaltet werden.") + # Zenitwinkel if beobachtung_gesplittet[1] == "ZW": - #print(f"ZW: {beobachtung_gesplittet}") try: cursor.execute(f"""UPDATE Beobachtungen SET tachymeter_zenitwinkel_ausschalten = 1 WHERE beobachtungenID = ? AND beobachtungsgruppeID = ? AND punktnummer_sp = ? AND punktnummer_zp = ?""", @@ -402,7 +563,6 @@ class Datenbankzugriff: print(f"Die Beobachtung {beobachtung} konnte aufgrund eines Fehlers nicht ausgeschaltet werden.") if beobachtung_gesplittet[1] == "gnssbx": - #print(f"gnssbx: {beobachtung_gesplittet}") try: cursor.execute(f"""UPDATE Beobachtungen SET gnss_bx_ausschalten = 1 WHERE beobachtungenID = ? AND punktnummer_sp = ? AND punktnummer_zp = ?""", @@ -410,9 +570,8 @@ class Datenbankzugriff: except: print(f"Die Beobachtung {beobachtung} konnte aufgrund eines Fehlers nicht ausgeschaltet werden.") - + #GNSS-Basislinien if beobachtung_gesplittet[1] == "gnssby": - #print(f"gnssby: {beobachtung_gesplittet}") try: cursor.execute(f"""UPDATE Beobachtungen SET gnss_by_ausschalten = 1 WHERE beobachtungenID = ? AND punktnummer_sp = ? AND punktnummer_zp = ?""", @@ -421,7 +580,6 @@ class Datenbankzugriff: print(f"Die Beobachtung {beobachtung} konnte aufgrund eines Fehlers nicht ausgeschaltet werden.") if beobachtung_gesplittet[1] == "gnssbz": - #print(f"gnssbz: {beobachtung_gesplittet}") try: cursor.execute(f"""UPDATE Beobachtungen SET gnss_bz_ausschalten = 1 WHERE beobachtungenID = ? AND punktnummer_sp = ? AND punktnummer_zp = ?""", @@ -429,8 +587,8 @@ class Datenbankzugriff: except: print(f"Die Beobachtung {beobachtung} konnte aufgrund eines Fehlers nicht ausgeschaltet werden.") + # Geometrisches Nivellement if beobachtung_gesplittet[1] == "niv": - #print(f"niv: {beobachtung_gesplittet}") try: cursor.execute(f"""UPDATE Beobachtungen SET niv_ausschalten = 1 WHERE beobachtungenID = ? AND punktnummer_sp = ? AND punktnummer_zp = ?""", @@ -443,12 +601,25 @@ class Datenbankzugriff: con.close() def set_varianzkomponente(self, liste_varianzkomponten_anpassen: list) -> None: + """Passt Varianzkomponenten für die nächste Iteration an. + + Für jede angegebene Varianzkomponente wird der aktuelle Datenbankwert mit einem vom Benutzer übergebenen + Faktor multipliziert und zurückgeschrieben. + + :param liste_varianzkomponten_anpassen: Liste mit Einträgen (instrumenteID, beobachtungsgruppe, faktor). + :type liste_varianzkomponten_anpassen: list + :return: None + :rtype: None + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() if liste_varianzkomponten_anpassen != []: for varianzkomponente in liste_varianzkomponten_anpassen: + # Faktor für die Varianzkomponentenschätzung der aktuellen Iteration aus der Datenbank abfragen varianz_db = cursor.execute(f"SELECT varianz_varianzkomponentenschaetzung FROM Varianzkomponentenschaetzung WHERE instrumenteID = ? AND beobachtungsgruppe = ?", (varianzkomponente[0], varianzkomponente[1])).fetchone()[0] + + # Faktor für die Varianzkompontenschätzung aus der Datenbank mit der Benutzereingabe multiplizieren und das Produkt in der Datenbank für die nächste Iteration speichern. cursor.execute( f"UPDATE Varianzkomponentenschaetzung SET varianz_varianzkomponentenschaetzung = ? WHERE instrumenteID = ? AND beobachtungsgruppe = ?", (varianz_db * varianzkomponente[2], varianzkomponente[0], varianzkomponente[1])) @@ -457,38 +628,43 @@ class Datenbankzugriff: cursor.close() con.close() - def set_s0_apriori(self, liste_s0_apriori_anpassen: list) -> None: - con = sqlite3.connect(self.pfad_datenbank) - cursor = con.cursor() - if liste_s0_apriori_anpassen != []: - for s0_apriori in liste_s0_apriori_anpassen: - cursor.execute( - f"UPDATE Varianzkomponentenschaetzung SET s0_apriori_vorherige_iteration = ? WHERE instrumenteID = ? AND beobachtungsgruppe = ?", - (s0_apriori[2], s0_apriori[0], s0_apriori[1])) - print(f"Folgende S0_apriori wurde für die nächste Iteration gespeichert: {liste_s0_apriori_anpassen}.") - con.commit() - cursor.close() - con.close() - - def get_koordinaten(self, koordinatenart: str, ausgabeart: str = "Dict") -> dict[Any, MutableDenseMatrix] | None: + """Liest Koordinaten aus der Tabelle Netzpunkte. + + Abhängig von der koordinatenart werden die entsprechenden Koordinatenspalten gelesen. + Es werden nur Datensätze berücksichtigt, bei denen X, Y und Z nicht NULL sind. + Bei ausgabeart="Dict" wird ein Dictionary in der Form {Punktnummer : sympy.Matrix([X, Y, Z])} zurückgegeben. + + :param koordinatenart: Art der Koordinaten ("naeherung_lh" für Koordinaten im lokalen Horizontsystem aus dem Tachymeterimport oder "naeherung_us" für Näherungskoordinaten im geozentrisch-kartesischen System). + :type koordinatenart: str + :param ausgabeart: Ausgabeformat (Standard: "Dict"). + :type ausgabeart: str + :return: Dictionary mit Punktnummer → Koordinatenmatrix oder None (abhängig von ausgabeart). + :rtype: dict | None + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() + + # Festlegen der Attribute, welche je nach Koordinatenart aus der Datenbank abgefragt werden sollen if koordinatenart == "naeherung_lh": values = "punktnummer, naeherungx_lh, naeherungy_lh, naeherungz_lh" elif koordinatenart == "naeherung_us": values = "punktnummer, naeherungx_us, naeherungy_us, naeherungz_us" + # SQL-Abfrage liste_koordinaten = cursor.execute(f""" SELECT {values} FROM Netzpunkte; """).fetchall() cursor.close() con.close() + # Nur ausgeben, wenn für einen Punkt X, Y und Z Koordinaten vorhanden sind liste_koordinaten = [ koordinate for koordinate in liste_koordinaten if koordinate[1] is not None and koordinate[2] is not None and koordinate[3] is not None ] + + # Aktuell ist nur die Ausgabeart "Dict" implementiert. Weitere Ausgabearten sind im Zuge möglicher erweiterungen zu implementieren. if ausgabeart == "Dict": return { koordinate[0]: sp.Matrix([ @@ -500,6 +676,11 @@ class Datenbankzugriff: } def get_normalhoehe_hfp(self) -> list[Any]: + """Liest alle Normalhöhen von amtlichen Höhenfestpunkten (HFP) aus der Tabelle Netzpunkte. + + :return: Liste mit Tupeln (punktnummer, normalhoehe_hfp) für alle Punkte mit gesetzter Normalhöhe. + :rtype: list + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_hfp = cursor.execute("SELECT punktnummer, normalhoehe_hfp FROM Netzpunkte WHERE normalhoehe_hfp IS NOT NULL").fetchall() @@ -509,6 +690,16 @@ class Datenbankzugriff: def get_instrument_liste(self, typ: str) -> list: + """Liest Instrumente eines gegebenen Typs aus der Tabelle Instrumente. + + Gibt eine Liste der gefundenen Instrumente zurück. Falls keine Instrumente vorhanden sind, + wird eine Textausgabe mit verfügbaren Typen zurückgegeben. + + :param typ: Instrumenttyp. + :type typ: str + :return: Liste der Instrumente oder Hinweistext, falls keine Instrumente gefunden wurden. + :rtype: list | str + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_instrumente = cursor.execute("SELECT * FROM Instrumente WHERE typ = ?", (typ,)).fetchall() @@ -520,6 +711,11 @@ class Datenbankzugriff: return liste_instrumente def get_genauigkeiten_dict(self) -> dict[Any, Any]: + """Liest alle Genauigkeiten aus der Tabelle Genauigkeiten und gibt diese als Dictionary zurück. + + :return: Dictionary {genauigkeitenID : restliche Tabellenwerte}. + :rtype: dict + """ dict = {} con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() @@ -531,6 +727,11 @@ class Datenbankzugriff: return dict def get_instrumenteID_beobachtungenID_dict(self) -> dict[Any, Any]: + """Liest die Zuordnung BeobachtungenID → InstrumenteID aus der Tabelle Beobachtungen. + + :return: Dictionary {beobachtungenID : instrumenteID}. + :rtype: dict + """ dict = {} con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() @@ -541,7 +742,18 @@ class Datenbankzugriff: con.close() return dict - def get_beobachtungen_id_beobachtungsgruppe_standpunkt_zielpunkt(self, beobachtungsart: str) -> list[Any]: + def get_puntknummern_beobachtungen_tachymeter(self, beobachtungsart: str) -> list[Any]: + """Liest Beobachtungen (ID, Gruppe, Standpunkt, Zielpunkt) für Tachymeterbeobachtungen. + + Es werden nur Beobachtungen berücksichtigt, bei denen die angegebene Beobachtungsart + nicht NULL ist. Zudem werden zusätzlich werden nur Beobachtungen übergeben, die nicht + ausgeschaltet werden. + + :param beobachtungsart: Name der Beobachtungsspalte. + :type beobachtungsart: str + :return: Liste von Tupeln (beobachtungenID, beobachtungsgruppeID, punktnummer_sp, punktnummer_zp). + :rtype: list + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() sql_ausdruck = f"SELECT beobachtungenID, beobachtungsgruppeID, punktnummer_sp, punktnummer_zp FROM Beobachtungen WHERE {beobachtungsart} IS NOT NULL" @@ -557,6 +769,13 @@ class Datenbankzugriff: return liste_beobachtungen def get_beobachtungen_from_beobachtungenid(self) -> list[Any]: + """Liest Tachymeterbeobachtungen aus der Tabelle ``Beobachtungen``. + + Es werden nur Datensätze mit gesetzter Tachymeter-Richtung berücksichtigt. + + :return: Liste von Tupeln (punktnummer_sp, punktnummer_zp, beobachtungenID, beobachtungsgruppeID, tachymeter_richtung, tachymeter_zenitwinkel, tachymeter_distanz). + :rtype: list + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_beobachtungen = cursor.execute(f"SELECT punktnummer_sp, punktnummer_zp, beobachtungenID, beobachtungsgruppeID, tachymeter_richtung, tachymeter_zenitwinkel, tachymeter_distanz FROM Beobachtungen WHERE tachymeter_richtung IS NOT NULL").fetchall() @@ -565,6 +784,14 @@ class Datenbankzugriff: return liste_beobachtungen def get_beobachtungen_gnssbasislinien(self) -> list[Any]: + """Liest GNSS-Basislinienbeobachtungen inklusive Kovarianzangaben. + + Es werden nur Datensätze zurückgegeben, bei denen alle benötigten GNSS-Felder (bx, by, bz, s0 + und Kovarianzelemente) nicht NULL sind. + + :return: Liste von Tupeln mit GNSS-Basisliniendaten und Kovarianzelementen. + :rtype: list + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_beobachtungen = cursor.execute(f"SELECT beobachtungenID, punktnummer_sp, punktnummer_zp, gnss_bx, gnss_by, gnss_bz, gnss_s0, gnss_cxx, gnss_cxy, gnss_cxz, gnss_cyy, gnss_cyz, gnss_czz FROM Beobachtungen WHERE gnss_bx IS NOT NULL AND gnss_by IS NOT NULL AND gnss_bz IS NOT NULL AND gnss_s0 IS NOT NULL AND gnss_cxx IS NOT NULL AND gnss_cxy IS NOT NULL AND gnss_cxz IS NOT NULL AND gnss_cyy IS NOT NULL AND gnss_cyz IS NOT NULL AND gnss_czz IS NOT NULL").fetchall() @@ -573,6 +800,15 @@ class Datenbankzugriff: return liste_beobachtungen def get_beobachtungen_nivellement(self) -> list[Any]: + """Liest Nivellementbeobachtungen aus der Tabelle Beobachtungen. + + Es werden nur Datensätze zurückgegeben, bei denen alle Nivellementfelder Daten enthalten + und niv_ausschalten = 0 ist, also diese Beobachtung in der Ausgleichung verwendet wird. + + :return: Liste von Tupeln (beobachtungenID, punktnummer_sp, punktnummer_zp, niv_dh, niv_strecke, niv_anz_standpkte). + :rtype: list + """ + con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_beobachtungen = cursor.execute(f"SELECT beobachtungenID, punktnummer_sp, punktnummer_zp, niv_dh, niv_strecke, niv_anz_standpkte FROM Beobachtungen WHERE niv_dh IS NOT NULL AND niv_strecke IS NOT NULL AND niv_anz_standpkte IS NOT NULL AND niv_ausschalten = 0").fetchall() @@ -581,6 +817,15 @@ class Datenbankzugriff: return liste_beobachtungen def get_datumskoordinate(self) -> list[Any]: + """Liest die aktuell gesetzten Datumskoordinaten aus der Tabelle Netzpunkte. + + Die Rückgabe erfolgt als Liste von Symbolnamen der Form "X", "Y" + und "Z". + + :return: Liste der Datumskoordinatenbezeichner. + :rtype: list + """ + # Abragen der Koordinaten mit einer 1 im Attribut datumskoordinate_*, da diese für die Lagerung verwendet werden sollen. con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_datumskoordinate_x = cursor.execute( @@ -593,6 +838,7 @@ class Datenbankzugriff: cursor.close() con.close() + # Hinzufügen der jeweiligen Punktnummer als Symbol mit X, Y oder Z-Präfix zur Rückgabeliste liste_datumskoordinaten = [] if liste_datumskoordinate_x != []: for datumskoordinate in liste_datumskoordinate_x: @@ -610,6 +856,15 @@ class Datenbankzugriff: return liste_datumskoordinaten def get_stabw_AA_Netzpunkte(self) -> dict[Any, Any]: + """Liest Vorinformationen zur Standardabweichung der Netzpunkte aus der Tabelle Netzpunkte. + + Die Rückgabe erfolgt als Dictionary mit Schlüsseln der Form "StabwAA_X", + "StabwAA_Y" und "StabwAA_Z". + + :return: Dictionary der Vorinformationen zur Standardabweichung je Koordinate. + :rtype: dict + """ + # Abfragen aller Punktnummern und s0 apriori Vorinformationen aus der Datenbank, wenn die Vorinformationen vorliegen. con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_stabwAA_x = cursor.execute(f"SELECT punktnummer, stabw_vorinfo_x FROM Netzpunkte WHERE stabw_vorinfo_x IS NOT NULL").fetchall() @@ -621,6 +876,7 @@ class Datenbankzugriff: cursor.close() con.close() + # Erstellen des Rückgabedictionaries. dict_stabwAA = {} for stabwAA_x in liste_stabwAA_x: punktnummer = str(stabwAA_x[0]).strip() @@ -640,6 +896,17 @@ class Datenbankzugriff: return dict_stabwAA def get_gnss_beobachtungen_punktnummern(self, gnss_komponente: str) -> list[Any]: + """Liest GNSS-Beobachtungen (ID, Standpunkt, Zielpunkt) für eine GNSS-Komponente. + + Es werden nur Datensätze berücksichtigt, bei denen die geforderte Komponente sowie alle + zugehörigen GNSS-Genauigkeitsangaben (s0 und Kovarianzelemente) vorhanden sind. + Zusätzlich wird das jeweilige Ausschalt-Attribut berücksichtigt. + + :param gnss_komponente: Name der GNSS-Basislinienkomponente (z. B. "gnss_bx", "gnss_by", "gnss_bz"). + :type gnss_komponente: str + :return: Liste von Tupeln (beobachtungenID, punktnummer_sp, punktnummer_zp). + :rtype: list + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() sql = f"""SELECT beobachtungenID, punktnummer_sp, punktnummer_zp @@ -662,6 +929,15 @@ class Datenbankzugriff: return liste_gnss_beobachtungen def get_nivellement_beobachtungen_punktnummern(self) -> list[Any]: + """Liest Beobachtungen vom geometrischen Nivellement (ID, Standpunkt, Zielpunkt) aus der Tabelle Beobachtungen. + + Es werden nur Datensätze berücksichtigt, bei denen alle Attribute gesetzt sind + und niv_ausschalten = 0 ist. + + :return: Liste von Tupeln (beobachtungenID, punktnummer_sp, punktnummer_zp). + :rtype: list + """ + con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_nivellement_beobachtungen = cursor.execute(f"SELECT beobachtungenID, punktnummer_sp, punktnummer_zp FROM Beobachtungen WHERE niv_dh IS NOT NULL AND niv_strecke IS NOT NULL AND niv_anz_standpkte IS NOT NULL AND niv_ausschalten = 0").fetchall() @@ -670,6 +946,11 @@ class Datenbankzugriff: return liste_nivellement_beobachtungen def get_varianzkomponentenschaetzung(self) -> list[Any]: + """Liest alle Einträge der Varianzkomponentenschätzung aus der Datenbank. + + :return: Liste von Tupeln (varianzkomponenteID, instrumenteID, beobachtungsgruppe, varianz_varianzkomponentenschaetzung). + :rtype: list + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_varianzkomponenten = cursor.execute(f"SELECT varianzkomponenteID, instrumenteID, beobachtungsgruppe, varianz_varianzkomponentenschaetzung FROM Varianzkomponentenschaetzung").fetchall() @@ -677,12 +958,4 @@ class Datenbankzugriff: con.close() return liste_varianzkomponenten - def get_s0_apriori(self) -> list[Any]: - con = sqlite3.connect(self.pfad_datenbank) - cursor = con.cursor() - liste_s0_apriori = cursor.execute(f"SELECT varianzkomponenteID, instrumenteID, beobachtungsgruppe, varianz_varianzkomponentenschaetzung, s0_apriori_vorherige_iteration FROM Varianzkomponentenschaetzung").fetchall() - cursor.close() - con.close() - return liste_s0_apriori - diff --git a/Export.py b/Export.py index 421fb73..f69186c 100644 --- a/Export.py +++ b/Export.py @@ -1,19 +1,41 @@ import csv - +from datetime import datetime import numpy as np - import os import webbrowser -from datetime import datetime - class Export: - def __init__(self) -> None: - pass + """Hilfsfunktionen zum Exportieren von Ergebnissen und Protokollen. + + Die Klasse stellt Methoden zur Verfügung für: + + - Export von Matrizen in CSV-Dateien, + - Export von Ausgleichungsergebnissen (Skalare und Matrizen) in CSV-Dateien, + - Erzeugung und Speicherung eines HTML-Protokolls inklusive automatischem Öffnen im Browser. + """ @staticmethod def matrix_to_csv(dateiname: str, liste_spaltenbeschriftung: list, liste_zeilenbeschriftung: list, Matrix: np.matrix | sp.Matrix, beschriftung_kopfzeile: object = "") -> None: + """Schreibt eine Matrix mit Zeilen- und Spaltenbeschriftungen in eine CSV-Datei. + + Die Ausgabe erfolgt mit Semikolon als Trennzeichen. Die Kopfzeile enthält optional eine + zusätzliche Beschriftung sowie Spaltenbeschriftungen. + Zudem werden Zeilenbeschriftungen durchgeführt. + + :param dateiname: Pfad zu schreibenden CSV-Datei. + :type dateiname: str + :param liste_spaltenbeschriftung: Liste der Spaltenbeschriftungen. + :type liste_spaltenbeschriftung: list + :param liste_zeilenbeschriftung: Liste der Zeilenbeschriftungen. + :type liste_zeilenbeschriftung: list + :param Matrix: Zu exportierende Matrix. + :type Matrix: np.matrix | sp.Matrix + :param beschriftung_kopfzeile: Optionaler Eintrag in der linken oberen Zelle der Kopfzeile. + :type beschriftung_kopfzeile: object + :return: None + :rtype: None + """ with open(dateiname, "w", newline="", encoding="utf-8") as csvfile: writer = csv.writer(csvfile, delimiter=";") @@ -26,6 +48,7 @@ class Export: zeile_als_text = [zeilenbeschriftung] for eintrag in zeile: try: + # Dezimaltrenner von Punkt in Komma ändern, weil Python und Excel andere Konventionen vertreten. eintrag_text = str(eintrag).replace(".", ",") try: eintrag_text = float(eintrag_text) @@ -36,46 +59,24 @@ class Export: zeile_als_text.append(eintrag_text) writer.writerow(zeile_als_text) - @staticmethod - def ausgleichung_to_datei(dateiname: str, dict_ausgleichung: dict) -> None: - with open(dateiname, "w", newline="", encoding="utf-8") as csvfile: - writer = csv.writer(csvfile, delimiter=";") + def speichere_html_protokoll(metadaten: dict, ergebnisse: dict) -> None: + """Erzeugt ein HTML-Protokoll der Ausgleichungsergebnisse und speichert es als Datei. - writer.writerow(["Parameter", "Wert"]) + Es wird der Unterordner Protokolle angelegt, falls dieser noch nicht existiert. + Das Protokoll wird als HTML-Datei gespeichert und anschließend im Browser geöffnet. - for key, value in dict_ausgleichung.items(): + Erwartete Schlüssel in metadaten sind u. a. "projekt", "bearbeiter" und "datum". + Erwartete Schlüssel in ergebnisse sind u. a. "df_globaltest", "df_redundanz", + "df_ellipsen", "df_konfidenzellipsen", "df_koordinaten_geozentrisch_kartesisch" + und "df_koordinaten_utm". Die zugehörigen Werte müssen die Methode to_html bereitstellen. - if hasattr(value, "tolist"): - rows = value.rows - cols = value.cols - - writer.writerow([key, f"Matrix {rows}x{cols}"]) - - for i, zeile in enumerate(value.tolist()): - zeile_als_text = [f"{key}_zeile_{i+1}"] - for eintrag in zeile: - try: - eintrag_float = float(eintrag) - eintrag_text = f"{eintrag_float}".replace(".", ",") - try: - eintrag_text = float(eintrag_text) - except: - eintrag_text = eintrag_text - except Exception: - eintrag_text = str(eintrag) - zeile_als_text.append(eintrag_text) - writer.writerow(zeile_als_text) - - else: - try: - value_float = float(value) - value_text = f"{value_float}".replace(".", ",") - except Exception: - value_text = str(value) - - writer.writerow([key, value_text]) - - def speichere_html_protokoll(metadaten, ergebnisse): + :param metadaten: Dictionary mit Metadaten zum Protokoll. + :type metadaten: dict + :param ergebnisse: Dictionary mit Ergebnisobjekten (z. B. DataFrames) zur HTML-Ausgabe. + :type ergebnisse: dict + :return: None + :rtype: None + """ # Pfad für den Ordner erstellen ordner = "Protokolle" if not os.path.exists(ordner): diff --git a/Funktionales_Modell.py b/Funktionales_Modell.py index 75cbf59..cd772ae 100644 --- a/Funktionales_Modell.py +++ b/Funktionales_Modell.py @@ -1,30 +1,55 @@ -from typing import Any - +import numpy as np from numpy import ndarray, dtype +import sympy as sp from sympy import MutableDenseMatrix from sympy.matrices.expressions.matexpr import MatrixElement +from typing import Any -from Datenbank import Datenbankzugriff -import sympy as sp -from Export import Export from Berechnungen import Berechnungen -import numpy as np -import importlib +from Datenbank import Datenbankzugriff +from Export import Export from Koordinatentransformationen import Transformationen -from pathlib import Path -import pandas as pd -import numpy as np -import sympy as sp - - - class FunktionalesModell: + """Aufstellung von Beobachtungsgleichungen und der Jacobi-Matrix. + + Die Klasse stellt Methoden zur Verfügung für: + + - symbolische Aufstellung der Jacobi-Matrix für Tachymeter-, GNSS- und Nivellementbeobachtungen, + - numerische Auswertung der symbolischen Jacobi-Matrix über Substitutionen und Lambdify, + - Aufbau des Beobachtungsvektors (numerisch) und des Näherungs-Beobachtungsvektors (symbolisch/numerisch), + - Aufbau des Unbekanntenvektors (symbolisch/numerisch) inklusive Iterationsfortschreibung, + - Berechnung des Verbesserungsvektors dl = l − f(x0) mit Winkel-Normierung für Richtungen, + - Erstellung und Aktualisierung eines Substitutions-Dictionaries für alle im Modell verwendeten Symbole. + + Die grundlegende Funktionsweise der Matrixdefinition lautet: + + 1) Einmaligen Aufbauen der Symbolischen Matrix einmalig + 2) In jeder Iteration Substituieren der Symbolischen Matrizen in Numerische np.asarrays + """ + def __init__(self, pfad_datenbank: str, a: float, b: float, pfad_tif_quasigeoidundolation: str = None) -> None: + """Initialisiert das funktionale Modell. + + Legt die Ellipsoidparameter a und b fest, initialisiert Hilfsklassen (Berechnungen, Datenbankzugriff, Transformationen) + und erzeugt das Substitutions-Dictionary für das geozentrisch-kartesische System. + + :param pfad_datenbank: Pfad zur SQLite-Datenbank. + :type pfad_datenbank: str + :param a: Große Halbachse a des Referenzellipsoids in Meter. + :type a: float + :param b: Kleine Halbachse b des Referenzellipsoids in Meter. + :type b: float + :param pfad_tif_quasigeoidundolation: Pfad zu Quasigeoidundulationsdaten als GeoTIFF vom BKG für Transformationen (optional). + :type pfad_tif_quasigeoidundolation: str | None + :return: None + :rtype: None + """ self.pfad_datenbank = pfad_datenbank self.a = a self.b = b self.berechnungen = Berechnungen(self.a, self.b) + self.db_zugriff = Datenbankzugriff(self.pfad_datenbank) self.trafos = Transformationen(pfad_datenbank) self.pfad_tif_quasigeoidundolation = pfad_tif_quasigeoidundolation self.substitutionen_dict = self.dict_substitutionen_uebergeordnetes_system() @@ -35,25 +60,43 @@ class FunktionalesModell: self.func_u0 = None self.liste_beobachtungsvektor_symbolisch = None - def jacobi_matrix_symbolisch(self, datumsfestlegung: str = None, liste_unbekannte_datumsfestlegung: list = None) -> tuple[MutableDenseMatrix | MatrixElement | list[Any] | Any, list[Any], list[Any]] | None: - #liste_beobachtungsarten = ["tachymeter_distanz", "tachymeter_richtung", "tachymeter_zenitwinkel"] + """Erstellt die symbolische Jacobi-Matrix (A-Matrix) für die Ausgleichung. + Es werden die in der Datenbank vorhandenen Beobachtungen (Tachymeter: Distanz/Richtung/Zenitwinkel, + GNSS: Basislinienkomponenten bx/by/bz, Geometrisches Nivellement: dh) eingelesen, daraus die benötigten Unbekannten + (X, Y, Z je Punkt sowie Orientierungen O je Richtungs-Beobachtungsgruppe) aufgebaut und anschließend + die symbolischen Gleichungen zur Jacobi-Matrix zusammengesetzt. + + Bei datumsfestlegung == "weiche Lagerung" werden Unbekannte so umsortiert, dass die zur Lagerung + zu verwendenden Unbekannten rechts stehen. Zusätzlich werden die Gleichungen der Anschlusspunkte (lA_*) als + Zusatzzeilen an A angehängt. + + Die symbolische Jacobi-Matrix wird als CSV in Zwischenergebnisse\\Jacobi_Matrix_Symbolisch.csv exportiert. + + :param datumsfestlegung: Art der Datumsfestlegung (aktuell nur "weiche Lagerung"). + :type datumsfestlegung: str | None + :param liste_unbekannte_datumsfestlegung: Liste der Symbolnamen der zur Lagerung zu verwendenden Unbekannten (z. B. ["X100", "Y100", "Z100"]). + :type liste_unbekannte_datumsfestlegung: list | None + :return: Tupel aus symbolischer Jacobi-Matrix, Liste der Unbekannten (Symbole) und Liste der Zeilenbeschriftungen (Beobachtungskennungen). Falls keine Beobachtungen vorliegen: None. + :rtype: tuple[MutableDenseMatrix | MatrixElement | list[Any] | Any, list[Any], list[Any]] | None + """ + + # Über die liste_beobachtungsarten wird festgelegt, welche Beobachtungsarten in der Ausgleichung verwendet werden. liste_beobachtungsarten = ["tachymeter_distanz", "tachymeter_richtung", "tachymeter_zenitwinkel", "gnss_basislinien", "geometrisches_nivellement"] - #liste_beobachtungsarten = ["tachymeter_distanz", "tachymeter_richtung", "tachymeter_zenitwinkel", "gnss_basislinien"] - db_zugriff = Datenbankzugriff(self.pfad_datenbank) + # Initialisieren der zu befüllenden Listen liste_beobachtungen_rohdaten_gnssbasislinien = [] liste_beobachtungen_rohdaten_tachymeter = [] liste_beobachtungen_rohdaten_nivellement = [] liste_punktnummern =[] - liste_orientierungsunbekannte = [] + # Für jede Beobachtungsart wird aus der Datenbank abgefragt, welche Beobachtungen vorliegen. Von diesen werden der Stand- und Zielpunkt gespeichert, um diese im weiteren Verlauf dieser Methode zu verarbeiten. for beobachtungsart in liste_beobachtungsarten: #Tachymeter Block if beobachtungsart.startswith("tachymeter"): - liste_id_standpunkt_zielpunkt = db_zugriff.get_beobachtungen_id_beobachtungsgruppe_standpunkt_zielpunkt(beobachtungsart) + liste_id_standpunkt_zielpunkt = self.db_zugriff.get_puntknummern_beobachtungen_tachymeter(beobachtungsart) for beobachtungenID, beobachtungsgruppeID, standpunkt, zielpunkt in liste_id_standpunkt_zielpunkt: liste_beobachtungen_rohdaten_tachymeter.append( @@ -68,23 +111,10 @@ class FunktionalesModell: if beobachtungsart == "tachymeter_richtung": if beobachtungsgruppeID not in liste_orientierungsunbekannte: liste_orientierungsunbekannte.append(beobachtungsgruppeID) - #GNSS Block - #if beobachtungsart == "gnss_basislinien": - # liste_id_standpunkt_zielpunkt = db_zugriff.get_gnss_beobachtungen_punktnummern() - - # for beobachtungenID, standpunkt, zielpunkt in liste_id_standpunkt_zielpunkt: - # standpunkt = str(standpunkt).strip() - # zielpunkt = str(zielpunkt).strip() - # liste_beobachtungen_rohdaten_gnssbasislinien.append((beobachtungsart, beobachtungenID, standpunkt, zielpunkt)) - - # if standpunkt not in liste_punktnummern: - # liste_punktnummern.append(standpunkt) - # if zielpunkt not in liste_punktnummern: - # liste_punktnummern.append(zielpunkt) #GNSS Block if beobachtungsart == "gnss_basislinien": - liste_id_standpunkt_zielpunkt = db_zugriff.get_gnss_beobachtungen_punktnummern("gnss_bx") + liste_id_standpunkt_zielpunkt = self.db_zugriff.get_gnss_beobachtungen_punktnummern("gnss_bx") for beobachtungenID, standpunkt, zielpunkt in liste_id_standpunkt_zielpunkt: standpunkt = str(standpunkt).strip() zielpunkt = str(zielpunkt).strip() @@ -94,7 +124,7 @@ class FunktionalesModell: if zielpunkt not in liste_punktnummern: liste_punktnummern.append(zielpunkt) - liste_id_standpunkt_zielpunkt = db_zugriff.get_gnss_beobachtungen_punktnummern("gnss_by") + liste_id_standpunkt_zielpunkt = self.db_zugriff.get_gnss_beobachtungen_punktnummern("gnss_by") for beobachtungenID, standpunkt, zielpunkt in liste_id_standpunkt_zielpunkt: standpunkt = str(standpunkt).strip() zielpunkt = str(zielpunkt).strip() @@ -104,7 +134,7 @@ class FunktionalesModell: if zielpunkt not in liste_punktnummern: liste_punktnummern.append(zielpunkt) - liste_id_standpunkt_zielpunkt = db_zugriff.get_gnss_beobachtungen_punktnummern("gnss_bz") + liste_id_standpunkt_zielpunkt = self.db_zugriff.get_gnss_beobachtungen_punktnummern("gnss_bz") for beobachtungenID, standpunkt, zielpunkt in liste_id_standpunkt_zielpunkt: standpunkt = str(standpunkt).strip() zielpunkt = str(zielpunkt).strip() @@ -116,7 +146,7 @@ class FunktionalesModell: if beobachtungsart == "geometrisches_nivellement": - liste_id_standpunkt_zielpunkt = db_zugriff.get_nivellement_beobachtungen_punktnummern() + liste_id_standpunkt_zielpunkt = self.db_zugriff.get_nivellement_beobachtungen_punktnummern() for beobachtungenID, standpunkt, zielpunkt in liste_id_standpunkt_zielpunkt: standpunkt = str(standpunkt).strip() @@ -129,13 +159,7 @@ class FunktionalesModell: if zielpunkt not in liste_punktnummern: liste_punktnummern.append(zielpunkt) - - - #if liste_beobachtungen_rohdaten_tachymeter == []: - # return None - - - #dict_punkt_symbole = {} + # Erstellen der Symbole für die Unbekannten (X, Y, Z und Orientierung) liste_unbekannte = [] for punkt in liste_punktnummern: @@ -151,6 +175,7 @@ class FunktionalesModell: dict_orientierung_symbole[orientierungsunbekannte] = O liste_unbekannte.append(O) + # Erstellen der Symbolischen Gleichungen für die Jacobimatrix liste_beobachtungsgleichungen_distanz =[] liste_zeilenbeschriftungen_distanz = [] @@ -161,39 +186,30 @@ class FunktionalesModell: liste_zeilenbeschriftungen_zenitwinkel = [] liste_beobachtungsgleichungen_gnssbasislinien = [] - liste_A_gnssbasislinien_zeilen = [] liste_zeilenbeschriftungen_gnssbasislinien = [] - liste_beobachtungsgleichungen_nivellement = [] liste_A_nivellement_zeilen = [] liste_zeilenbeschriftungen_nivellement = [] if liste_beobachtungen_rohdaten_tachymeter != []: for beobachtungsart, beobachtungenID, beobachtungsgruppeID, standpunkt, zielpunkt in liste_beobachtungen_rohdaten_tachymeter: + # Symbole erstellen X_sp, Y_sp, Z_sp = self.dict_punkt_symbole[standpunkt] X_zp, Y_zp, Z_zp = self.dict_punkt_symbole[zielpunkt] B_sp, L_sp = sp.symbols(f"B{standpunkt} L{standpunkt}") - alpha = sp.symbols(f"{beobachtungenID}_R_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") - zw = sp.symbols(f"{beobachtungenID}_ZW_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") - s = sp.symbols(f"{beobachtungenID}_SD_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") - azimut_berechnet = sp.symbols(f"azimut_berechnet_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") zw_berechnet = sp.symbols(f"zw_berechnet_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") s_berechnet = sp.symbols(f"strecke_berechnet_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") - + # Symbolische Gleichungen aufstellen if beobachtungsart == "tachymeter_distanz": beobachtungsgleichung = sp.sqrt((X_zp - X_sp) ** 2 + (Y_zp - Y_sp) ** 2 + (Z_zp - Z_sp) ** 2) liste_beobachtungsgleichungen_distanz.append(beobachtungsgleichung) liste_zeilenbeschriftungen_distanz.append( f"{beobachtungenID}_SD_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") - - elif beobachtungsart == "tachymeter_richtung": - - # for beobachtungenID, beobachtungsgruppeID, standpunkt, zielpunkt in liste_id_standpunkt_zielpunkt: d_r_dX_zp = ( (sp.sin(B_sp) * sp.cos(L_sp) * sp.sin(azimut_berechnet) - sp.sin(L_sp) * sp.cos(azimut_berechnet)) / ( s_berechnet * sp.sin(zw_berechnet))) @@ -207,6 +223,8 @@ class FunktionalesModell: d_r_dO_sp = -1 zeile_A_Matrix = [] + + # Symbolische Gleichungen zur Jacobimatrix hinzufügen for punkt in liste_punktnummern: if punkt == standpunkt: zeile_A_Matrix.extend([d_r_dX_sp, d_r_dY_sp, d_r_dZ_sp]) @@ -228,7 +246,7 @@ class FunktionalesModell: elif beobachtungsart == "tachymeter_zenitwinkel": - + # Symbolische Gleichungen aufstellen d_r_dX_zp = ((X_zp - X_sp) * sp.cos(zw_berechnet) - s_berechnet * sp.cos(B_sp) * sp.cos(L_sp)) / (s_berechnet ** 2 * sp.sin(zw_berechnet)) d_r_dX_sp = - d_r_dX_zp d_r_dY_zp = ((Y_zp - Y_sp) * sp.cos(zw_berechnet) - s_berechnet * sp.cos(B_sp) * sp.sin(L_sp)) / (s_berechnet ** 2 * sp.sin(zw_berechnet)) @@ -237,6 +255,8 @@ class FunktionalesModell: d_r_dZ_sp = - d_r_dZ_zp zeile_A_Matrix = [] + + # Symbolische Gleichungen zur Jacobimatrix hinzufügen for punkt in liste_punktnummern: if punkt == standpunkt: zeile_A_Matrix.extend([d_r_dX_sp, d_r_dY_sp, d_r_dZ_sp]) @@ -253,27 +273,10 @@ class FunktionalesModell: f"{beobachtungenID}_ZW_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}" ) - #if liste_beobachtungen_rohdaten_gnssbasislinien != []: - # for beobachtungsart, beobachtungenID, standpunkt, zielpunkt in liste_beobachtungen_rohdaten_gnssbasislinien: - # X_sp, Y_sp, Z_sp = self.dict_punkt_symbole[standpunkt] - # X_zp, Y_zp, Z_zp = self.dict_punkt_symbole[zielpunkt] - - # if beobachtungsart == "gnss_basislinien": - # beobachtungsgleichung_bx = X_zp - X_sp - # beobachtungsgleichung_by = Y_zp - Y_sp - # beobachtungsgleichung_bz = Z_zp - Z_sp - # liste_beobachtungsgleichungen_gnssbasislinien.append(beobachtungsgleichung_bx) - # liste_beobachtungsgleichungen_gnssbasislinien.append(beobachtungsgleichung_by) - # liste_beobachtungsgleichungen_gnssbasislinien.append(beobachtungsgleichung_bz) - # liste_zeilenbeschriftungen_gnssbasislinien.append( - # f"{beobachtungenID}_gnssbx_{standpunkt}_{zielpunkt}") - # liste_zeilenbeschriftungen_gnssbasislinien.append( - # f"{beobachtungenID}_gnssby_{standpunkt}_{zielpunkt}") - # liste_zeilenbeschriftungen_gnssbasislinien.append( - # f"{beobachtungenID}_gnssbz_{standpunkt}_{zielpunkt}") - + # GNSS-Basislinien if liste_beobachtungen_rohdaten_gnssbasislinien != []: for beobachtungsart, beobachtungenID, standpunkt, zielpunkt in liste_beobachtungen_rohdaten_gnssbasislinien: + # Symbolische Gleichungen aufstellen X_sp, Y_sp, Z_sp = self.dict_punkt_symbole[standpunkt] X_zp, Y_zp, Z_zp = self.dict_punkt_symbole[zielpunkt] @@ -296,10 +299,10 @@ class FunktionalesModell: f"{beobachtungenID}_gnssbz_{standpunkt}_{zielpunkt}") + # Geometrisches Nivellement if liste_beobachtungen_rohdaten_nivellement != []: for beobachtungsart, beobachtungenID, standpunkt, zielpunkt in liste_beobachtungen_rohdaten_nivellement: - X_sp, Y_sp, Z_sp = self.dict_punkt_symbole[standpunkt] - X_zp, Y_zp, Z_zp = self.dict_punkt_symbole[zielpunkt] + # Symbolische Gleichungen aufstellen B_sp, L_sp = sp.symbols(f"B{standpunkt} L{standpunkt}") B_zp, L_zp = sp.symbols(f"B{zielpunkt} L{zielpunkt}") @@ -312,6 +315,7 @@ class FunktionalesModell: d_r_dZ_zp = sp.sin(B_zp) d_r_dZ_sp = -sp.sin(B_sp) + # Symbolische Gleichungen zur Jacobimatrix hinzufügen zeile_A_Matrix = [] for punkt in liste_punktnummern: if punkt == standpunkt: @@ -329,6 +333,7 @@ class FunktionalesModell: f"{beobachtungenID}_niv_{standpunkt}_{zielpunkt}" ) + # Jacobimatrix aus den einzelnen Listen zusammensetzen, Sy,bolischen Unbekanntenvektor erstellen if liste_beobachtungsgleichungen_distanz: f_matrix_dist = sp.Matrix(liste_beobachtungsgleichungen_distanz) unbekanntenvektor = sp.Matrix(liste_unbekannte) @@ -354,15 +359,13 @@ class FunktionalesModell: A_gnssbasislinien = None if liste_A_nivellement_zeilen: - #f_matrix_nivellement = sp.Matrix(liste_beobachtungsgleichungen_nivellement) - #unbekanntenvektor = sp.Matrix(liste_unbekannte) - #A_nivellement = f_matrix_nivellement.jacobian(unbekanntenvektor) A_nivellement = sp.Matrix(liste_A_nivellement_zeilen) else: A_nivellement = None A_gesamt = None + # liste_zeilenbeschriftungen_gesamt enthält die Symbolischen Beobachtungen liste_zeilenbeschriftungen_gesamt = [] if A_dist is not None: @@ -400,9 +403,9 @@ class FunktionalesModell: if A_gesamt is None: return None + # Wenn eine weiche Lagerung erfolgt, werden die Unbekannten umsortiert, sodass die für die Lagerung zu verwendenden Unbekannten rechts in der Matrix aufgeführt werden. + # Zudem werden für die Anschlusspunkte weiter Gleichungen als "Beobachtungen" unten an die Jacobimatrix angefügt. if datumsfestlegung == "weiche Lagerung": - vertauschung = list(range(len(liste_unbekannte))) - if liste_unbekannte_datumsfestlegung is not None and liste_unbekannte_datumsfestlegung != []: liste_unbekannte_alt = list(liste_unbekannte) liste_unbekannte_datumsfestlegung = [str(u).strip() for u in liste_unbekannte_datumsfestlegung] @@ -420,7 +423,7 @@ class FunktionalesModell: A_gesamt = A_gesamt[:, vertauschung] liste_unbekannte = [liste_unbekannte_alt[i] for i in vertauschung] - # Zusatzgeleichungen der weichen Lagerung + # Zusatzgeleichungen der weichen Lagerung für die Anschlusspunkte anzhl_einheitsmatrix = len(liste_unbekannte_datumsfestlegung) if anzhl_einheitsmatrix > 0: nullenmatrix = sp.zeros(anzhl_einheitsmatrix, A_gesamt.shape[1] - anzhl_einheitsmatrix) @@ -430,24 +433,49 @@ class FunktionalesModell: for unbekannte_datumsfestlegung in liste_unbekannte_datumsfestlegung: liste_zeilenbeschriftungen_gesamt.append(f"lA_{unbekannte_datumsfestlegung}") - + # Symbolische Liste der Unbekannten speichern self.liste_unbekanntenvektor_symbolisch = liste_unbekannte + # Symbolische Jacobimatrix speichern Export.matrix_to_csv(r"Zwischenergebnisse\Jacobi_Matrix_Symbolisch.csv", liste_unbekannte, liste_zeilenbeschriftungen_gesamt, A_gesamt, "Beobachtung") return A_gesamt, liste_unbekannte, liste_zeilenbeschriftungen_gesamt - def jacobi_matrix_zahlen_iteration_0(self, A_symbolisch: sp.Matrix, koordinatenart: str, - liste_unbekannte: list = None, - liste_zeilenbeschriftungen_gesamt: list = None, - iterationsnummer: int = 0) -> ndarray[tuple[Any, ...], dtype[Any]] | None: + def jacobi_matrix_numerisch(self, A_symbolisch: sp.Matrix, koordinatenart: str, + liste_unbekannte: list = None, + liste_zeilenbeschriftungen_gesamt: list = None, + iterationsnummer: int = 0) -> ndarray[tuple[Any, ...], dtype[Any]] | None: + """Erstellt eine numerische Matrix aus einer symbolischen Jacobi-Matrix. + + Es wird sympy.lambdify verwendet, um die symbolische Matrix + mit den aktuellen Substitutionen effizient als Numpy-Array auszuwerten. Die Lambdify-Funktion wird + gecached (self.func_A0), um Rechenzeit bei Ausführen mehrerer Iterationen zu sparen. + + Die numerische Jacobi-Matrix wird als CSV in den Ordner Zwischenergebnisse exportiert. + + :param A_symbolisch: Symbolische Jacobi-Matrix. + :type A_symbolisch: sp.Matrix + :param koordinatenart: Bezeichnung der Koordinatenart (aktuell implementiert: "naeherung_us"). + :type koordinatenart: str + :param liste_unbekannte: Liste der Unbekannten (Symbole) in der Spaltenreihenfolge. + :type liste_unbekannte: list | None + :param liste_zeilenbeschriftungen_gesamt: Liste der Zeilenbeschriftungen (Beobachtungskennungen). + :type liste_zeilenbeschriftungen_gesamt: list | None + :param iterationsnummer: Iterationsnummer für Dateinamen der Zwischenergebnisse. + :type iterationsnummer: int + :return: Numerische Jacobi-Matrix als Numpy-Array. + :rtype: ndarray[tuple[Any, ...], dtype[Any]] | None + :raises ValueError: Falls Symbole in A_symbolisch enthalten sind, für die keine Substitutionen vorhanden sind. + """ + + # Symbolischen Beobachtungsvektor als Instanzvariable speichern self.liste_beobachtungsvektor_symbolisch = [str(x) for x in liste_zeilenbeschriftungen_gesamt] + # Wenn es sich um geozentrisch-kartesischen Koordinaten handelt, wird die Sympy-Methode Lambdify verwendet, um die Symbole aus der vorherigen Methode jacobi_matrix_symbolisch in Numerische Zahlen umzuwandeln. + # Zur Ersparnis von Rechenzeit werden die numerischen Zahlen als Numpy-Werte behandelt. if koordinatenart == "naeherung_us": - #A_numerisch = A_symbolisch.xreplace(self.substitutionen_dict) if self.func_A0 is None: - #self.liste_symbole_lambdify = sorted(self.substitutionen_dict.keys(), key=lambda s: str(s)) self.func_A0 = sp.lambdify( self.liste_symbole_lambdify, A_symbolisch, @@ -455,45 +483,43 @@ class FunktionalesModell: cse=True ) + # Überprüfung, ob alle in der Symbolischen Matrix enthaltenen Symbole substituiert werden können. Ist ein Symbol nicht durch einen numerischen Wert ersetzbar, wird eine Fehlermeldung ausgegeben. fehlend = [s for s in self.liste_symbole_lambdify if s not in self.substitutionen_dict] if fehlend: - Export.matrix_to_csv( - r"Zwischenergebnisse\fehlende_substitutionen_A.csv", - [""], - [str(s) for s in fehlend], - sp.Matrix([[str(s)] for s in fehlend]), - "fehlend" - ) raise ValueError(f"Fehlende Substitutionen in A: {[str(s) for s in fehlend[:30]]}") + liste_werte = [self.substitutionen_dict[s] for s in self.liste_symbole_lambdify] - #A_numerisch = sp.Matrix(self.func_A0(*liste_werte)) A_numerisch = np.asarray(self.func_A0(*liste_werte), dtype=float) - Export.matrix_to_csv(fr"Zwischenergebnisse\{iterationsnummer}Jacobi_Matrix_Numerisch_Iteration0.csv", liste_unbekannte, + Export.matrix_to_csv(fr"Zwischenergebnisse\{iterationsnummer}Jacobi_Matrix_Numerisch.csv", liste_unbekannte, liste_zeilenbeschriftungen_gesamt, A_numerisch, "Beobachtung") - condA = float(np.linalg.cond(A_numerisch)) - rankA = int(np.linalg.matrix_rank(A_numerisch)) - Export.matrix_to_csv( - fr"Zwischenergebnisse\{iterationsnummer}_Jacobi_Matrix_Stats.csv", - [""], - ["condA", "rankA"], - np.array([[condA], [rankA]], dtype=float), - "Wert" - ) - return A_numerisch else: - print("Koordinaten noch nicht implementiert!") + print(f"Die Koordinatenart {koordinatenart} ist noch nicht im Programm implementiert!") def beobachtungsvektor_numerisch(self, liste_beobachtungsvektor_symbolisch: list) -> MutableDenseMatrix: + """Erstellt den numerischen Beobachtungsvektor aus symbolischen Beobachtungskennungen. + + Die Einträge des symbolischen Beobachtungsvektors werden über self.substitutionen_dict substituiert. + Anschlusspunkte der weichen Lagerung (lA_*) werden gesondert behandelt, indem das Präfix entfernt wird. + + Der numerische Beobachtungsvektor wird als CSV-Datei in Zwischenergebnisse\\Beobachtungsvektor_Numerisch.csv exportiert. + + :param liste_beobachtungsvektor_symbolisch: Liste symbolischer Beobachtungsbezeichnungen (Strings). + :type liste_beobachtungsvektor_symbolisch: list + :return: Numerischer Beobachtungsvektor als SymPy-Matrix (Spaltenvektor). + :rtype: MutableDenseMatrix + """ liste_beobachtungsvektor_numerisch = [] for beobachtung_symbolisch in liste_beobachtungsvektor_symbolisch: beobachtung_symbolisch = str(beobachtung_symbolisch).strip() + # Die Anschlusspunkte für die weiche Lagerung (lA) werden gesondert bearbeitet, weil die Symbole anders aufgebaut sind. if beobachtung_symbolisch.startswith("lA_"): beobachtung_symbolisch = str(beobachtung_symbolisch.split("_", 1)[1]).strip() + # Substituieren des symbolischen Beobachtungsvektors liste_beobachtungsvektor_numerisch.append(self.substitutionen_dict[sp.Symbol(beobachtung_symbolisch)]) beobachtungsvektor_numerisch = sp.Matrix(liste_beobachtungsvektor_numerisch) @@ -501,10 +527,24 @@ class FunktionalesModell: return beobachtungsvektor_numerisch def beobachtungsvektor_naeherung_symbolisch(self, liste_beobachtungsvektor_symbolisch: list) -> sp.Matrix: + """Erstellt den symbolischen Näherungs-Beobachtungsvektor f(x0). + + Aus den Beobachtungskennungen werden Stand-/Zielpunkte und Beobachtungsarten abgeleitet und die + entsprechenden symbolischen Beobachtungsgleichungen aufgebaut (z. B. geometrische Distanz, GNSS-Differenzen, + Richtungs-/Zenitwinkel-Symbole, Geometrisches Nivellement über Normalhöhen). + + Der symbolische Näherungs-Beobachtungsvektor wird als CSV <-Datei in Zwischenergebnisse\\Beobachtungsvektor_Näherung_Symbolisch.csv exportiert. + + :param liste_beobachtungsvektor_symbolisch: Liste symbolischer Beobachtungskennungen (Strings). + :type liste_beobachtungsvektor_symbolisch: list + :return: Symbolischer Näherungs-Beobachtungsvektor als SymPy-Matrix. + :rtype: sp.Matrix + """ liste_beobachtungsgleichungen = [] self.dict_punkt_symbole = {} liste_punktnummern = [] + # Speichern der Punktnummern der Stand- und Zeilpunkte der Beobachtungen, um daraus später die Symbole für die Unbekannten zu erstellen. for beobachtung_symbolisch in liste_beobachtungsvektor_symbolisch: aufgeteilt = str(beobachtung_symbolisch).strip().split("_") if aufgeteilt[0] == "lA": @@ -528,6 +568,7 @@ class FunktionalesModell: if zielpunkt not in liste_punktnummern: liste_punktnummern.append(zielpunkt) + # Erstellen der Symbole für die Unbekannten for punkt in liste_punktnummern: X, Y, Z = sp.symbols(f"X{punkt} Y{punkt} Z{punkt}") self.dict_punkt_symbole[str(punkt)] = (X, Y, Z) @@ -541,60 +582,30 @@ class FunktionalesModell: continue if aufgeteilt[1] == "SD" or aufgeteilt[1] == "R" or aufgeteilt[1] == "ZW": - - #beobachtungen_ID = aufgeteilt[0] beobachtungsart = aufgeteilt[1] # "SD", "R", "ZW" beobachtungsgruppeID = aufgeteilt[2] standpunkt = str(aufgeteilt[3]).strip() zielpunkt = str(aufgeteilt[4]).strip() + # Hinzufügen der Symbole zum dict_punkt_symbole als Vorbereitung auf die spätere Substitution der Symbole durch numerische Werte X_sp, Y_sp, Z_sp = self.dict_punkt_symbole[standpunkt] X_zp, Y_zp, Z_zp = self.dict_punkt_symbole[zielpunkt] + # Aufstellen der Symbolischen Gleichungen dX = X_zp - X_sp dY = Y_zp - Y_sp dZ = Z_zp - Z_sp - s = sp.sqrt(dX ** 2 + dY ** 2 + dZ ** 2) # Schrägstrecke - - B_sp = sp.Symbol(f"B{standpunkt}") - L_sp = sp.Symbol(f"L{standpunkt}") if beobachtungsart == "SD": - s_geom = sp.sqrt(dX ** 2 + dY ** 2 + dZ ** 2) liste_beobachtungsgleichungen.append(s_geom) elif beobachtungsart == "R": - - #O_sp = sp.Symbol(f"O_{beobachtungsgruppeID}") r_sp_zp = sp.Symbol(f"richtung_berechnet_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") - - # Lokales System: x_loc = Nord, y_loc = Ost - #x_loc = (-sp.sin(B_sp) * sp.cos(L_sp)) * dX + (-sp.sin(B_sp) * sp.sin(L_sp)) * dY + (sp.cos(B_sp)) * dZ - #y_loc = (-sp.sin(L_sp)) * dX + (sp.cos(L_sp)) * dY - - #a12 = sp.atan2(y_loc, x_loc) - - # Richtung nach Otepka: r = a12 - O liste_beobachtungsgleichungen.append(r_sp_zp) - elif beobachtungsart == "ZW": - - #dX = X_zp - X_sp - - #dY = Y_zp - Y_sp - - #dZ = Z_zp - Z_sp - - #s_geom = sp.sqrt(dX ** 2 + dY ** 2 + dZ ** 2) - - #z_loc = (sp.cos(B_sp) * sp.cos(L_sp)) * dX + (sp.cos(B_sp) * sp.sin(L_sp)) * dY + (sp.sin(B_sp)) * dZ - - #zw = sp.acos(z_loc / s_geom) - zw_sp_zp = sp.Symbol(f"zw_berechnet_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") - liste_beobachtungsgleichungen.append(zw_sp_zp) if aufgeteilt[1] == "gnssbx" or aufgeteilt[1] == "gnssby" or aufgeteilt[1] == "gnssbz": @@ -617,7 +628,6 @@ class FunktionalesModell: liste_beobachtungsgleichungen.append(dZ) if aufgeteilt[1] == "niv": - beobachtungsart = aufgeteilt[1] standpunkt = str(aufgeteilt[2]).strip() zielpunkt = str(aufgeteilt[3]).strip() @@ -628,18 +638,36 @@ class FunktionalesModell: liste_beobachtungsgleichungen.append(niv_sp_zp) + # Finalisieren des Symbolischen Beobachtungsvektors und exportieren als csv-Datei. beobachtungsvektor_naeherung_symbolisch = sp.Matrix(liste_beobachtungsgleichungen) Export.matrix_to_csv(r"Zwischenergebnisse\Beobachtungsvektor_Näherung_Symbolisch.csv", [""], liste_beobachtungsvektor_symbolisch, beobachtungsvektor_naeherung_symbolisch, "Beobachtungsvektor") return beobachtungsvektor_naeherung_symbolisch - def beobachtungsvektor_naeherung_numerisch_iteration0(self, liste_beobachtungsvektor_symbolisch: list, - beobachtungsvektor_naeherung_symbolisch: sp.Matrix, - iterationsnummer: int = 0) -> ndarray[tuple[int, int], Any]: - #beobachtungsvektor_naeherung_numerisch_iteration0 = beobachtungsvektor_naeherung_symbolisch.xreplace(self.substitutionen_dict) + def beobachtungsvektor_naeherung_numerisch(self, liste_beobachtungsvektor_symbolisch: list, + beobachtungsvektor_naeherung_symbolisch: sp.Matrix, + iterationsnummer: int = 0) -> ndarray[tuple[int, int], Any]: + """Erstellt einen numerischen Vektor aus dem smbolischen Näherungs-Beobachtungsvektor. + + Es wird sympy.lambdify verwendet, um den in beobachtungsvektor_naeherung_symbolisch erzeugten + symbolischen Vektor effizient als Numpy-Array auszuwerten. Die Lambdify-Funktion wird gecached + (self.func_beob0), um Rechenzeit in Iterationen zu sparen. + + Der numerische Näherungs-Beobachtungsvektor wird als CSV-Datei im Ordner Zwischenergebnisse exportiert. + + :param liste_beobachtungsvektor_symbolisch: Liste symbolischer Beobachtungskennungen (Strings). + :type liste_beobachtungsvektor_symbolisch: list + :param beobachtungsvektor_naeherung_symbolisch: Symbolischer Näherungs-Beobachtungsvektor f(x0). + :type beobachtungsvektor_naeherung_symbolisch: sp.Matrix + :param iterationsnummer: Iterationsnummer für Dateinamen der Zwischenergebnisse. + :type iterationsnummer: int + :return: Numerischer Näherungs-Beobachtungsvektor als Numpy-Array (Spaltenvektor). + :rtype: ndarray[tuple[int, int], Any] + """ + # Es wird die Sympy-Methode Lambdify verwendet, um die Symbole aus der vorherigen Methode beobachtungsvektor_naeherung_symbolisch in Numerische Zahlen umzuwandeln. + # Zur Ersparnis von Rechenzeit werden die numerischen Zahlen als Numpy-Werte behandelt. if self.func_beob0 is None: - #self.liste_symbole_lambdify = sorted(self.substitutionen_dict.keys(), key=lambda s: str(s)) self.func_beob0 = sp.lambdify( self.liste_symbole_lambdify, beobachtungsvektor_naeherung_symbolisch, @@ -648,17 +676,26 @@ class FunktionalesModell: ) liste_werte = [self.substitutionen_dict[s] for s in self.liste_symbole_lambdify] - #beobachtungsvektor_naeherung_numerisch_iteration0 = sp.Matrix(self.func_beob0(*liste_werte)) - beobachtungsvektor_naeherung_numerisch_iteration0 = np.asarray(self.func_beob0(*liste_werte), + beobachtungsvektor_naeherung_numerisch = np.asarray(self.func_beob0(*liste_werte), dtype=float).reshape(-1, 1) Export.matrix_to_csv(fr"Zwischenergebnisse\{iterationsnummer}_Beobachtungsvektor_Näherung_Numerisch_Iteration0.csv", [""], - liste_beobachtungsvektor_symbolisch, beobachtungsvektor_naeherung_numerisch_iteration0, + liste_beobachtungsvektor_symbolisch, beobachtungsvektor_naeherung_numerisch, "Beobachtungsvektor") - return beobachtungsvektor_naeherung_numerisch_iteration0 + return beobachtungsvektor_naeherung_numerisch def unbekanntenvektor_symbolisch(self, liste_unbekannte: list) -> sp.Matrix: + """Erstellt den symbolischen Unbekanntenvektor. + + Der Unbekanntenvektor wird als SymPy-Matrix aufgebaut und als CSV-Datei in + Zwischenergebnisse\\Unbekanntenvektor_Symbolisch.csv exportiert. + + :param liste_unbekannte: Liste der Unbekannten (Symbole). + :type liste_unbekannte: list + :return: Symbolischer Unbekanntenvektor als SymPy-Matrix. + :rtype: sp.Matrix + """ unbekanntenvektor_symbolisch = sp.Matrix(liste_unbekannte) Export.matrix_to_csv(r"Zwischenergebnisse\Unbekanntenvektor_Symbolisch.csv", [""], liste_unbekannte, unbekanntenvektor_symbolisch, "Unbekanntenvektor") @@ -666,64 +703,82 @@ class FunktionalesModell: def unbekanntenvektor_numerisch(self, liste_unbekanntenvektor_symbolisch: list, unbekanntenvektor_symbolisch: sp.Matrix, - dX_Vektor: np.Matrix = None, - unbekanntenvektor_neumerisch_vorherige_Iteration: np.Matrix = None, + dX_Vektor: np.asarray = None, + unbekanntenvektor_numerisch_vorherige_Iteration: np.asarray = None, iterationsnummer: int = 0) -> ndarray[tuple[int, int], Any] | ndarray[tuple[Any, ...], dtype[Any]]: + """Erstellt den numerischen Unbekanntenvektor jeder Iteration. + + Wenn keine Iterationsfortschreibung übergeben wird (dX_Vektor und unbekanntenvektor_numerisch_vorherige_Iteration sind None), + werden die aktuellen Substitutionen genutzt und daraus der numerische Unbekanntenvektor aufgebaut. + + Wenn dX_Vektor und ein Unbekanntenvektor der vorherigen Iteration übergeben werden, wird der neue + Unbekanntenvektor aus der Summe gebildet: x_neu = x_alt + dX. + + Anschließend wird self.substitutionen_dict auf Basis des neuen Unbekanntenvektors aktualisiert. + Der numerische Unbekanntenvektor wird als CSV-Datei in den Ordner Zwischenergebnisse exportiert. + + :param liste_unbekanntenvektor_symbolisch: Liste der Unbekannten (Symbole) in der Reihenfolge des numerischen Vektors. + :type liste_unbekanntenvektor_symbolisch: list + :param unbekanntenvektor_symbolisch: Symbolischer Unbekanntenvektor. + :type unbekanntenvektor_symbolisch: sp.Matrix + :param dX_Vektor: Verbesserungsvektor der aktuellen Iteration (optional). + :type dX_Vektor: np.asarray | None + :param unbekanntenvektor_numerisch_vorherige_Iteration: Numerischer Unbekanntenvektor der vorherigen Iteration (optional). + :type unbekanntenvektor_numerisch_vorherige_Iteration: np.asarray | None + :param iterationsnummer: Iterationsnummer für Dateinamen der Zwischenergebnisse. + :type iterationsnummer: int + :return: Numerischer Unbekanntenvektor als Numpy-Array + :rtype: ndarray[tuple[int, int], Any] | ndarray[tuple[Any, ...], dtype[Any]] + """ + self.liste_unbekanntenvektor_symbolisch = liste_unbekanntenvektor_symbolisch - #if not hasattr(self, "liste_unbekanntenvektor_symbolisch"): - # self.liste_unbekanntenvektor_symbolisch = liste_unbekanntenvektor_symbolisch - - if dX_Vektor is None and unbekanntenvektor_neumerisch_vorherige_Iteration is None: - #unbekanntenvektor_numerisch = unbekanntenvektor_symbolisch.xreplace(self.substitutionen_dict) - #if self.func_u0 is None: - # self.func_u0 = sp.lambdify( - # self.liste_symbole_lambdify, - # unbekanntenvektor_symbolisch, - # modules="numpy", - # cse=True - # ) + # Überprüfung, ob dX und der unbekanntenvektor aus der vorhigen Iteration übergeben wurden. Wenn ja, wird daraus der neue unbekanntenvektor nach der Iteration berechnet. + if dX_Vektor is None and unbekanntenvektor_numerisch_vorherige_Iteration is None: unbekanntenvektor_numerisch = np.asarray( [[float(self.substitutionen_dict[sym])] for sym in self.liste_unbekanntenvektor_symbolisch], dtype=float ).reshape(-1, 1) - #liste_werte = [self.substitutionen_dict[s] for s in self.liste_symbole_lambdify] - #unbekanntenvektor_numerisch = sp.Matrix(self.func_u0(*liste_werte)) - #unbekanntenvektor_numerisch = np.asarray(self.func_u0(*liste_werte), dtype=float).reshape(-1, 1) - - else: - #unbekanntenvektor_numerisch = unbekanntenvektor_neumerisch_vorherige_Iteration + dX_Vektor - unbekanntenvektor_neumerisch_vorherige_Iteration = np.asarray( - unbekanntenvektor_neumerisch_vorherige_Iteration, dtype=float).reshape(-1, 1) + unbekanntenvektor_numerisch_vorherige_Iteration = np.asarray( + unbekanntenvektor_numerisch_vorherige_Iteration, dtype=float).reshape(-1, 1) dX_Vektor = np.asarray(dX_Vektor, dtype=float).reshape(-1, 1) + unbekanntenvektor_numerisch = unbekanntenvektor_numerisch_vorherige_Iteration + dX_Vektor - unbekanntenvektor_numerisch = unbekanntenvektor_neumerisch_vorherige_Iteration + dX_Vektor - + # Aktualisieren des Dictionaries für die Subsitutionen in den anderen Methoden. self.substitutionen_dict = self.dict_substitutionen_uebergeordnetes_system(unbekanntenvektor_numerisch) - Export.matrix_to_csv(fr"Zwischenergebnisse\{iterationsnummer}_Unbekanntenvektor_Numerisch_Iteration0.csv", [""], + Export.matrix_to_csv(fr"Zwischenergebnisse\{iterationsnummer}_Unbekanntenvektor_Numerisch.csv", [""], liste_unbekanntenvektor_symbolisch, unbekanntenvektor_numerisch, "Unbekanntenvektor") return unbekanntenvektor_numerisch def unbekanntenvektor_numerisch_to_dict_unbekanntenvektor(self, liste_unbekanntenvektor_symbolisch: list, unbekanntenvektor_numerisch: np.Matrix) -> dict: - dict_unbekanntenvektor_numerisch = {} - #index = 0 + """Wandelt einen numerischen Unbekanntenvektor in ein Koordinatendictionary um. + Aus dem numerischen Unbekanntenvektor werden für alle Punkte die Koordinaten (X, Y, Z) extrahiert + und als sp.Matrix([X, Y, Z]) in einem Dictionary gespeichert. + + :param liste_unbekanntenvektor_symbolisch: Liste der Unbekannten (Symbole) in der Reihenfolge des numerischen Vektors. + :type liste_unbekanntenvektor_symbolisch: list + :param unbekanntenvektor_numerisch: Numerischer Unbekanntenvektor. + :type unbekanntenvektor_numerisch: np.Matrix + :return: Dictionary {punktnummer: sp.Matrix([X, Y, Z])}. + :rtype: dict + """ unbekanntenvektor_numerisch = np.asarray(unbekanntenvektor_numerisch, dtype=float).reshape(-1, 1) - idx = {str(sym): i for i, sym in enumerate(liste_unbekanntenvektor_symbolisch)} punktnummern = [] - for sym in liste_unbekanntenvektor_symbolisch: - name = str(sym) + for symbol in liste_unbekanntenvektor_symbolisch: + name = str(symbol) if name.startswith("X"): pn = name[1:] if pn not in punktnummern: punktnummern.append(pn) + # Annahme: Für jeden Punkt, für den eine X-Koordinate vorliegt, gibt es auch immer zwingend eine Y- und Z-Koordinate dict_koordinaten = {} for pn in punktnummern: iX = idx.get(f"X{pn}", None) @@ -739,19 +794,33 @@ class FunktionalesModell: float(unbekanntenvektor_numerisch[iZ, 0]), ]) - #dict_unbekanntenvektor_numerisch[punktnummer] = sp.Matrix([ - # float(unbekanntenvektor_numerisch[index, 0]), - # float(unbekanntenvektor_numerisch[index + 1, 0]), - # float(unbekanntenvektor_numerisch[index + 2, 0]) - #]) - #index += 3 return dict_koordinaten def berechnung_dl(self, beobachtungsvektor_numerisch: np.Matrix, beobachtungsvektor_naeherung_numerisch: sp.Matrix, - liste_beobachtungsvektor_symbolisch: list = None, iterationsnummer: int = 0) -> np.Matrix: + liste_beobachtungsvektor_symbolisch: list = None, iterationsnummer: int = 0) -> np.asarray: + """Berechnet den Verbesserungsvektor dl = l − f(x0). + + Der Vektor wird als Differenz aus numerischem Beobachtungsvektor und numerischem Näherungs-Beobachtungsvektor gebildet. + Für Richtungsbeobachtungen wird dl normiert. + + Der Vektor dl wird als CSV-Datei in den Ordner Zwischenergebnisse exportiert. + + :param beobachtungsvektor_numerisch: Numerischer Beobachtungsvektor l. + :type beobachtungsvektor_numerisch: np.Matrix + :param beobachtungsvektor_naeherung_numerisch: Numerischer Näherungs-Beobachtungsvektor f(x0). + :type beobachtungsvektor_naeherung_numerisch: sp.Matrix + :param liste_beobachtungsvektor_symbolisch: Optional: Liste der Beobachtungskennungen. + :type liste_beobachtungsvektor_symbolisch: list | None + :param iterationsnummer: Iterationsnummer für Dateinamen der Zwischenergebnisse. + :type iterationsnummer: int + :return: Verbesserungsvektor dl. + :rtype: np.asarray + """ dl = beobachtungsvektor_numerisch - beobachtungsvektor_naeherung_numerisch + # Umwandeln in einen Numpy-Array, um Rechenzeit im Vergleich zu einer sympy.MAtrix zu sparen dl = np.asarray(dl, dtype=float) + # Wird keine liste_beobachtungsvektor_symbolisch übergeben, wird diese aus der Instanzvariable verwendet. if liste_beobachtungsvektor_symbolisch is None: liste_beobachtungsvektor_symbolisch = self.liste_beobachtungsvektor_symbolisch @@ -770,11 +839,25 @@ class FunktionalesModell: return dl def dict_substitutionen_uebergeordnetes_system(self, - unbekanntenvektor_aus_iteration: np.Matrix = None) -> dict[Any, Any]: - db_zugriff = Datenbankzugriff(self.pfad_datenbank) - berechnungen = Berechnungen(self.a, self.b) + unbekanntenvektor_aus_iteration: np.asarray = None) -> dict[Any, Any]: + """Erstellt das Substitutions-Dictionary für das geozentrisch-kartesische System. + + Es werden (abhängig davon, ob ein Unbekanntenvektor aus einer Iteration übergeben wurde) die aktuellen + Koordinaten und daraus abgeleitete Größen erzeugt und als Substitutionen abgelegt, u. a.: + + - Punktkoordinaten X*, Y*, Z* sowie geodätische Breite B* und Länge L*, + - berechnete Größen aus Tachymeterbeziehungen (Azimut, Richtung, Zenitwinkel, Schrägstrecke), + - Normalhöhen NH (über Transformationen), + - Beobachtungssymbole der Messungen (Tachymeter, GNSS, Nivellement), + - Orientierungsunbekannte O. + + :param unbekanntenvektor_aus_iteration: Optionaler numerischer Unbekanntenvektor einer Iteration zur Aktualisierung der Substitutionen. + :type unbekanntenvektor_aus_iteration: np.asarray | None + :return: Dictionary mit SymPy-Symbolen als Key und numerischen Werten als Value. + :rtype: dict[Any, Any] + """ if unbekanntenvektor_aus_iteration is None: - dict_koordinaten = db_zugriff.get_koordinaten("naeherung_us") + dict_koordinaten = self.db_zugriff.get_koordinaten("naeherung_us") else: dict_koordinaten = self.unbekanntenvektor_numerisch_to_dict_unbekanntenvektor( self.liste_unbekanntenvektor_symbolisch, @@ -784,13 +867,15 @@ class FunktionalesModell: for punktnummer, matrix in dict_koordinaten.items(): dict_koordinaten[punktnummer] = [float(matrix[0]), float(matrix[1]), float(matrix[2])] + # Abfragen der Beobachtungen der einzelnen Beobachtungsarten aus der Tabelle Beobachtungen + liste_beobachtungen_tachymeter = self.db_zugriff.get_beobachtungen_from_beobachtungenid() + liste_beobachtungen_gnssbasislinien = self.db_zugriff.get_beobachtungen_gnssbasislinien() + liste_beobachtungen_nivellemente = self.db_zugriff.get_beobachtungen_nivellement() + liste_azimut_richtungen, dict_orientierungen = self.berechnungen.berechnung_richtung_azimut_zenitwinkel(self.pfad_datenbank, dict_koordinaten) - liste_beobachtungen_tachymeter = db_zugriff.get_beobachtungen_from_beobachtungenid() - liste_beobachtungen_gnssbasislinien = db_zugriff.get_beobachtungen_gnssbasislinien() - liste_beobachtungen_nivellemente = db_zugriff.get_beobachtungen_nivellement() - liste_azimut_richtungen, dict_orientierungen = berechnungen.berechnung_richtung_azimut_zenitwinkel(self.pfad_datenbank, dict_koordinaten) + # Erstellen von Dictionaries für die weitere Verarbeitung dict_koordinaten_xyz_kopie = {pn: [v[0], v[1], v[2]] for pn, v in dict_koordinaten.items()} - dict_koordinaten_B_L = berechnungen.geometrische_breite_laenge(dict_koordinaten_xyz_kopie) + dict_koordinaten_B_L = self.berechnungen.geodätische_breite_laenge(dict_koordinaten_xyz_kopie) punktnummern_niv = set() for beobachtungenID, pn_sp, pn_zp, niv_dh, niv_strecke, niv_anz_standpkte in liste_beobachtungen_nivellemente: @@ -806,8 +891,8 @@ class FunktionalesModell: dict_koordinaten_niv, self.pfad_tif_quasigeoidundolation) + # Zuweisen der Symbole zu dem jeweiligen numerischen Wert. Gespeichert wird dies in einem Dictionary. substitutionen = {} - for punktnummer, vektor in dict_koordinaten_B_L.items(): X_sym, Y_sym, Z_sym, B_sym, L_Sym = sp.symbols( f"X{punktnummer} Y{punktnummer} Z{punktnummer} B{punktnummer} L{punktnummer}") @@ -818,10 +903,6 @@ class FunktionalesModell: substitutionen[B_sym] = float(vektor[1]) substitutionen[L_Sym] = float(vektor[2]) - #for beobachtungsgruppeID, orientierung in dict_orientierungen.items(): - # O_sym = sp.symbols(f"O_{beobachtungsgruppeID}") - # substitutionen[O_sym] = float(orientierung) - for beobachtungsgruppeID, standpunkt, zielpunkt, azimut, richtung, zenitwinkel, schraegstrecke, orientierung in liste_azimut_richtungen: richtung_sym = sp.symbols(f"richtung_berechnet_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") substitutionen[richtung_sym] = float(richtung) @@ -839,8 +920,6 @@ class FunktionalesModell: normalhoehe_sym = sp.symbols(f"NH{punktnummer}") substitutionen[normalhoehe_sym] = float(koordinaten_utm[2]) - - for standpunkt, zielpunkt, beobachtungenID, beobachtungsgruppeID, tachymeter_richtung, tachymeter_zenitwinkel, tachymeter_distanz in liste_beobachtungen_tachymeter: alpha = sp.symbols(f"{beobachtungenID}_R_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") zw = sp.symbols(f"{beobachtungenID}_ZW_{beobachtungsgruppeID}_{standpunkt}_{zielpunkt}") @@ -852,7 +931,6 @@ class FunktionalesModell: substitutionen[alpha] = float(tachymeter_richtung) substitutionen[zw] = float(tachymeter_zenitwinkel) substitutionen[s] = float(tachymeter_distanz) - #substitutionen[sp.Symbol(f"O{beobachtungsgruppeID}")] = 0.0 for beobachtungenID, punktnummer_sp, punktnummer_zp, gnss_bx, gnss_by, gnss_bz, gnss_s0, gnss_cxx, gnss_cxy, gnss_cxz, gnss_cyy, gnss_cyz, gnss_czz in liste_beobachtungen_gnssbasislinien: beobachtungenID = str(beobachtungenID).strip() @@ -890,10 +968,6 @@ class FunktionalesModell: for orientierungs_id, wert in dict_O.items(): substitutionen[sp.Symbol(f"O{orientierungs_id}")] = float(wert) else: - #for standpunkt, zielpunkt, beobachtungenID, beobachtungsgruppeID, *_ in liste_beobachtungen_tachymeter: - # O_sym = sp.Symbol(f"O{beobachtungsgruppeID}") - # if O_sym not in substitutionen: - # substitutionen[O_sym] = 0 for beobachtungsgruppeID, standpunkt, zielpunkt, azimut, richtung, zenitwinkel, schraegstrecke, orientierung in liste_azimut_richtungen: O_sym = sp.Symbol(f"O{beobachtungsgruppeID}") if O_sym not in substitutionen: @@ -902,7 +976,18 @@ class FunktionalesModell: return substitutionen def unbekanntenvektor_numerisch_to_dict_orientierungen(self, liste_unbekanntenvektor_symbolisch: list, - unbekanntenvektor_numerisch: np.Matrix) -> dict[Any, Any]: + unbekanntenvektor_numerisch: np.asarray) -> dict[Any, Any]: + """Extrahiert Orientierungsparameter aus einem numerischen Unbekanntenvektor in ein Dictionary. + + Alle Unbekannten, deren Symbolname mit "O" beginnt, werden als als Dictionary in der Form {orientierungs_id: wert} zurückgegeben. + + :param liste_unbekanntenvektor_symbolisch: Liste der Unbekannten (Symbole) in der Reihenfolge des numerischen Vektors. + :type liste_unbekanntenvektor_symbolisch: list + :param unbekanntenvektor_numerisch: Numerischer Unbekanntenvektor. + :type unbekanntenvektor_numerisch: np.asarray + :return: Dictionary der Orientierungen je Beobachtungsgruppe. + :rtype: dict[Any, Any] + """ dict_O = {} unbekanntenvektor_numerisch = np.asarray(unbekanntenvektor_numerisch, dtype=float).reshape(-1, 1) for i, symbol in enumerate(liste_unbekanntenvektor_symbolisch): @@ -911,5 +996,4 @@ class FunktionalesModell: orientierungs_id = name[1:] dict_O[orientierungs_id] = float(unbekanntenvektor_numerisch[i, 0]) - return dict_O - + return dict_O \ No newline at end of file diff --git a/Import.py b/Import.py index 80aa6e0..bba96a5 100644 --- a/Import.py +++ b/Import.py @@ -1,37 +1,95 @@ import csv -import sqlite3 -from decimal import Decimal -from typing import Any -import re -import xml.etree.ElementTree as ET from decimal import Decimal, getcontext, ROUND_HALF_UP +import sqlite3 +from typing import Any +import xml.etree.ElementTree as ET + from Berechnungen import Berechnungen - - import Berechnungen class Import: - def __init__(self, pfad_datenbank: str) -> None: + """Importfunktionen für Messdaten und Näherungswerte in die SQLite-Datenbank. + + Die Klasse stellt Methoden zur Verfügung für: + + - Import von Näherungskoordinaten (LH-Tachymeter, GNSS/ECEF) in die Tabelle Netzpunkte, + - Import und Vorverarbeitung von Tachymeterbeobachtungen (CSV-Datei) inkl. optionaler Korrektur durch nicht gerundete Leica-JXL, + - Import von GNSS-Basislinien inkl. Kovarianzanteilen in die Tabelle Beobachtungen, + - Import von Nivellementdaten (Normalhöhen als Näherungen sowie RVVR-Züge als dh-Beobachtungen), + - einfache Plausibilitätsprüfungen (Duplikate, InstrumentenID, Dateiname bereits importiert). + """ + def __init__(self, pfad_datenbank: str, a : float, b : float) -> None: + """Initialisiert die Importklasse. + + Speichert den Pfad zur SQLite-Datenbank und initialisiert die Hilfsklasse Berechnungen. + + :param a: Große Halbachse a des Referenzellipsoids in Meter. + :type a: float + :param b: Kleine Halbachse b des Referenzellipsoids in Meter. + :type b: float + :param pfad_datenbank: Pfad zur SQLite-Datenbank. + :type pfad_datenbank: str + :return: None + :rtype: None + """ + self.a = a + self.b = b self.pfad_datenbank = pfad_datenbank - pass + self.berechnungen = Berechnungen.Berechnungen(self.a, self.b) def string_to_float(self, zahl: str) -> float: + """Konvertiert einen Zahlenstring in float. + + Ersetzt das Dezimaltrennzeichen "," durch "." und führt anschließend float() aus. + + :param zahl: Zahlenstring (z. B. "12,345" oder "12.345"). + :type zahl: str + :return: Zahlenwert als float. + :rtype: float + """ zahl = zahl.replace(',', '.') return float(zahl) def string_to_decimal(self, zahl: str) -> Decimal: + """Konvertiert einen Zahlenstring in Decimal. + + Ersetzt das Dezimaltrennzeichen "," durch "." und erzeugt anschließend ein Decimal. + + :param zahl: Zahlenstring (z. B. "12,345" oder "12.345"). + :type zahl: str + :return: Konvertierter Decimal-Wert. + :rtype: Decimal + """ zahl = zahl.replace(',', '.') return Decimal(zahl) def import_koordinaten_lh_tachymeter(self, pfad_datei: str) -> None: + """Importiert Näherungskoordinaten im lokalen Horizontsystem des Tachymeters in die Tabelle Netzpunkte. + + Die Datei wird semikolon-separiert erwartet. Pro Zeile werden Punktnummer sowie X/Y/Z-Näherung + ausgelesen und in Netzpunkte (naeherungx_lh, naeherungy_lh, naeherungz_lh) geschrieben. + + Vor dem Import werden zwei zentrale Prüfungen durchgeführt: + + - Punktnummern dürfen in der Importdatei nicht doppelt vorkommen, + - Punktnummern aus der Importdatei dürfen noch nicht in der Tabelle Netzpunkte vorhanden sein. + + :param pfad_datei: Pfad zur CSV-Datei mit Punktnummer und Koordinaten. + :type pfad_datei: str + :return: None + :rtype: None + """ liste_punktnummern = [] liste_punktnummern_vorher = [] liste_punktnummern_vorher_db = [] + + # Import_abbrechen wird True, sobald eine Fehler festgestellt wird. Als Folge wird der Import abgebrochen und eine Fehlermeldung mit Handlungshinweisen für den Benutzer ausgegeben. Import_abbrechen = False with open (pfad_datei, newline='', encoding='utf-8') as csvfile: + # Abfragen aller in der Tabelle Netzpunkte enthaltenen Punktnummern con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_punktnummern_db = [r[0] for r in cursor.execute("SELECT DISTINCT punktnummer FROM Netzpunkte").fetchall()] @@ -41,6 +99,7 @@ class Import: r = csv.reader(csvfile, delimiter=';') for row in r: liste_punktnummern.append(row[0]) + # Abbruch des Imports und Ausgabe einer Fehlermeldung, wenn ein Punkt doppelt in der Importdatei vorhanden ist. if row[0] in liste_punktnummern_vorher: Import_abbrechen = True print(f"Der Import wurde abgebrochen, weil in der Datei {pfad_datei} Punktnummern doppelt vorhanden sind. Bitte in der Datei ändern und Import wiederholen.") @@ -48,12 +107,14 @@ class Import: liste_punktnummern_vorher.append(row[0]) + # Abbruch des Imports und Ausgabe einer Fehlermeldung, wenn mindestens eine Punktnummer aus der Importdatei bereits in der Tabelle Netzpunkte vorhanden ist. if row[0] in liste_punktnummern_db: Import_abbrechen = True print(f"Der Import wurde abgebrochen, weil mindestens ein Teil der Punktnummern aus der Datei {pfad_datei} bereits in der Datenbank vorhanden ist. Bitte in der Datei ändern und Import wiederholen.") break liste_punktnummern_vorher_db.append(row[0]) + # Import durchführen, wenn keine Fehler festgestellt wurden if Import_abbrechen == False: con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() @@ -70,15 +131,30 @@ class Import: con.close() print("Der Import der Näherungskoordinaten wurde erfolgreich abgeschlossen") - def ist_rundung_von_jxl(self, wert_csv: str, wert_jxl_voll: str) -> bool: + def ist_rundung_von_jxl(self, wert_csv: str, wert_jxl: str) -> bool: + """Prüft, ob ein CSV-Wert eine Rundung eines JXL-Wertes (mit mehr Nachkommastellen) ist. + + Es wird geprüft, ob: + + - beide Werte echte Zahlen sind, + - der CSV-Wert weniger Nachkommastellen als der JXL-Wert besitzt, + - der JXL-Wert auf die Nachkommastellenanzahl des CSV-Wertes gerundet exakt dem CSV-Wert entspricht. + + :param wert_csv: Wert aus der CSV-Datei. + :type wert_csv: str + :param wert_jxl: Wert aus der JXL-Datei. + :type wert_jxl: str + :return: True, wenn wert_csv eine Rundung von wert_jxl auf weniger Nachkommastellen darstellt, sonst False. + :rtype: bool + """ wert_csv = str(wert_csv).strip() - wert_jxl_voll = str(wert_jxl_voll).strip() + wert_jxl = str(wert_jxl).strip() if ":ZH:" in wert_csv: wert_csv = wert_csv.split(":ZH:", 1)[0].strip() - if ":ZH:" in wert_jxl_voll: - wert_jxl_voll = wert_jxl_voll.split(":ZH:", 1)[0].strip() + if ":ZH:" in wert_jxl: + wert_jxl = wert_jxl.split(":ZH:", 1)[0].strip() def ist_zahl(text: str) -> bool: text = str(text).strip() @@ -115,9 +191,10 @@ class Import: if ist_zahl(wert_csv) == False: return False - if ist_zahl(wert_jxl_voll) == False: + if ist_zahl(wert_jxl) == False: return False + # Ermittlung der Anzahl Nachkommastellen in CSV-Datei und JXL-Datei anzahl_nachkommastellen_csv = 0 if "," in wert_csv: anzahl_nachkommastellen_csv = len(wert_csv.split(",", 1)[1]) @@ -125,16 +202,16 @@ class Import: anzahl_nachkommastellen_csv = len(wert_csv.split(".", 1)[1]) anzahl_nachkommastellen_jxl = 0 - if "," in wert_jxl_voll: - anzahl_nachkommastellen_jxl = len(wert_jxl_voll.split(",", 1)[1]) - elif "." in wert_jxl_voll: - anzahl_nachkommastellen_jxl = len(wert_jxl_voll.split(".", 1)[1]) + if "," in wert_jxl: + anzahl_nachkommastellen_jxl = len(wert_jxl.split(",", 1)[1]) + elif "." in wert_jxl: + anzahl_nachkommastellen_jxl = len(wert_jxl.split(".", 1)[1]) if anzahl_nachkommastellen_csv >= anzahl_nachkommastellen_jxl: return False wert_csv_decimal = self.string_to_decimal(wert_csv.replace(".", ",")) - wert_jxl_decimal = self.string_to_decimal(wert_jxl_voll.replace(".", ",")) + wert_jxl_decimal = self.string_to_decimal(wert_jxl.replace(".", ",")) q = Decimal("1") if anzahl_nachkommastellen_csv == 0 else Decimal("1." + ("0" * anzahl_nachkommastellen_csv)) wert_jxl_gerundet = wert_jxl_decimal.quantize(q, rounding=ROUND_HALF_UP) @@ -143,6 +220,13 @@ class Import: return wert_jxl_gerundet == wert_csv_gerundet def ist_zahl_csv(self, text: str) -> bool: + """Prüft, ob ein String in der CSV als Zahl interpretiert werden kann. + + :param text: Zu prüfender Text. + :type text: str + :return: True, wenn der Text eine Zahl ist, sonst False. + :rtype: bool + """ text = str(text).strip() if text == "": return False @@ -172,58 +256,92 @@ class Import: pfad_datei_csv: str, pfad_datei_jxl: str, pfad_datei_csv_out: str) -> dict: - Import_fortsetzen = True - getcontext().prec = 70 + """Korrigiert Tachymeterbeobachtungen in einer CSV-Datei über eine JXL-Datei (Leica XML). + Die JXL-Datei wird eingelesen und je StationID eine Sequenz an Beobachtungen (Zielpunktname, + Horizontal-/Vertikalkreisablesung, Schrägdistanz sowie Prismenhöhe) aufgebaut. Die Winkel werden + von Grad nach gon umgerechnet und in der Nachkommastellenauflösung der JXL gerundet. + + Anschließend wird die CSV zeilenweise verarbeitet: + + - Standpunktzeilen werden der zugehörigen StationID/IH aus der JXL zugeordnet, + - Beobachtungszeilen werden falls der CSV-Wert eine Rundung des JXL-Werts ist durch den JXL-Wert mit voller Nachkommastellenzahl ersetzt, + - Prismenhöhen (ZH) werden aus der JXL übernommen und in der letzten Spalte als ":ZH:" angehängt. + + Zusätzlich werden Fehler-Listen erstellt (fehlende IH, fehlende ZH, Standpunkte in CSV aber nicht in JXL). Diese werden dem Benutzer übergeben. + + :param pfad_datei_csv: Pfad zur Eingabe-CSV (Tachymeterbeobachtungen). + :type pfad_datei_csv: str + :param pfad_datei_jxl: Pfad zur JXL-Datei. + :type pfad_datei_jxl: str + :param pfad_datei_csv_out: Pfad zur Ausgabe-CSV (korrigierte Datei). + :type pfad_datei_csv_out: str + :return: Ergebnisdictionary mit Status und Diagnosen, u. a.: + - "Import_fortsetzen" (bool), + - "dict_ersetzungen" (dict mit Zählungen für "Hz", "Z", "SD"), + - "liste_zeilen_ohne_IH" (list), + - "liste_zeilen_ohne_ZH" (list), + - "liste_zeilen_standpunkt_nicht_in_jxl" (list), + - "pfad_datei_csv_out" (str). + :rtype: dict + """ + # Import_fortsetzen wird False, sobald eine Fehler festgestellt wird. Als Folge wird der Import abgebrochen und eine Fehlermeldung mit Handlungshinweisen für den Benutzer ausgegeben. + Import_fortsetzen = True + + getcontext().prec = 70 dict_ersetzungen = {"Hz": 0, "Z": 0, "SD": 0} + # IH = Instrumentenhöhe | ZH = Zielhöhe, bzw. Prismenhöhe liste_zeilen_ohne_IH = [] liste_zeilen_ohne_ZH = [] liste_zeilen_standpunkt_nicht_in_jxl = [] - liste_stationrecords = [] + liste_tachymeterstandpunkte = [] - dict_stationname_stationrecords = {} - dict_stationname_zaehler = {} + dict_stationname_tachymeterstandpunkte = {} + dict_standpunkte_anzahl = {} dict_targetID_zu_ZH = {} dict_stationID_zu_seq = {} dict_stationnamen = {} + # Vorbereitung jxl-Datei lesen tree = ET.parse(pfad_datei_jxl) root = tree.getroot() - + # JXL-Datei auslesen if Import_fortsetzen: - # StationRecords einlesen (Standpunkt, StationID, Instrumentenhöhe) + # Standpunkt, StationID, Instrumentenhöhe aus der JXL-Datei auslesen for sr in root.iter("StationRecord"): stationname = (sr.findtext("StationName") or "").strip() station_id = (sr.attrib.get("ID") or "").strip() ih = (sr.findtext("TheodoliteHeight") or "").strip() if stationname != "" and station_id != "": - liste_stationrecords.append((stationname, station_id, ih)) + liste_tachymeterstandpunkte.append((stationname, station_id, ih)) dict_stationnamen[stationname] = 1 - if stationname not in dict_stationname_stationrecords: - dict_stationname_stationrecords[stationname] = [] - dict_stationname_stationrecords[stationname].append((station_id, ih)) + if stationname not in dict_stationname_tachymeterstandpunkte: + dict_stationname_tachymeterstandpunkte[stationname] = [] + dict_stationname_tachymeterstandpunkte[stationname].append((station_id, ih)) - for stationname in dict_stationname_stationrecords.keys(): - dict_stationname_zaehler[stationname] = 0 + for stationname in dict_stationname_tachymeterstandpunkte.keys(): + dict_standpunkte_anzahl[stationname] = 0 + # Prismenhöhe auslesen und in Dict speichern for tr in root.iter("TargetRecord"): target_id = (tr.attrib.get("ID") or "").strip() zh = (tr.findtext("TargetHeight") or "").strip() if target_id != "": dict_targetID_zu_ZH[target_id] = zh - for tupel in liste_stationrecords: + for tupel in liste_tachymeterstandpunkte: station_id = tupel[1] if station_id not in dict_stationID_zu_seq: dict_stationID_zu_seq[station_id] = [] + # Horizontal- und Vertikalkreisablesungen, sowie Schrägdistanzablesungen aus JXL-Datei auslesen for pr in root.iter("PointRecord"): station_id = (pr.findtext("StationID") or "").strip() if station_id == "" or station_id not in dict_stationID_zu_seq: @@ -267,13 +385,14 @@ class Import: z_gon_decimal = z_gon_decimal.quantize(q_z, rounding=ROUND_HALF_UP) sd_decimal = Decimal(sd_m).quantize(q_sd, rounding=ROUND_HALF_UP) - # Ausgabe mit Komma + # Ausgabe mit Kommatrennung hz_gon_text = format(hz_gon_decimal, "f").replace(".", ",") z_gon_text = format(z_gon_decimal, "f").replace(".", ",") sd_text = format(sd_decimal, "f").replace(".", ",") zh = dict_targetID_zu_ZH.get(target_id, "") + # Dictionary mit den Abfragen für die Weiterverarbeitung füllen. dict_stationID_zu_seq[station_id].append({ "target": zielpunkt_name, "hz_gon": hz_gon_text, @@ -283,7 +402,7 @@ class Import: }) station_id_aktuell = None - index_seq_aktuell = 0 + index_csv_jxl_aktuell = 0 standpunkt_aktuell = None # CSV-Datei zeilenweise durchgehen und ggf. Werte ersetzen @@ -304,9 +423,10 @@ class Import: standpunkt = row[0].strip() if standpunkt in dict_stationnamen: - zaehler = dict_stationname_zaehler.get(standpunkt, 0) - liste_records = dict_stationname_stationrecords[standpunkt] + zaehler = dict_standpunkte_anzahl.get(standpunkt, 0) + liste_records = dict_stationname_tachymeterstandpunkte[standpunkt] + # Überprüfung, ob in beiden Dateien die selben Tachymeterstandpunkte vorhanden sind if zaehler >= len(liste_records): Import_fortsetzen = False print( @@ -314,18 +434,20 @@ class Import: break station_id, ih = liste_records[zaehler] - dict_stationname_zaehler[standpunkt] = zaehler + 1 + dict_standpunkte_anzahl[standpunkt] = zaehler + 1 station_id_aktuell = station_id - index_seq_aktuell = 0 + index_csv_jxl_aktuell = 0 standpunkt_aktuell = standpunkt + # Erstellen einer Liste mit allen Zeilennummern aus der JXL, für die keine Instrumentenhöhe vorliegt, damit dies als Fehlermeldung mit Bearbeitungshinweisen ausgegeben werden kann. if ih is None or str(ih).strip() == "": liste_zeilen_ohne_IH.append((nummer_zeile, standpunkt)) writer.writerow([standpunkt, f"IH:{ih}", "", "", ""]) continue + # Erstellen einer Liste mit allen Zeilennummern aus der JXL, für die keine Prismenhöhe vorliegt, damit dies als Fehlermeldung mit Bearbeitungshinweisen ausgegeben werden kann. if standpunkt.isdigit(): liste_zeilen_standpunkt_nicht_in_jxl.append((nummer_zeile, standpunkt)) @@ -338,8 +460,6 @@ class Import: wert_z = row[2].split(":ZH:", 1)[0].strip() wert_sd = row[3].split(":ZH:", 1)[0].strip() - - if self.ist_zahl_csv(wert_hz) and self.ist_zahl_csv(wert_z) and self.ist_zahl_csv(wert_sd): ist_beobachtung = True @@ -355,21 +475,23 @@ class Import: writer.writerow(row) continue - if index_seq_aktuell >= len(liste_seq): + if index_csv_jxl_aktuell >= len(liste_seq): writer.writerow(row) continue - jxl_eintrag = liste_seq[index_seq_aktuell] - index_neu = index_seq_aktuell + 1 + # Abfragen der selben Daten aus der JXL-Datei über den index + jxl_eintrag = liste_seq[index_csv_jxl_aktuell] + index_neu = index_csv_jxl_aktuell + 1 if jxl_eintrag["target"] != zielpunkt: - index_ende = min(len(liste_seq), index_seq_aktuell + 200) + index_ende = min(len(liste_seq), index_csv_jxl_aktuell + 200) liste_kandidaten = [] - for index_kandidat in range(index_seq_aktuell, index_ende): + for index_kandidat in range(index_csv_jxl_aktuell, index_ende): if liste_seq[index_kandidat]["target"] == zielpunkt: liste_kandidaten.append((index_kandidat, liste_seq[index_kandidat])) + # Überprüfung, ob die Ablesungen in der CSV-Datei wirklich Rundungen der selben Daten mit mehr Nachkommastellen aus der JXL-Datei sind und abspeichern der Prüfergebnisse. if liste_kandidaten != []: if len(liste_kandidaten) == 1: index_kandidat, kandidat = liste_kandidaten[0] @@ -392,9 +514,9 @@ class Import: jxl_eintrag = kandidat_best index_neu = index_best + 1 - index_seq_aktuell = index_neu + index_csv_jxl_aktuell = index_neu - # Nur ersetzen, wenn die CSV-Werte tatsächlich eine Rundung der JXL-Werte sind + # Nur in der CSV-Datei ersetzen, wenn die CSV-Werte tatsächlich eine Rundung der JXL-Werte sind hz_out = hz_csv z_out = z_csv sd_out = sd_csv @@ -423,24 +545,27 @@ class Import: if Import_fortsetzen: print(f"Korrektur erfolgreich abgeschlossen. Ausgabe: {pfad_datei_csv_out}") - print(f"Ersetzungen (Rundung -> JXL volle Nachkommastellen): {dict_ersetzungen}") + print(f"Ersetzungen in der CSV-Datei (Rundung -> JXL volle Nachkommastellen): {dict_ersetzungen}") - print("\n--- Fehlende IH ---") - print(f"Anzahl: {len(liste_zeilen_ohne_IH)}") + # Ausgabe der Zeilennummern in der JXL-Datei ohne Instrumentenhöhe if len(liste_zeilen_ohne_IH) > 0: + print("\n--- Fehlende IH in JXL-Datei ---") + print(f"Anzahl: {len(liste_zeilen_ohne_IH)}") print(liste_zeilen_ohne_IH) - print("\n--- Fehlende ZH ---") - print(f"Anzahl: {len(liste_zeilen_ohne_ZH)}") + # Ausgabe der Zeilennummern in der JXL-Datei ohne Prismenhöhe if len(liste_zeilen_ohne_ZH) > 0: + print("\n--- Fehlende ZH ---") + print(f"Anzahl: {len(liste_zeilen_ohne_ZH)}") print(liste_zeilen_ohne_ZH) - print("\n--- Standpunkt in CSV, aber kein StationRecord in JXL ---") - print(f"Anzahl: {len(liste_zeilen_standpunkt_nicht_in_jxl)}") + # Ausgabe der Zeilennummern in der JXL-Datei mit unterschiedlichen Tachymeterstandpunkten im Vergleich zur CSV-Datei if len(liste_zeilen_standpunkt_nicht_in_jxl) > 0: + print("\n--- Standpunkt in CSV-Datei, aber nicht in JXL-Datei---") + print(f"Anzahl: {len(liste_zeilen_standpunkt_nicht_in_jxl)}") print(liste_zeilen_standpunkt_nicht_in_jxl) else: - print("Die Korrektur wurde abgebrochen.") + print("Die Korrektur der CSV-Datei wurde abgebrochen.") return { "Import_fortsetzen": Import_fortsetzen, @@ -451,8 +576,32 @@ class Import: "pfad_datei_csv_out": pfad_datei_csv_out } - def import_beobachtungen_tachymeter(self, pfad_datei: str, instrumentenID: int, a: float, b: float) -> None: - berechnungen = Berechnungen.Berechnungen(a, b) + def import_beobachtungen_tachymeter(self, pfad_datei: str, instrumentenID: int) -> None: + """Importiert Tachymeterbeobachtungen aus einer CSV-Datei in die Tabelle Beobachtungen. + + Die Datei wird blockweise verarbeitet (Standpunktzeile + Beobachtungszeilen). Aus je zwei Halbsätzen + wird ein Vollsatz abgeleitet: + + - Richtung: Mittel aus Hz(HS1) und Hz(HS2-200 gon), normiert in [0, 400), + - Zenitwinkel: (ZW1 - ZW2 + 400) / 2, + - Schrägdistanz: Mittel der beiden SD. + + Zusätzlich werden aus Instrumenten- und Prismenhöhe bodenbezogene Werte berechnet + (schraegdistanz_bodenbezogen, zenitwinkel_bodenbezogen) über berechne_zenitwinkel_distanz_bodenbezogen(). + + Vorabprüfungen: + + - Abbruch, wenn der Dateiname bereits in Beobachtungen vorkommt, + - Abbruch, wenn instrumentenID nicht in Tabelle Instrumente existiert, + - Plausibilitätsprüfung auf Vollsatz-Struktur (6 Zeilen pro Zielpunkt: 3 Vollsätze * 2 Halbsätze). + + :param pfad_datei: Pfad zur CSV-Datei. + :type pfad_datei: str + :param instrumentenID: ID des verwendeten Instruments aus Tabelle Instrumente. + :type instrumentenID: int + :return: None + :rtype: None + """ # Prüfen, ob Bereits Daten aus der Datei in der Datenbank vorhanden sind con = sqlite3.connect(self.pfad_datenbank) @@ -464,16 +613,19 @@ class Import: FROM Beobachtungen""").fetchall()] liste_instrumentenid = [r[0] for r in cursor.execute("SELECT instrumenteID FROM Instrumente").fetchall()] + cursor.close() con.close() - cursor.close + # Import_fortsetzen wird False, sobald eine Fehler festgestellt wird. Als Folge wird der Import abgebrochen und eine Fehlermeldung mit Handlungshinweisen für den Benutzer ausgegeben. Import_fortsetzen = True + # Abbrechen des Imports, wenn bereits Daten aus der selben Datei importiert wurden. if pfad_datei in liste_dateinamen_in_db: Import_fortsetzen = False if Import_fortsetzen: nummer_zielpunkt = 0 + # Abfragen der aktuell höschten Nummer im Attribut beobachtungsgruppeID der Tabelle Beobachtungen try: nummer_beobachtungsgruppeID = max(liste_beobachtungsgruppeID) except: @@ -487,20 +639,22 @@ class Import: liste_beobachtungen_vorbereitung = [] for i, zeile in enumerate(f): + # Die ersten drei Zeilen der Importdatei müssen überprungen werden if i < 3: continue zeile = zeile.strip().split(";") if len(zeile) < 5: zeile = zeile + [""] * (5 - len(zeile)) + # Tachymeterstandpunkt speichern und beobachtungsgruppeID als ID für das einmalige Aufbauen eines Tachymeters auf einem Punkt festlegen if zeile[2] == "" and zeile[3] == "" and zeile[4] == "": nummer_beobachtungsgruppeID += 1 - # print("Standpunkt: ",nummer_beobachtungsgruppeID ,zeile[0]) standpunkt = zeile[0] instrumentenhoehe = zeile[1] if instrumentenhoehe.startswith("IH:"): instrumentenhoehe = instrumentenhoehe.split("IH:", 1)[1].strip() + # Überprüfung, ob für jeden Beobachteten Zielpunkt 6 Zeilen vorhanden sind (3 Vollszätze mit je 2 Halbsätzen) if nummer_zielpunkt % 6 != 0: liste_fehlerhafte_zeile.append(i) @@ -509,6 +663,8 @@ class Import: liste_zielpunkte_vs2 = [] liste_zielpunkte_vs3 = [] else: + # ZH = Prismenhöhe | VS = Vollsatz | HS = Halbsatz + # Erstellen einer Liste mit Standpunkt, Vollsatz und Halbsatzzuordnung für die Beobachtungen für die Weiterverarbeitung nummer_zielpunkt += 1 if ":ZH:" in zeile[3]: @@ -519,17 +675,14 @@ class Import: if zeile[0] not in liste_zielpunkte_hs: liste_zielpunkte_hs.append(zeile[0]) if zeile[0] in liste_zielpunkte_vs3: - # print(f"{nummer_zielpunkt} VS3 HS1 {zeile}") liste_beobachtungen_vorbereitung.append( [nummer_beobachtungsgruppeID, "VS3", "HS1", standpunkt, zeile[0], zeile[1], zeile[2], zeile[3], zeile[4], instrumentenhoehe]) elif zeile[0] in liste_zielpunkte_vs2: - # print(f"{nummer_zielpunkt} VS2 HS1 {zeile}") liste_beobachtungen_vorbereitung.append( [nummer_beobachtungsgruppeID, "VS2", "HS1", standpunkt, zeile[0], zeile[1], zeile[2], zeile[3], zeile[4], instrumentenhoehe]) else: - # print(f"{nummer_zielpunkt} VS1 HS1 {zeile}") liste_beobachtungen_vorbereitung.append( [nummer_beobachtungsgruppeID, "VS1", "HS1", standpunkt, zeile[0], zeile[1], zeile[2], @@ -538,7 +691,6 @@ class Import: else: liste_zielpunkte_hs.remove(zeile[0]) if zeile[0] in liste_zielpunkte_vs3: - # print(f"{nummer_zielpunkt} VS3 HS2 {zeile}") liste_beobachtungen_vorbereitung.append( [nummer_beobachtungsgruppeID, "VS3", "HS2", standpunkt, zeile[0], zeile[1], zeile[2], @@ -547,7 +699,6 @@ class Import: elif zeile[0] in liste_zielpunkte_vs2: if zeile[0] not in liste_zielpunkte_vs3: liste_zielpunkte_vs3.append(zeile[0]) - # print(f"{nummer_zielpunkt} VS2 HS2 {zeile}") liste_beobachtungen_vorbereitung.append( [nummer_beobachtungsgruppeID, "VS2", "HS2", standpunkt, zeile[0], zeile[1], zeile[2], @@ -555,18 +706,19 @@ class Import: else: if zeile[0] not in liste_zielpunkte_vs2: liste_zielpunkte_vs2.append(zeile[0]) - # print(f"{nummer_zielpunkt} VS1 HS2 {zeile}") liste_beobachtungen_vorbereitung.append( [nummer_beobachtungsgruppeID, "VS1", "HS2", standpunkt, zeile[0], zeile[1], zeile[2], zeile[3], zeile[4], instrumentenhoehe]) - if liste_fehlerhafte_zeile == []: - # print(f"Einlesen der Datei {pfad_datei} erfolgreich beendet.") - pass - else: + # Ausgabe, welche Zeilen in der Importdatei bearbeitet werden müssen. + if liste_fehlerhafte_zeile != []: + fehler_zeilen = ", ".join(map(str, liste_fehlerhafte_zeile)) print( - f"Das Einlesen der Datei {pfad_datei} wurde abgebrochen.\nBitte bearbeiten Sie die Zeilen rund um: {", ".join(map(str, liste_fehlerhafte_zeile))} in der csv-Datei und wiederholen Sie den Import.") + f"Das Einlesen der Datei {pfad_datei} wurde abgebrochen.\n" + f"Bitte bearbeiten Sie die Zeilen rund um: {fehler_zeilen} in der csv-Datei " + f"und wiederholen Sie den Import." + ) Import_fortsetzen = False else: @@ -579,13 +731,12 @@ class Import: while len(liste_beobachtungen_vorbereitung) > 0: liste_aktueller_zielpunkt = liste_beobachtungen_vorbereitung[0] aktueller_zielpunkt = liste_aktueller_zielpunkt[4] - # print(liste_beobachtungen_vorbereitung[0]) for index in range(1, len(liste_beobachtungen_vorbereitung)): liste = liste_beobachtungen_vorbereitung[index] + # Berechnen der zu importierenden Beobachtungen. (Jeweils reduziert auf den Vollsatz) if liste[4] == aktueller_zielpunkt: - # print(liste) richtung1 = self.string_to_decimal(liste_aktueller_zielpunkt[5]) richtung2 = self.string_to_decimal(liste[5]) - Decimal(200) zenitwinkel_vollsatz_gon = (self.string_to_decimal(liste_aktueller_zielpunkt[6]) - self.string_to_decimal( @@ -612,12 +763,8 @@ class Import: Import_fortsetzen = False print(f"Der Import wurde abgebrochen, weil für zwei Halbsätze vom Standpunkt {liste_aktueller_zielpunkt[3]} zum Zielpunkt {aktueller_zielpunkt} unterschiedliche Instrumentenhöhen vorliegen. Bitte in der Datei {pfad_datei} korrigieren und Import neustarten.") - - - # print(richtung_vollsatz) - # print(zenitwinkel_vollsatz) - # print(distanz_vollsatz) - schraegdistanz_bodenbezogen, zenitwinkel_bodenbezogen = berechnungen.berechne_zenitwinkel_distanz_bodenbezogen( + # Umrechnen der Zenitwinkel und Schrägdistanzen auf den Boden unter Verwendung der Instrumenten- und Prismenhöhen + schraegdistanz_bodenbezogen, zenitwinkel_bodenbezogen = self.berechnungen.berechne_zenitwinkel_distanz_bodenbezogen( float(zenitwinkel_vollsatz_rad), float(distanz_vollsatz), float(instrumentenhoehe_import), float(prismenhoehe)) liste_beobachtungen_import.append( @@ -627,12 +774,13 @@ class Import: del liste_beobachtungen_vorbereitung[0] break + # Überprüfung, ob das Instrument bereits vom Benutzer angelegt wurde. if instrumentenID not in liste_instrumentenid: Import_fortsetzen = False print( "Der Import wurde abgebrochen. Bitte eine gültige InstrumentenID eingeben. Bei Bedarf ist das Instrument neu anzulegen.") - + # Berechnete bodenbezogene Beobachtungen, welche jeweils auf den Vollsatz reduziert sind, in die Tabelle Beobachtungen importieren. if Import_fortsetzen: con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() @@ -649,28 +797,47 @@ class Import: def vorbereitung_import_beobachtungen_nivellement_naeherung_punkthoehen(self, pfad_datei: str, instrumentenID: int) -> None | tuple[None, None] | tuple[dict[Any, Any], list[Any]]: - # Prüfen, ob Bereits Daten aus der Datei in der Datenbank vorhanden sind + """Bereitet den Import von Nivellementdaten zur Ableitung von Näherungs-Normalhöhen vor. + + Aus einer semikolon-separierten Datei werden Zeilen erkannt, die berechnete Zielweiten/Punkthöhen enthalten, + und daraus pro Punktnummer alle gefundenen Z-Werte gesammelt. Anschließend wird je Punktnummer + der Mittelwert berechnet (Rundung auf 6 Nachkommastellen). + Danach wird geprüft, welche dieser Punktnummern bereits in der Tabelle Netzpunkte existieren. + + Abbruchbedingungen: + + - Dateiname bereits in Beobachtungen vorhanden, + - instrumentenID nicht in Instrumente vorhanden. + + :param pfad_datei: Pfad zur Importdatei. + :type pfad_datei: str + :param instrumentenID: ID des verwendeten Niv-Instruments aus der Tabelle Instrumente. + :type instrumentenID: int + :return: (dict_punkt_mittelwert_punkthoehen, liste_punktnummern_in_db) oder (None, None) bei Abbruch. + :rtype: None | tuple[None, None] | tuple[dict[Any, Any], list[Any]] + """ + # Prüfen, ob bereits Daten aus der Datei in der Datenbank vorhanden sind con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() liste_dateinamen_in_db = [r[0] for r in cursor.execute( "SELECT DISTINCT dateiname FROM Beobachtungen" ).fetchall()] - liste_beobachtungsgruppeID = [r[0] for r in cursor.execute("""SELECT DISTINCT beobachtungsgruppeID - FROM Beobachtungen""").fetchall()] liste_instrumentenid = [r[0] for r in cursor.execute("SELECT instrumenteID FROM Instrumente").fetchall()] liste_netzpunkte = [r[0] for r in cursor.execute("SELECT punktnummer FROM Netzpunkte").fetchall()] cursor.close() con.close() - + # Import_fortsetzen wird False, sobald eine Fehler festgestellt wird. Als Folge wird der Import abgebrochen und eine Fehlermeldung mit Handlungshinweisen für den Benutzer ausgegeben. Import_fortsetzen = True + # Abbruch des Imports, wenn bereits Daten aus der Datei importiert wurden. if pfad_datei in liste_dateinamen_in_db: Import_fortsetzen = False print(f"Der Import wurde abgebrochen, weil die Beobachtungen aus der Datei {pfad_datei} bereits in der Datenbank vorhanden sind.") return None, None + # Abbruch, wenn das Instrument noch nicht vom Benutzer angelegt wurde. if instrumentenID not in liste_instrumentenid: Import_fortsetzen = False print( @@ -678,7 +845,7 @@ class Import: return None, None if Import_fortsetzen: - # Berechnete Punkthöhe Importieren + # Messwerte aus der Importdatei abfragen muster_berechnete_zielweiten = "| | |Z " dict_punkt_alle_punkthoehen = {} dict_punkt_mittelwert_punkthoehen = {} @@ -702,7 +869,6 @@ class Import: wert_z = self.string_to_float(teil.split()[0]) if punktnummer is not None and wert_z is not None: - #print(f"{punktnummer}, {float(wert_z)}") if punktnummer not in dict_punkt_alle_punkthoehen: dict_punkt_alle_punkthoehen[punktnummer] = [] @@ -711,6 +877,7 @@ class Import: # Hier wird auf 6 Nachkommastellen gerundet! dict_punkt_mittelwert_punkthoehen[punktnummer] = round(sum(liste_z) / len(liste_z),6) + # Erstellen einer Liste mit allen Punktnummern, die in der Datenbank vorliegen und für die Nivellementbeobachtungen vorliegen. if Import_fortsetzen: # Ausgabe, welche Niv-Punkte bereits in der Tabelle Netzpunkte enthalten sind liste_punktnummern_nivellement = dict_punkt_mittelwert_punkthoehen.keys() @@ -722,6 +889,7 @@ class Import: else: liste_punktnummern_nicht_in_db.append(punktnummer) + # Es werden nur Höhendifferenzen für Punkte berechnet, für die Näherungskoordinaten in der Datenbank vorliegen. if Import_fortsetzen: print(f"Für folgende Nivellementpunkte werden die Höhen in der Ausgleichung berechnet: {liste_punktnummern_in_db}\nFür folgende Punkte wird aktuell keine Höhe in der Ausgleichung berechnet: {liste_punktnummern_nicht_in_db}. Bei Bedarf im folgenden Schritt ändern!") return dict_punkt_mittelwert_punkthoehen, liste_punktnummern_in_db @@ -729,6 +897,21 @@ class Import: def import_beobachtungen_nivellement_naeherung_punkthoehen(self, dict_punkt_mittelwert_punkthoehen: dict, liste_punktnummern_in_db: list, liste_punktnummern_hinzufuegen: list) -> str | None: + """Importiert Näherungsnormalhöhen in die Tabelle Netzpunkte. + + Es werden Listen geführt für neu hinzugefügte, bereits vorhandene und geänderte Punkte und + abschließend als Konsolen-Ausgabe ausgegeben. + + :param dict_punkt_mittelwert_punkthoehen: Dictionary {punktnummer: normalhoehe} als Mittelwerte. + :type dict_punkt_mittelwert_punkthoehen: dict + :param liste_punktnummern_in_db: Punktnummern, die bereits in Netzpunkte existieren. + :type liste_punktnummern_in_db: list + :param liste_punktnummern_hinzufuegen: Zusätzliche Punktnummern, die ebenfalls übernommen werden sollen. + :type liste_punktnummern_hinzufuegen: list + :return: Status-String mit der Liste der Punkte, für die Normalhöhen in der Ausgleichung verfügbar sind, oder None bei Abbruch. + :rtype: str | None + """ + # Import_fortsetzen wird False, sobald eine Fehler festgestellt wird. Als Folge wird der Import abgebrochen und eine Fehlermeldung mit Handlungshinweisen für den Benutzer ausgegeben. Import_fortsetzen = True if dict_punkt_mittelwert_punkthoehen == None or liste_punktnummern_in_db == None or liste_punktnummern_hinzufuegen == None: @@ -744,6 +927,7 @@ class Import: liste_punkte_geaendert = [] for punktnummer in liste_punktnummern_hinzufuegen: + # Neu anlegen oder aktualisieren der Normalhöhen in der Tabelle Netzpunkte try: cursor.execute(f"INSERT INTO Netzpunkte (punktnummer, normalhoehe_hfp) VALUES (?, ?)", (punktnummer, dict_punkt_mittelwert_punkthoehen[punktnummer])) liste_punkte_neu_hinzugefuegt.append(punktnummer) @@ -765,10 +949,31 @@ class Import: print(f"Bereits vorhanden ({len(liste_punkte_bereits_vorhanden)}): {liste_punkte_bereits_vorhanden}") print(f"Geändert ({len(liste_punkte_geaendert)}): {liste_punkte_geaendert}\n") - return f"Für folgende Punkte werden die Höhen Ausgeglichen: {liste_punktnummern_hinzufuegen + liste_punktnummern_in_db}" + return f"Für folgende Punkte werden die Höhen Ausgeglichen: {liste_punktnummern_in_db}" def import_beobachtungen_nivellement_RVVR(self, pfad_datei: str, instrumentenID: int) -> str | None: + """Importiert geometrische Nivellementbeobachtungen nach dem RVVR Prinzip die Tabelle Beobachtungen. + + Es werden Zeilen mit Rück-/Vormessungen erkannt (rvvr: Rück, Vor, Vor, Rück). Pro Block werden + dh und Entfernung berechnet (Rundung jeweils auf 8 Nachkommastellen). Anschließend werden Züge reduziert, indem + Wechselpunkte, die nicht in Netzpunkte vorhanden sind, durch Summation herausgekürzt werden. + Damit werden nur Beobachtungen zwischen Punkten in Netzpunkte (bzw. reduzierten Start-/Zielpunkten) + in Beobachtungen gespeichert. + + Abbruchbedingungen: + + - Dateiname bereits in Beobachtungen vorhanden, + - instrumentenID nicht in Instrumente vorhanden, + - Anzahl RVVR-Zeilen nicht durch 4 teilbar. + + :param pfad_datei: Pfad zur Textdatei. + :type pfad_datei: str + :param instrumentenID: ID des verwendeten Niv-Instruments aus der Tabelle Instrumente. + :type instrumentenID: int + :return: Status-String bei Erfolg oder None bei Abbruch. + :rtype: str | None + """ # Prüfen, ob Bereits Daten aus der Datei in der Datenbank vorhanden sind con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() @@ -781,36 +986,36 @@ class Import: cursor.close() con.close() - + # Import_fortsetzen wird False, sobald eine Fehler festgestellt wird. Als Folge wird der Import abgebrochen und eine Fehlermeldung mit Handlungshinweisen für den Benutzer ausgegeben. Import_fortsetzen = True + # Import abbrechen, wenn bereits Daten aus der selben Datei importiert wurden if pfad_datei in liste_dateinamen_in_db: Import_fortsetzen = False print(f"Der Import wurde abgebrochen, weil die Beobachtungen aus der Datei {pfad_datei} bereits in der Datenbank vorhanden sind.") + # Import abbrechen, wenn das Instrument noch nicht vom Benutzer angelegt wurde. if instrumentenID not in liste_instrumentenid: Import_fortsetzen = False print( "Der Import wurde abgebrochen. Bitte eine gültige InstrumentenID eingeben. Bei Bedarf ist das Instrument neu anzulegen.") if Import_fortsetzen: + # rvvr = Rück, Vor, Vor, Rück + # Berechnen der Höhenunterschiede delta H und Schrägstrecken zwischen Zwei Punkten gemäß der Importdatei aus rvvr. anzahl_zeilen_rvvr = 0 liste_zeilen_rvvr = [] liste_punktpaare = [] with open(pfad_datei, "r", encoding="utf-8") as f: for i, zeile in enumerate(f): if ("Lr" in zeile) or ("Lv" in zeile): - #print(zeile.rstrip()) - liste_zeilen_rvvr.append(zeile) anzahl_zeilen_rvvr += 1 - if anzahl_zeilen_rvvr % 4 == 0: index = 0 while index < len(liste_zeilen_rvvr): block_4 = liste_zeilen_rvvr[index:index + 4] - liste_punktnummern_block = [] for zeile_block in block_4: @@ -885,7 +1090,9 @@ class Import: index += 4 - + # Berechnen der Höhendifferenzen und schrägstrecken zwischen Punkten in der Tabelle Netzpunkte. + # Somit werden alle Wechselpunkte nicht in der Ausgleichung berücksichtigt. + # Die Berechnung erfolgt durch addition. liste_beobachtungen_reduziert = [] liste_beobachtungen_bearbeitung = [] zugnummer_vorher = liste_punktpaare[0][0] @@ -893,15 +1100,12 @@ class Import: zugnummer = einzelbeobachtung[0] if zugnummer == zugnummer_vorher: if einzelbeobachtung[1] in liste_netzpunkte and einzelbeobachtung[2] in liste_netzpunkte: - #print(einzelbeobachtung) liste_beobachtungen_reduziert.append(einzelbeobachtung + (1,)) elif einzelbeobachtung[1] in liste_netzpunkte and einzelbeobachtung[2] not in liste_netzpunkte: - #print(f"Zielpunkt nicht enthalten {einzelbeobachtung}") liste_beobachtungen_bearbeitung.append(einzelbeobachtung) elif einzelbeobachtung[1] not in liste_netzpunkte and einzelbeobachtung[2] in liste_netzpunkte: - #print(f"Startpunkt nicht enthalten {einzelbeobachtung}") liste_beobachtungen_bearbeitung.append(einzelbeobachtung) startpunkt = None zielpunkt = None @@ -919,24 +1123,20 @@ class Import: summe_dh += beobachtung_bearbeiten[3] summe_entfernung += beobachtung_bearbeiten[4] anzahl_standpunkte += 1 + # Achtung:Hier Rundung auf 8 Nachkommastellen! liste_beobachtungen_reduziert.append( (zugnummer, startpunkt, zielpunkt, round(summe_dh, 8), round(summe_entfernung, 8), anzahl_standpunkte)) liste_beobachtungen_bearbeitung = [] else: - #print(f"Startpunkt und Zielpunkt nicht enthalten {einzelbeobachtung}") liste_beobachtungen_bearbeitung.append(einzelbeobachtung) else: - #print(f"-----------------------------") if einzelbeobachtung[1] in liste_netzpunkte and einzelbeobachtung[2] in liste_netzpunkte: - #print(einzelbeobachtung) liste_beobachtungen_reduziert.append(einzelbeobachtung + (1,)) elif einzelbeobachtung[1] in liste_netzpunkte and einzelbeobachtung[2] not in liste_netzpunkte: - #print(f"Zielpunkt nicht enthalten {einzelbeobachtung}") liste_beobachtungen_bearbeitung.append(einzelbeobachtung) elif einzelbeobachtung[1] not in liste_netzpunkte and einzelbeobachtung[2] in liste_netzpunkte: - #print(f"Startpunkt nicht enthalten {einzelbeobachtung}") liste_beobachtungen_bearbeitung.append(einzelbeobachtung) startpunkt = None zielpunkt = None @@ -954,12 +1154,12 @@ class Import: summe_dh += beobachtung_bearbeiten[3] summe_entfernung += beobachtung_bearbeiten[4] anzahl_standpunkte += 1 + #Achtung:Hier Rundung auf 8 Nachkommastellen! liste_beobachtungen_reduziert.append( (zugnummer, startpunkt, zielpunkt, round(summe_dh,8), round(summe_entfernung,8), anzahl_standpunkte)) liste_beobachtungen_bearbeitung = [] else: - # print(f"Startpunkt und Zielpunkt nicht enthalten {einzelbeobachtung}") liste_beobachtungen_bearbeitung.append(einzelbeobachtung) zugnummer_vorher = zugnummer @@ -970,22 +1170,28 @@ class Import: con.commit() cursor.close() con.close() - return f"Die Beobachtungen aus der Datei {pfad_datei} wurden erfolgreich importiert." - - - else: print(f"Anzahl nicht RVVR durch 4 teilbar. Bitte die Datei {pfad_datei} überprüfen! Der Import wurde abgebrochen.") Import_fortsetzen = False - - def import_koordinaten_gnss(self, pfad_datei: str, liste_sapos_stationen_genauigkeiten: list) -> str: - liste_zeilen = [] - dict_koordinaten = {} + """Importiert GNSS-Koordinaten (ECEF) in die Tabelle Netzpunkte. + Die Datei wird semikolon-separiert gelesen und zusätzlich aufgesplittet (Leerzeichen und Kommas). + Für Referenzstationen (Kennzeichnung "Referenz" und Standardabweichungen 0.0000/0.0000/0.0000) + werden die übergebenen Genauigkeiten (X/Y/Z) eingesetzt. + + Die Koordinaten und Standardabweichungen werden in Netzpunkte geschrieben. + + :param pfad_datei: Pfad zur Koordinatendatei. + :type pfad_datei: str + :param liste_sapos_stationen_genauigkeiten: Liste mit drei Werten [σX, σY, σZ] für Referenzstationen. + :type liste_sapos_stationen_genauigkeiten: list + :return: Statusmeldung zum erfolgreichen Import. + :rtype: str + """ con = sqlite3.connect(self.pfad_datenbank) cursor = con.cursor() @@ -995,7 +1201,6 @@ class Import: row_neu = [] for eintrag in row: eintrag = str(eintrag).strip() - eintrag = eintrag.replace("'", "") aufgeteilt = eintrag.split() for teil in aufgeteilt: @@ -1012,14 +1217,33 @@ class Import: stabw_vorinfo_y = excluded.stabw_vorinfo_y, stabw_vorinfo_z = excluded.stabw_vorinfo_z""", (row_neu[0], row_neu[4], row_neu[5], row_neu[6], row_neu[7], row_neu[8], row_neu[9]) ) - #liste_zeilen.append(row_neu) - con.commit() con.close() return "Import der Koordinaten aus stationärem GNSS abgeschlossen." def import_basislinien_gnss(self, pfad_datei: str, instrumentenID: int) -> None: + """Importiert GNSS-Basislinien inkl. Kovarianzen in die Tabelle Beobachtungen. + + Die Datei wird zeilenweise gelesen und Basislinien werden über Präfixe erkannt: + + - @+ : Ziel-/Punktkennung (ID), + - @- : Gegenpunktkennung und Komponenten (bx/by/bz), + - @= : s0 und Kovarianzterme (cxx, cxy, cxz, cyy, cyz, czz). + + Vorabprüfungen: + + - Abbruch, wenn der Dateiname bereits in Beobachtungen vorkommt, + - Abbruch, wenn instrumentenID nicht in Instrumente existiert. + + :param pfad_datei: Pfad zur Basisliniendatei (Text). + :type pfad_datei: str + :param instrumentenID: ID des verwendeten GNSS-Instruments (FK auf Instrumente). + :type instrumentenID: int + :return: None + :rtype: None + """ + # Import_fortsetzen wird False, sobald eine Fehler festgestellt wird. Als Folge wird der Import abgebrochen und eine Fehlermeldung mit Handlungshinweisen für den Benutzer ausgegeben. Import_fortsetzen = True # Prüfen, ob Bereits Daten aus der Datei in der Datenbank vorhanden sind @@ -1033,18 +1257,16 @@ class Import: if pfad_datei in liste_dateinamen_in_db: Import_fortsetzen = False + # Import abbrechen, wenn das Instrument noch nicht vom Benutzer angelegt wurde. liste_instrumentenid = [r[0] for r in cursor.execute("SELECT instrumenteID FROM Instrumente").fetchall()] + cursor.close() con.close() - cursor.close if instrumentenID not in liste_instrumentenid: Import_fortsetzen = False print( "Der Import wurde abgebrochen. Bitte eine gültige InstrumentenID eingeben. Bei Bedarf ist das Instrument neu anzulegen.") - - if Import_fortsetzen: - liste_basilinien = [] tupel_basislinie = () with (open(pfad_datei, "r", encoding="utf-8") as txt): @@ -1052,17 +1274,13 @@ class Import: zeile = str(zeile).rstrip("\n").rstrip("\r") aufgeteilt = zeile.split() if aufgeteilt[0][:2] == "@+": - #print(aufgeteilt[0][2:]) tupel_basislinie += (aufgeteilt[0][2:],) if aufgeteilt[0][:2] == "@-": - #print(aufgeteilt[0][2:], aufgeteilt[1], aufgeteilt[2], aufgeteilt[3]) tupel_basislinie += (aufgeteilt[0][2:], aufgeteilt[1], aufgeteilt[2], aufgeteilt[3],) if aufgeteilt[0][:2] == "@=": - #print(aufgeteilt[1], aufgeteilt[2], aufgeteilt[3], aufgeteilt[4], aufgeteilt[5], aufgeteilt[6], aufgeteilt[7]) tupel_basislinie += (aufgeteilt[1], aufgeteilt[2], aufgeteilt[3], aufgeteilt[4], aufgeteilt[5], aufgeteilt[6], aufgeteilt[7], ) liste_basilinien.append(tupel_basislinie) tupel_basislinie = () - #print(liste_basilinien) else: print( @@ -1078,7 +1296,4 @@ class Import: con.commit() cursor.close() con.close() - print(f"Der Import der Datei {pfad_datei} wurde erfolgreich abgeschlossen.") - - - + print(f"Der Import der Datei {pfad_datei} wurde erfolgreich abgeschlossen.") \ No newline at end of file diff --git a/Koordinatentransformationen.py b/Koordinatentransformationen.py index 1885d6c..9d029e4 100644 --- a/Koordinatentransformationen.py +++ b/Koordinatentransformationen.py @@ -13,11 +13,56 @@ from pyproj import CRS, Transformer class Transformationen: + """Koordinatentransformationen und Helmert-Transformation (Euler-Winkel) zwischen Referenzsystemen. + + Die Klasse stellt Methoden zur Verfügung für: + + - Aufbau einer Rotationsmatrix aus Eulerwinkeln, + - Schätzung von 7-Parameter-Transformationsparametern (dX, dY, dZ, Maßstab m, Eulerwinkel e1/e2/e3) + aus identischen Punkten zwischen lokalem Horizontsystem (LH) und geozentrisch-kartesischem System (ECEF), + - Anwendung der geschätzten Helmerttransformation auf Punkte, die nur im Ausgangssystem vorliegen, + - Transformation zwischen ETRS89 / UTM (+ DHHN2016 Normalhöhe) und ETRS89 geozentrisch-kartesisch (ECEF), + inkl. Nutzung einer BKG-Quasigeoidundulations-Datei (GeoTIFF) für PROJ. + + Die grundlegende Funktionsweise der Transformationsschätzung lautet: + + 1) Identische Punkte aus Ausgangs- und Zielsystem ermitteln. + 2) Näherung für Maßstab m0 aus mittleren Streckenverhältnissen bilden. + 3) Näherungs-Rotation R0 aus lokalen Basen (u/v/w und U/V/W) bestimmen und daraus Euler-Näherungen ableiten. + 4) Iterative Parameterschätzung (Gauss-Newton) auf Basis der Beobachtungsgleichung: + P = T + m * R(e1,e2,e3) * p + """ + def __init__(self, pfad_datenbank: str) -> None: + """Initialisiert die Transformationsklasse. + + Speichert den Pfad zur SQLite-Datenbank und initialisiert den Datenbankzugriff. + + :param pfad_datenbank: Pfad zur SQLite-Datenbank. + :type pfad_datenbank: str + :return: None + :rtype: None + """ self.pfad_datenbank = pfad_datenbank + self.db_zugriff = Datenbank.Datenbankzugriff(self.pfad_datenbank) @staticmethod - def R_matrix_aus_euler(e1: float, e2: float, e3: float) -> sp.Matrix: + def R_matrix_aus_eulerwinkeln(e1: float, e2: float, e3: float) -> sp.Matrix: + """Erstellt eine 3x3-Rotationsmatrix aus Eulerwinkeln. + + Die Rotationsmatrix wird symbolisch (SymPy) aufgebaut. Die Eulerwinkel e1, e2, e3 werden + direkt in trigonometrische Ausdrücke eingesetzt und eine orthogonale Rotationsmatrix R(e1,e2,e3) + zur Verwendung in Helmert-Transformationen zurückgegeben. + + :param e1: Eulerwinkel 1 (Radiant). + :type e1: float + :param e2: Eulerwinkel 2 (Radiant). + :type e2: float + :param e3: Eulerwinkel 3 (Radiant). + :type e3: float + :return: Rotationsmatrix R als SymPy-Matrix (3x3). + :rtype: sp.Matrix + """ return sp.Matrix([ [ sp.cos(e2) * sp.cos(e3), @@ -36,32 +81,48 @@ class Transformationen: ] ]) - def Helmerttransformation_Euler_Transformationsparameter_berechne(self) -> dict[Any, float]: - db = Datenbank.Datenbankzugriff(self.pfad_datenbank) - dict_ausgangssystem = db.get_koordinaten("naeherung_lh", "Dict") - dict_zielsystem = db.get_koordinaten("naeherung_us", "Dict") + def Helmerttransformation_Euler_Transformationsparameter_berechnen(self) -> dict[Any, float]: + """Schätzt die Helmert-Transformationsparameter aus identischen Punkten. + Aus der Datenbank werden Näherungskoordinaten des lokalen Horizontsystems (naeherung_lh) + und des geozentrisch-kartesischen Systems (naeherung_us) geladen. Für die Schnittmenge der + Punkte werden die 7 Helmertparameter geschätzt: + + - Translation (dX, dY, dZ), + - Maßstab m, + - Eulerwinkel (e1, e2, e3). + + Näherungen: + + - m0: Mittelwert der Streckenverhältnisse aus allen Punktpaaren, + - R0: Anfangsrotationsmatrix aus lokalen Basisvektoren (u/v/w und U/V/W), + - Translation0: aus Schwerpunkten und m0/R0. + + Die Parameterschätzung erfolgt iterativ mit P = I. + Abbruchkriterium: |dx_i| < schwellenwert in zwei aufeinanderfolgenden Iterationen oder max. 100 Iterationen. + + :param: None + :return: Dictionary der finalen Parameter mit SymPy-Symbolen als Keys und float-Werten als Values + (Keys: dX, dY, dZ, m, e1, e2, e3). + :rtype: dict[Any, float] + """ + # Koordinaten des lokalen Horizontsystems des Tachymeters und der geozentrisch Kartesischen Näherungskoordinaten aus den statischen GNSS-Messungen aus der Tabelle Netzpunkte abfragen + dict_ausgangssystem = self.db_zugriff.get_koordinaten("naeherung_lh", "Dict") + dict_zielsystem = self.db_zugriff.get_koordinaten("naeherung_us", "Dict") + + # Identische Punkte ermitteln gemeinsame_punktnummern = sorted(set(dict_ausgangssystem.keys()) & set(dict_zielsystem.keys())) anzahl_gemeinsame_punkte = len(gemeinsame_punktnummern) liste_punkte_ausgangssystem = [dict_ausgangssystem[i] for i in gemeinsame_punktnummern] liste_punkte_zielsystem = [dict_zielsystem[i] for i in gemeinsame_punktnummern] - print("Anzahl gemeinsame Punkte:", anzahl_gemeinsame_punkte) + print("Anzahl verwendete Punkte für die Helmerttransformation:", anzahl_gemeinsame_punkte) - print("\nErste Zielpunkte:") - for pn, P in list(zip(gemeinsame_punktnummern, liste_punkte_zielsystem))[:5]: - print(pn, [float(P[0]), float(P[1]), float(P[2])]) - - print("\nErste Ausgangspunkte:") - for pn, p in list(zip(gemeinsame_punktnummern, liste_punkte_ausgangssystem))[:5]: - print(pn, [float(p[0]), float(p[1]), float(p[2])]) - - # --- Näherungswerte (minimal erweitert) --- p1, p2, p3 = liste_punkte_ausgangssystem[0], liste_punkte_ausgangssystem[1], liste_punkte_ausgangssystem[2] P1, P2, P3 = liste_punkte_zielsystem[0], liste_punkte_zielsystem[1], liste_punkte_zielsystem[2] - # 1) Näherungswert Maßstab: Mittelwert aus allen Punktpaaren + # Näherungswert für dem Maßstab berechnen aus dem Mittelwert aller Punktpaare ratios = [] for i, j in combinations(range(anzahl_gemeinsame_punkte), 2): dp = (liste_punkte_ausgangssystem[j] - liste_punkte_ausgangssystem[i]).norm() @@ -72,12 +133,7 @@ class Transformationen: m0 = sum(ratios) / len(ratios) - if ratios: - print("min/mean/max:", - min(ratios), - sum(ratios) / len(ratios), - max(ratios)) - + # Näherungswert für die Translation berechnen U = (P2 - P1) / (P2 - P1).norm() W = (U.cross(P3 - P1)) / (U.cross(P3 - P1)).norm() V = W.cross(U) @@ -93,28 +149,18 @@ class Transformationen: Translation0 = XS - m0 * R0 * xS - # 2) Test auf orthonormale Drehmatrix bei 3 Nachkommastellen! - if R0.T.applyfunc(lambda x: round(float(x), 3)) == R0.inv().applyfunc(lambda x: round(float(x), 3)) \ - and (R0.T * R0).applyfunc(lambda x: round(float(x), 3)) == sp.eye(3).applyfunc( - lambda x: round(float(x), 3)) \ - and ((round(R0.det(), 3) == 1.000 or round(R0.det(), 3) == -1.000)): - print("R ist Orthonormal!") - else: - print("R ist nicht Orthonormal!") - - # 3) Euler-Näherungswerte aus R0 + # Euler-Näherungswerte aus der Anfangsrotationsmatrix e2_0 = sp.asin(R0[2, 0]) - # Schutz gegen Division durch 0 wenn cos(e2) ~ 0: cos_e2_0 = sp.cos(e2_0) e1_0 = sp.acos(R0[2, 2] / cos_e2_0) e3_0 = sp.acos(R0[0, 0] / cos_e2_0) - # --- Symbolische Unbekannte (klassische 7 Parameter) --- + # Symbolische Unbekannte dX, dY, dZ, m, e1, e2, e3 = sp.symbols('dX dY dZ m e1 e2 e3') - R_symbolisch = self.R_matrix_aus_euler(e1, e2, e3) + R_symbolisch = self.R_matrix_aus_eulerwinkeln(e1, e2, e3) - # 4) Funktionales Modell + # Funktionales Modell f_zeilen = [] for punkt in liste_punkte_ausgangssystem: punkt_vektor = sp.Matrix([punkt[0], punkt[1], punkt[2]]) @@ -134,7 +180,7 @@ class Transformationen: l_vektor = sp.Matrix([koord for P in liste_punkte_zielsystem for koord in P]) l = l_vektor - P_mat = sp.eye(3 * anzahl_gemeinsame_punkte) + P_matrix = sp.eye(3 * anzahl_gemeinsame_punkte) l_berechnet_0 = None while True: @@ -156,8 +202,8 @@ class Transformationen: dl_0 = l_vektor - l_berechnet_0 A_0 = A_ohne_zahlen.subs(zahlen_0).evalf(n=30) - N = A_0.T * P_mat * A_0 - n_0 = A_0.T * P_mat * dl_0 + N = A_0.T * P_matrix * A_0 + n_0 = A_0.T * P_matrix * dl_0 Qxx_0 = N.inv() dx = Qxx_0 * n_0 x = x0 + dx @@ -165,7 +211,6 @@ class Transformationen: anzahl_iterationen += 1 print(f"Iteration Nr.{anzahl_iterationen} abgeschlossen") - print(dx.evalf(n=3)) else: zahlen_i = { @@ -182,16 +227,17 @@ class Transformationen: dl_i = l_vektor - l_berechnet_i A_i = A_ohne_zahlen.subs(zahlen_i).evalf(n=30) - N_i = A_i.T * P_mat * A_i + N_i = A_i.T * P_matrix * A_i Qxx_i = N_i.inv() - n_i = A_i.T * P_mat * dl_i + n_i = A_i.T * P_matrix * dl_i dx = Qxx_i * n_i x = sp.Matrix(x + dx) anzahl_iterationen += 1 print(f"Iteration Nr.{anzahl_iterationen} abgeschlossen") - print(dx.evalf(n=3)) + + alle_kleiner = True for i in range(dx.rows): @@ -204,11 +250,7 @@ class Transformationen: alle_kleiner_vorherige_iteration = alle_kleiner - print(l.evalf(n=3)) - print(l_berechnet_0.evalf(n=3)) - print(f"x = {x.evalf(n=3)}") - - # --- Neuberechnung Zielsystem --- + # Neuberechnung Zielsystem zahlen_final = { dX: float(x[0]), dY: float(x[1]), @@ -228,12 +270,11 @@ class Transformationen: Zi = l_berechnet_final[3 * i + 2] liste_l_berechnet_final.append(sp.Matrix([Xi, Yi, Zi])) - print("") print("l_berechnet_final:") for punktnummer, l_fin in zip(gemeinsame_punktnummern, liste_l_berechnet_final): print(f"{punktnummer}: {float(l_fin[0]):.3f}, {float(l_fin[1]):.3f}, {float(l_fin[2]):.3f}") - print("Streckendifferenzen:") + print("Streckendifferenzen zwischen Näherungskoordinate aus statischer GNSS-Messung und ergebnis der Helmerttransformation:") streckendifferenzen = [ (punkt_zielsys - l_final).norm() for punkt_zielsys, l_final in zip(liste_punkte_zielsystem, liste_l_berechnet_final) @@ -245,30 +286,51 @@ class Transformationen: Schwerpunktsdifferenz = Schwerpunkt_Zielsystem - Schwerpunkt_berechnet - print("\nDifferenz Schwerpunkt (Vektor):") + print("\nDifferenz Schwerpunkt zwischen Näherungskoordinate aus statischer GNSS-Messung und ergebnis der Helmerttransformation::") print(Schwerpunktsdifferenz.evalf(3)) - print("Betrag der Schwerpunkt-Differenz:") + print("Betrag der Schwerpunkt-Differenz zwischen Näherungskoordinate aus statischer GNSS-Messung und ergebnis der Helmerttransformation::") print(f"{float(Schwerpunktsdifferenz.norm()):.3f}m") return zahlen_final def Helmerttransformation(self, transformationsparameter: dict) -> dict[Any, Any]: - db = Datenbank.Datenbankzugriff(self.pfad_datenbank) - dict_ausgangssystem = db.get_koordinaten("naeherung_lh", "Dict") - dict_zielsystem = db.get_koordinaten("naeherung_us", "Dict") + """Wendet eine Helmerttransformation auf Punkte des Ausgangssystems an. + Aus der Datenbank werden Koordinaten des Ausgangssystems (naeherung_lh) und Zielsystems (naeherung_us) geladen. + Transformiert werden genau die Punkte, die: + + - im Ausgangssystem vorhanden sind, + - im Zielsystem fehlen (symmetrische Differenz der Punktmengen, anschließend Filter auf Ausgangssystem). + + Die Transformation erfolgt gemäß: + P = [dX, dY, dZ]^T + m * R(e1,e2,e3) * p + + :param transformationsparameter: Transformationsparameter als Dictionary mit SymPy-Symbolen als Keys + (dX, dY, dZ, m, e1, e2, e3) und numerischen Werten als Values. + :type transformationsparameter: dict + :return: Dictionary {punktnummer: sp.Matrix([X, Y, Z])} der transformierten geozentrisch-kartesischen Koordinaten. + :rtype: dict[Any, Any] + """ + # Koordinaten des lokalen Horizontsystems des Tachymeters und der geozentrisch Kartesischen Näherungskoordinaten aus den statischen GNSS-Messungen aus der Tabelle Netzpunkte abfragen + dict_ausgangssystem = self.db_zugriff.get_koordinaten("naeherung_lh", "Dict") + dict_zielsystem = self.db_zugriff.get_koordinaten("naeherung_us", "Dict") + + # Symbole definieren dX, dY, dZ, m, e1, e2, e3 = sp.symbols('dX dY dZ m e1 e2 e3') + # Unterschiedliche Punkte zwischen Ausgangs- und Zielsystem ermitteln unterschiedliche_punktnummern = sorted(set(dict_ausgangssystem.keys()) ^ set(dict_zielsystem.keys())) punktnummern_transformieren = [ punktnummer for punktnummer in unterschiedliche_punktnummern if punktnummer in dict_ausgangssystem ] liste_punkte_ausgangssystem = [dict_ausgangssystem[punktnummer] for punktnummer in punktnummern_transformieren] - R = self.R_matrix_aus_euler(transformationsparameter[e1], transformationsparameter[e2], transformationsparameter[e3]) + # Rotationsmatrix aufstellen + R = self.R_matrix_aus_eulerwinkeln(transformationsparameter[e1], transformationsparameter[e2], transformationsparameter[e3]) f_zeilen = [] + # Helmertransformation durchführen und Koordinaten speichern for punkt in liste_punkte_ausgangssystem: punkt_vektor = sp.Matrix([punkt[0], punkt[1], punkt[2]]) f_zeile_i = sp.Matrix([transformationsparameter[dX], transformationsparameter[dY], transformationsparameter[dZ]]) + transformationsparameter[m] * R * punkt_vektor @@ -289,9 +351,28 @@ class Transformationen: return dict_transformiert def utm_to_XYZ(self, pfad_tif_quasigeoidundolation: str, liste_utm: list) -> dict[Any, Any]: + """Rechnet UTM-Koordinaten (ETRS89 / UTM + DHHN2016) in ECEF-Koordinaten (ETRS89 geozentrisch-kartesisch) um. + + Es wird ein PROJ-Transformer von: + + - Quelle: EPSG:25832 + EPSG:7837 (ETRS89 / UTM Zone 32N + DHHN2016 Normalhöhe), + - Ziel: EPSG:4936 (ETRS89 geozentrisch-kartesisch) + + initialisiert. Zusätzlich wird ein BKG-GeoTIFF (Quasigeoidunndulation) in den PROJ-Datenpfad eingebunden, + indem eine Kopie mit dem erwarteten Dateinamen "de_bkg_gcg2016.tif" im selben Ordner erzeugt wird. + + :param pfad_tif_quasigeoidundolation: Pfad zur BKG-GeoTIFF-Datei (Quasigeoidundulation). + :type pfad_tif_quasigeoidundolation: str + :param liste_utm: Liste von UTM-Koordinaten in der Form [(punktnummer, E, N, Normalhoehe), ...]. + :type liste_utm: list + :return: Dictionary {punktnummer: sp.Matrix([X, Y, Z])} mit ECEF-Koordinaten (Meter). + :rtype: dict[Any, Any] + """ + # tif vom BKG zur Quasigeoidundolation übergeben pfad_gcg_tif = Path(pfad_tif_quasigeoidundolation) pfad_gcg_tif_proj = pfad_gcg_tif.with_name("de_bkg_gcg2016.tif") + # Kopie des TIF anlegen (Dies ist voraussetzung für die Transformer-Bibliothek if (not pfad_gcg_tif_proj.exists()) or (pfad_gcg_tif_proj.stat().st_size != pfad_gcg_tif.stat().st_size): shutil.copy2(pfad_gcg_tif, pfad_gcg_tif_proj) @@ -299,8 +380,9 @@ class Transformationen: utm_epsg = 25832 crs_src = CRS.from_user_input(f"EPSG:{utm_epsg}+EPSG:7837") # ETRS89/DREF91 + DHHN2016 - crs_dst = CRS.from_epsg(4936) # ETRS89 geozentrisch (ECEF) + crs_dst = CRS.from_epsg(4936) # ETRS89 geozentrisch kartesisch + # Umrechnungsvorgaben übergeben tr_best = Transformer.from_crs( crs_src, crs_dst, @@ -308,52 +390,54 @@ class Transformationen: allow_ballpark=False, ) + # Koordinaten rechnen und in Dictionary speichern dict_geozentrisch_kartesisch = {} for Punktnummer, E, N, Normalhoehe in liste_utm: X, Y, Z = tr_best.transform(E, N, Normalhoehe) dict_geozentrisch_kartesisch[Punktnummer] = sp.Matrix([X, Y, Z]) - # geographisch 3D + zeta - #crs_geog3d = CRS.from_epsg(4937) # ETRS89 (lon, lat, h) - #tr_h = Transformer.from_crs( - # crs_src, - # crs_geog3d, - # always_xy=True, - # allow_ballpark=False, - #) - - #lon, lat, h = tr_h.transform(E, N, H) - #print("lon/lat/h:", lon, lat, h) - #print("zeta (h-H):", h - H) - return dict_geozentrisch_kartesisch def ecef_to_utm( self, dict_koordinaten: dict, - pfad_gcg_tif: str | Path | None = None, - zone: int = 32, - ): + pfad_gcg_tif: str | Path | None = None): + """Rechnet ECEF-Koordinaten (ETRS89 geozentrisch-kartesisch) nach nach UTM (+ DHHN2016 Normalhöhe). - if pfad_gcg_tif is not None: - pfad_gcg_tif = Path(pfad_gcg_tif).resolve() - if not pfad_gcg_tif.exists(): - raise FileNotFoundError(f"Quasigeoid-Datei nicht gefunden: {pfad_gcg_tif}") + Es wird ein PROJ-Transformer von: - pfad_proj_grid = pfad_gcg_tif.with_name("de_bkg_gcg2016.tif") - if ( - not pfad_proj_grid.exists() - or pfad_proj_grid.stat().st_size != pfad_gcg_tif.stat().st_size - ): - shutil.copy2(pfad_gcg_tif, pfad_proj_grid) + - Quelle: EPSG:4936 (ETRS89 geozentrisch-kartesisch), + - Ziel: EPSG:25832 + EPSG:7837 (ETRS89 / UTM Zone 32N + DHHN2016 Normalhöhe) - datadir.append_data_dir(str(pfad_proj_grid.parent)) + initialisiert. Zusätzlich wird die BKG-GeoTIFF-Datei (Quasigeoidundulation) als PROJ-Grid eingebunden, + indem eine Kopie mit dem erwarteten Namen "de_bkg_gcg2016.tif" im selben Ordner erzeugt wird. - crs_src = CRS.from_epsg(4936) # ETRS89 geocentric (ECEF) + Die Methode akzeptiert Koordinatenwerte in verschiedenen Formen (SymPy-Matrix, numpy.ndarray, + Liste/Tuple, Skalar) und extrahiert daraus drei Werte (X, Y, Z). Die Ergebnisse (E, N, H) werden auf 8 Nachkommastellen gerundet. + + :param dict_koordinaten: Dictionary {punktnummer: koordinate}, wobei koordinate X/Y/Z enthält. + :type dict_koordinaten: dict + :param pfad_gcg_tif: Pfad zur BKG-GeoTIFF-Datei (Quasigeoidundulation) als str. + :type pfad_gcg_tif: str | Path | None + :return: Dictionary {punktnummer: (E, N, H)} mit UTM-Koordinaten (Meter) und Normalhöhe. + :rtype: dict + """ + + # Kopie des TIF vom BKG mit der Quasigeoidundolation erstellen + pfad_gcg_tif = Path(pfad_gcg_tif).resolve() + pfad_proj_grid = pfad_gcg_tif.with_name("de_bkg_gcg2016.tif") + if ( + not pfad_proj_grid.exists() + or pfad_proj_grid.stat().st_size != pfad_gcg_tif.stat().st_size + ): + shutil.copy2(pfad_gcg_tif, pfad_proj_grid) + datadir.append_data_dir(str(pfad_proj_grid.parent)) + + # EPSG-Codes feslegen + crs_src = CRS.from_epsg(4936) # ETRS89 geozentrisch-kartesisch # Ziel-CRS: ETRS89 / UTM Zone 32/33 + DHHN2016 Normalhöhe - # EPSG:25832/25833 = ETRS89 / UTM; EPSG:7837 = DHHN2016 height - utm_epsg = 25800 + zone # 25832 oder 25833 + utm_epsg = 25832 crs_dst = CRS.from_user_input(f"EPSG:{utm_epsg}+EPSG:7837") tr = Transformer.from_crs( @@ -365,6 +449,7 @@ class Transformationen: tr_geo = Transformer.from_crs(CRS.from_epsg(4936), CRS.from_epsg(4979), always_xy=True) + # Koordinaten an Dictionary übergeben dict_koordinaten_utm = {} for punktnummer, koordinate in dict_koordinaten.items(): werte = [] @@ -399,20 +484,8 @@ class Transformationen: # Skalar werte.append(float(v)) - if len(werte) < 3: - raise ValueError(f"Zu wenig skalare Werte gefunden: {werte}") - X, Y, Z = werte[0], werte[1], werte[2] - try: - E, N, H = tr.transform(X, Y, Z, errcheck=True) - except ProjError as e: - lon, lat, h_ell = tr_geo.transform(X, Y, Z, errcheck=True) - raise ProjError( - f"transform error (outside grid) | pn={punktnummer} | " - f"X,Y,Z={X},{Y},{Z} | lon/lat={lon},{lat} | h_ell={h_ell} | {e}" - ) - E, N, H = tr.transform(X, Y, Z, errcheck=True) # Runden, weil ansonsten aufgrund begrenzter Rechenkapazität falsche Werte Resultieren dict_koordinaten_utm[punktnummer] = (round(E, 8), round(N, 8), round(H, 8)) diff --git a/Netzqualität_Genauigkeit.py b/Netzqualität_Genauigkeit.py index 42eb28b..4c861f0 100644 --- a/Netzqualität_Genauigkeit.py +++ b/Netzqualität_Genauigkeit.py @@ -116,11 +116,9 @@ class Genauigkeitsmaße: float(s_max), float(s_min), float(t_gon) ]) - except: continue - - standardellipse = pd.DataFrame(daten, columns=["Punkt", "σx", "σy", "σxy", "s_max", "s_min", "θ [gon]"]) + standardellipse = pd.DataFrame(daten, columns=["Punkt", "σx [m]", "σy [m]", "σxy [m]", "Große Halbachse [m]", "Kleine Halbachse [m]", "θ [gon]"]) return standardellipse @@ -191,442 +189,133 @@ class Genauigkeitsmaße: except: continue - konfidenzellipse = pd.DataFrame(daten, columns= ["Punkt", "σx", "σy", "σxy", "a_K", "b_K","θ [gon]"]) - + konfidenzellipse = pd.DataFrame(daten, columns=["Punkt", "σx [m]", "σy [m]", "σxy [m]", "Große Halbachse [m]", + "Kleine Halbachse [m]", "θ [gon]"]) return konfidenzellipse +class Plot: + + @staticmethod - def konfidenzellipsoid(Qxx, s0_apost, unbekannten_liste, R, alpha, skala="f", return_2d_schnitte=True): + def netzplot_ellipsen( + Koord_ENU, + unbekannten_labels, + beobachtungs_labels, + df_konf_ellipsen_enu, + v_faktor=1000, + n_ellipse_pts=60, + title="Netzplot im ENU-System mit Konfidenzellipsen" + ): + names = [str(s).strip() for s in unbekannten_labels] - Qxx = np.asarray(Qxx, float) - namen_str = [str(sym) for sym in unbekannten_liste] - punkt_ids = sorted({n[1:] for n in namen_str if n and n[0].upper() in ("X", "Y", "Z")}) - - # Skalierungsfaktor für Konfidenzbereich - if skala.lower() == "f": - k2_3d = f.ppf(1.0 - alpha, df=3) - elif skala.lower() == "f": - k2_3d = 3.0 * f.ppf(1.0 - alpha, dfn=3, dfd=R) + if "θ_EN [gon]" in df_konf_ellipsen_enu.columns: + theta_col = "θ_EN [gon]" + elif "θ [gon]" in df_konf_ellipsen_enu.columns: + theta_col = "θ [gon]" else: - raise ValueError("skala muss 'chi2' oder 'f' sein.") + raise ValueError("Spalte 'θ_EN [gon]' oder 'θ [gon]' fehlt im DataFrame.") - daten = [] + punkt_ids = sorted({nm[1:] for nm in names if nm and nm[0].upper() in ("X", "Y", "Z")}) - for pid in punkt_ids: - try: - idx_x = next(i for i, n in enumerate(namen_str) if n.upper() == f"X{pid}".upper()) - idx_y = next(i for i, n in enumerate(namen_str) if n.upper() == f"Y{pid}".upper()) - idx_z = next(i for i, n in enumerate(namen_str) if n.upper() == f"Z{pid}".upper()) - except StopIteration: - continue + fig = go.Figure() - # 3x3-Block aus Qxx ziehen - I = [idx_x, idx_y, idx_z] - Qp = Qxx[np.ix_(I, I)] - - # Kovarianzmatrix (Sigma) des Punkts - Sigma = (s0_apost ** 2) * Qp - - # Standardabweichungen - sx = float(np.sqrt(Sigma[0, 0])) - sy = float(np.sqrt(Sigma[1, 1])) - sz = float(np.sqrt(Sigma[2, 2])) - - # Kovarianzen - sxy = float(Sigma[0, 1]) - sxz = float(Sigma[0, 2]) - syz = float(Sigma[1, 2]) - - # Eigenzerlegung (symmetrisch -> eigh) - evals, evecs = np.linalg.eigh(Sigma) - order = np.argsort(evals)[::-1] - evals = evals[order] - evecs = evecs[:, order] - - # Numerische Sicherheit: negative Mini-Eigenwerte durch Rundung abklemmen - evals = np.clip(evals, 0.0, None) - - # Halbachsen des Konfidenzellipsoids: - A, B, C = (np.sqrt(evals * k2_3d)).tolist() - - row = { - "Punkt": pid, - "σx": sx, "σy": sy, "σz": sz, - "σxy": sxy, "σxz": sxz, "σyz": syz, - "A_K": float(A), "B_K": float(B), "C_K": float(C), - # Orientierung als Spaltenvektoren (Eigenvektoren) - "evec_1": evecs[:, 0].tolist(), - "evec_2": evecs[:, 1].tolist(), - "evec_3": evecs[:, 2].tolist(), - "skala_k2": float(k2_3d), - "skala_typ": skala.lower() - } - - # Optional: 2D-Schnitte (XY, XZ, YZ) als Ellipsenparameter - if return_2d_schnitte: - row.update(Genauigkeitsmaße.ellipsen_schnitt_2d(Sigma, alpha, R, skala)) - - daten.append(row) - - return pd.DataFrame(daten) - - - - @staticmethod - def ellipsen_schnitt_2d(Sigma3, alpha, R, skala): - def ellipse_from_2x2(S2): - # Skalierung für 2D - if skala.lower() == "f": - k2 = f.ppf(1.0 - alpha, df=2) - else: - k2 = 2.0 * f.ppf(1.0 - alpha, dfn=2, dfd=R) - - evals, evecs = np.linalg.eigh(S2) - order = np.argsort(evals)[::-1] - evals = np.clip(evals[order], 0.0, None) - evecs = evecs[:, order] - - a, b = np.sqrt(evals * k2) - - # Winkel der Hauptachse (zu a) in der Ebene: atan2(vy, vx) - vx, vy = evecs[0, 0], evecs[1, 0] - theta_rad = np.arctan2(vy, vx) - theta_gon = float(theta_rad * (200.0 / np.pi)) % 200.0 - - return float(a), float(b), theta_gon - - # Submatrizen - S_xy = Sigma3[np.ix_([0, 1], [0, 1])] - S_xz = Sigma3[np.ix_([0, 2], [0, 2])] - S_yz = Sigma3[np.ix_([1, 2], [1, 2])] - - axy, bxy, txy = ellipse_from_2x2(S_xy) - axz, bxz, txz = ellipse_from_2x2(S_xz) - ayz, byz, tyz = ellipse_from_2x2(S_yz) - - return { - "aXY": axy, "bXY": bxy, "θXY [gon]": txy, - "aXZ": axz, "bXZ": bxz, "θXZ [gon]": txz, - "aYZ": ayz, "bYZ": byz, "θYZ [gon]": tyz, + # 1) Darstellungen der Beobachtungen + beob_typen = { + 'GNSS-Basislinien': {'pattern': 'gnss', 'color': 'rgba(255, 100, 0, 0.4)'}, + 'Tachymeter-Beob': {'pattern': '', 'color': 'rgba(100, 100, 100, 0.3)'} } + for typ, info in beob_typen.items(): + x_l, y_l = [], [] + for bl in beobachtungs_labels: + bl_str = str(bl).lower() + is_typ = ((info['pattern'] in bl_str and info['pattern'] != '') or + (info['pattern'] == '' and 'gnss' not in bl_str and 'niv' not in bl_str)) + if not is_typ: + continue + bl_raw = str(bl) + pts = [] + for pid in punkt_ids: + if (f"_{pid}" in bl_raw) or bl_raw.startswith(f"{pid}_"): + if pid in Koord_ENU: + pts.append(pid) - @staticmethod - def transform_q_with_your_functions(q_xyz, B, L): - # East - r11 = Berechnungen.E(L, 1, 0) - r12 = Berechnungen.E(L, 0, 1) - r13 = 0 - - # North - r21 = Berechnungen.N(B, L, 1, 0, 0) - r22 = Berechnungen.N(B, L, 0, 1, 0) - r23 = Berechnungen.N(B, L, 0, 0, 1) - - # Up - r31 = Berechnungen.U(B, L, 1, 0, 0) - r32 = Berechnungen.U(B, L, 0, 1, 0) - r33 = Berechnungen.U(B, L, 0, 0, 1) - - R = np.array([ - [r11, r12, r13], - [r21, r22, r23], - [r31, r32, r33] - ]) - - q_enu = R @ q_xyz @ R.T - return q_enu - - - - - - - - - - - -def plot_netz_komplett_final(x_vektor, unbekannten_labels, beobachtungs_labels, Qxx, sigma0_apost, - k_faktor=2.447, v_faktor=1000): - """ - Optimierter Plot für Jupyter Notebook: - - k_faktor: Statistischer Sicherheitsfaktor (2.447 entspricht 95% für 2D) - - v_faktor: Optische Überhöhung der Ellipsen (z.B. 1000 = mm werden als m dargestellt) - """ - - x_vektor = np.asarray(x_vektor, float).reshape(-1) - Qxx = np.asarray(Qxx, float) - - # 1. Datenaufbereitung - coords = {} - punkt_ids = sorted(set(str(l)[1:] for l in unbekannten_labels if str(l).startswith(('X', 'Y', 'Z')))) - pts_data = [] - - for pid in punkt_ids: - try: - ix = next(i for i, s in enumerate(unbekannten_labels) if str(s) == f"X{pid}") - iy = next(i for i, s in enumerate(unbekannten_labels) if str(s) == f"Y{pid}") - x, y = float(x_vektor[ix]), float(x_vektor[iy]) - coords[pid] = (x, y) - - # Kovarianzmatrix extrahieren und mit s0^2 skalieren - q_idx = [ix, iy] - Q_sub = Qxx[np.ix_(q_idx, q_idx)] * (sigma0_apost ** 2) - pts_data.append({'id': pid, 'x': x, 'y': y, 'Q': Q_sub}) - except: - continue - - if len(pts_data) == 0: - raise ValueError( - "Keine Netzpunkte extrahiert. Prüfe: x_vektor Form (u,) und Qxx Form (u,u) sowie Labels 'X'/'Y'.") - - fig = go.Figure() - - # 2. Beobachtungen (Gruppiert) - beob_typen = { - 'GNSS-Basislinien': {'pattern': 'gnss', 'color': 'rgba(255, 100, 0, 0.4)'}, - 'Nivellement': {'pattern': 'niv', 'color': 'rgba(0, 200, 100, 0.4)'}, - 'Tachymeter': {'pattern': '', 'color': 'rgba(100, 100, 100, 0.3)'} - } - - for typ, info in beob_typen.items(): - x_l, y_l = [], [] - for bl in beobachtungs_labels: - bl_str = str(bl).lower() - if (info['pattern'] in bl_str and info['pattern'] != '') or ( - info['pattern'] == '' and 'gnss' not in bl_str and 'niv' not in bl_str): - pts = [pid for pid in coords if f"_{pid}" in str(bl) or str(bl).startswith(f"{pid}_")] if len(pts) >= 2: - x_l.extend([coords[pts[0]][0], coords[pts[1]][0], None]) - y_l.extend([coords[pts[0]][1], coords[pts[1]][1], None]) + p1, p2 = pts[0], pts[1] + x_l.extend([Koord_ENU[p1][0], Koord_ENU[p2][0], None]) # E + y_l.extend([Koord_ENU[p1][1], Koord_ENU[p2][1], None]) # N - if x_l: - fig.add_trace(go.Scatter(x=x_l, y=y_l, mode='lines', name=typ, line=dict(color=info['color'], width=1))) + if x_l: + fig.add_trace(go.Scatter(x=x_l, y=y_l, mode='lines', name=typ, + line=dict(color=info['color'], width=1))) - # 3. Konfidenzellipsen mit v_faktor - for pt in pts_data: - vals, vecs = np.linalg.eigh(pt['Q']) - order = vals.argsort()[::-1] - vals, vecs = vals[order], vecs[:, order] + # 2) Darstellung der Konfidenzellipsen + t = np.linspace(0, 2 * np.pi, n_ellipse_pts) + first = True + for _, row in df_konf_ellipsen_enu.iterrows(): + pid = str(row["Punkt"]) + if pid not in Koord_ENU: + continue - theta = np.degrees(np.arctan2(vecs[1, 0], vecs[0, 0])) - # Skalierung: k_faktor (Statistik) * v_faktor (Optik) - a = k_faktor * np.sqrt(vals[0]) * v_faktor - b = k_faktor * np.sqrt(vals[1]) * v_faktor + a = float(row["a_K"]) * v_faktor + b = float(row["b_K"]) * v_faktor + theta = float(row[theta_col]) * np.pi / 200.0 # gon->rad - t = np.linspace(0, 2 * np.pi, 40) - e_x = a * np.cos(t) - e_y = b * np.sin(t) - R = np.array([[np.cos(np.radians(theta)), -np.sin(np.radians(theta))], - [np.sin(np.radians(theta)), np.cos(np.radians(theta))]]) - rot = np.dot(R, np.array([e_x, e_y])) + ex = a * np.cos(t) + ey = b * np.sin(t) - fig.add_trace(go.Scatter( - x=rot[0, :] + pt['x'], y=rot[1, :] + pt['y'], - mode='lines', line=dict(color='red', width=1.5), - name=f"Ellipsen (Vergrößert {v_faktor}x)", - legendgroup="Ellipsen", - showlegend=(pt == pts_data[0]), # Nur einmal in der Legende zeigen - hoverinfo='skip' - )) + c, s = np.cos(theta), np.sin(theta) + xr = c * ex - s * ey + yr = s * ex + c * ey - # 4. Punkte - df_pts = pd.DataFrame(pts_data) - fig.add_trace(go.Scatter( - x=df_pts['x'], y=df_pts['y'], mode='markers+text', - text=df_pts['id'], textposition="top center", - marker=dict(size=8, color='black'), name="Netzpunkte" - )) - - # 5. Layout & Notebook-Größe - fig.update_layout( - title=f"Netzausgleichung: Ellipsen {v_faktor}-fach vergrößert (k={k_faktor})", - xaxis=dict(title="X [m]", tickformat="f", separatethousands=True, scaleanchor="y", scaleratio=1, showgrid=True, - gridcolor='lightgrey'), - yaxis=dict(title="Y [m]", tickformat="f", separatethousands=True, showgrid=True, gridcolor='lightgrey'), - width=1100, # Breite angepasst - height=900, # Höhe deutlich vergrößert für Jupiter Notebook - plot_bgcolor='white', - legend=dict(yanchor="top", y=0.99, xanchor="left", x=0.01, bgcolor="rgba(255,255,255,0.8)") - ) - - # Info-Annotation als Ersatz für einen physischen Maßstabstab - fig.add_annotation( - text=f"Maßstab Ellipsen:
Dargestellte Größe = Wahre Ellipse × {v_faktor}", - align='left', showarrow=False, xref='paper', yref='paper', x=0.02, y=0.05, - bgcolor="white", bordercolor="black", borderwidth=1) - - fig.show(config={'scrollZoom': True}) - - - -def plot_netz_final_mit_df_ellipsen(x_vektor, unbekannten_labels, beobachtungs_labels, df_ellipsen, v_faktor=1000): - # 1. Punkte extrahieren - coords = {} - # Wir nehmen an, dass die Reihenfolge im x_vektor X, Y, Z pro Punkt ist - punkt_ids = sorted(set(str(l)[1:] for l in unbekannten_labels if str(l).startswith(('X', 'Y', 'Z')))) - - for pid in punkt_ids: - try: - ix = next(i for i, s in enumerate(unbekannten_labels) if str(s) == f"X{pid}") - iy = next(i for i, s in enumerate(unbekannten_labels) if str(s) == f"Y{pid}") - coords[pid] = (float(x_vektor[ix]), float(x_vektor[iy])) - except: - continue - - fig = go.Figure() - - # 2. Beobachtungslinien (Gruppiert) - beob_typen = { - 'GNSS-Basislinien': {'pattern': 'gnss', 'color': 'rgba(255, 100, 0, 0.4)'}, - 'Nivellement': {'pattern': 'niv', 'color': 'rgba(0, 200, 100, 0.4)'}, - 'Tachymeter': {'pattern': '', 'color': 'rgba(100, 100, 100, 0.3)'} - } - - for typ, info in beob_typen.items(): - x_l, y_l = [], [] - for bl in beobachtungs_labels: - bl_str = str(bl).lower() - # Einfache Logik zur Typtrennung - if (info['pattern'] in bl_str and info['pattern'] != '') or \ - (info['pattern'] == '' and 'gnss' not in bl_str and 'niv' not in bl_str): - pts = [pid for pid in coords if f"_{pid}" in str(bl) or str(bl).startswith(f"{pid}_")] - if len(pts) >= 2: - x_l.extend([coords[pts[0]][0], coords[pts[1]][0], None]) - y_l.extend([coords[pts[0]][1], coords[pts[1]][1], None]) - - if x_l: - fig.add_trace(go.Scatter(x=x_l, y=y_l, mode='lines', name=typ, line=dict(color=info['color'], width=1))) - - # 3. Ellipsen aus dem DataFrame zeichnen - for _, row in df_ellipsen.iterrows(): - pid = str(row['Punkt']) - if pid in coords: - x0, y0 = coords[pid] - - # Werte aus DF (mit v_faktor skalieren) - a = row['a_K'] * v_faktor - b = row['b_K'] * v_faktor - theta_gon = row['θ [gon]'] - - # Umrechnung: gon -> rad für die Rotation - # Da im Plot X horizontal und Y vertikal ist, entspricht theta_gon dem Winkel zur X-Achse - theta_rad = theta_gon * (np.pi / 200.0) - - # Ellipsen berechnen - t = np.linspace(0, 2 * np.pi, 50) - e_x = a * np.cos(t) - e_y = b * np.sin(t) - - # Ausrichtung der Ellipsen - R = np.array([[np.cos(theta_rad), -np.sin(theta_rad)], - [np.sin(theta_rad), np.cos(theta_rad)]]) - - rot = np.dot(R, np.array([e_x, e_y])) + E0, N0, _ = Koord_ENU[pid] fig.add_trace(go.Scatter( - x=rot[0, :] + x0, y=rot[1, :] + y0, - mode='lines', line=dict(color='red', width=1.5), - name='Konfidenzellipsen', - legendgroup='Ellipsen', - showlegend=(pid == df_ellipsen.iloc[0]['Punkt']), - hoverinfo='text', - text=f"Punkt {pid}
a_K: {row['a_K']:.4f}m
b_K: {row['b_K']:.4f}m" + x=E0 + xr, y=N0 + yr, + mode="lines", + line=dict(color="red", width=1.5), + name=f"Ellipsen (×{v_faktor})", + legendgroup="Ellipsen", + showlegend=first, + hoverinfo="skip" )) + first = False - # Punkte plotten - df_pts = pd.DataFrame([(pid, c[0], c[1]) for pid, c in coords.items()], columns=['ID', 'X', 'Y']) - fig.add_trace(go.Scatter( - x=df_pts['X'], y=df_pts['Y'], mode='markers+text', - text=df_pts['ID'], textposition="top center", - marker=dict(size=8, color='black'), name="Netzpunkte")) + # 3) Darstellung der Punkte + xs, ys, texts, hovers = [], [], [], [] + for pid in punkt_ids: + if pid not in Koord_ENU: + continue + E, N, U = Koord_ENU[pid] + xs.append(E); + ys.append(N); + texts.append(pid) + hovers.append(f"Punkt {pid}
E={E:.4f} m
N={N:.4f} m
U={U:.4f} m") - # Layout - fig.update_layout( - title=f"Netzplot (Ellipsen {v_faktor}x überhöht)", - xaxis=dict(title="X [m]", tickformat="f", separatethousands=True, scaleanchor="y", scaleratio=1, - showgrid=True, gridcolor='lightgrey'), - yaxis=dict(title="Y [m]", tickformat="f", separatethousands=True, showgrid=True, gridcolor='lightgrey'), - width=1100, height=900, - plot_bgcolor='white') - - # Maßstabsangabe - fig.add_annotation( - text=f"Skalierung:
Ellipsengröße im Plot = {v_faktor} × Realität", - align='left', showarrow=False, xref='paper', yref='paper', x=0.02, y=0.02, - bgcolor="rgba(255,255,255,0.8)", bordercolor="black", borderwidth=1) - - fig.show(config={'scrollZoom': True}) - - import plotly.graph_objects as go - import numpy as np - - - -def plot_netz_3D(x_vektor, unbekannten_labels, beobachtungs_labels, df_ellipsen, v_faktor=1000): - """ - Erzeugt einen interaktiven 3D-Plot des Netzes. - - v_faktor: Vergrößerung der Genauigkeits-Achsen (z.B. 1000 für mm -> m) - """ - # 1. Punkte extrahieren - pts = {} - punkt_ids = sorted(set(str(l)[1:] for l in unbekannten_labels if str(l).startswith(('X', 'Y', 'Z')))) - - for pid in punkt_ids: - try: - ix = next(i for i, s in enumerate(unbekannten_labels) if str(s) == f"X{pid}") - iy = next(i for i, s in enumerate(unbekannten_labels) if str(s) == f"Y{pid}") - iz = next(i for i, s in enumerate(unbekannten_labels) if str(s) == f"Z{pid}") - pts[pid] = (float(x_vektor[ix]), float(x_vektor[iy]), float(x_vektor[iz])) - except: - continue - - fig = go.Figure() - - # 2. Beobachtungen (Linien im Raum) - # Wir zeichnen hier einfach alle Verbindungen - x_line, y_line, z_line = [], [], [] - for bl in beobachtungs_labels: - p_in_l = [pid for pid in pts if f"_{pid}" in str(bl) or str(bl).startswith(f"{pid}_")] - if len(p_in_l) >= 2: - p1, p2 = pts[p_in_l[0]], pts[p_in_l[1]] - x_line.extend([p1[0], p2[0], None]) - y_line.extend([p1[1], p2[1], None]) - z_line.extend([p1[2], p2[2], None]) - - fig.add_trace(go.Scatter3d( - x=x_line, y=y_line, z=z_line, - mode='lines', line=dict(color='gray', width=2), - name='Beobachtungen' - )) - - # 3. Punkte & "Fehler-Kreuze" (als Ersatz für Ellipsoide) - # Ein echtes 3D-Ellipsoid ist grafisch schwer, daher zeichnen wir 3 Achsen - for pid, coord in pts.items(): - # Hier könnten wir die echten Halbachsen aus der 3D-Eigenwertanalyse nutzen - # Für den Anfang plotten wir die Standardabweichungen sX, sY, sZ als Kreuz - fig.add_trace(go.Scatter3d( - x=[coord[0]], y=[coord[1]], z=[coord[2]], - mode='markers+text', text=[pid], - marker=dict(size=4, color='black'), name=f'Punkt {pid}' + fig.add_trace(go.Scatter( + x=xs, y=ys, mode="markers+text", + text=texts, textposition="top center", + marker=dict(size=8, color="black"), + name="Netzpunkte", + hovertext=hovers, hoverinfo="text" )) - # 4. Layout - fig.update_layout( - scene=dict( - xaxis_title='X [m]', - yaxis_title='Y [m]', - zaxis_title='Z [m]', - aspectmode='data' # WICHTIG: Verhältnisse 1:1:1 bewahren - ), - width=1000, height=800, - title="Geozentrisches Netz in 3D" - ) + fig.update_layout( + title=f"{title} (Ellipsen ×{v_faktor})", + xaxis=dict(title="E [m]", scaleanchor="y", scaleratio=1, showgrid=True, gridcolor="lightgrey"), + yaxis=dict(title="N [m]", showgrid=True, gridcolor="lightgrey"), + width=1100, height=900, + template="plotly_white", + plot_bgcolor="white" + ) - fig.show() + fig.add_annotation( + text=f"Maßstab Ellipsen:
Dargestellte Größe = Konfidenzellipse × {v_faktor}", + align='left', showarrow=False, xref='paper', yref='paper', x=0.02, y=0.05, + bgcolor="white", bordercolor="black", borderwidth=1 + ) - # Aufruf + fig.show(config={'scrollZoom': True}) \ No newline at end of file diff --git a/Netzqualität_Zuverlässigkeit.py b/Netzqualität_Zuverlässigkeit.py index 4c3ccb7..777f79a 100644 --- a/Netzqualität_Zuverlässigkeit.py +++ b/Netzqualität_Zuverlässigkeit.py @@ -117,199 +117,193 @@ class Zuverlaessigkeit: - def aeussere_zuverlaessigkeit_EF_EP_stabil(Lokaltest, labels, Qxx, A, P, s0_apost, unbekannten_liste, x): + def aeussere_zuverlaessigkeit( + Lokaltest, labels, Qxx, A, P, s0_apost, unbekannten_liste, x, + angle_units="rad", + ep_use_abs=True, + exclude_prefixes=("lA_",), + ): df = Lokaltest.copy() - labels = list(labels) + labels = [str(l) for l in list(labels)] + Qxx = np.asarray(Qxx, float) A = np.asarray(A, float) P = np.asarray(P, float) x = np.asarray(x, float).reshape(-1) + + namen_str = [str(sym) for sym in unbekannten_liste] + + n = A.shape[0] + if len(labels) != n: + raise ValueError(f"len(labels)={len(labels)} passt nicht zu A.shape[0]={n}.") + if len(df) != n: + raise ValueError(f"Lokaltest hat {len(df)} Zeilen, A hat {n} Beobachtungen.") + + # Pseudobeobachtungen rausfiltern + keep = np.ones(n, dtype=bool) + if exclude_prefixes: + for i, lbl in enumerate(labels): + if any(lbl.startswith(pref) for pref in exclude_prefixes): + keep[i] = False + + # alles konsistent kürzen (wichtig: auch A & P!) + df = df.loc[keep].reset_index(drop=True) + labels = [lbl for (lbl, k) in zip(labels, keep) if k] + A = A[keep, :] + P = P[np.ix_(keep, keep)] + + # neue n + n = A.shape[0] + + # Daten aus dem Lokaltest ri = df["r_i"].astype(float).to_numpy() GF = df["GF_i"].astype(float).to_numpy() GRZW = df["GRZW_i"].astype(float).to_numpy() - n = A.shape[0] - # Namen als Strings für die Suche - namen_str = [str(sym) for sym in unbekannten_liste] + s0 = float(s0_apost) - # 1) Einflussfaktor EF berechnen - EF = np.zeros(n, dtype=float) - for i in range(n): - nabla_l = np.zeros((n, 1)) - nabla_l[i, 0] = GRZW[i] - nabla_x = Qxx @ (A.T @ (P @ nabla_l)) - Qxx_inv_nabla_x = np.linalg.solve(Qxx, nabla_x) - EF2 = ((nabla_x.T @ Qxx_inv_nabla_x) / (float(s0_apost) ** 2)).item() - EF[i] = np.sqrt(max(0, EF2)) + def to_rad(val): + if angle_units == "rad": + return val + if angle_units == "gon": + return val * (np.pi / 200.0) + if angle_units == "deg": + return val * (np.pi / 180.0) + raise ValueError("angle_units muss 'rad', 'gon' oder 'deg' sein.") - # 2) Koordinaten-Dict + # Punktkoordinaten aus x (für Streckenäquivalent bei Winkel-EP) coords = {} - punkt_ids = [n[1:] for n in namen_str if n.upper().startswith("X")] - + punkt_ids = sorted({name[1:] for name in namen_str + if name[:1].upper() in ("X", "Y", "Z") and len(name) > 1}) for pid in punkt_ids: try: ix = namen_str.index(f"X{pid}") iy = namen_str.index(f"Y{pid}") iz = namen_str.index(f"Z{pid}") - - coords[pid] = (x[ix], x[iy], x[iz] if iz is not None else 0.0) - except: + coords[pid] = (x[ix], x[iy], x[iz]) + except ValueError: continue - # 3) EP + Standpunkte - EP_m = np.full(len(labels), np.nan, dtype=float) - standpunkte = [""] * len(labels) - + # Standpunkt/Zielpunkt + standpunkte = [""] * n + zielpunkte = [""] * n for i, lbl in enumerate(labels): parts = lbl.split("_") sp, zp = None, None if any(k in lbl for k in ["_SD_", "_R_", "_ZW_"]): - if len(parts) >= 5: sp, zp = parts[3].strip(), parts[4].strip() + if len(parts) >= 5: + sp, zp = parts[3].strip(), parts[4].strip() elif "gnss" in lbl.lower(): - sp, zp = parts[-2].strip(), parts[-1].strip() + if len(parts) >= 2: + sp, zp = parts[-2].strip(), parts[-1].strip() elif "niv" in lbl.lower(): if len(parts) >= 4: sp = parts[3].strip() + if len(parts) >= 5: + zp = parts[4].strip() else: sp = parts[-1].strip() - standpunkte[i] = sp if sp is not None else "" + standpunkte[i] = sp or "" + zielpunkte[i] = zp or "" - # SD, GNSS, Niv: direkt Wegfehler - if "_SD_" in lbl or "gnss" in lbl.lower() or "niv" in lbl.lower(): - EP_m[i] = (1.0 - ri[i]) * GF[i] - # Winkel: Streckenäquivalent - elif "_R_" in lbl or "_ZW_" in lbl: - if sp in coords and zp in coords: - X1, Y1, _ = coords[sp] - X2, Y2, _ = coords[zp] - s = np.sqrt((X2 - X1) ** 2 + (Y2 - Y1) ** 2) - EP_m[i] = (1.0 - ri[i]) * (GF[i] * s) + # Berechnung des EPs + EP_GF = (1.0 - ri) * GF + EP_grzw = (1.0 - ri) * GRZW + if ep_use_abs: + EP_GF = np.abs(EP_GF) + EP_grzw = np.abs(EP_grzw) - # 4) SP am Standpunkt (2D oder 1D) - diagQ = np.diag(Qxx) - SP_cache_mm = {} - for sp in set([s for s in standpunkte if s]): - try: - ix = namen_str.index(f"X{sp}") - iy = namen_str.index(f"Y{sp}") - SP_cache_mm[sp] = float(s0_apost) * np.sqrt(diagQ[ix] + diagQ[iy]) * 1000.0 - except ValueError: - # Falls keine Lage, prüfe Höhe (Nivellement) - try: - iz = namen_str.index(f"Z{sp}") - SP_cache_mm[sp] = float(s0_apost) * np.sqrt(diagQ[iz]) * 1000.0 - except ValueError: - SP_cache_mm[sp] = 0.0 - - SP_mm = np.array([SP_cache_mm.get(sp, np.nan) for sp in standpunkte], dtype=float) - - return pd.DataFrame({ - "Beobachtung": labels, "Stand-Pkt": standpunkte, "EF": EF, - "EP [mm]": EP_m * 1000.0, "SP [mm]": SP_mm, "EF*SP [mm]": EF * SP_mm - }) - - - - def aeussere_zuverlaessigkeit_EF_EP(Lokaltest, labels, Qxx, A, P, s0_apost, unbekannten_liste, x): - df = Lokaltest.copy() - labels = list(labels) - Qxx = np.asarray(Qxx, float) - A = np.asarray(A, float) - P = np.asarray(P, float) - x = np.asarray(x, float).reshape(-1) - ri = df["r_i"].astype(float).to_numpy() - GF = df["GF_i"].astype(float).to_numpy() - s_vi = df["s_vi"].astype(float).to_numpy() - GRZW = df["GRZW_i"].astype(float).to_numpy() - nzp = df["δ0"].astype(float).to_numpy() - n = A.shape[0] # Anzahl Beobachtungen - u = A.shape[1] # Anzahl Unbekannte - - # Einflussfaktor EF berechnen - EF = np.zeros(n, dtype=float) - - for i in range(n): - # 1) ∇l_i aufstellen - nabla_l = np.zeros((n, 1)) - nabla_l[i, 0] = GRZW[i] - - # 2) ∇x_i = Qxx * A^T * P * ∇l_i - nabla_x = Qxx @ (A.T @ (P @ nabla_l)) - - # 3) EF_i^2 = (∇x_i^T * Qxx^{-1} * ∇x_i) / s0^2 - Qxx_inv_nabla_x = np.linalg.solve(Qxx, nabla_x) # = Qxx^{-1} ∇x_i - #EF2 = float((nabla_x.T @ Qxx_inv_nabla_x) / (float(s0_apost) ** 2)).item() - EF2 = ((nabla_x.T @ Qxx_inv_nabla_x) / (float(s0_apost) ** 2)).item() - - EF[i] = np.sqrt(EF2) - - # Koordinaten-Dict aus x - coords = {} - j = 0 - while j < len(unbekannten_liste): - name = str(unbekannten_liste[j]) - if name.startswith("X"): - pn = name[1:] - coords[pn] = (x[j], x[j + 1], x[j + 2]) - j += 3 - else: - j += 1 - - # EP + Standpunkte - EP_m = np.full(len(labels), np.nan, dtype=float) - standpunkte = [""] * len(labels) + EP_hat_m = np.full(n, np.nan, float) + EP_grzw_m = np.full(n, np.nan, float) for i, lbl in enumerate(labels): - parts = lbl.split("_") - sp = None - zp = None + sp = standpunkte[i] + zp = zielpunkte[i] - # Tachymeter: ID_SD_GRP_SP_ZP / ID_R_GRP_SP_ZP / ID_ZW_GRP_SP_ZP - if ("_SD_" in lbl) or ("_R_" in lbl) or ("_ZW_" in lbl): - if len(parts) >= 5: - sp = parts[3].strip() - zp = parts[4].strip() + is_angle = ("_R_" in lbl) or ("_ZW_" in lbl) + if not is_angle: + EP_hat_m[i] = EP_GF[i] + EP_grzw_m[i] = EP_grzw[i] + continue - # GNSS: *_gnssbx_SP_ZP etc. - if ("gnss" in lbl) and (len(parts) >= 4): - sp = parts[-2].strip() - zp = parts[-1].strip() + # Winkel -> Querabweichung = Winkel(rad) * Strecke (3D) + if sp in coords and zp in coords: + X1, Y1, Z1 = coords[sp] + X2, Y2, Z2 = coords[zp] + s = np.sqrt((X2 - X1) ** 2 + (Y2 - Y1) ** 2 + (Z2 - Z1) ** 2) - standpunkte[i] = sp if sp is not None else "" - one_minus_r = (1.0 - ri[i]) + EP_hat_m[i] = to_rad(EP_GF[i]) * s + EP_grzw_m[i] = to_rad(EP_grzw[i]) * s - # SD + GNSS: direkt in m - if ("_SD_" in lbl) or ("gnss" in lbl): - EP_m[i] = one_minus_r * GF[i] + # 3x3 Blöcke + def idx_xyz(pid): + return [ + namen_str.index(f"X{pid}"), + namen_str.index(f"Y{pid}"), + namen_str.index(f"Z{pid}") + ] - # R / ZW: Winkel -> Streckenäquivalent über s - elif ("_R_" in lbl) or ("_ZW_" in lbl): - if sp and zp and (sp in coords) and (zp in coords): - X1, Y1, Z1 = coords[sp] - X2, Y2, Z2 = coords[zp] - s = float(np.sqrt((X2 - X1) ** 2 + (Y2 - Y1) ** 2 + (Z2 - Z1) ** 2)) - EP_m[i] = one_minus_r * ((GF[i]) * s) + # EF lokal + SP lokal (3D) + EF = np.full(n, np.nan, float) + SP_loc_m = np.full(n, np.nan, float) + EFSP_loc_m = np.full(n, np.nan, float) - # SP am Standpunkt (2D) - diagQ = np.diag(Qxx) - SP_cache_mm = {} + for i in range(n): + sp = standpunkte[i] + zp = zielpunkte[i] - for sp in set([s for s in standpunkte if s]): - idx_x = [k for k, sym in enumerate(unbekannten_liste) if str(sym) == f"X{sp}"][0] - qx = diagQ[idx_x] - qy = diagQ[idx_x + 1] - SP_cache_mm[sp] = float(s0_apost) * np.sqrt(qx + qy) * 1000.0 + blocks = [] + idx = [] - SP_mm = np.array([SP_cache_mm.get(sp, np.nan) for sp in standpunkte], dtype=float) + try: + if sp: + b = idx_xyz(sp) + blocks.append(b) + idx += b + if zp: + b = idx_xyz(zp) + blocks.append(b) + idx += b + except ValueError: + continue - out = pd.DataFrame({ + if not blocks: + continue + + idx = list(dict.fromkeys(idx)) # unique + + # Δx_i aus Grenzstörung + dl = np.zeros((n, 1)) + dl[i, 0] = GRZW[i] + dx = Qxx @ (A.T @ (P @ dl)) + + dx_loc = dx[idx, :] + Q_loc = Qxx[np.ix_(idx, idx)] + + # EF lokal + EF2 = (dx_loc.T @ np.linalg.solve(Q_loc, dx_loc)).item() / (s0 ** 2) + EF[i] = np.sqrt(max(0.0, EF2)) + + # SP lokal 3D: max trace der 3x3 Punktblöcke + tr_list = [np.trace(Qxx[np.ix_(b, b)]) for b in blocks] + if not tr_list: + continue + + sigmaPmax_loc = s0 * np.sqrt(max(tr_list)) + SP_loc_m[i] = sigmaPmax_loc + EFSP_loc_m[i] = EF[i] * sigmaPmax_loc + + ausgabe_zuv = pd.DataFrame({ "Beobachtung": labels, "Stand-Pkt": standpunkte, + "Ziel-Pkt": zielpunkte, + "r_i": ri, + "EP_GF [mm]": EP_hat_m * 1000.0, + "EP_grzw [mm]": EP_grzw_m * 1000.0, "EF": EF, - "EP [mm]": EP_m * 1000.0, - "SP [mm]": SP_mm, - "EF*SP [mm]": EF * SP_mm, + "SP_loc_3D [mm]": SP_loc_m * 1000.0, + "EF*SP_loc_3D [mm]": EFSP_loc_m * 1000.0, }) - return out \ No newline at end of file + return ausgabe_zuv diff --git a/Stochastisches_Modell.py b/Stochastisches_Modell.py index 5180397..fec26f0 100644 --- a/Stochastisches_Modell.py +++ b/Stochastisches_Modell.py @@ -1,91 +1,85 @@ -import sympy as sp -import numpy as np from dataclasses import dataclass, field -from typing import Dict, Tuple, Iterable, Any -from Export import Export +import numpy as np +import sympy as sp +from typing import Dict, Iterable + from Datenbank import Datenbankzugriff +from Export import Export @dataclass class StochastischesModell: + """Stochastisches Modell zur Aufstellung und Auswertung von Varianz-Kovarianz-Matrizen. + + Die Klasse stellt Methoden zur Verfügung für: + + - symbolischen Aufbau der Varianz-Kovarianz-Matrix der Beobachtungen Qll, + - numerische Substitution von Qll aus der Datenbank, + - symbolischen und numerischen Aufbau der Zusatz-Varianz-Kovarianz-Matrix QAA für Anschlusspunkte (weiche Lagerung, lA_*), + - Ableitung zentraler Matrizen der Ausgleichung (P, Qxx, Qll_dach, Qvv) als Hilfsfunktionen. + + Die Grundidee ist, die stochastischen Zusammenhänge zunächst symbolisch abzubilden (SymPy) und anschließend + mit Datenbankwerten zu substituieren. + """ + n_beob: int - sigma_beob: Iterable[float] =None #σ a priori der einzelnen Beobachtung - gruppe_beob: Iterable[int] =None #Gruppenzugehörigkeit jeder Beobachtung (Distanz, Richtung, GNSS, Nivellement,...,) - sigma0_gruppe: Dict[int, float] = field(default_factory=dict) #σ0² für jede Gruppe + sigma_beob: Iterable[float] =None #σ a priori der einzelnen Beobachtung + gruppe_beob: Iterable[int] =None #Gruppenzugehörigkeit jeder Beobachtung (Distanz, Richtung, GNSS, Nivellement,...,) + sigma0_gruppe: Dict[int, float] = field(default_factory=dict) #σ0² für jede Gruppe - def __post_init__(self): - # Defaults setzen - if self.sigma_beob is None: - self.sigma_beob = [1.0] * int(self.n_beob) + def __init__(self, pfad_datenbank: str) -> None: + """Initialisiert das stochastische Modell. - if self.gruppe_beob is None: - self.gruppe_beob = [1] * int(self.n_beob) - - # In SymPy-Spaltenvektoren umwandeln - #self.sigma_beob = sp.Matrix(list(self.sigma_beob)) - #self.gruppe_beob = sp.Matrix(list(self.gruppe_beob)) - - # Dimension prüfen - #if self.sigma_beob.rows != self.gruppe_beob.rows: - # raise ValueError("sigma_beob und gruppe_beob müssen gleich viele Einträge haben.") - - #if self.sigma_beob.rows != int(self.n_beob): - # raise ValueError("n_beob passt nicht zur Länge von sigma_beob / gruppe_beob.") - - # Fehlende Gruppen mit sigma0_sq = 1.0 ergänzen - #unique_groups = sorted({int(g) for g in self.gruppe_beob}) - #for g in unique_groups: - # if g not in self.sigma0_gruppe: - # self.sigma0_gruppe[g] = 1.0 - - # In NumPy-Spaltenvektoren umwandeln - self.sigma_beob = np.asarray(list(self.sigma_beob), dtype=float).reshape(-1, 1) - self.gruppe_beob = np.asarray(list(self.gruppe_beob), dtype=int).reshape(-1, 1) - - # Dimension prüfen - if self.sigma_beob.shape[0] != self.gruppe_beob.shape[0]: - raise ValueError("sigma_beob und gruppe_beob müssen gleich viele Einträge haben.") - - if self.sigma_beob.shape[0] != int(self.n_beob): - raise ValueError("n_beob passt nicht zur Länge von sigma_beob / gruppe_beob.") - - # Fehlende Gruppen mit sigma0_sq = 1.0 ergänzen - unique_groups = sorted({int(g) for g in self.gruppe_beob.flatten()}) - for g in unique_groups: - if g not in self.sigma0_gruppe: - self.sigma0_gruppe[g] = 1.0 + Speichert den Pfad zur SQLite-Datenbank, initialisiert den Datenbankzugriff und legt Cache-Variablen an, + die in den numerischen Auswertungen zur Rechenzeitersparnis wiederverwendet werden. + :param pfad_datenbank: Pfad zur SQLite-Datenbank. + :type pfad_datenbank: str + :return: None + :rtype: None + """ + self.pfad_datenbank = pfad_datenbank self.func_Qll_numerisch = None self.liste_symbole_lambdify = None + self.db_zugriff = Datenbankzugriff(self.pfad_datenbank) + def Qll_symbolisch(self, liste_beobachtungen_symbolisch: list) -> sp.Matrix: + """Erstellt die symbolische Varianz-Kovarianz-Matrix Qll der Beobachtungen. - #def berechne_Qll(self) -> Tuple[sp.Matrix, sp.Matrix]: - # n = self.n_beob - # Q_ll = sp.zeros(n, n) - # P = sp.zeros(n, n) - # for i in range(self.n_beob): - # sigma_i = self.sigma_beob[i, 0] #σ-Wert der i-ten Beobachtung holen - # g = int(self.gruppe_beob[i, 0]) #Gruppenzugehörigkeit der Beobachtung bestimmen - # sigma0_sq = self.sigma0_gruppe[g] #Den Varianzfaktor der Gruppe holen - # q_ii = sigma_i**2 #σ² berechnen - # Q_ll[i, i] = q_ii #Diagonale - # return Q_ll + Aus den symbolischen Beobachtungskennungen wird die Beobachtungsart abgeleitet (Tachymeter: SD/R/ZW, + GNSS: gnssbx/gnssby/gnssbz, Geometrisches Nivellement: niv). Für jede Beobachtung wird eine symbolische Varianzgleichung + aufgestellt und in Qll eingetragen. - def Qll_symbolisch(self, pfad_datenbank: str, liste_beobachtungen_symbolisch: list) -> sp.Matrix: + Berücksichtigte Gleichungen: + + - Tachymeter SD: σ = sqrt(σ_konstant² + (σ_streckenprop * SD / 1 000 000)²), Varianz = varkomp * σ² + - Tachymeter R/ZW: σ = sqrt(σ_konstant² + (σ_konstant_SD / SD)²), Varianz = varkomp * σ² + - GNSS: Diagonale und Korrelationen je Basislinie aus cxx/cyy/czz und cxy/cxz/cyz, jeweils skaliert mit s0² + - Nivellement: σ = sqrt(n_wechselpunkte * σ_konstant² + σ_streckenprop² * distanz / 1000), Varianz = varkomp * σ² + + Die symbolische Matrix wird als CSV-Datei in Zwischenergebnisse\\Qll_Symbolisch.csv exportiert. + + :param liste_beobachtungen_symbolisch: Liste der symbolischen Beobachtungskennungen. + :type liste_beobachtungen_symbolisch: list + :return: Symbolische Varianz-Kovarianz-Matrix Qll. + :rtype: sp.Matrix + """ liste_standardabweichungen_symbole = [] + + # Vorbereitung und Abfrage der notwendigen Listen und Dictionaries liste_beobachtungen_symbolisch = [str(b) for b in liste_beobachtungen_symbolisch] liste_beobachtungen_symbolisch = [b for b in liste_beobachtungen_symbolisch if not b.startswith("lA_")] Qll = sp.zeros(len(liste_beobachtungen_symbolisch), len(liste_beobachtungen_symbolisch)) + dict_beobachtungenID_instrumenteID = self.db_zugriff.get_instrumenteID_beobachtungenID_dict() - db_zugriff = Datenbankzugriff(pfad_datenbank) - dict_beobachtungenID_instrumenteID = db_zugriff.get_instrumenteID_beobachtungenID_dict() - + # Aufstellen der Symbolischen Gleichungen für die Einträge in der Qll-Matrix jeder Beobachtungsgruppe for i, beobachtung_symbolisch_i in enumerate(liste_beobachtungen_symbolisch): aufgeteilt_i = beobachtung_symbolisch_i.split("_") - beobachtungenID_i = int(aufgeteilt_i[0]) instrumenteID_i = dict_beobachtungenID_instrumenteID[beobachtungenID_i] + # SD = Schrägdistanzen | R = Richtung | ZW = Zenitwinkel + # varkomp = Varianzkomponentenschätzung (Ist noch keine Erfolgt, ist dieser Faktor = 1 if aufgeteilt_i[1] == "SD" or aufgeteilt_i[1] == "R" or aufgeteilt_i[1] == "ZW": beobachtungsart_i = str(aufgeteilt_i[1]) @@ -120,6 +114,7 @@ class StochastischesModell: Qll[i, i] = (varianzkompontenschaetzung) * sigma ** 2 + # Setzen der 0-Einträge in der Qll-Matrix for j in range(i + 1, len(liste_beobachtungen_symbolisch)): beobachtung_symbolisch_j = liste_beobachtungen_symbolisch[j] aufgeteilt_j = beobachtung_symbolisch_j.split("_") @@ -128,8 +123,10 @@ class StochastischesModell: if beobachtungsart_i == "SD" and beobachtungsart_j == "SD": Qll[i, j] = 0 Qll[j, i] = 0 + + # GNSS + # s0, sowie die kovarianzen cxx, ... entstammen direkt LeicaGeooffice if aufgeteilt_i [1] == "gnssbx" or aufgeteilt_i[1] == "gnssby" or aufgeteilt_i[1] == "gnssbz": - #beobachtungenID_i = int(aufgeteilt_i[0]) beobachtungsart_i = str(aufgeteilt_i[1]) varianzkompontenschaetzung = sp.Symbol( f"varkomp_{instrumenteID_i}_GNSS-Rover_Basislinienbeobachtungen") @@ -185,9 +182,8 @@ class StochastischesModell: liste_standardabweichungen_symbole.append(czz) Qll[i, i] = (varianzkompontenschaetzung) * (czz * (s0 ** 2)) + # Geometrisches Nivellement if aufgeteilt_i[1] == "niv": - #beobachtungenID_i = int(aufgeteilt_i[0]) - #instrumenteID_i = dict_beobachtungenID_instrumenteID[beobachtungenID_i] beobachtungsart_i = str(aufgeteilt_i[1]) varianzkompontenschaetzung = sp.Symbol( @@ -198,6 +194,7 @@ class StochastischesModell: nivellement_distanz = sp.Symbol(f"niv_distanz_{beobachtungenID_i}") nivellement_anz_wechselpunkte = sp.Symbol(f"niv_anz_wechselpunkte_{beobachtungenID_i}") + # Berechnen der Standardabweichung unter Einbeziehung der Anzahl Wechselpunkte sigma = sp.sqrt(nivellement_anz_wechselpunkte * stabw_apriori_konstant ** 2 + stabw_apriori_streckenprop ** 2 * nivellement_distanz / 1000) liste_standardabweichungen_symbole.append(sigma) @@ -206,24 +203,49 @@ class StochastischesModell: Export.matrix_to_csv(r"Zwischenergebnisse\Qll_Symbolisch.csv", liste_beobachtungen_symbolisch, liste_beobachtungen_symbolisch, Qll, "Qll") return Qll - def Qll_numerisch(self, pfad_datenbank: str, Qll_Matrix_Symbolisch: sp.Matrix, liste_beobachtungen_symbolisch: list) -> np.Matrix: + def Qll_numerisch(self, Qll_Matrix_Symbolisch: sp.Matrix, liste_beobachtungen_symbolisch: list) -> np.Matrix: + """Erstellt eine numerische Varianz-Kovarianz-Matrix aus einer symbolischen Qll-Matrix. + + Es werden die zur Substitution benötigten Werte aus der Datenbank abgefragt und den in Qll vorkommenden Symbolen zugeordnet, + u. a.: + + - Genauigkeiten (stabw_apriori_konstant / stabw_apriori_streckenprop) je Instrument und Beobachtungsart, + - Varianzkomponenten (varkomp_*) je Instrument und Beobachtungsgruppe, + - gemessene Tachymeter-Distanzen SD_* zur Bildung der Winkel-/Zenitwinkel-Ansätze, + - GNSS-Kovarianzen cxx, cxy, cxz, cyy, cyz, czz sowie s0 je Basislinie, + - Geomtrisches Nivellement-Strecken und Anzahl Wechsel-/Standpunkte. + + Die Methode prüft, ob alle freien Symbole der Qll-Matrix substituierbar sind. + Zur Rechenzeitersparnis wird ein Lambdify-Cache geführt. Die Matrix wird anschließend gezielt + über Nicht-Null-Einträge befüllt, um unnötige Auswertung von Nullzellen zu vermeiden. + + Die numerische Matrix wird als CSV-Datei in Zwischenergebnisse\\Qll_Numerisch.csv exportiert. + + :param Qll_Matrix_Symbolisch: Symbolische Varianz-Kovarianz-Matrix Qll. + :type Qll_Matrix_Symbolisch: sp.Matrix + :param liste_beobachtungen_symbolisch: Liste der symbolischen Beobachtungskennungen. + :type liste_beobachtungen_symbolisch: list + :return: Numerische Varianz-Kovarianz-Matrix Qll als Numpy-Array. + :rtype: np.Matrix + :raises ValueError: Falls Symbole in Qll_Matrix_Symbolisch enthalten sind, für die keine Substitutionen vorhanden sind. + """ liste_beobachtungen_symbolisch = [str(b).strip() for b in liste_beobachtungen_symbolisch] liste_beobachtungen_symbolisch = [b for b in liste_beobachtungen_symbolisch if not b.startswith("lA_")] - db_zugriff = Datenbankzugriff(pfad_datenbank) - dict_genauigkeiten = db_zugriff.get_genauigkeiten_dict() - dict_beobachtungenID_instrumenteID = db_zugriff.get_instrumenteID_beobachtungenID_dict() + # Abfragen der Zahlen zu den Symbolen aus der Datenbank + dict_genauigkeiten = self.db_zugriff.get_genauigkeiten_dict() - liste_beobachtungen_tachymeter = db_zugriff.get_beobachtungen_from_beobachtungenid() - liste_beobachtungen_gnss = db_zugriff.get_beobachtungen_gnssbasislinien() - liste_beobachtungen_nivellement = db_zugriff.get_beobachtungen_nivellement() - - liste_varianzkomponenten = db_zugriff.get_varianzkomponentenschaetzung() + liste_beobachtungen_tachymeter = self.db_zugriff.get_beobachtungen_from_beobachtungenid() + liste_beobachtungen_gnss = self.db_zugriff.get_beobachtungen_gnssbasislinien() + liste_beobachtungen_nivellement = self.db_zugriff.get_beobachtungen_nivellement() + liste_varianzkomponenten = self.db_zugriff.get_varianzkomponentenschaetzung() + # Erstellen eines Dicts mit der zuordnung beobachtungenID : Distanz dict_beobachtungenID_distanz = {} for standpunkt, zielpunkt, beobachtungenID, beobachtungsgruppeID, tachymeter_richtung, tachymeter_zenitwinkel, tachymeter_distanz in liste_beobachtungen_tachymeter: dict_beobachtungenID_distanz[int(beobachtungenID)] = tachymeter_distanz + # Erstellen eines Dicts mit den Genauigkeiten aus der Tabelle Genauigkeiten dict_genauigkeiten_neu = {} for genauigkeitenID, eintrag in dict_genauigkeiten.items(): instrumenteID = int(eintrag[0]) @@ -235,6 +257,7 @@ class StochastischesModell: substitutionen = {} + # Erstellen eines Dicts mit den konstanten Anteilen der Standardabweichungen aus der Datenbank dict_konstante_sd = {} for (instrumenteID, beobachtungsart), (stabw_apriori_konstant, stabw_apriori_streckenprop) in dict_genauigkeiten_neu.items(): @@ -242,9 +265,11 @@ class StochastischesModell: if stabw_apriori_konstant is not None: dict_konstante_sd[instrumenteID] = float(stabw_apriori_konstant) + # Zuordnen des numerischen Varianzfaktors zum entsprechenden Symbol für die Substitution for (varianzkomponenteID, instrumenteID, beobachtungsgruppe, varianz_varianzkomponentenschaetzung) in liste_varianzkomponenten: substitutionen[sp.Symbol(f"varkomp_{instrumenteID}_{beobachtungsgruppe.strip()}")] = float(varianz_varianzkomponentenschaetzung) + # Zuordnen der numerischen Genauigkeitsangaben aus der Datenbank zum entsprechenden Symbol für die Substitution for (instrumenteID, beobachtungsart), (stabw_apriori_konstant, stabw_apriori_streckenprop) in dict_genauigkeiten_neu.items(): @@ -257,7 +282,6 @@ class StochastischesModell: elif beobachtungsart == "Geometrisches_Nivellement": beobachtungsart_kurz = "niv" - if stabw_apriori_konstant is not None: substitutionen[sp.Symbol(f"stabw_apriori_konstant_{beobachtungsart_kurz}_{instrumenteID}")] = float(stabw_apriori_konstant) if stabw_apriori_streckenprop is not None: @@ -266,17 +290,12 @@ class StochastischesModell: wert = wert / 1000.0 substitutionen[sp.Symbol(f"stabw_apriori_streckenprop_{beobachtungsart_kurz}_{instrumenteID}")] = wert - # --- DEBUG NIV Genauigkeiten (einmalig) --- - for k, v in substitutionen.items(): - ks = str(k) - if "stabw_apriori_streckenprop_niv_" in ks or "stabw_apriori_konstant_niv_" in ks: - print("DEBUG", ks, "=", v) - for instrumenteID, wert in dict_konstante_sd.items(): substitutionen[sp.Symbol(f"stabw_apriori_konstant_SD_{instrumenteID}")] = float(wert) liste_beobachtungen_symbolisch = [str(b) for b in liste_beobachtungen_symbolisch] + # Zuordnen der numerischen gemessenen Distanz aus der Datenbank zum entsprechenden Symbol für die Substitution for beobachtung_symbolisch in liste_beobachtungen_symbolisch: aufgeteilt = beobachtung_symbolisch.split("_") beobachtungenID = int(aufgeteilt[0]) @@ -285,7 +304,7 @@ class StochastischesModell: if distanz is not None: substitutionen[sp.Symbol(f"SD_{beobachtungenID}")] = float(distanz) - #GNSS Basislinien + # Zuordnen der numerischen GNSS-Bestandteile aus der Tabelle Beobachtungen zum entsprechenden Symbol für die Substitution for gnss_beobachtungen in liste_beobachtungen_gnss: beobachtungenID = gnss_beobachtungen[0] gnss_s0 = gnss_beobachtungen[6] @@ -313,7 +332,7 @@ class StochastischesModell: substitutionen[sp.Symbol(f"niv_anz_wechselpunkte_{beobachtungenID}")] = float(niv_anz_standpkte) substitutionen[sp.Symbol(f"niv_distanz_{beobachtungenID}")] = float(niv_strecke) - #Qll_numerisch = Qll_Matrix_Symbolisch.xreplace(substitutionen) + # Substituieren mit der Methode lambdify if (self.func_Qll_numerisch is None) or (set(self.liste_symbole_lambdify) != set(substitutionen.keys())): self.liste_symbole_lambdify = sorted(substitutionen.keys(), key=lambda s: str(s)) self.func_Qll_numerisch = sp.lambdify( @@ -323,14 +342,13 @@ class StochastischesModell: cse=True ) + # Ausgeben der fehlenden Substitutionen fehlend = sorted(list(Qll_Matrix_Symbolisch.free_symbols - set(substitutionen.keys())), key=lambda s: str(s)) if fehlend: raise ValueError( f"Qll_numerisch: Fehlende Substitutionen ({len(fehlend)}): {[str(s) for s in fehlend[:80]]}") - #liste_werte = [substitutionen[s] for s in self.liste_symbole_lambdify] - #Qll_numerisch = np.asarray(self.func_Qll_numerisch(*liste_werte), dtype=float) - + # Eingrenzen der Substitution auf nicht 0 Zellen rows = int(Qll_Matrix_Symbolisch.rows) cols = int(Qll_Matrix_Symbolisch.cols) @@ -349,12 +367,6 @@ class StochastischesModell: eintrag_num = eintrag.xreplace(substitutionen) - if hasattr(eintrag_num, "free_symbols") and len(eintrag_num.free_symbols) > 0: - rest = sorted(list(eintrag_num.free_symbols), key=lambda s: str(s)) - raise ValueError( - f"Qll_numerisch: Eintrag [{i},{j}] bleibt symbolisch. Rest-Symbole: {[str(s) for s in rest[:20]]}" - ) - Qll_numerisch[i, j] = float(eintrag_num) Export.matrix_to_csv( @@ -367,15 +379,28 @@ class StochastischesModell: return Qll_numerisch - def QAA_symbolisch(self, liste_beobachtungen_symbolisch: list, pfad_datenbank: str) -> np.Matrix: + def QAA_symbolisch(self, liste_beobachtungen_symbolisch: list) -> np.Matrix: + """Erstellt die symbolische Varianz-Kovarianz-Matrix QAA der Anschlusspunkte (weiche Lagerung). + + Es werden ausschließlich Beobachtungen berücksichtigt, deren Kennung mit "lA_" beginnt. Für jede Anschlussbedingung + wird eine (symbolische) Standardabweichung StabwAA_* angesetzt und mit der Varianzkomponente der Beobachtungsgruppe + "Anschlusspunkte" multipliziert. + + Die symbolische Matrix wird als CSV-Datei in Zwischenergebnisse\\QAA_Symbolisch.csv exportiert. + + :param liste_beobachtungen_symbolisch: Liste der symbolischen Beobachtungskennungen. + :type liste_beobachtungen_symbolisch: list + :return: Symbolische Varianz-Kovarianz-Matrix QAA. + :rtype: sp.Matrix + """ liste_standardabweichungen_symbole = [] liste_beobachtungen_symbolisch = [str(b) for b in liste_beobachtungen_symbolisch] liste_beobachtungen_symbolisch = [b for b in liste_beobachtungen_symbolisch if b.startswith("lA_")] Qll = sp.zeros(len(liste_beobachtungen_symbolisch), len(liste_beobachtungen_symbolisch)) - db_zugriff = Datenbankzugriff(pfad_datenbank) - instrumente_id_anschlusspunkte = db_zugriff.get_instrument_liste("Anschlusspunkte")[0][0] + instrumente_id_anschlusspunkte = self.db_zugriff.get_instrument_liste("Anschlusspunkte")[0][0] + # Erstellen der Symbolischen Gleichungen für die QAA-Matrix for i, beobachtung_symbolisch_i in enumerate(liste_beobachtungen_symbolisch): aufgeteilt_i = beobachtung_symbolisch_i.split("_") datumskoordinate = str(aufgeteilt_i[1]) @@ -394,17 +419,32 @@ class StochastischesModell: Export.matrix_to_csv(r"Zwischenergebnisse\QAA_Symbolisch.csv", liste_beobachtungen_symbolisch, liste_beobachtungen_symbolisch, Qll, "Qll") return Qll - def QAA_numerisch(self, pfad_datenbank: str, QAA_Matrix_Symbolisch: sp.Matrix, liste_beobachtungen_symbolisch: list) -> np.Matrix: + def QAA_numerisch(self, QAA_Matrix_Symbolisch: sp.Matrix, liste_beobachtungen_symbolisch: list) -> np.Matrix: + """Erstellt eine numerische Matrix aus einer symbolischen QAA-Matrix. + + Es werden die numerischen Standardabweichungen der Anschlussbedingungen sowie die Varianzkomponente der Gruppe + "Anschlusspunkte" aus der Datenbank abgefragt und substituiert. Zur Rechenzeitersparnis wird ein Lambdify-Cache geführt, + der bei Änderung der Symbolmenge neu aufgebaut. + + Die numerische Matrix wird als CSV-Datei in Zwischenergebnisse\\QAA_Numerisch.csv exportiert. + + :param QAA_Matrix_Symbolisch: Symbolische Varianz-Kovarianz-Matrix QAA. + :type QAA_Matrix_Symbolisch: sp.Matrix + :param liste_beobachtungen_symbolisch: Liste der symbolischen Beobachtungskennungen. + :type liste_beobachtungen_symbolisch: list + :return: Numerische Varianz-Kovarianz-Matrix QAA als Numpy-Array. + :rtype: np.Matrix + """ + # Symbolische Listen liste_beobachtungen_symbolisch = [str(b).strip() for b in liste_beobachtungen_symbolisch] liste_beobachtungen_symbolisch = [b for b in liste_beobachtungen_symbolisch if b.startswith("lA_")] - db_zugriff = Datenbankzugriff(pfad_datenbank) - dict_stabwAA_vorinfo = db_zugriff.get_stabw_AA_Netzpunkte() - - liste_varianzkomponenten = db_zugriff.get_varianzkomponentenschaetzung() + # Abfrage der numerischen Werte aus der Datenbank + dict_stabwAA_vorinfo = self.db_zugriff.get_stabw_AA_Netzpunkte() + liste_varianzkomponenten = self.db_zugriff.get_varianzkomponentenschaetzung() + # Zuordnen des Symbols zum numerischen Wert substitutionen = {} - for koordinate, stabwAA in dict_stabwAA_vorinfo.items(): substitutionen[sp.Symbol(str(koordinate).strip())] = float(stabwAA) @@ -412,11 +452,13 @@ class StochastischesModell: varianz_varianzkomponentenschaetzung) in liste_varianzkomponenten: substitutionen[sp.Symbol(f"varkomp_{instrumenteID}_Anschlusspunkte")] = float(varianz_varianzkomponentenschaetzung) + # Speichern der MAtrix in einer Instanzvariablen if not hasattr(self, "func_QAA_numerisch"): self.func_QAA_numerisch = None if not hasattr(self, "liste_symbole_lambdify_QAA"): self.liste_symbole_lambdify_QAA = [] + # Substituieren if (self.func_QAA_numerisch is None) or (set(self.liste_symbole_lambdify_QAA) != set(substitutionen.keys())): self.liste_symbole_lambdify_QAA = sorted(substitutionen.keys(), key=lambda s: str(s)) self.func_QAA_numerisch = sp.lambdify( @@ -440,21 +482,66 @@ class StochastischesModell: return QAA_numerisch @staticmethod - def berechne_P(Q_ll): + def berechne_P(Q_ll: np.ndarray) -> np.ndarray: + """Berechnet die Gewichtsmatrix P aus einer Varianz-Kovarianz-Matrix Qll. + + Die Gewichtsmatrix wird als Inverse von Qll gebildet: P = inv(Qll). + + :param Q_ll: Varianz-Kovarianz-Matrix der Beobachtungen. + :type Q_ll: np.ndarray + :return: Gewichtsmatrix P. + :rtype: np.ndarray + """ P = np.linalg.inv(Q_ll) return P @staticmethod - def berechne_Q_xx(N): + def berechne_Q_xx(N: np.ndarray) -> np.ndarray: + """Berechnet die Kofaktormatrix der Unbekannten Qxx aus der Normalgleichungsmatrix N. + + Die Kofaktormatrix wird als Inverse der Normalgleichungsmatrix gebildet: Qxx = inv(N). + Vor der Inversion wird geprüft, ob N quadratisch ist. + + :param N: Normalgleichungsmatrix. + :type N: np.ndarray + :return: Kofaktormatrix der Unbekannten Qxx. + :rtype: np.ndarray + :raises ValueError: Falls N nicht quadratisch ist. + """ if N.shape[0] != N.shape[1]: raise ValueError("N muss eine quadratische Matrix sein") Qxx = np.linalg.inv(N) return Qxx - def berechne_Q_ll_dach(A, Q_xx): + @staticmethod + def berechne_Q_ll_dach(A: np.ndarray, Q_xx: np.ndarray) -> np.ndarray: + """Berechnet die (geschätzte) Varianz-Kovarianz-Matrix der Beobachtungen Qll_dach. + + Die Matrix wird gemäß Qll_dach = A @ Qxx @ A.T gebildet. + + :param A: Jacobi-Matrix. + :type A: np.ndarray + :param Q_xx: Kofaktormatrix der Unbekannten. + :type Q_xx: np.ndarray + :return: Geschätzte Varianz-Kovarianz-Matrix der Beobachtungen Qll_dach. + :rtype: np.ndarray + """ Q_ll_dach = A @ Q_xx @ A.T return Q_ll_dach - def berechne_Qvv(Q_ll, Q_ll_dach): + @staticmethod + def berechne_Qvv(Q_ll: np.ndarray, Q_ll_dach: np.ndarray) -> np.ndarray: + """Berechnet die Varianz-Kovarianz-Matrix der Residuen Qvv. + + Die Residuenkovarianz wird als Differenz aus Beobachtungs-Kovarianz und dem durch das Modell erklärten Anteil gebildet: + Qvv = Qll - Qll_dach. + + :param Q_ll: Varianz-Kovarianz-Matrix der Beobachtungen. + :type Q_ll: np.ndarray + :param Q_ll_dach: Geschätzte Varianz-Kovarianz-Matrix der Beobachtungen. + :type Q_ll_dach: np.ndarray + :return: Varianz-Kovarianz-Matrix der Residuen Qvv. + :rtype: np.ndarray + """ Q_vv = Q_ll - Q_ll_dach return Q_vv \ No newline at end of file diff --git a/vks.py b/Varianzkomponentenschaetzung.py similarity index 100% rename from vks.py rename to Varianzkomponentenschaetzung.py