From 81dc206da8b4d6f75f937c22d1d97d0909b8a231 Mon Sep 17 00:00:00 2001
From: Riegel <alexander.riegel@hft-stuttgart.de>
Date: Fri, 6 Dec 2024 16:52:00 +0100
Subject: [PATCH] Refactor!: Move zip-parsing classes into CityDoctorModel

---
 CityDoctorParent/CityDoctorModel/pom.xml      |    8 +-
 .../citydoctor2/parser/CityGmlParser.java     |   21 +-
 .../citydoctor2}/utils/ArchivePacker.java     |    8 +-
 .../citydoctor2/zip}/CityGmlArchive.java      |   77 +-
 .../citydoctor2/zip/CityGmlZipEntry.java      |  127 ++
 .../citydoctor2/zip}/ErroneousEntry.java      |    8 +-
 .../citydoctor2/zip}/ZipEntryErrorType.java   |    2 +-
 .../stuttgart/citydoctor2/zip/ZipParser.java  |   12 +
 .../stuttgart/citydoctor2/zip}/ZipTest.java   |   12 +-
 .../src/test/resources/zip}/epsg.zip          |  Bin
 .../src/test/resources/zip}/epsg/epsg1.gml    |    0
 .../src/test/resources/zip}/epsg/epsg2.gml    |    0
 .../src/test/resources/zip/implicit.zip       |  Bin 0 -> 14045 bytes
 .../test/resources/zip/implicit/Implicit1.gml | 1004 +++++++++++
 .../test/resources/zip/implicit/Implicit2.gml |  510 ++++++
 .../resources/zip/implicit/Main_model.gml     |  446 +++++
 .../zip/implicit/subdir/Implicit3.gml         | 1527 +++++++++++++++++
 .../src/test/resources/zip}/mock_archive.zip  |  Bin
 .../resources/zip}/mock_archive/mock1.gml     |    0
 .../resources/zip}/mock_archive/mock2.gml     |    0
 .../resources/zip}/mock_archive/mock3.gml     |    0
 .../resources/zip}/mock_archive/mock4.gml     |    0
 .../resources/zip}/mock_archive/mock5.gml     |    0
 .../src/test/resources/zip}/validate.zip      |  Bin
 .../resources/zip}/validate/valCorrect.gml    |    0
 .../resources/zip}/validate/valFaulty.gml     |    0
 .../Extensions/CityDoctorZipLoader/pom.xml    |  194 ---
 .../ziploader/CityGmlZipEntry.java            |   82 -
 .../citydoctor2/ziploader/ZipParser.java      |   21 -
 .../ziploader/gui/ZipLoaderController.java    |   24 -
 .../ziploader/gui/ZipLoaderGUI.java           |   12 -
 .../ziploader/gui/ZipLoaderToolbar.java       |    9 -
 .../ziploader/gui/ZipLoaderView.java          |   86 -
 .../src/main/resources/citydoctor_logo.ico    |  Bin 4286 -> 0 bytes
 .../citydoctor2/ziploader/gui/zip.png         |  Bin 852 -> 0 bytes
 .../ziploader/gui/zipLoaderGUI.fxml           |   31 -
 .../ziploader/gui/zipLoaderToolbar.fxml       |   33 -
 CityDoctorParent/pom.xml                      |    1 -
 38 files changed, 3725 insertions(+), 530 deletions(-)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader => CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2}/utils/ArchivePacker.java (92%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader => CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip}/CityGmlArchive.java (51%)
 create mode 100644 CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntry.java
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader => CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip}/ErroneousEntry.java (69%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader => CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip}/ZipEntryErrorType.java (65%)
 create mode 100644 CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/ZipParser.java
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/java/de/hft/stuttgart/citydoctor2/ziploader => CityDoctorModel/src/test/java/de/hft/stuttgart/citydoctor2/zip}/ZipTest.java (90%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/epsg.zip (100%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/epsg/epsg1.gml (100%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/epsg/epsg2.gml (100%)
 create mode 100644 CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit.zip
 create mode 100644 CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Implicit1.gml
 create mode 100644 CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Implicit2.gml
 create mode 100644 CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Main_model.gml
 create mode 100644 CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/subdir/Implicit3.gml
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/mock_archive.zip (100%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/mock_archive/mock1.gml (100%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/mock_archive/mock2.gml (100%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/mock_archive/mock3.gml (100%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/mock_archive/mock4.gml (100%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/mock_archive/mock5.gml (100%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/validate.zip (100%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/validate/valCorrect.gml (100%)
 rename CityDoctorParent/{Extensions/CityDoctorZipLoader/src/test/resources => CityDoctorModel/src/test/resources/zip}/validate/valFaulty.gml (100%)
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/pom.xml
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/CityGmlZipEntry.java
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/ZipParser.java
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderController.java
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderGUI.java
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderToolbar.java
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderView.java
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/citydoctor_logo.ico
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zip.png
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zipLoaderGUI.fxml
 delete mode 100644 CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zipLoaderToolbar.fxml

diff --git a/CityDoctorParent/CityDoctorModel/pom.xml b/CityDoctorParent/CityDoctorModel/pom.xml
index 2354ab1..9a8cabd 100644
--- a/CityDoctorParent/CityDoctorModel/pom.xml
+++ b/CityDoctorParent/CityDoctorModel/pom.xml
@@ -58,7 +58,13 @@
 			<groupId>org.locationtech.proj4j</groupId>
 			<artifactId>proj4j</artifactId>
 		</dependency>
-	</dependencies>
+        <dependency>
+            <groupId>commons-io</groupId>
+            <artifactId>commons-io</artifactId>
+            <version>2.16.1</version>
+            <scope>compile</scope>
+        </dependency>
+    </dependencies>
 	<build>
 		<resources>
 			<resource>
diff --git a/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/parser/CityGmlParser.java b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/parser/CityGmlParser.java
index 9cfbd4b..3b09332 100644
--- a/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/parser/CityGmlParser.java
+++ b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/parser/CityGmlParser.java
@@ -203,7 +203,7 @@ public class CityGmlParser {
 			}
 		}
 		InputStream is = archive.getInputStream(entry);
-		return parseCityGmlStream(is, config, context);
+		return parseCityGmlStream(is, archive, config, context);
 	}
 
 	private static List<String> validateStream(InputStream vis, CityGMLContext context) throws CityGmlParseException {
@@ -239,12 +239,12 @@ public class CityGmlParser {
 		}
 	}
 
-	public static CityDoctorModel parseCityGmlStream(InputStream is, ParserConfiguration config, CityGMLContext context)
+	public static CityDoctorModel parseCityGmlStream(InputStream is, ZipFile archive ,ParserConfiguration config, CityGMLContext context)
 			throws CityGmlParseException {
-		return parseCityGmlStream(is, config, null, context);
+		return parseCityGmlStream(is, archive, config, null, context);
 	}
 
-	public static CityDoctorModel parseCityGmlStream(InputStream is, ParserConfiguration config, ProgressListener l, CityGMLContext context)
+	public static CityDoctorModel parseCityGmlStream(InputStream is, ZipFile archive, ParserConfiguration config, ProgressListener l, CityGMLContext context)
 			throws CityGmlParseException {
 
 		try {
@@ -256,13 +256,18 @@ public class CityGmlParser {
 				if (l != null){
 					ois.addListener(l::updateProgress);
 				}
-				return readAndKeepFeatures(config, Path.of(""), in, ois);
+				return readAndKeepFeatures(config, Path.of(archive.getName()), in, ois);
 			}
 		} catch (CityGMLReadException | IOException e) {
 			throw new CityGmlParseException("Failed to read CityGML file", e);
 		}
 	}
 
+	private static CityDoctorModel readAndKeepFeatures(ZipFile archive, ParserConfiguration config,
+													   CityGMLInputFactory inputFactory, ObservedInputStream ois) throws CityGMLReadException {
+		return readAndKeepModel(new Citygml3FeatureMapper(config, Path.of(archive.getName())), inputFactory, ois);
+	}
+
 	private static void readEpsgCodeFromInputStream(BufferedInputStream bis, ParserConfiguration config) throws CityGmlParseException {
 		try{
 			// Mark start position of GML-"file"
@@ -422,8 +427,12 @@ public class CityGmlParser {
 
 	private static CityDoctorModel readAndKeepFeatures(ParserConfiguration config, Path file,
 			CityGMLInputFactory inputFactory, ObservedInputStream ois) throws CityGMLReadException {
+		return readAndKeepModel(new Citygml3FeatureMapper(config, file), inputFactory, ois);
+	}
+
+	private static CityDoctorModel readAndKeepModel(Citygml3FeatureMapper mapper, CityGMLInputFactory inputFactory,
+													ObservedInputStream ois) throws CityGMLReadException{
 		try (CityGMLReader reader = inputFactory.createCityGMLReader(ois)) {
-			Citygml3FeatureMapper mapper = new Citygml3FeatureMapper(config, file);
 			CityGMLVersion version = null;
 			// model is read in chunked mode
 			// object members are replaced by href in model
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/utils/ArchivePacker.java b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/utils/ArchivePacker.java
similarity index 92%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/utils/ArchivePacker.java
rename to CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/utils/ArchivePacker.java
index fc4cc2d..f9a6f46 100644
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/utils/ArchivePacker.java
+++ b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/utils/ArchivePacker.java
@@ -1,9 +1,9 @@
-package de.hft.stuttgart.citydoctor2.ziploader.utils;
+package de.hft.stuttgart.citydoctor2.utils;
 
 import de.hft.stuttgart.citydoctor2.datastructure.CityDoctorModel;
-import de.hft.stuttgart.citydoctor2.ziploader.CityGmlArchive;
-import de.hft.stuttgart.citydoctor2.ziploader.CityGmlZipEntry;
-import de.hft.stuttgart.citydoctor2.ziploader.ErroneousEntry;
+import de.hft.stuttgart.citydoctor2.zip.CityGmlArchive;
+import de.hft.stuttgart.citydoctor2.zip.CityGmlZipEntry;
+import de.hft.stuttgart.citydoctor2.zip.ErroneousEntry;
 import org.apache.commons.io.FileUtils;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/CityGmlArchive.java b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlArchive.java
similarity index 51%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/CityGmlArchive.java
rename to CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlArchive.java
index cdae92f..d832781 100644
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/CityGmlArchive.java
+++ b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlArchive.java
@@ -1,21 +1,18 @@
-package de.hft.stuttgart.citydoctor2.ziploader;
+package de.hft.stuttgart.citydoctor2.zip;
 
-import de.hft.stuttgart.citydoctor2.check.Checker;
 import de.hft.stuttgart.citydoctor2.parser.ParserConfiguration;
-import de.hft.stuttgart.citydoctor2.ziploader.utils.ArchivePacker;
+import de.hft.stuttgart.citydoctor2.utils.ArchivePacker;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.io.Serial;
+import java.io.*;
 
-import java.io.Serializable;
 import java.nio.file.Path;
 import java.util.ArrayList;
 import java.util.List;
 
 import java.util.zip.ZipEntry;
+import java.util.zip.ZipException;
 import java.util.zip.ZipFile;
 import java.util.zip.ZipInputStream;
 
@@ -26,13 +23,14 @@ public class CityGmlArchive implements Serializable {
     @Serial
     private static final long serialVersionUID = 2168389511043362615L;
 
-    private final List<CityGmlZipEntry> entries;
+    private List<CityGmlZipEntry> entries;
     private final Path archivePath;
+    private ZipFile zipFile;
 
     public static CityGmlArchive fromZipFile(String zipFile, ParserConfiguration config) {
         ArrayList<CityGmlZipEntry> archiveEntries = new ArrayList<>();
         ZipFile zip = null;
-        try (ZipInputStream zis = new ZipInputStream(new FileInputStream(zipFile));) {
+        try (ZipInputStream zis = new ZipInputStream(new FileInputStream(zipFile))) {
             zip = new ZipFile(zipFile);
             ZipEntry ze;
             while ((ze = zis.getNextEntry()) != null )
@@ -59,23 +57,76 @@ public class CityGmlArchive implements Serializable {
         return new CityGmlArchive(archiveEntries, Path.of(zipFile));
     }
 
+    public static CityGmlArchive register(String zipFile) {
+        ArrayList<CityGmlZipEntry> archiveEntries = new ArrayList<>();
+        CityGmlArchive cgmlArchive = new CityGmlArchive(Path.of(zipFile));
+        try (ZipInputStream zis = new ZipInputStream(new FileInputStream(zipFile))) {
+            ZipEntry ze;
+            while ((ze = zis.getNextEntry()) != null )
+            {
+                if (ze.isDirectory()) {
+                    continue;
+                }
+                if (ze.getName().endsWith(".gml")) {
+                    archiveEntries.add(CityGmlZipEntry.register(ze));
+                }
+            }
+            cgmlArchive.setEntries(archiveEntries);
+            return cgmlArchive;
+        } catch (IOException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+    public void mountArchive(ParserConfiguration config){
+        try (ZipFile zip = new ZipFile(archivePath.toFile())) {
+            zipFile = zip;
+            for (CityGmlZipEntry entry : entries){
+                entry.loadEntry(zip, config);
+            }
+        } catch (IOException e) {
+            logger.error(e);
+        } finally {
+            zipFile = null;
+        }
+    }
+
+    private CityGmlArchive(Path archivePath){
+        this.archivePath = archivePath;
+    }
+
     private CityGmlArchive(List<CityGmlZipEntry> entries, Path archivePath) {
+        setEntries(entries);
+        this.archivePath = archivePath;
+    }
+
+    private void setEntries(List<CityGmlZipEntry> entries) {
         this.entries = entries;
         entries.forEach(e -> e.setArchive(this));
-        this.archivePath = archivePath;
     }
 
     public void exportToZipFile(String path)  {
         ArchivePacker.packArchive(path, this);
     }
 
-    public void checkEntries(){
+
+    public InputStream getInputStream(CityGmlZipEntry entry) throws IOException {
+        if(zipFile == null){
+            throw new ZipException("Requested InputStream from unmounted CityGmlArchive");
+        }
+        return zipFile.getInputStream(zipFile.getEntry(entry.getFileName()));
+    }
+
+    public CityGmlZipEntry getEntry(String fileName) {
         for(CityGmlZipEntry entry : entries){
-            Checker checker = new Checker(entry.getModel());
-            checker.runChecks();
+            if(entry.getFileName().equals(fileName)){
+                return entry;
+            }
         }
+        return null;
     }
 
+
     public Path getArchivePath() {
         return archivePath;
     }
diff --git a/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntry.java b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntry.java
new file mode 100644
index 0000000..158555e
--- /dev/null
+++ b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntry.java
@@ -0,0 +1,127 @@
+package de.hft.stuttgart.citydoctor2.zip;
+
+import de.hft.stuttgart.citydoctor2.datastructure.CityDoctorModel;
+import de.hft.stuttgart.citydoctor2.parser.CityGmlParseException;
+import de.hft.stuttgart.citydoctor2.parser.CityGmlParser;
+import de.hft.stuttgart.citydoctor2.parser.InvalidGmlFileException;
+import de.hft.stuttgart.citydoctor2.parser.ParserConfiguration;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
+
+public class CityGmlZipEntry {
+
+    private static final Logger logger = LogManager.getLogger(CityGmlZipEntry.class);
+
+    private final String fileName;
+    private CityDoctorModel model;
+    private CityGmlArchive parentArchive;
+    private boolean validated = false;
+    private boolean decompressed = false;
+    private long size = -1L;
+
+    public static CityGmlZipEntry of(ZipEntry entry, ZipFile archive, ParserConfiguration config){
+        CityGmlZipEntry ze = CityGmlZipEntry.register(entry);
+        return ze.loadEntry(archive, config);
+    }
+
+    public CityGmlZipEntry loadEntry(ZipFile zip ,ParserConfiguration config){
+        if (decompressed){
+            return this;
+        }
+        ZipEntry ze = zip.getEntry(fileName);
+        try {
+            if (!entrySizeWithinMemoryLimits(ze,zip)) {
+                return new ErroneousEntry(ze, ZipEntryErrorType.EXCESSIVE_FILESIZE);
+            }
+            CityGmlParser.gagLogger(true);
+            this.model = CityGmlParser.parseCityGmlZipEntry(ze, zip, config);
+            this.decompressed = true;
+            return this;
+        } catch (CityGmlParseException | InvalidGmlFileException e) {
+            logger.error(e);
+            return new ErroneousEntry(ze, ZipEntryErrorType.INVALID_CITY_GML_FILE);
+        } catch (IOException e){
+            logger.error(e);
+            return new ErroneousEntry(ze, ZipEntryErrorType.IO_ERROR);
+        }
+    }
+
+    public static CityGmlZipEntry register(ZipEntry entry){
+        return new CityGmlZipEntry(entry, false);
+    }
+
+    private boolean entrySizeWithinMemoryLimits(ZipEntry ze, ZipFile zip) throws IOException {
+        long mb = 1024 * 1024L;
+        long maxMemory = (long) Math.ceil(((double) Runtime.getRuntime().maxMemory() / mb)*0.9);
+        if (size != -1L){
+            return maxMemory > size;
+        }
+        if (ze.getSize() == -1L){
+            //unknown filesize, check by streaming file
+            InputStream is = zip.getInputStream(ze);
+            ByteArrayOutputStream baos = new ByteArrayOutputStream();
+            for(int i = is.read(); i != -1;i=is.read()) {
+                baos.write(i);
+                if ((baos.size() / mb) + 1 > maxMemory) {
+                    //Entry will exceed available memory
+                    return false;
+                }
+            }
+            // end of stream reached
+            this.size = baos.size();
+            return true;
+        } else {
+            size = (long) Math.ceil((double) ze.getSize() / mb);
+            return maxMemory > size;
+        }
+    }
+
+    private CityGmlZipEntry(ZipEntry entry, CityDoctorModel model){
+        this.fileName = entry.getName();
+        this.model = model;
+    }
+
+    protected CityGmlZipEntry(ZipEntry entry, boolean decompressed) {
+        this.fileName = entry.getName();
+        this.model = null;
+        this.decompressed = decompressed;
+    }
+
+    private static int calculateEntrySize(ZipEntry entry, ZipFile archive) {
+        try {
+            InputStream is = archive.getInputStream(entry);
+
+        } catch (IOException e) {
+            throw new RuntimeException(e);
+        }
+        return 0;
+    }
+
+    public void setArchive(CityGmlArchive archive){
+        parentArchive = archive;
+    }
+
+    public CityGmlArchive getArchive(){
+        return parentArchive;
+    }
+
+
+    public boolean isValidated(){
+        return validated;
+    }
+
+    public String getFileName() {
+        return fileName;
+    }
+
+    public CityDoctorModel getModel() {
+        return model;
+    }
+
+}
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/ErroneousEntry.java b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/ErroneousEntry.java
similarity index 69%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/ErroneousEntry.java
rename to CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/ErroneousEntry.java
index ba17f60..c103ce1 100644
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/ErroneousEntry.java
+++ b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/ErroneousEntry.java
@@ -1,4 +1,4 @@
-package de.hft.stuttgart.citydoctor2.ziploader;
+package de.hft.stuttgart.citydoctor2.zip;
 
 import de.hft.stuttgart.citydoctor2.datastructure.CityDoctorModel;
 
@@ -9,14 +9,10 @@ public class ErroneousEntry extends CityGmlZipEntry {
     private ZipEntryErrorType errorType = null;
 
     public ErroneousEntry(ZipEntry entry, ZipEntryErrorType errorType){
-        super(entry);
+        super(entry, true);
         this.errorType = errorType;
     }
 
-    @Override
-    public void validateModel(){
-        /* Erroneous entries could not parse their CityModel and thus skip validation */
-    }
 
     @Override
     public CityDoctorModel getModel(){
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/ZipEntryErrorType.java b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/ZipEntryErrorType.java
similarity index 65%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/ZipEntryErrorType.java
rename to CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/ZipEntryErrorType.java
index d1d4fae..d68209f 100644
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/ZipEntryErrorType.java
+++ b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/ZipEntryErrorType.java
@@ -1,4 +1,4 @@
-package de.hft.stuttgart.citydoctor2.ziploader;
+package de.hft.stuttgart.citydoctor2.zip;
 
 public enum ZipEntryErrorType {
     INVALID_CITY_GML_FILE, EXCESSIVE_FILESIZE, IO_ERROR
diff --git a/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/ZipParser.java b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/ZipParser.java
new file mode 100644
index 0000000..e65d96b
--- /dev/null
+++ b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/ZipParser.java
@@ -0,0 +1,12 @@
+package de.hft.stuttgart.citydoctor2.zip;
+
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
+public class ZipParser {
+
+    private static final Logger logger = LogManager.getLogger(ZipParser.class);
+
+
+
+}
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/java/de/hft/stuttgart/citydoctor2/ziploader/ZipTest.java b/CityDoctorParent/CityDoctorModel/src/test/java/de/hft/stuttgart/citydoctor2/zip/ZipTest.java
similarity index 90%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/java/de/hft/stuttgart/citydoctor2/ziploader/ZipTest.java
rename to CityDoctorParent/CityDoctorModel/src/test/java/de/hft/stuttgart/citydoctor2/zip/ZipTest.java
index b933add..0cd37f9 100644
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/java/de/hft/stuttgart/citydoctor2/ziploader/ZipTest.java
+++ b/CityDoctorParent/CityDoctorModel/src/test/java/de/hft/stuttgart/citydoctor2/zip/ZipTest.java
@@ -1,4 +1,4 @@
-package de.hft.stuttgart.citydoctor2.ziploader;
+package de.hft.stuttgart.citydoctor2.zip;
 
 import de.hft.stuttgart.citydoctor2.parser.ParserConfiguration;
 import org.apache.commons.io.FileUtils;
@@ -23,7 +23,7 @@ public class ZipTest {
 
     @Test
     public void testUnzipping() {
-        CityGmlArchive cgmlArch = CityGmlArchive.fromZipFile("src/test/resources/mock_archive.zip", config);
+        CityGmlArchive cgmlArch = CityGmlArchive.fromZipFile("src/test/resources/zip/mock_archive.zip", config);
         checkMockArchive(cgmlArch);
     }
 
@@ -41,7 +41,7 @@ public class ZipTest {
 
     @Test
     public void testZipping() throws IOException {
-        CityGmlArchive cgmlArch = CityGmlArchive.fromZipFile("src/test/resources/mock_archive.zip", config);
+        CityGmlArchive cgmlArch = CityGmlArchive.fromZipFile("src/test/resources/zip/mock_archive.zip", config);
         Path tmpDir = null;
         try {
             tmpDir = Files.createTempDirectory("testTmp");
@@ -62,7 +62,7 @@ public class ZipTest {
 
     @Test
     public void testEpsgParsing() {
-        CityGmlArchive cgmlArch = CityGmlArchive.fromZipFile("src/test/resources/epsg.zip", config);
+        CityGmlArchive cgmlArch = CityGmlArchive.fromZipFile("src/test/resources/zip/epsg.zip", config);
         assertNotNull(cgmlArch);
         List<String> epsgs = new ArrayList<>(2);
         epsgs.add("25832");
@@ -78,11 +78,11 @@ public class ZipTest {
     @Test
     public void testValidation(){
         ParserConfiguration valConfig = new ParserConfiguration(8,true);
-        CityGmlArchive cgmlArch = CityGmlArchive.fromZipFile("src/test/resources/validate.zip", valConfig);
+        CityGmlArchive cgmlArch = CityGmlArchive.fromZipFile("src/test/resources/zip/validate.zip", valConfig);
         int faultyFiles = 0;
         for (CityGmlZipEntry entry : cgmlArch.getEntries()) {
             if (entry instanceof ErroneousEntry errEntry) {
-                assertTrue(entry.getFileName().matches("^valFaulty.gml$"));
+                assertTrue(entry.getFileName().matches("validate/valFaulty.gml$"));
                 assertEquals(ZipEntryErrorType.INVALID_CITY_GML_FILE, errEntry.getErrorType());
                 faultyFiles++;
             }
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/epsg.zip b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/epsg.zip
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/epsg.zip
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/epsg.zip
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/epsg/epsg1.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/epsg/epsg1.gml
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/epsg/epsg1.gml
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/epsg/epsg1.gml
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/epsg/epsg2.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/epsg/epsg2.gml
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/epsg/epsg2.gml
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/epsg/epsg2.gml
diff --git a/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit.zip b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit.zip
new file mode 100644
index 0000000000000000000000000000000000000000..092b45e43f00c3ef77f3dbbda4d2ed2d6c753a56
GIT binary patch
literal 14045
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

literal 0
HcmV?d00001

diff --git a/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Implicit1.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Implicit1.gml
new file mode 100644
index 0000000..c0539e3
--- /dev/null
+++ b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Implicit1.gml
@@ -0,0 +1,1004 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<core:CityModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xmlns:core="http://www.opengis.net/citygml/2.0"
+           xmlns:gml="http://www.opengis.net/gml"
+           xmlns:xlink="http://www.w3.org/1999/xlink"
+           xmlns:tran="http://www.opengis.net/citygml/transportation/2.0"
+           xmlns:wtr="http://www.opengis.net/citygml/waterbody/2.0"
+           xmlns:smil20lang="http://www.w3.org/2001/SMIL20/Language"
+           xmlns:grp="http://www.opengis.net/citygml/cityobjectgroup/2.0"
+           xmlns:luse="http://www.opengis.net/citygml/landuse/2.0"
+           xmlns:frn="http://www.opengis.net/citygml/cityfurniture/2.0"
+           xmlns:app="http://www.opengis.net/citygml/appearance/2.0"
+           xmlns:tex="http://www.opengis.net/citygml/texturedsurface/2.0"
+           xmlns:smil20="http://www.w3.org/2001/SMIL20/"
+           xmlns:xAL="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"
+           xmlns:bldg="http://www.opengis.net/citygml/building/2.0"
+           xmlns:dem="http://www.opengis.net/citygml/relief/2.0"
+           xmlns:veg="http://www.opengis.net/citygml/vegetation/2.0"
+           xmlns:brid="http://www.opengis.net/citygml/bridge/2.0"
+           xmlns:tun="http://www.opengis.net/citygml/tunnel/2.0"
+           xmlns:gen="http://www.opengis.net/citygml/generics/2.0"
+           xmlns:wfs="http://www.opengis.net/wfs"
+           xsi:schemaLocation="http://www.opengis.net/citygml/landuse/2.0 http://schemas.opengis.net/citygml/landuse/2.0/landUse.xsd http://www.opengis.net/citygml/cityfurniture/2.0 http://schemas.opengis.net/citygml/cityfurniture/2.0/cityFurniture.xsd http://www.opengis.net/citygml/appearance/2.0 http://schemas.opengis.net/citygml/appearance/2.0/appearance.xsd http://www.opengis.net/citygml/texturedsurface/2.0 http://schemas.opengis.net/citygml/texturedsurface/2.0/texturedSurface.xsd http://www.opengis.net/citygml/transportation/2.0 http://schemas.opengis.net/citygml/transportation/2.0/transportation.xsd http://www.opengis.net/citygml/waterbody/2.0 http://schemas.opengis.net/citygml/waterbody/2.0/waterBody.xsd http://www.opengis.net/citygml/building/2.0 http://schemas.opengis.net/citygml/building/2.0/building.xsd http://www.opengis.net/citygml/relief/2.0 http://schemas.opengis.net/citygml/relief/2.0/relief.xsd http://www.opengis.net/citygml/vegetation/2.0 http://schemas.opengis.net/citygml/vegetation/2.0/vegetation.xsd http://www.opengis.net/citygml/cityobjectgroup/2.0 http://schemas.opengis.net/citygml/cityobjectgroup/2.0/cityObjectGroup.xsd http://www.opengis.net/citygml/bridge/2.0 http://schemas.opengis.net/citygml/bridge/2.0/bridge.xsd http://www.opengis.net/citygml/tunnel/2.0 http://schemas.opengis.net/citygml/tunnel/2.0/tunnel.xsd http://www.opengis.net/citygml/generics/2.0 http://schemas.opengis.net/citygml/generics/2.0/generics.xsd">
+<gml:description>Testdataset</gml:description>
+<gml:name>ImplicitGeometry zipfile testdata</gml:name>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gml:description>CPA_Symbol</gml:description>
+		<gml:name>Implicit1</gml:name>
+		<gen:lod2Geometry>
+			<gml:MultiSurface>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-5">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-5">
+								<gml:posList srsDimension="3">0.549000 0.854000 1.282000 0.549000 0.854000 1.232000 -0.542000 0.855000 1.232000 -0.542000 0.855000 1.282000 0.549000 0.854000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-6">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-6">
+								<gml:posList srsDimension="3">-0.744000 0.755000 0.000000 -0.744000 0.755000 2.100000 -0.745000 -0.895000 2.100000 -0.745000 -0.895000 2.190000 -0.745000 -0.825000 2.260000 -0.744000 0.785000 2.260000 -0.744000 0.855000 2.190000 -0.744000 0.855000 0.000000 -0.744000 0.755000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-7">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-7">
+								<gml:posList srsDimension="3">0.647000 -0.896000 2.100000 0.647000 -0.896000 2.190000 -0.745000 -0.895000 2.190000 -0.745000 -0.895000 2.100000 0.647000 -0.896000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-8">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-8">
+								<gml:posList srsDimension="3">-0.745000 -0.825000 2.260000 -0.745000 -0.895000 2.190000 0.647000 -0.896000 2.190000 0.647000 -0.826000 2.260000 -0.745000 -0.825000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-9">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-9">
+								<gml:posList srsDimension="3">-0.744000 0.855000 2.190000 -0.744000 0.785000 2.260000 0.647000 0.784000 2.260000 0.647000 0.854000 2.190000 -0.744000 0.855000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-10">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-10">
+								<gml:posList srsDimension="3">-0.542000 0.855000 1.132000 -0.542000 0.855000 1.182000 0.549000 0.854000 1.182000 0.549000 0.854000 1.132000 -0.542000 0.855000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-11">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-11">
+								<gml:posList srsDimension="3">0.647000 0.784000 2.260000 -0.744000 0.785000 2.260000 -0.745000 -0.825000 2.260000 0.647000 -0.826000 2.260000 0.647000 0.784000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-12">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-12">
+								<gml:posList srsDimension="3">-0.646000 0.755000 2.100000 -0.744000 0.755000 2.100000 -0.744000 0.755000 0.000000 -0.646000 0.755000 0.000000 -0.646000 0.755000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-13">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-13">
+								<gml:posList srsDimension="3">-0.745000 -0.895000 2.100000 -0.744000 0.755000 2.100000 -0.646000 0.755000 2.100000 -0.646000 0.855000 2.100000 0.647000 0.854000 2.100000 0.647000 -0.896000 2.100000 -0.745000 -0.895000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-14">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-14">
+								<gml:posList srsDimension="3">-0.744000 0.855000 2.190000 0.647000 0.854000 2.190000 0.647000 0.854000 2.100000 -0.646000 0.855000 2.100000 -0.646000 0.855000 0.547000 -0.646000 0.855000 0.504000 -0.646000 0.855000 0.300000 -0.646000 0.855000 0.220000 -0.646000 0.855000 0.000000 -0.744000 0.855000 0.000000 -0.744000 0.855000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-15">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-15">
+								<gml:posList srsDimension="3">-0.646000 0.855000 0.220000 -0.646000 0.855000 0.300000 0.647000 0.854000 0.300000 0.647000 0.854000 0.220000 -0.646000 0.855000 0.220000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-16">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-16">
+								<gml:posList srsDimension="3">-0.646000 0.855000 2.100000 -0.646000 0.755000 2.100000 -0.646000 0.755000 0.000000 -0.646000 0.855000 0.000000 -0.646000 0.855000 0.220000 -0.646000 0.855000 0.300000 -0.646000 0.855000 0.504000 -0.646000 0.855000 0.547000 -0.646000 0.855000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-17">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-17">
+								<gml:posList srsDimension="3">-0.646000 0.855000 0.547000 -0.646000 0.855000 0.504000 -0.546000 0.855000 0.504000 -0.546000 0.855000 0.547000 -0.646000 0.855000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-18">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-18">
+								<gml:posList srsDimension="3">-0.546000 0.855000 0.504000 -0.546000 0.530000 0.504000 -0.546000 0.530000 0.547000 -0.546000 0.855000 0.547000 -0.546000 0.855000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-19">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-19">
+								<gml:posList srsDimension="3">-0.496000 0.530000 0.504000 -0.496000 0.855000 0.504000 -0.496000 0.855000 0.547000 -0.496000 0.530000 0.547000 -0.496000 0.530000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-20">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-20">
+								<gml:posList srsDimension="3">-0.546000 0.530000 0.547000 -0.546000 0.530000 0.504000 -0.496000 0.530000 0.504000 -0.496000 0.530000 0.547000 -0.546000 0.530000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-21">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-21">
+								<gml:posList srsDimension="3">-0.546000 0.855000 0.547000 -0.546000 0.530000 0.547000 -0.496000 0.530000 0.547000 -0.496000 0.855000 0.547000 -0.546000 0.855000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-22">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-22">
+								<gml:posList srsDimension="3">0.497000 0.854000 0.504000 0.497000 0.530000 0.504000 0.497000 0.530000 0.547000 0.497000 0.854000 0.547000 0.497000 0.854000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-23">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-23">
+								<gml:posList srsDimension="3">0.547000 0.530000 0.504000 0.547000 0.530000 0.547000 0.497000 0.530000 0.547000 0.497000 0.530000 0.504000 0.547000 0.530000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-24">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-24">
+								<gml:posList srsDimension="3">0.547000 0.530000 0.547000 0.547000 0.854000 0.547000 0.497000 0.854000 0.547000 0.497000 0.530000 0.547000 0.547000 0.530000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-25">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-25">
+								<gml:posList srsDimension="3">-0.196000 0.855000 0.547000 -0.196000 0.530000 0.547000 -0.146000 0.530000 0.547000 -0.146000 0.854000 0.547000 -0.196000 0.855000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-26">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-26">
+								<gml:posList srsDimension="3">-0.196000 0.530000 0.547000 -0.196000 0.530000 0.504000 -0.146000 0.530000 0.504000 -0.146000 0.530000 0.547000 -0.196000 0.530000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-27">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-27">
+								<gml:posList srsDimension="3">-0.146000 0.530000 0.504000 -0.146000 0.854000 0.504000 -0.146000 0.854000 0.547000 -0.146000 0.530000 0.547000 -0.146000 0.530000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-28">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-28">
+								<gml:posList srsDimension="3">-0.196000 0.855000 0.504000 -0.196000 0.530000 0.504000 -0.196000 0.530000 0.547000 -0.196000 0.855000 0.547000 -0.196000 0.855000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-29">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-29">
+								<gml:posList srsDimension="3">0.144000 0.530000 0.547000 0.144000 0.530000 0.504000 0.194000 0.530000 0.504000 0.194000 0.530000 0.547000 0.144000 0.530000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-30">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-30">
+								<gml:posList srsDimension="3">0.194000 0.530000 0.504000 0.194000 0.854000 0.504000 0.194000 0.854000 0.547000 0.194000 0.530000 0.547000 0.194000 0.530000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-31">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-31">
+								<gml:posList srsDimension="3">0.144000 0.854000 0.547000 0.144000 0.530000 0.547000 0.194000 0.530000 0.547000 0.194000 0.854000 0.547000 0.144000 0.854000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-32">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-32">
+								<gml:posList srsDimension="3">-0.476000 0.835000 0.547000 -0.476000 0.530000 0.547000 -0.216000 0.530000 0.547000 -0.216000 0.835000 0.547000 -0.476000 0.835000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-33">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-33">
+								<gml:posList srsDimension="3">-0.476000 0.530000 0.520000 -0.476000 0.835000 0.520000 -0.216000 0.835000 0.520000 -0.216000 0.530000 0.520000 -0.476000 0.530000 0.520000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-34">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-34">
+								<gml:posList srsDimension="3">-0.476000 0.530000 0.547000 -0.476000 0.835000 0.547000 -0.476000 0.835000 0.520000 -0.476000 0.530000 0.520000 -0.476000 0.530000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-35">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-35">
+								<gml:posList srsDimension="3">-0.476000 0.835000 0.547000 -0.216000 0.835000 0.547000 -0.216000 0.835000 0.520000 -0.476000 0.835000 0.520000 -0.476000 0.835000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-36">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-36">
+								<gml:posList srsDimension="3">-0.216000 0.835000 0.547000 -0.216000 0.530000 0.547000 -0.216000 0.530000 0.520000 -0.216000 0.835000 0.520000 -0.216000 0.835000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-37">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-37">
+								<gml:posList srsDimension="3">-0.216000 0.530000 0.547000 -0.476000 0.530000 0.547000 -0.476000 0.530000 0.520000 -0.216000 0.530000 0.520000 -0.216000 0.530000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-38">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-38">
+								<gml:posList srsDimension="3">0.144000 0.854000 0.504000 0.144000 0.530000 0.504000 0.144000 0.530000 0.547000 0.144000 0.854000 0.547000 0.144000 0.854000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-39">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-39">
+								<gml:posList srsDimension="3">-0.132000 0.834000 0.547000 0.128000 0.834000 0.547000 0.128000 0.834000 0.520000 -0.132000 0.834000 0.520000 -0.132000 0.834000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-40">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-40">
+								<gml:posList srsDimension="3">-0.132000 0.530000 0.520000 -0.132000 0.834000 0.520000 0.128000 0.834000 0.520000 0.128000 0.530000 0.520000 -0.132000 0.530000 0.520000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-41">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-41">
+								<gml:posList srsDimension="3">-0.132000 0.530000 0.547000 -0.132000 0.834000 0.547000 -0.132000 0.834000 0.520000 -0.132000 0.530000 0.520000 -0.132000 0.530000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-42">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-42">
+								<gml:posList srsDimension="3">0.128000 0.530000 0.547000 -0.132000 0.530000 0.547000 -0.132000 0.530000 0.520000 0.128000 0.530000 0.520000 0.128000 0.530000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-43">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-43">
+								<gml:posList srsDimension="3">0.128000 0.834000 0.547000 0.128000 0.530000 0.547000 0.128000 0.530000 0.520000 0.128000 0.834000 0.520000 0.128000 0.834000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-44">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-44">
+								<gml:posList srsDimension="3">-0.132000 0.834000 0.547000 -0.132000 0.530000 0.547000 0.128000 0.530000 0.547000 0.128000 0.834000 0.547000 -0.132000 0.834000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-45">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-45">
+								<gml:posList srsDimension="3">0.215000 0.834000 0.547000 0.215000 0.530000 0.547000 0.475000 0.530000 0.547000 0.475000 0.834000 0.547000 0.215000 0.834000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-46">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-46">
+								<gml:posList srsDimension="3">0.475000 0.834000 0.547000 0.475000 0.530000 0.547000 0.475000 0.530000 0.520000 0.475000 0.834000 0.520000 0.475000 0.834000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-47">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-47">
+								<gml:posList srsDimension="3">0.215000 0.530000 0.520000 0.215000 0.834000 0.520000 0.475000 0.834000 0.520000 0.475000 0.530000 0.520000 0.215000 0.530000 0.520000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-48">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-48">
+								<gml:posList srsDimension="3">0.475000 0.530000 0.547000 0.215000 0.530000 0.547000 0.215000 0.530000 0.520000 0.475000 0.530000 0.520000 0.475000 0.530000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-49">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-49">
+								<gml:posList srsDimension="3">0.215000 0.834000 0.547000 0.475000 0.834000 0.547000 0.475000 0.834000 0.520000 0.215000 0.834000 0.520000 0.215000 0.834000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-50">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-50">
+								<gml:posList srsDimension="3">0.215000 0.530000 0.547000 0.215000 0.834000 0.547000 0.215000 0.834000 0.520000 0.215000 0.530000 0.520000 0.215000 0.530000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-51">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-51">
+								<gml:posList srsDimension="3">0.547000 0.530000 0.504000 0.547000 0.854000 0.504000 0.547000 0.854000 0.547000 0.547000 0.530000 0.547000 0.547000 0.530000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-52">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-52">
+								<gml:posList srsDimension="3">0.194000 0.854000 0.547000 0.194000 0.854000 0.504000 0.144000 0.854000 0.504000 0.144000 0.854000 0.547000 0.194000 0.854000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-53">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-53">
+								<gml:posList srsDimension="3">-0.146000 0.854000 0.547000 -0.146000 0.854000 0.504000 -0.196000 0.855000 0.504000 -0.196000 0.855000 0.547000 -0.146000 0.854000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-54">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-54">
+								<gml:posList srsDimension="3">0.547000 0.854000 0.504000 0.497000 0.854000 0.504000 0.497000 0.854000 0.547000 0.547000 0.854000 0.547000 0.547000 0.854000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-55">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-55">
+								<gml:posList srsDimension="3">-0.496000 0.855000 0.504000 -0.546000 0.855000 0.504000 -0.546000 0.855000 0.547000 -0.496000 0.855000 0.547000 -0.496000 0.855000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-56">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-56">
+								<gml:posList srsDimension="3">-0.546000 0.855000 0.504000 -0.496000 0.855000 0.504000 -0.196000 0.855000 0.504000 -0.146000 0.854000 0.504000 0.144000 0.854000 0.504000 0.194000 0.854000 0.504000 0.497000 0.854000 0.504000 0.547000 0.854000 0.504000 0.647000 0.854000 0.504000 0.647000 0.854000 0.300000 -0.646000 0.855000 0.300000 -0.646000 0.855000 0.504000 -0.546000 0.855000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-57">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-57">
+								<gml:posList srsDimension="3">-0.146000 0.854000 0.547000 -0.146000 0.854000 0.504000 0.144000 0.854000 0.504000 0.144000 0.854000 0.547000 -0.146000 0.854000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-58">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-58">
+								<gml:posList srsDimension="3">-0.496000 0.855000 0.547000 -0.496000 0.855000 0.504000 -0.196000 0.855000 0.504000 -0.196000 0.855000 0.547000 -0.496000 0.855000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-59">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-59">
+								<gml:posList srsDimension="3">0.194000 0.854000 0.547000 0.194000 0.854000 0.504000 0.497000 0.854000 0.504000 0.497000 0.854000 0.547000 0.194000 0.854000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-60">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-60">
+								<gml:posList srsDimension="3">0.547000 0.854000 0.547000 0.547000 0.854000 0.504000 0.647000 0.854000 0.504000 0.647000 0.854000 0.547000 0.547000 0.854000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-61">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-61">
+								<gml:posList srsDimension="3">0.647000 0.854000 2.100000 0.647000 0.854000 0.547000 0.547000 0.854000 0.547000 0.497000 0.854000 0.547000 0.194000 0.854000 0.547000 0.144000 0.854000 0.547000 -0.146000 0.854000 0.547000 -0.196000 0.855000 0.547000 -0.496000 0.855000 0.547000 -0.546000 0.855000 0.547000 -0.646000 0.855000 0.547000 -0.646000 0.855000 2.100000 0.647000 0.854000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-61_1">
+								<gml:posList srsDimension="3">0.549000 0.854000 1.182000 -0.542000 0.855000 1.182000 -0.542000 0.855000 1.132000 0.549000 0.854000 1.132000 0.549000 0.854000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-61_2">
+								<gml:posList srsDimension="3">-0.542000 0.855000 1.282000 -0.542000 0.855000 1.232000 0.549000 0.854000 1.232000 0.549000 0.854000 1.282000 -0.542000 0.855000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-62">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-62">
+								<gml:posList srsDimension="3">2.136000 0.754000 2.100000 2.038000 0.754000 2.100000 2.038000 0.754000 0.000000 2.136000 0.754000 0.000000 2.136000 0.754000 0.220000 2.136000 0.754000 0.300000 2.136000 0.754000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-63">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-63">
+								<gml:posList srsDimension="3">2.068000 0.784000 2.260000 2.136000 0.854000 2.190000 0.647000 0.854000 2.190000 0.647000 0.784000 2.260000 2.068000 0.784000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-64">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-64">
+								<gml:posList srsDimension="3">2.136000 -0.396000 1.182000 2.136000 -0.396000 1.132000 2.136000 0.654000 1.132000 2.136000 0.654000 1.182000 2.136000 -0.396000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-65">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-65">
+								<gml:posList srsDimension="3">2.136000 0.854000 2.190000 2.068000 0.784000 2.260000 2.067000 -0.826000 2.260000 2.136000 -0.896000 2.190000 2.136000 0.854000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-66">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-66">
+								<gml:posList srsDimension="3">0.647000 -0.896000 2.190000 2.136000 -0.896000 2.190000 2.067000 -0.826000 2.260000 0.647000 -0.826000 2.260000 0.647000 -0.896000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-67">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-67">
+								<gml:posList srsDimension="3">0.843000 0.854000 1.232000 0.843000 0.854000 1.282000 1.934000 0.854000 1.282000 1.934000 0.854000 1.232000 0.843000 0.854000 1.232000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-68">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-68">
+								<gml:posList srsDimension="3">2.038000 -0.596000 2.100000 2.038000 -0.596000 0.000000 2.136000 -0.596000 0.000000 2.136000 -0.596000 2.100000 2.038000 -0.596000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-69">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-69">
+								<gml:posList srsDimension="3">2.136000 -0.496000 0.300000 2.136000 -0.496000 0.220000 2.136000 0.754000 0.220000 2.136000 0.754000 0.300000 2.136000 -0.496000 0.300000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-70">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-70">
+								<gml:posList srsDimension="3">2.038000 -0.596000 2.100000 2.038000 -0.496000 2.100000 2.038000 -0.496000 0.000000 2.038000 -0.596000 0.000000 2.038000 -0.596000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-71">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-71">
+								<gml:posList srsDimension="3">2.038000 0.854000 0.300000 2.038000 0.854000 0.220000 0.745000 0.854000 0.220000 0.745000 0.854000 0.300000 2.038000 0.854000 0.300000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-72">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-72">
+								<gml:posList srsDimension="3">0.745000 0.854000 2.100000 2.038000 0.854000 2.100000 2.038000 0.854000 0.300000 0.745000 0.854000 0.300000 0.745000 0.854000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-72_1">
+								<gml:posList srsDimension="3">1.934000 0.854000 1.182000 0.843000 0.854000 1.182000 0.843000 0.854000 1.132000 1.934000 0.854000 1.132000 1.934000 0.854000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-72_2">
+								<gml:posList srsDimension="3">1.934000 0.854000 1.232000 1.934000 0.854000 1.282000 0.843000 0.854000 1.282000 0.843000 0.854000 1.232000 1.934000 0.854000 1.232000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-73">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-73">
+								<gml:posList srsDimension="3">2.136000 0.654000 1.232000 2.136000 0.654000 1.282000 2.136000 -0.396000 1.282000 2.136000 -0.396000 1.232000 2.136000 0.654000 1.232000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-74">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-74">
+								<gml:posList srsDimension="3">1.934000 0.854000 1.182000 1.934000 0.854000 1.132000 0.843000 0.854000 1.132000 0.843000 0.854000 1.182000 1.934000 0.854000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-75">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-75">
+								<gml:posList srsDimension="3">2.038000 0.754000 2.100000 2.038000 0.854000 2.100000 2.038000 0.854000 0.300000 2.038000 0.854000 0.220000 2.038000 0.854000 0.000000 2.038000 0.754000 0.000000 2.038000 0.754000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-76">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-76">
+								<gml:posList srsDimension="3">2.136000 -0.496000 2.100000 2.136000 -0.496000 0.300000 2.136000 0.754000 0.300000 2.136000 0.754000 2.100000 2.136000 -0.496000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-76_1">
+								<gml:posList srsDimension="3">2.136000 -0.396000 1.132000 2.136000 -0.396000 1.182000 2.136000 0.654000 1.182000 2.136000 0.654000 1.132000 2.136000 -0.396000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-76_2">
+								<gml:posList srsDimension="3">2.136000 0.654000 1.232000 2.136000 -0.396000 1.232000 2.136000 -0.396000 1.282000 2.136000 0.654000 1.282000 2.136000 0.654000 1.232000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-77">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-77">
+								<gml:posList srsDimension="3">2.136000 -0.896000 2.100000 2.136000 -0.896000 2.190000 0.647000 -0.896000 2.190000 0.647000 -0.896000 2.100000 2.136000 -0.896000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-78">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-78">
+								<gml:posList srsDimension="3">2.136000 0.854000 0.000000 2.136000 0.854000 2.190000 2.136000 -0.896000 2.190000 2.136000 -0.896000 2.100000 2.136000 -0.596000 2.100000 2.136000 -0.596000 0.000000 2.136000 -0.496000 0.000000 2.136000 -0.496000 0.220000 2.136000 -0.496000 0.300000 2.136000 -0.496000 2.100000 2.136000 0.754000 2.100000 2.136000 0.754000 0.300000 2.136000 0.754000 0.220000 2.136000 0.754000 0.000000 2.136000 0.854000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-79">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-79">
+								<gml:posList srsDimension="3">2.038000 0.854000 2.100000 0.745000 0.854000 2.100000 0.745000 0.854000 0.300000 0.745000 0.854000 0.220000 0.745000 0.854000 0.000000 0.647000 0.854000 0.000000 0.647000 0.854000 2.190000 2.136000 0.854000 2.190000 2.136000 0.854000 0.000000 2.038000 0.854000 0.000000 2.038000 0.854000 0.220000 2.038000 0.854000 0.300000 2.038000 0.854000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-80">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-80">
+								<gml:posList srsDimension="3">2.038000 -0.496000 2.100000 2.136000 -0.496000 2.100000 2.136000 -0.496000 0.300000 2.136000 -0.496000 0.220000 2.136000 -0.496000 0.000000 2.038000 -0.496000 0.000000 2.038000 -0.496000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-81">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-81">
+								<gml:posList srsDimension="3">2.068000 0.784000 2.260000 0.647000 0.784000 2.260000 0.647000 -0.826000 2.260000 2.067000 -0.826000 2.260000 2.068000 0.784000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-82">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-82">
+								<gml:posList srsDimension="3">0.745000 0.754000 2.100000 0.647000 0.754000 2.100000 0.647000 0.754000 0.000000 0.745000 0.754000 0.000000 0.745000 0.754000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-83">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-83">
+								<gml:posList srsDimension="3">0.647000 0.754000 0.000000 0.647000 0.754000 2.100000 0.647000 -0.896000 2.100000 0.647000 -0.896000 2.190000 0.647000 -0.826000 2.260000 0.647000 0.784000 2.260000 0.647000 0.854000 2.190000 0.647000 0.854000 0.000000 0.647000 0.754000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-84">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-84">
+								<gml:posList srsDimension="3">0.745000 0.854000 2.100000 0.745000 0.754000 2.100000 0.745000 0.754000 0.000000 0.745000 0.854000 0.000000 0.745000 0.854000 0.220000 0.745000 0.854000 0.300000 0.745000 0.854000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-85">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-85">
+								<gml:posList srsDimension="3">2.136000 -0.596000 2.100000 2.136000 -0.896000 2.100000 0.647000 -0.896000 2.100000 0.647000 0.754000 2.100000 0.745000 0.754000 2.100000 0.745000 0.854000 2.100000 2.038000 0.854000 2.100000 2.038000 0.754000 2.100000 2.136000 0.754000 2.100000 2.136000 -0.496000 2.100000 2.038000 -0.496000 2.100000 2.038000 -0.596000 2.100000 2.136000 -0.596000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-86">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-86">
+								<gml:posList srsDimension="3">-0.745000 -0.895000 2.100000 -0.745000 -0.895000 2.190000 -2.136000 -0.895000 2.190000 -2.136000 -0.895000 2.100000 -0.745000 -0.895000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-87">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-87">
+								<gml:posList srsDimension="3">-2.136000 -0.495000 0.300000 -2.136000 -0.495000 2.100000 -2.136000 0.755000 2.100000 -2.136000 0.755000 0.300000 -2.136000 -0.495000 0.300000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-87_1">
+								<gml:posList srsDimension="3">-2.136000 0.655000 1.132000 -2.136000 0.655000 1.182000 -2.136000 -0.395000 1.182000 -2.136000 -0.395000 1.132000 -2.136000 0.655000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-87_2">
+								<gml:posList srsDimension="3">-2.136000 -0.395000 1.232000 -2.136000 0.655000 1.232000 -2.136000 0.655000 1.282000 -2.136000 -0.395000 1.282000 -2.136000 -0.395000 1.232000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-88">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-88">
+								<gml:posList srsDimension="3">-2.067000 0.785000 2.260000 -2.068000 -0.825000 2.260000 -0.745000 -0.825000 2.260000 -0.745000 0.785000 2.260000 -2.067000 0.785000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-89">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-89">
+								<gml:posList srsDimension="3">-2.136000 0.855000 2.190000 -0.745000 0.855000 2.190000 -0.745000 0.855000 2.100000 -2.038000 0.855000 2.100000 -2.038000 0.855000 0.300000 -2.038000 0.855000 0.220000 -2.038000 0.855000 0.000000 -2.136000 0.855000 0.000000 -2.136000 0.855000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-90">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-90">
+								<gml:posList srsDimension="3">-2.136000 0.755000 2.100000 -2.038000 0.755000 2.100000 -2.038000 0.855000 2.100000 -0.745000 0.855000 2.100000 -0.745000 -0.895000 2.100000 -2.136000 -0.895000 2.100000 -2.136000 -0.595000 2.100000 -2.038000 -0.595000 2.100000 -2.038000 -0.495000 2.100000 -2.136000 -0.495000 2.100000 -2.136000 0.755000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-91">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-91">
+								<gml:posList srsDimension="3">-2.136000 0.755000 0.300000 -2.136000 0.755000 2.100000 -2.136000 -0.495000 2.100000 -2.136000 -0.495000 0.300000 -2.136000 -0.495000 0.220000 -2.136000 -0.495000 0.000000 -2.136000 -0.595000 0.000000 -2.136000 -0.595000 2.100000 -2.136000 -0.895000 2.100000 -2.136000 -0.895000 2.190000 -2.136000 0.855000 2.190000 -2.136000 0.855000 0.000000 -2.136000 0.755000 0.000000 -2.136000 0.755000 0.220000 -2.136000 0.755000 0.300000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-92">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-92">
+								<gml:posList srsDimension="3">-2.136000 -0.495000 2.100000 -2.038000 -0.495000 2.100000 -2.038000 -0.495000 0.000000 -2.136000 -0.495000 0.000000 -2.136000 -0.495000 0.220000 -2.136000 -0.495000 0.300000 -2.136000 -0.495000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-93">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-93">
+								<gml:posList srsDimension="3">-2.038000 -0.595000 2.100000 -2.136000 -0.595000 2.100000 -2.136000 -0.595000 0.000000 -2.038000 -0.595000 0.000000 -2.038000 -0.595000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-94">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-94">
+								<gml:posList srsDimension="3">-2.067000 0.785000 2.260000 -2.136000 0.855000 2.190000 -2.136000 -0.895000 2.190000 -2.068000 -0.825000 2.260000 -2.067000 0.785000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-95">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-95">
+								<gml:posList srsDimension="3">-2.038000 -0.495000 2.100000 -2.038000 -0.595000 2.100000 -2.038000 -0.595000 0.000000 -2.038000 -0.495000 0.000000 -2.038000 -0.495000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-96">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-96">
+								<gml:posList srsDimension="3">-0.745000 -0.895000 2.190000 -0.745000 -0.825000 2.260000 -2.068000 -0.825000 2.260000 -2.136000 -0.895000 2.190000 -0.745000 -0.895000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-97">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-97">
+								<gml:posList srsDimension="3">-2.038000 0.755000 2.100000 -2.136000 0.755000 2.100000 -2.136000 0.755000 0.300000 -2.136000 0.755000 0.220000 -2.136000 0.755000 0.000000 -2.038000 0.755000 0.000000 -2.038000 0.755000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-98">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-98">
+								<gml:posList srsDimension="3">-0.745000 0.785000 2.260000 -0.745000 0.855000 2.190000 -2.136000 0.855000 2.190000 -2.067000 0.785000 2.260000 -0.745000 0.785000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-99">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-99">
+								<gml:posList srsDimension="3">-2.038000 0.855000 2.100000 -2.038000 0.755000 2.100000 -2.038000 0.755000 0.000000 -2.038000 0.855000 0.000000 -2.038000 0.855000 0.220000 -2.038000 0.855000 0.300000 -2.038000 0.855000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-100">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-100">
+								<gml:posList srsDimension="3">-2.136000 -0.495000 0.220000 -2.136000 -0.495000 0.300000 -2.136000 0.755000 0.300000 -2.136000 0.755000 0.220000 -2.136000 -0.495000 0.220000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-101">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-101">
+								<gml:posList srsDimension="3">-2.038000 0.855000 0.220000 -2.038000 0.855000 0.300000 -0.745000 0.855000 0.300000 -0.745000 0.855000 0.220000 -2.038000 0.855000 0.220000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-102">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-102">
+								<gml:posList srsDimension="3">-2.136000 0.655000 1.282000 -2.136000 0.655000 1.232000 -2.136000 -0.395000 1.232000 -2.136000 -0.395000 1.282000 -2.136000 0.655000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-103">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-103">
+								<gml:posList srsDimension="3">-2.136000 -0.395000 1.132000 -2.136000 -0.395000 1.182000 -2.136000 0.655000 1.182000 -2.136000 0.655000 1.132000 -2.136000 -0.395000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-104">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-104">
+								<gml:posList srsDimension="3">-1.934000 0.855000 1.132000 -1.934000 0.855000 1.182000 -0.843000 0.855000 1.182000 -0.843000 0.855000 1.132000 -1.934000 0.855000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-105">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-105">
+								<gml:posList srsDimension="3">-0.843000 0.855000 1.282000 -0.843000 0.855000 1.232000 -1.934000 0.855000 1.232000 -1.934000 0.855000 1.282000 -0.843000 0.855000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-106">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-106">
+								<gml:posList srsDimension="3">-2.038000 0.855000 2.100000 -0.745000 0.855000 2.100000 -0.745000 0.855000 0.300000 -2.038000 0.855000 0.300000 -2.038000 0.855000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-106_1">
+								<gml:posList srsDimension="3">-0.843000 0.855000 1.182000 -1.934000 0.855000 1.182000 -1.934000 0.855000 1.132000 -0.843000 0.855000 1.132000 -0.843000 0.855000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-106_2">
+								<gml:posList srsDimension="3">-1.934000 0.855000 1.282000 -1.934000 0.855000 1.232000 -0.843000 0.855000 1.232000 -0.843000 0.855000 1.282000 -1.934000 0.855000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+			</gml:MultiSurface>
+		</gen:lod2Geometry>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+</core:CityModel>
diff --git a/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Implicit2.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Implicit2.gml
new file mode 100644
index 0000000..1da55f5
--- /dev/null
+++ b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Implicit2.gml
@@ -0,0 +1,510 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<core:CityModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xmlns:core="http://www.opengis.net/citygml/2.0"
+           xmlns:gml="http://www.opengis.net/gml"
+           xmlns:xlink="http://www.w3.org/1999/xlink"
+           xmlns:tran="http://www.opengis.net/citygml/transportation/2.0"
+           xmlns:wtr="http://www.opengis.net/citygml/waterbody/2.0"
+           xmlns:smil20lang="http://www.w3.org/2001/SMIL20/Language"
+           xmlns:grp="http://www.opengis.net/citygml/cityobjectgroup/2.0"
+           xmlns:luse="http://www.opengis.net/citygml/landuse/2.0"
+           xmlns:frn="http://www.opengis.net/citygml/cityfurniture/2.0"
+           xmlns:app="http://www.opengis.net/citygml/appearance/2.0"
+           xmlns:tex="http://www.opengis.net/citygml/texturedsurface/2.0"
+           xmlns:smil20="http://www.w3.org/2001/SMIL20/"
+           xmlns:xAL="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"
+           xmlns:bldg="http://www.opengis.net/citygml/building/2.0"
+           xmlns:dem="http://www.opengis.net/citygml/relief/2.0"
+           xmlns:veg="http://www.opengis.net/citygml/vegetation/2.0"
+           xmlns:brid="http://www.opengis.net/citygml/bridge/2.0"
+           xmlns:tun="http://www.opengis.net/citygml/tunnel/2.0"
+           xmlns:gen="http://www.opengis.net/citygml/generics/2.0"
+           xmlns:wfs="http://www.opengis.net/wfs"
+           xsi:schemaLocation="http://www.opengis.net/citygml/landuse/2.0 http://schemas.opengis.net/citygml/landuse/2.0/landUse.xsd http://www.opengis.net/citygml/cityfurniture/2.0 http://schemas.opengis.net/citygml/cityfurniture/2.0/cityFurniture.xsd http://www.opengis.net/citygml/appearance/2.0 http://schemas.opengis.net/citygml/appearance/2.0/appearance.xsd http://www.opengis.net/citygml/texturedsurface/2.0 http://schemas.opengis.net/citygml/texturedsurface/2.0/texturedSurface.xsd http://www.opengis.net/citygml/transportation/2.0 http://schemas.opengis.net/citygml/transportation/2.0/transportation.xsd http://www.opengis.net/citygml/waterbody/2.0 http://schemas.opengis.net/citygml/waterbody/2.0/waterBody.xsd http://www.opengis.net/citygml/building/2.0 http://schemas.opengis.net/citygml/building/2.0/building.xsd http://www.opengis.net/citygml/relief/2.0 http://schemas.opengis.net/citygml/relief/2.0/relief.xsd http://www.opengis.net/citygml/vegetation/2.0 http://schemas.opengis.net/citygml/vegetation/2.0/vegetation.xsd http://www.opengis.net/citygml/cityobjectgroup/2.0 http://schemas.opengis.net/citygml/cityobjectgroup/2.0/cityObjectGroup.xsd http://www.opengis.net/citygml/bridge/2.0 http://schemas.opengis.net/citygml/bridge/2.0/bridge.xsd http://www.opengis.net/citygml/tunnel/2.0 http://schemas.opengis.net/citygml/tunnel/2.0/tunnel.xsd http://www.opengis.net/citygml/generics/2.0 http://schemas.opengis.net/citygml/generics/2.0/generics.xsd">
+<gml:description>Testdataset</gml:description>
+<gml:name>ImplicitGeometry zipfile testdata</gml:name>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gml:description>CPA_Symbol</gml:description>
+		<gml:name>Implicit2</gml:name>
+		<gen:lod2Geometry>
+			<gml:MultiSurface>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-5">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-5">
+								<gml:posList srsDimension="3">-0.049000 0.085000 1.162000 -0.098000 0.000000 1.162000 -0.049000 -0.085000 1.162000 0.049000 -0.085000 1.162000 0.098000 0.000000 1.162000 0.049000 0.085000 1.162000 -0.049000 0.085000 1.162000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-5_1">
+								<gml:posList srsDimension="3">-0.052000 0.030000 1.162000 0.000000 0.060000 1.162000 0.052000 0.030000 1.162000 0.052000 -0.030000 1.162000 0.000000 -0.060000 1.162000 -0.052000 -0.030000 1.162000 -0.052000 0.030000 1.162000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-6">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-6">
+								<gml:posList srsDimension="3">-0.049000 0.085000 0.000000 -0.049000 0.085000 1.162000 0.049000 0.085000 1.162000 0.049000 0.085000 0.000000 -0.049000 0.085000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-7">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-7">
+								<gml:posList srsDimension="3">-0.098000 0.000000 0.000000 -0.098000 0.000000 1.162000 -0.049000 0.085000 1.162000 -0.049000 0.085000 0.000000 -0.098000 0.000000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-8">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-8">
+								<gml:posList srsDimension="3">0.098000 0.000000 0.000000 0.098000 0.000000 1.162000 0.049000 -0.085000 1.162000 0.049000 -0.085000 0.000000 0.098000 0.000000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-9">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-9">
+								<gml:posList srsDimension="3">-0.049000 -0.085000 0.000000 -0.049000 -0.085000 1.162000 -0.098000 0.000000 1.162000 -0.098000 0.000000 0.000000 -0.049000 -0.085000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-10">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-10">
+								<gml:posList srsDimension="3">0.049000 0.085000 0.000000 0.049000 0.085000 1.162000 0.098000 0.000000 1.162000 0.098000 0.000000 0.000000 0.049000 0.085000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-11">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-11">
+								<gml:posList srsDimension="3">0.049000 -0.085000 0.000000 0.049000 -0.085000 1.162000 -0.049000 -0.085000 1.162000 -0.049000 -0.085000 0.000000 0.049000 -0.085000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-12">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-12">
+								<gml:posList srsDimension="3">0.000000 0.408000 4.880000 0.353000 0.205000 4.880000 0.353000 0.205000 4.830000 0.000000 0.408000 4.830000 0.000000 0.408000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-13">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-13">
+								<gml:posList srsDimension="3">0.000000 0.408000 4.880000 0.000000 0.001000 5.000000 0.353000 0.205000 4.880000 0.000000 0.408000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-14">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-14">
+								<gml:posList srsDimension="3">-0.353000 -0.202000 4.880000 0.000000 -0.406000 4.880000 0.000000 0.001000 5.000000 -0.353000 -0.202000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-15">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-15">
+								<gml:posList srsDimension="3">0.000000 0.001000 5.000000 0.000000 0.408000 4.880000 -0.353000 0.205000 4.880000 0.000000 0.001000 5.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-16">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-16">
+								<gml:posList srsDimension="3">0.000000 -0.406000 4.880000 -0.353000 -0.202000 4.880000 -0.353000 -0.202000 4.830000 0.000000 -0.406000 4.830000 0.000000 -0.406000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-17">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-17">
+								<gml:posList srsDimension="3">0.353000 -0.202000 4.880000 0.353000 0.205000 4.880000 0.000000 0.001000 5.000000 0.353000 -0.202000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-18">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-18">
+								<gml:posList srsDimension="3">0.353000 0.205000 4.880000 0.353000 -0.202000 4.880000 0.353000 -0.202000 4.830000 0.353000 0.205000 4.830000 0.353000 0.205000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-19">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-19">
+								<gml:posList srsDimension="3">0.353000 -0.202000 4.880000 0.000000 0.001000 5.000000 0.000000 -0.406000 4.880000 0.353000 -0.202000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-20">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-20">
+								<gml:posList srsDimension="3">-0.353000 0.205000 4.880000 -0.353000 -0.202000 4.880000 0.000000 0.001000 5.000000 -0.353000 0.205000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-21">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-21">
+								<gml:posList srsDimension="3">0.000000 0.080000 3.982000 0.069000 0.040000 3.982000 0.069000 0.040000 3.892000 0.000000 0.080000 3.892000 0.000000 0.080000 3.982000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-22">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-22">
+								<gml:posList srsDimension="3">0.069000 0.040000 3.982000 0.069000 -0.040000 3.982000 0.069000 -0.040000 3.892000 0.069000 0.040000 3.892000 0.069000 0.040000 3.982000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-23">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-23">
+								<gml:posList srsDimension="3">0.353000 -0.202000 4.880000 0.000000 -0.406000 4.880000 0.000000 -0.406000 4.830000 0.353000 -0.202000 4.830000 0.353000 -0.202000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-24">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-24">
+								<gml:posList srsDimension="3">-0.069000 0.040000 3.982000 0.000000 0.080000 3.982000 0.000000 0.080000 3.892000 -0.069000 0.040000 3.892000 -0.069000 0.040000 3.982000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-25">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-25">
+								<gml:posList srsDimension="3">0.000000 -0.080000 3.982000 -0.069000 -0.040000 3.982000 -0.069000 -0.040000 3.892000 0.000000 -0.080000 3.892000 0.000000 -0.080000 3.982000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-26">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-26">
+								<gml:posList srsDimension="3">-0.353000 -0.202000 4.880000 -0.353000 0.205000 4.880000 -0.353000 0.205000 4.830000 -0.353000 -0.202000 4.830000 -0.353000 -0.202000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-27">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-27">
+								<gml:posList srsDimension="3">-0.353000 0.205000 4.880000 0.000000 0.408000 4.880000 0.000000 0.408000 4.830000 -0.353000 0.205000 4.830000 -0.353000 0.205000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-28">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-28">
+								<gml:posList srsDimension="3">-0.069000 -0.040000 3.982000 -0.069000 0.040000 3.982000 -0.069000 0.040000 3.892000 -0.069000 -0.040000 3.892000 -0.069000 -0.040000 3.982000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-29">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-29">
+								<gml:posList srsDimension="3">0.000000 -0.080000 3.892000 -0.069000 -0.040000 3.892000 -0.069000 0.040000 3.892000 0.000000 0.080000 3.892000 0.069000 0.040000 3.892000 0.069000 -0.040000 3.892000 0.000000 -0.080000 3.892000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-29_1">
+								<gml:posList srsDimension="3">-0.052000 0.030000 3.892000 -0.052000 -0.030000 3.892000 0.000000 -0.060000 3.892000 0.052000 -0.030000 3.892000 0.052000 0.030000 3.892000 0.000000 0.060000 3.892000 -0.052000 0.030000 3.892000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-30">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-30">
+								<gml:posList srsDimension="3">-0.052000 -0.030000 3.892000 -0.052000 -0.030000 1.162000 0.000000 -0.060000 1.162000 0.000000 -0.060000 3.892000 -0.052000 -0.030000 3.892000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-31">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-31">
+								<gml:posList srsDimension="3">0.052000 0.030000 3.892000 0.052000 0.030000 1.162000 0.000000 0.060000 1.162000 0.000000 0.060000 3.892000 0.052000 0.030000 3.892000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-32">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-32">
+								<gml:posList srsDimension="3">0.000000 0.060000 3.892000 0.000000 0.060000 1.162000 -0.052000 0.030000 1.162000 -0.052000 0.030000 3.892000 0.000000 0.060000 3.892000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-33">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-33">
+								<gml:posList srsDimension="3">-0.052000 0.030000 3.892000 -0.052000 0.030000 1.162000 -0.052000 -0.030000 1.162000 -0.052000 -0.030000 3.892000 -0.052000 0.030000 3.892000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-34">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-34">
+								<gml:posList srsDimension="3">0.069000 -0.040000 3.982000 0.000000 -0.080000 3.982000 0.000000 -0.080000 3.892000 0.069000 -0.040000 3.892000 0.069000 -0.040000 3.982000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-35">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-35">
+								<gml:posList srsDimension="3">-0.286000 0.166000 4.880000 -0.181000 0.105000 4.117000 -0.181000 -0.104000 4.117000 -0.286000 -0.164000 4.880000 -0.286000 0.166000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-36">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-36">
+								<gml:posList srsDimension="3">-0.171000 -0.099000 4.050000 -0.138000 -0.080000 3.982000 0.000000 -0.160000 3.982000 0.000000 -0.197000 4.050000 -0.171000 -0.099000 4.050000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-37">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-37">
+								<gml:posList srsDimension="3">0.286000 -0.164000 4.880000 0.181000 -0.104000 4.117000 0.181000 0.105000 4.117000 0.286000 0.166000 4.880000 0.286000 -0.164000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-38">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-38">
+								<gml:posList srsDimension="3">0.138000 -0.080000 3.982000 0.171000 -0.099000 4.050000 0.000000 -0.197000 4.050000 0.000000 -0.160000 3.982000 0.138000 -0.080000 3.982000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-39">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-39">
+								<gml:posList srsDimension="3">0.000000 -0.329000 4.880000 0.000000 -0.208000 4.117000 0.181000 -0.104000 4.117000 0.286000 -0.164000 4.880000 0.000000 -0.329000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-40">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-40">
+								<gml:posList srsDimension="3">0.171000 -0.099000 4.050000 0.138000 -0.080000 3.982000 0.138000 0.080000 3.982000 0.171000 0.099000 4.050000 0.171000 -0.099000 4.050000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-41">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-41">
+								<gml:posList srsDimension="3">0.171000 0.099000 4.050000 0.181000 0.105000 4.117000 0.181000 -0.104000 4.117000 0.171000 -0.099000 4.050000 0.171000 0.099000 4.050000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-42">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-42">
+								<gml:posList srsDimension="3">0.171000 -0.099000 4.050000 0.181000 -0.104000 4.117000 0.000000 -0.208000 4.117000 0.000000 -0.197000 4.050000 0.171000 -0.099000 4.050000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-43">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-43">
+								<gml:posList srsDimension="3">-0.138000 0.080000 3.982000 -0.171000 0.099000 4.050000 0.000000 0.198000 4.050000 0.000000 0.160000 3.982000 -0.138000 0.080000 3.982000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-44">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-44">
+								<gml:posList srsDimension="3">0.000000 -0.060000 3.892000 0.000000 -0.060000 1.162000 0.052000 -0.030000 1.162000 0.052000 -0.030000 3.892000 0.000000 -0.060000 3.892000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-45">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-45">
+								<gml:posList srsDimension="3">-0.286000 -0.164000 4.880000 -0.181000 -0.104000 4.117000 0.000000 -0.208000 4.117000 0.000000 -0.329000 4.880000 -0.286000 -0.164000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-46">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-46">
+								<gml:posList srsDimension="3">0.171000 0.099000 4.050000 0.138000 0.080000 3.982000 0.000000 0.160000 3.982000 0.000000 0.198000 4.050000 0.171000 0.099000 4.050000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-47">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-47">
+								<gml:posList srsDimension="3">0.000000 0.198000 4.050000 0.000000 0.209000 4.117000 0.181000 0.105000 4.117000 0.171000 0.099000 4.050000 0.000000 0.198000 4.050000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-48">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-48">
+								<gml:posList srsDimension="3">-0.171000 -0.099000 4.050000 -0.181000 -0.104000 4.117000 -0.181000 0.105000 4.117000 -0.171000 0.099000 4.050000 -0.171000 -0.099000 4.050000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-49">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-49">
+								<gml:posList srsDimension="3">-0.171000 0.099000 4.050000 -0.138000 0.080000 3.982000 -0.138000 -0.080000 3.982000 -0.171000 -0.099000 4.050000 -0.171000 0.099000 4.050000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-50">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-50">
+								<gml:posList srsDimension="3">-0.171000 0.099000 4.050000 -0.181000 0.105000 4.117000 0.000000 0.209000 4.117000 0.000000 0.198000 4.050000 -0.171000 0.099000 4.050000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-51">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-51">
+								<gml:posList srsDimension="3">0.000000 0.331000 4.880000 0.000000 0.209000 4.117000 -0.181000 0.105000 4.117000 -0.286000 0.166000 4.880000 0.000000 0.331000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-52">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-52">
+								<gml:posList srsDimension="3">-0.138000 0.080000 3.982000 0.000000 0.160000 3.982000 0.138000 0.080000 3.982000 0.138000 -0.080000 3.982000 0.000000 -0.160000 3.982000 -0.138000 -0.080000 3.982000 -0.138000 0.080000 3.982000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-52_1">
+								<gml:posList srsDimension="3">0.069000 0.040000 3.982000 0.000000 0.080000 3.982000 -0.069000 0.040000 3.982000 -0.069000 -0.040000 3.982000 0.000000 -0.080000 3.982000 0.069000 -0.040000 3.982000 0.069000 0.040000 3.982000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-53">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-53">
+								<gml:posList srsDimension="3">0.052000 -0.030000 3.892000 0.052000 -0.030000 1.162000 0.052000 0.030000 1.162000 0.052000 0.030000 3.892000 0.052000 -0.030000 3.892000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-54">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-54">
+								<gml:posList srsDimension="3">0.000000 -0.197000 4.050000 0.000000 -0.208000 4.117000 -0.181000 -0.104000 4.117000 -0.171000 -0.099000 4.050000 0.000000 -0.197000 4.050000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-55">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-55">
+								<gml:posList srsDimension="3">0.286000 0.166000 4.880000 0.181000 0.105000 4.117000 0.000000 0.209000 4.117000 0.000000 0.331000 4.880000 0.286000 0.166000 4.880000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+			</gml:MultiSurface>
+		</gen:lod2Geometry>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+</core:CityModel>
diff --git a/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Main_model.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Main_model.gml
new file mode 100644
index 0000000..8daf1b7
--- /dev/null
+++ b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/Main_model.gml
@@ -0,0 +1,446 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<core:CityModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xmlns:core="http://www.opengis.net/citygml/2.0"
+           xmlns:gml="http://www.opengis.net/gml"
+           xmlns:xlink="http://www.w3.org/1999/xlink"
+           xmlns:tran="http://www.opengis.net/citygml/transportation/2.0"
+           xmlns:wtr="http://www.opengis.net/citygml/waterbody/2.0"
+           xmlns:smil20lang="http://www.w3.org/2001/SMIL20/Language"
+           xmlns:grp="http://www.opengis.net/citygml/cityobjectgroup/2.0"
+           xmlns:luse="http://www.opengis.net/citygml/landuse/2.0"
+           xmlns:frn="http://www.opengis.net/citygml/cityfurniture/2.0"
+           xmlns:app="http://www.opengis.net/citygml/appearance/2.0"
+           xmlns:tex="http://www.opengis.net/citygml/texturedsurface/2.0"
+           xmlns:smil20="http://www.w3.org/2001/SMIL20/"
+           xmlns:xAL="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"
+           xmlns:bldg="http://www.opengis.net/citygml/building/2.0"
+           xmlns:dem="http://www.opengis.net/citygml/relief/2.0"
+           xmlns:veg="http://www.opengis.net/citygml/vegetation/2.0"
+           xmlns:brid="http://www.opengis.net/citygml/bridge/2.0"
+           xmlns:tun="http://www.opengis.net/citygml/tunnel/2.0"
+           xmlns:gen="http://www.opengis.net/citygml/generics/2.0"
+           xmlns:wfs="http://www.opengis.net/wfs"
+           xsi:schemaLocation="http://www.opengis.net/citygml/landuse/2.0 http://schemas.opengis.net/citygml/landuse/2.0/landUse.xsd http://www.opengis.net/citygml/cityfurniture/2.0 http://schemas.opengis.net/citygml/cityfurniture/2.0/cityFurniture.xsd http://www.opengis.net/citygml/appearance/2.0 http://schemas.opengis.net/citygml/appearance/2.0/appearance.xsd http://www.opengis.net/citygml/texturedsurface/2.0 http://schemas.opengis.net/citygml/texturedsurface/2.0/texturedSurface.xsd http://www.opengis.net/citygml/transportation/2.0 http://schemas.opengis.net/citygml/transportation/2.0/transportation.xsd http://www.opengis.net/citygml/waterbody/2.0 http://schemas.opengis.net/citygml/waterbody/2.0/waterBody.xsd http://www.opengis.net/citygml/building/2.0 http://schemas.opengis.net/citygml/building/2.0/building.xsd http://www.opengis.net/citygml/relief/2.0 http://schemas.opengis.net/citygml/relief/2.0/relief.xsd http://www.opengis.net/citygml/vegetation/2.0 http://schemas.opengis.net/citygml/vegetation/2.0/vegetation.xsd http://www.opengis.net/citygml/cityobjectgroup/2.0 http://schemas.opengis.net/citygml/cityobjectgroup/2.0/cityObjectGroup.xsd http://www.opengis.net/citygml/bridge/2.0 http://schemas.opengis.net/citygml/bridge/2.0/bridge.xsd http://www.opengis.net/citygml/tunnel/2.0 http://schemas.opengis.net/citygml/tunnel/2.0/tunnel.xsd http://www.opengis.net/citygml/generics/2.0 http://schemas.opengis.net/citygml/generics/2.0/generics.xsd">
+<gml:description>G:\62\GIS_tui\Produkte\3D\Zusammenarbeit_Universitäten\HFT Stuttgart\Testdatensatz_28062022\Export_Wiesdorf.gml</gml:description>
+<gml:name>G:\62\GIS_tui\Produkte\3D\Zusammenarbeit_Universitäten\HFT Stuttgart\Testdatensatz_28062022\Export_Wiesdorf.gml</gml:name>
+<gml:boundedBy>
+	<gml:Envelope srsDimension="3" srsName="urn:ogc:def:crs:EPSG::25832">
+		<gml:lowerCorner>357978.09 5654873.32 0.00</gml:lowerCorner>
+		<gml:upperCorner>359213.91 5656013.49 0.00</gml:upperCorner>
+	</gml:Envelope>
+</gml:boundedBy>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC40f8b818-84e2-4bf7-bbfa-22af5f20f9f3">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>359134.053 5655248.918 46.90999985</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC40f8b818-84e2-4bf7-bbfa-22af5f20f9f3"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC40f8b818-84e2-4bf7-bbfa-22af5f20f9f3"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC40f8b818-84e2-4bf7-bbfa-22af5f20f9f3"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC18370283-fc17-4a8d-812e-ac677b3cc6aa">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358805.594 5655223.78 46.59999847</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC18370283-fc17-4a8d-812e-ac677b3cc6aa"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC18370283-fc17-4a8d-812e-ac677b3cc6aa"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC18370283-fc17-4a8d-812e-ac677b3cc6aa"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="ICf9ac1d5a-4be4-466c-934e-58cdce2cb082">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358528.544 5655634.731 44.45999908</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#ICf9ac1d5a-4be4-466c-934e-58cdce2cb082"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#ICf9ac1d5a-4be4-466c-934e-58cdce2cb082"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#ICf9ac1d5a-4be4-466c-934e-58cdce2cb082"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC1f5d078e-869e-4adc-95bf-6e1ada98105d">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358921.258 5655754.859 44.00999832</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC1f5d078e-869e-4adc-95bf-6e1ada98105d"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC1f5d078e-869e-4adc-95bf-6e1ada98105d"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC1f5d078e-869e-4adc-95bf-6e1ada98105d"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC15f429a4-4997-4e7f-8eca-e5c6087ed869">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358566.979 5655138.757 46.36000061</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC15f429a4-4997-4e7f-8eca-e5c6087ed869"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC15f429a4-4997-4e7f-8eca-e5c6087ed869"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC15f429a4-4997-4e7f-8eca-e5c6087ed869"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="ICf9cb14cc-99a2-4bf2-ac68-75e876aebe1a">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358503.967 5655267.126 46.91999817</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#ICf9cb14cc-99a2-4bf2-ac68-75e876aebe1a"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#ICf9cb14cc-99a2-4bf2-ac68-75e876aebe1a"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#ICf9cb14cc-99a2-4bf2-ac68-75e876aebe1a"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC2df38958-7c1d-4804-aaea-93ea742e62c1">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>359055.978 5655849.151 42.93000031</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC2df38958-7c1d-4804-aaea-93ea742e62c1"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC2df38958-7c1d-4804-aaea-93ea742e62c1"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC2df38958-7c1d-4804-aaea-93ea742e62c1"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC6cd916e8-1916-4e68-ae19-2b48b02a3cd9">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358551.225 5655559.56 44.58000183</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC6cd916e8-1916-4e68-ae19-2b48b02a3cd9"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC6cd916e8-1916-4e68-ae19-2b48b02a3cd9"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC6cd916e8-1916-4e68-ae19-2b48b02a3cd9"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC9926fd28-fa21-4a5c-8829-9baf2100ee74">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>359050.629 5655010.897 45.25999832</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC9926fd28-fa21-4a5c-8829-9baf2100ee74"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC9926fd28-fa21-4a5c-8829-9baf2100ee74"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC9926fd28-fa21-4a5c-8829-9baf2100ee74"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC860511a3-6d12-4d5e-9ecc-c8c8ab866d48">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358445.815 5655744.757 43.90999985</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC860511a3-6d12-4d5e-9ecc-c8c8ab866d48"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC860511a3-6d12-4d5e-9ecc-c8c8ab866d48"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC860511a3-6d12-4d5e-9ecc-c8c8ab866d48"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC9a67f98b-ea7c-4650-a76b-70ddf055693e">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>357980.349 5655498.896 46.88999939</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC9a67f98b-ea7c-4650-a76b-70ddf055693e"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC9a67f98b-ea7c-4650-a76b-70ddf055693e"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC9a67f98b-ea7c-4650-a76b-70ddf055693e"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC574549b9-5daf-4404-922f-ad143f772cf5">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358828.134 5655492.423 45.84000015</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC574549b9-5daf-4404-922f-ad143f772cf5"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC574549b9-5daf-4404-922f-ad143f772cf5"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC574549b9-5daf-4404-922f-ad143f772cf5"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC16de12fd-a52a-4c99-91e1-6466bf223c35">
+				<core:transformationMatrix>
+					1.0 0.0 0 0 
+					-0.0 1.0 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit2.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358872.807 5655511.242 45.72999954</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC16de12fd-a52a-4c99-91e1-6466bf223c35"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC16de12fd-a52a-4c99-91e1-6466bf223c35"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC16de12fd-a52a-4c99-91e1-6466bf223c35"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC06c0a1de-c757-41d1-8142-eb43b941c06e">
+				<core:transformationMatrix>
+					0.9444916824817261 -0.3285353279676911 0 0 
+					0.3285353279676911 0.9444916824817261 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit1.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358600.899 5655436.227 46.47575902257221</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC06c0a1de-c757-41d1-8142-eb43b941c06e"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC06c0a1de-c757-41d1-8142-eb43b941c06e"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC06c0a1de-c757-41d1-8142-eb43b941c06e"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="ICe37a46d4-dd5c-4da4-bc63-4fd64104fa7f">
+				<core:transformationMatrix>
+					-0.9667328231176867 0.2557882888384602 0 0 
+					-0.2557882888384602 -0.9667328231176867 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit1.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358564.214 5655406.122 46.67377932584644</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#ICe37a46d4-dd5c-4da4-bc63-4fd64104fa7f"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#ICe37a46d4-dd5c-4da4-bc63-4fd64104fa7f"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#ICe37a46d4-dd5c-4da4-bc63-4fd64104fa7f"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="ICd0cefddc-7ed8-44c4-8ef2-a7f517e374c5">
+				<core:transformationMatrix>
+					0.4199574315257782 0.9075438037396715 0 0 
+					-0.9075438037396715 0.4199574315257782 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>Implicit1.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358996.371 5655511.698 47.731653352198045</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#ICd0cefddc-7ed8-44c4-8ef2-a7f517e374c5"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#ICd0cefddc-7ed8-44c4-8ef2-a7f517e374c5"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#ICd0cefddc-7ed8-44c4-8ef2-a7f517e374c5"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="IC8f1f5e1b-2612-49d8-b3a1-76a304142566">
+				<core:transformationMatrix>
+					-0.3960952573399263 -0.9182094244304061 0 0 
+					0.9182094244304061 -0.3960952573399263 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>subdir/Implicit3.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358965.209 5655485.702 47.407838617376704</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#IC8f1f5e1b-2612-49d8-b3a1-76a304142566"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#IC8f1f5e1b-2612-49d8-b3a1-76a304142566"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#IC8f1f5e1b-2612-49d8-b3a1-76a304142566"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gen:lod1ImplicitRepresentation>
+			<core:ImplicitGeometry gml:id="ICe80df500-b965-49be-b06a-3993f02370ce">
+				<core:transformationMatrix>
+					-0.35611833267672716 -0.9344408665782699 0 0 
+					0.9344408665782699 -0.35611833267672716 0 0 
+					0 0 1.0 0 
+					0 0 0 1 
+				</core:transformationMatrix>
+				<core:libraryObject>subdir/Implicit3.gml</core:libraryObject>
+				<core:referencePoint>
+					<gml:Point>
+						<gml:pos>358973.349 5655464.637 47.32017288640677</gml:pos>
+					</gml:Point>
+				</core:referencePoint>
+			</core:ImplicitGeometry>
+		</gen:lod1ImplicitRepresentation>
+		<gen:lod2ImplicitRepresentation xlink:href="#ICe80df500-b965-49be-b06a-3993f02370ce"/>
+		<gen:lod3ImplicitRepresentation xlink:href="#ICe80df500-b965-49be-b06a-3993f02370ce"/>
+		<gen:lod4ImplicitRepresentation xlink:href="#ICe80df500-b965-49be-b06a-3993f02370ce"/>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+</core:CityModel>
\ No newline at end of file
diff --git a/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/subdir/Implicit3.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/subdir/Implicit3.gml
new file mode 100644
index 0000000..a6695b2
--- /dev/null
+++ b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/implicit/subdir/Implicit3.gml
@@ -0,0 +1,1527 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<core:CityModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xmlns:core="http://www.opengis.net/citygml/2.0"
+           xmlns:gml="http://www.opengis.net/gml"
+           xmlns:xlink="http://www.w3.org/1999/xlink"
+           xmlns:tran="http://www.opengis.net/citygml/transportation/2.0"
+           xmlns:wtr="http://www.opengis.net/citygml/waterbody/2.0"
+           xmlns:smil20lang="http://www.w3.org/2001/SMIL20/Language"
+           xmlns:grp="http://www.opengis.net/citygml/cityobjectgroup/2.0"
+           xmlns:luse="http://www.opengis.net/citygml/landuse/2.0"
+           xmlns:frn="http://www.opengis.net/citygml/cityfurniture/2.0"
+           xmlns:app="http://www.opengis.net/citygml/appearance/2.0"
+           xmlns:tex="http://www.opengis.net/citygml/texturedsurface/2.0"
+           xmlns:smil20="http://www.w3.org/2001/SMIL20/"
+           xmlns:xAL="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"
+           xmlns:bldg="http://www.opengis.net/citygml/building/2.0"
+           xmlns:dem="http://www.opengis.net/citygml/relief/2.0"
+           xmlns:veg="http://www.opengis.net/citygml/vegetation/2.0"
+           xmlns:brid="http://www.opengis.net/citygml/bridge/2.0"
+           xmlns:tun="http://www.opengis.net/citygml/tunnel/2.0"
+           xmlns:gen="http://www.opengis.net/citygml/generics/2.0"
+           xmlns:wfs="http://www.opengis.net/wfs"
+           xsi:schemaLocation="http://www.opengis.net/citygml/landuse/2.0 http://schemas.opengis.net/citygml/landuse/2.0/landUse.xsd http://www.opengis.net/citygml/cityfurniture/2.0 http://schemas.opengis.net/citygml/cityfurniture/2.0/cityFurniture.xsd http://www.opengis.net/citygml/appearance/2.0 http://schemas.opengis.net/citygml/appearance/2.0/appearance.xsd http://www.opengis.net/citygml/texturedsurface/2.0 http://schemas.opengis.net/citygml/texturedsurface/2.0/texturedSurface.xsd http://www.opengis.net/citygml/transportation/2.0 http://schemas.opengis.net/citygml/transportation/2.0/transportation.xsd http://www.opengis.net/citygml/waterbody/2.0 http://schemas.opengis.net/citygml/waterbody/2.0/waterBody.xsd http://www.opengis.net/citygml/building/2.0 http://schemas.opengis.net/citygml/building/2.0/building.xsd http://www.opengis.net/citygml/relief/2.0 http://schemas.opengis.net/citygml/relief/2.0/relief.xsd http://www.opengis.net/citygml/vegetation/2.0 http://schemas.opengis.net/citygml/vegetation/2.0/vegetation.xsd http://www.opengis.net/citygml/cityobjectgroup/2.0 http://schemas.opengis.net/citygml/cityobjectgroup/2.0/cityObjectGroup.xsd http://www.opengis.net/citygml/bridge/2.0 http://schemas.opengis.net/citygml/bridge/2.0/bridge.xsd http://www.opengis.net/citygml/tunnel/2.0 http://schemas.opengis.net/citygml/tunnel/2.0/tunnel.xsd http://www.opengis.net/citygml/generics/2.0 http://schemas.opengis.net/citygml/generics/2.0/generics.xsd">
+<gml:description>Testdataset</gml:description>
+<gml:name>ImplicitGeometry zipfile testdata</gml:name>
+<core:cityObjectMember>
+	<gen:GenericCityObject>
+		<gml:description>CPA_Symbol</gml:description>
+		<gml:name>Implicit3</gml:name>
+		<gen:lod2Geometry>
+			<gml:MultiSurface>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-5">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-5">
+								<gml:posList srsDimension="3">-0.147000 0.860000 1.282000 -0.147000 0.860000 1.232000 -1.238000 0.860000 1.232000 -1.238000 0.860000 1.282000 -0.147000 0.860000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-6">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-6">
+								<gml:posList srsDimension="3">-1.440000 0.760000 0.000000 -1.440000 0.760000 2.100000 -1.441000 -0.890000 2.100000 -1.441000 -0.890000 2.190000 -1.441000 -0.820000 2.260000 -1.440000 0.790000 2.260000 -1.440000 0.860000 2.190000 -1.440000 0.860000 0.000000 -1.440000 0.760000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-7">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-7">
+								<gml:posList srsDimension="3">-0.049000 -0.890000 2.100000 -0.049000 -0.890000 2.190000 -1.441000 -0.890000 2.190000 -1.441000 -0.890000 2.100000 -0.049000 -0.890000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-8">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-8">
+								<gml:posList srsDimension="3">-1.441000 -0.820000 2.260000 -1.441000 -0.890000 2.190000 -0.049000 -0.890000 2.190000 -0.049000 -0.820000 2.260000 -1.441000 -0.820000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-9">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-9">
+								<gml:posList srsDimension="3">-1.440000 0.860000 2.190000 -1.440000 0.790000 2.260000 -0.049000 0.790000 2.260000 -0.049000 0.860000 2.190000 -1.440000 0.860000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-10">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-10">
+								<gml:posList srsDimension="3">-1.238000 0.860000 1.132000 -1.238000 0.860000 1.182000 -0.147000 0.860000 1.182000 -0.147000 0.860000 1.132000 -1.238000 0.860000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-11">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-11">
+								<gml:posList srsDimension="3">-0.049000 0.790000 2.260000 -1.440000 0.790000 2.260000 -1.441000 -0.820000 2.260000 -0.049000 -0.820000 2.260000 -0.049000 0.790000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-12">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-12">
+								<gml:posList srsDimension="3">-1.342000 0.760000 2.100000 -1.440000 0.760000 2.100000 -1.440000 0.760000 0.000000 -1.342000 0.760000 0.000000 -1.342000 0.760000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-13">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-13">
+								<gml:posList srsDimension="3">-1.441000 -0.890000 2.100000 -1.440000 0.760000 2.100000 -1.342000 0.760000 2.100000 -1.342000 0.860000 2.100000 -0.049000 0.860000 2.100000 -0.049000 -0.890000 2.100000 -1.441000 -0.890000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-14">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-14">
+								<gml:posList srsDimension="3">-1.440000 0.860000 2.190000 -0.049000 0.860000 2.190000 -0.049000 0.860000 2.100000 -1.342000 0.860000 2.100000 -1.342000 0.860000 0.547000 -1.342000 0.860000 0.504000 -1.342000 0.860000 0.300000 -1.342000 0.860000 0.220000 -1.342000 0.860000 0.000000 -1.440000 0.860000 0.000000 -1.440000 0.860000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-15">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-15">
+								<gml:posList srsDimension="3">-1.342000 0.860000 0.220000 -1.342000 0.860000 0.300000 -0.049000 0.860000 0.300000 -0.049000 0.860000 0.220000 -1.342000 0.860000 0.220000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-16">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-16">
+								<gml:posList srsDimension="3">-1.342000 0.860000 2.100000 -1.342000 0.760000 2.100000 -1.342000 0.760000 0.000000 -1.342000 0.860000 0.000000 -1.342000 0.860000 0.220000 -1.342000 0.860000 0.300000 -1.342000 0.860000 0.504000 -1.342000 0.860000 0.547000 -1.342000 0.860000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-17">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-17">
+								<gml:posList srsDimension="3">-1.342000 0.860000 0.547000 -1.342000 0.860000 0.504000 -1.242000 0.860000 0.504000 -1.242000 0.860000 0.547000 -1.342000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-18">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-18">
+								<gml:posList srsDimension="3">-1.242000 0.860000 0.504000 -1.242000 0.535000 0.504000 -1.242000 0.535000 0.547000 -1.242000 0.860000 0.547000 -1.242000 0.860000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-19">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-19">
+								<gml:posList srsDimension="3">-1.192000 0.535000 0.504000 -1.192000 0.860000 0.504000 -1.192000 0.860000 0.547000 -1.192000 0.535000 0.547000 -1.192000 0.535000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-20">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-20">
+								<gml:posList srsDimension="3">-1.242000 0.535000 0.547000 -1.242000 0.535000 0.504000 -1.192000 0.535000 0.504000 -1.192000 0.535000 0.547000 -1.242000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-21">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-21">
+								<gml:posList srsDimension="3">-1.242000 0.860000 0.547000 -1.242000 0.535000 0.547000 -1.192000 0.535000 0.547000 -1.192000 0.860000 0.547000 -1.242000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-22">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-22">
+								<gml:posList srsDimension="3">-0.199000 0.860000 0.504000 -0.199000 0.535000 0.504000 -0.199000 0.535000 0.547000 -0.199000 0.860000 0.547000 -0.199000 0.860000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-23">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-23">
+								<gml:posList srsDimension="3">-0.149000 0.535000 0.504000 -0.149000 0.535000 0.547000 -0.199000 0.535000 0.547000 -0.199000 0.535000 0.504000 -0.149000 0.535000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-24">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-24">
+								<gml:posList srsDimension="3">-0.149000 0.535000 0.547000 -0.149000 0.860000 0.547000 -0.199000 0.860000 0.547000 -0.199000 0.535000 0.547000 -0.149000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-25">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-25">
+								<gml:posList srsDimension="3">-0.892000 0.860000 0.547000 -0.892000 0.535000 0.547000 -0.842000 0.535000 0.547000 -0.842000 0.860000 0.547000 -0.892000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-26">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-26">
+								<gml:posList srsDimension="3">-0.892000 0.535000 0.547000 -0.892000 0.535000 0.504000 -0.842000 0.535000 0.504000 -0.842000 0.535000 0.547000 -0.892000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-27">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-27">
+								<gml:posList srsDimension="3">-0.842000 0.535000 0.504000 -0.842000 0.860000 0.504000 -0.842000 0.860000 0.547000 -0.842000 0.535000 0.547000 -0.842000 0.535000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-28">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-28">
+								<gml:posList srsDimension="3">-0.892000 0.860000 0.504000 -0.892000 0.535000 0.504000 -0.892000 0.535000 0.547000 -0.892000 0.860000 0.547000 -0.892000 0.860000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-29">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-29">
+								<gml:posList srsDimension="3">-0.552000 0.535000 0.547000 -0.552000 0.535000 0.504000 -0.502000 0.535000 0.504000 -0.502000 0.535000 0.547000 -0.552000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-30">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-30">
+								<gml:posList srsDimension="3">-0.502000 0.535000 0.504000 -0.502000 0.860000 0.504000 -0.502000 0.860000 0.547000 -0.502000 0.535000 0.547000 -0.502000 0.535000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-31">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-31">
+								<gml:posList srsDimension="3">-0.552000 0.860000 0.547000 -0.552000 0.535000 0.547000 -0.502000 0.535000 0.547000 -0.502000 0.860000 0.547000 -0.552000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-32">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-32">
+								<gml:posList srsDimension="3">-1.172000 0.840000 0.547000 -1.172000 0.535000 0.547000 -0.912000 0.535000 0.547000 -0.912000 0.840000 0.547000 -1.172000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-33">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-33">
+								<gml:posList srsDimension="3">-1.172000 0.535000 0.520000 -1.172000 0.840000 0.520000 -0.912000 0.840000 0.520000 -0.912000 0.535000 0.520000 -1.172000 0.535000 0.520000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-34">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-34">
+								<gml:posList srsDimension="3">-1.172000 0.535000 0.547000 -1.172000 0.840000 0.547000 -1.172000 0.840000 0.520000 -1.172000 0.535000 0.520000 -1.172000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-35">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-35">
+								<gml:posList srsDimension="3">-1.172000 0.840000 0.547000 -0.912000 0.840000 0.547000 -0.912000 0.840000 0.520000 -1.172000 0.840000 0.520000 -1.172000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-36">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-36">
+								<gml:posList srsDimension="3">-0.912000 0.840000 0.547000 -0.912000 0.535000 0.547000 -0.912000 0.535000 0.520000 -0.912000 0.840000 0.520000 -0.912000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-37">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-37">
+								<gml:posList srsDimension="3">-0.912000 0.535000 0.547000 -1.172000 0.535000 0.547000 -1.172000 0.535000 0.520000 -0.912000 0.535000 0.520000 -0.912000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-38">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-38">
+								<gml:posList srsDimension="3">-0.552000 0.860000 0.504000 -0.552000 0.535000 0.504000 -0.552000 0.535000 0.547000 -0.552000 0.860000 0.547000 -0.552000 0.860000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-39">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-39">
+								<gml:posList srsDimension="3">-0.828000 0.840000 0.547000 -0.568000 0.840000 0.547000 -0.568000 0.840000 0.520000 -0.828000 0.840000 0.520000 -0.828000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-40">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-40">
+								<gml:posList srsDimension="3">-0.828000 0.535000 0.520000 -0.828000 0.840000 0.520000 -0.568000 0.840000 0.520000 -0.568000 0.535000 0.520000 -0.828000 0.535000 0.520000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-41">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-41">
+								<gml:posList srsDimension="3">-0.828000 0.535000 0.547000 -0.828000 0.840000 0.547000 -0.828000 0.840000 0.520000 -0.828000 0.535000 0.520000 -0.828000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-42">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-42">
+								<gml:posList srsDimension="3">-0.568000 0.535000 0.547000 -0.828000 0.535000 0.547000 -0.828000 0.535000 0.520000 -0.568000 0.535000 0.520000 -0.568000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-43">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-43">
+								<gml:posList srsDimension="3">-0.568000 0.840000 0.547000 -0.568000 0.535000 0.547000 -0.568000 0.535000 0.520000 -0.568000 0.840000 0.520000 -0.568000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-44">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-44">
+								<gml:posList srsDimension="3">-0.828000 0.840000 0.547000 -0.828000 0.535000 0.547000 -0.568000 0.535000 0.547000 -0.568000 0.840000 0.547000 -0.828000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-45">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-45">
+								<gml:posList srsDimension="3">-0.481000 0.840000 0.547000 -0.481000 0.535000 0.547000 -0.221000 0.535000 0.547000 -0.221000 0.840000 0.547000 -0.481000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-46">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-46">
+								<gml:posList srsDimension="3">-0.221000 0.840000 0.547000 -0.221000 0.535000 0.547000 -0.221000 0.535000 0.520000 -0.221000 0.840000 0.520000 -0.221000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-47">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-47">
+								<gml:posList srsDimension="3">-0.481000 0.535000 0.520000 -0.481000 0.840000 0.520000 -0.221000 0.840000 0.520000 -0.221000 0.535000 0.520000 -0.481000 0.535000 0.520000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-48">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-48">
+								<gml:posList srsDimension="3">-0.221000 0.535000 0.547000 -0.481000 0.535000 0.547000 -0.481000 0.535000 0.520000 -0.221000 0.535000 0.520000 -0.221000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-49">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-49">
+								<gml:posList srsDimension="3">-0.481000 0.840000 0.547000 -0.221000 0.840000 0.547000 -0.221000 0.840000 0.520000 -0.481000 0.840000 0.520000 -0.481000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-50">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-50">
+								<gml:posList srsDimension="3">-0.481000 0.535000 0.547000 -0.481000 0.840000 0.547000 -0.481000 0.840000 0.520000 -0.481000 0.535000 0.520000 -0.481000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-51">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-51">
+								<gml:posList srsDimension="3">-0.149000 0.535000 0.504000 -0.149000 0.860000 0.504000 -0.149000 0.860000 0.547000 -0.149000 0.535000 0.547000 -0.149000 0.535000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-52">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-52">
+								<gml:posList srsDimension="3">-0.502000 0.860000 0.547000 -0.502000 0.860000 0.504000 -0.552000 0.860000 0.504000 -0.552000 0.860000 0.547000 -0.502000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-53">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-53">
+								<gml:posList srsDimension="3">-0.842000 0.860000 0.547000 -0.842000 0.860000 0.504000 -0.892000 0.860000 0.504000 -0.892000 0.860000 0.547000 -0.842000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-54">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-54">
+								<gml:posList srsDimension="3">-0.149000 0.860000 0.504000 -0.199000 0.860000 0.504000 -0.199000 0.860000 0.547000 -0.149000 0.860000 0.547000 -0.149000 0.860000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-55">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-55">
+								<gml:posList srsDimension="3">-1.192000 0.860000 0.504000 -1.242000 0.860000 0.504000 -1.242000 0.860000 0.547000 -1.192000 0.860000 0.547000 -1.192000 0.860000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-56">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-56">
+								<gml:posList srsDimension="3">-1.242000 0.860000 0.504000 -1.192000 0.860000 0.504000 -0.892000 0.860000 0.504000 -0.842000 0.860000 0.504000 -0.552000 0.860000 0.504000 -0.502000 0.860000 0.504000 -0.199000 0.860000 0.504000 -0.149000 0.860000 0.504000 -0.049000 0.860000 0.504000 -0.049000 0.860000 0.300000 -1.342000 0.860000 0.300000 -1.342000 0.860000 0.504000 -1.242000 0.860000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-57">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-57">
+								<gml:posList srsDimension="3">-0.842000 0.860000 0.547000 -0.842000 0.860000 0.504000 -0.552000 0.860000 0.504000 -0.552000 0.860000 0.547000 -0.842000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-58">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-58">
+								<gml:posList srsDimension="3">-1.192000 0.860000 0.547000 -1.192000 0.860000 0.504000 -0.892000 0.860000 0.504000 -0.892000 0.860000 0.547000 -1.192000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-59">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-59">
+								<gml:posList srsDimension="3">-0.502000 0.860000 0.547000 -0.502000 0.860000 0.504000 -0.199000 0.860000 0.504000 -0.199000 0.860000 0.547000 -0.502000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-60">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-60">
+								<gml:posList srsDimension="3">-0.149000 0.860000 0.547000 -0.149000 0.860000 0.504000 -0.049000 0.860000 0.504000 -0.049000 0.860000 0.547000 -0.149000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-61">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-61">
+								<gml:posList srsDimension="3">-0.049000 0.860000 2.100000 -0.049000 0.860000 0.547000 -0.149000 0.860000 0.547000 -0.199000 0.860000 0.547000 -0.502000 0.860000 0.547000 -0.552000 0.860000 0.547000 -0.842000 0.860000 0.547000 -0.892000 0.860000 0.547000 -1.192000 0.860000 0.547000 -1.242000 0.860000 0.547000 -1.342000 0.860000 0.547000 -1.342000 0.860000 2.100000 -0.049000 0.860000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-61_1">
+								<gml:posList srsDimension="3">-0.147000 0.860000 1.182000 -1.238000 0.860000 1.182000 -1.238000 0.860000 1.132000 -0.147000 0.860000 1.132000 -0.147000 0.860000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-61_2">
+								<gml:posList srsDimension="3">-1.238000 0.860000 1.282000 -1.238000 0.860000 1.232000 -0.147000 0.860000 1.232000 -0.147000 0.860000 1.282000 -1.238000 0.860000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-62">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-62">
+								<gml:posList srsDimension="3">2.832000 0.759000 2.100000 2.734000 0.759000 2.100000 2.734000 0.759000 0.000000 2.832000 0.759000 0.000000 2.832000 0.759000 0.220000 2.832000 0.759000 0.300000 2.832000 0.759000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-63">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-63">
+								<gml:posList srsDimension="3">2.764000 0.789000 2.260000 2.832000 0.859000 2.190000 1.343000 0.859000 2.190000 1.343000 0.789000 2.260000 2.764000 0.789000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-64">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-64">
+								<gml:posList srsDimension="3">2.832000 -0.391000 1.182000 2.832000 -0.391000 1.132000 2.832000 0.659000 1.132000 2.832000 0.659000 1.182000 2.832000 -0.391000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-65">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-65">
+								<gml:posList srsDimension="3">2.832000 0.859000 2.190000 2.764000 0.789000 2.260000 2.763000 -0.821000 2.260000 2.832000 -0.891000 2.190000 2.832000 0.859000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-66">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-66">
+								<gml:posList srsDimension="3">1.343000 -0.891000 2.190000 2.832000 -0.891000 2.190000 2.763000 -0.821000 2.260000 1.343000 -0.821000 2.260000 1.343000 -0.891000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-67">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-67">
+								<gml:posList srsDimension="3">1.539000 0.859000 1.232000 1.539000 0.859000 1.282000 2.630000 0.859000 1.282000 2.630000 0.859000 1.232000 1.539000 0.859000 1.232000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-68">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-68">
+								<gml:posList srsDimension="3">2.734000 -0.591000 2.100000 2.734000 -0.591000 0.000000 2.832000 -0.591000 0.000000 2.832000 -0.591000 2.100000 2.734000 -0.591000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-69">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-69">
+								<gml:posList srsDimension="3">2.832000 -0.491000 0.300000 2.832000 -0.491000 0.220000 2.832000 0.759000 0.220000 2.832000 0.759000 0.300000 2.832000 -0.491000 0.300000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-70">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-70">
+								<gml:posList srsDimension="3">2.734000 -0.591000 2.100000 2.734000 -0.491000 2.100000 2.734000 -0.491000 0.000000 2.734000 -0.591000 0.000000 2.734000 -0.591000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-71">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-71">
+								<gml:posList srsDimension="3">2.734000 0.859000 0.300000 2.734000 0.859000 0.220000 1.441000 0.859000 0.220000 1.441000 0.859000 0.300000 2.734000 0.859000 0.300000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-72">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-72">
+								<gml:posList srsDimension="3">1.441000 0.859000 2.100000 2.734000 0.859000 2.100000 2.734000 0.859000 0.300000 1.441000 0.859000 0.300000 1.441000 0.859000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-72_1">
+								<gml:posList srsDimension="3">2.630000 0.859000 1.182000 1.539000 0.859000 1.182000 1.539000 0.859000 1.132000 2.630000 0.859000 1.132000 2.630000 0.859000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-72_2">
+								<gml:posList srsDimension="3">2.630000 0.859000 1.232000 2.630000 0.859000 1.282000 1.539000 0.859000 1.282000 1.539000 0.859000 1.232000 2.630000 0.859000 1.232000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-73">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-73">
+								<gml:posList srsDimension="3">2.832000 0.659000 1.232000 2.832000 0.659000 1.282000 2.832000 -0.391000 1.282000 2.832000 -0.391000 1.232000 2.832000 0.659000 1.232000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-74">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-74">
+								<gml:posList srsDimension="3">2.630000 0.859000 1.182000 2.630000 0.859000 1.132000 1.539000 0.859000 1.132000 1.539000 0.859000 1.182000 2.630000 0.859000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-75">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-75">
+								<gml:posList srsDimension="3">2.734000 0.759000 2.100000 2.734000 0.859000 2.100000 2.734000 0.859000 0.300000 2.734000 0.859000 0.220000 2.734000 0.859000 0.000000 2.734000 0.759000 0.000000 2.734000 0.759000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-76">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-76">
+								<gml:posList srsDimension="3">2.832000 -0.491000 2.100000 2.832000 -0.491000 0.300000 2.832000 0.759000 0.300000 2.832000 0.759000 2.100000 2.832000 -0.491000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-76_1">
+								<gml:posList srsDimension="3">2.832000 -0.391000 1.132000 2.832000 -0.391000 1.182000 2.832000 0.659000 1.182000 2.832000 0.659000 1.132000 2.832000 -0.391000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-76_2">
+								<gml:posList srsDimension="3">2.832000 0.659000 1.232000 2.832000 -0.391000 1.232000 2.832000 -0.391000 1.282000 2.832000 0.659000 1.282000 2.832000 0.659000 1.232000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-77">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-77">
+								<gml:posList srsDimension="3">2.832000 -0.891000 2.100000 2.832000 -0.891000 2.190000 1.343000 -0.891000 2.190000 1.343000 -0.891000 2.100000 2.832000 -0.891000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-78">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-78">
+								<gml:posList srsDimension="3">2.832000 0.859000 0.000000 2.832000 0.859000 2.190000 2.832000 -0.891000 2.190000 2.832000 -0.891000 2.100000 2.832000 -0.591000 2.100000 2.832000 -0.591000 0.000000 2.832000 -0.491000 0.000000 2.832000 -0.491000 0.220000 2.832000 -0.491000 0.300000 2.832000 -0.491000 2.100000 2.832000 0.759000 2.100000 2.832000 0.759000 0.300000 2.832000 0.759000 0.220000 2.832000 0.759000 0.000000 2.832000 0.859000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-79">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-79">
+								<gml:posList srsDimension="3">2.734000 0.859000 2.100000 1.441000 0.859000 2.100000 1.441000 0.859000 0.300000 1.441000 0.859000 0.220000 1.441000 0.859000 0.000000 1.343000 0.859000 0.000000 1.343000 0.859000 2.190000 2.832000 0.859000 2.190000 2.832000 0.859000 0.000000 2.734000 0.859000 0.000000 2.734000 0.859000 0.220000 2.734000 0.859000 0.300000 2.734000 0.859000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-80">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-80">
+								<gml:posList srsDimension="3">2.734000 -0.491000 2.100000 2.832000 -0.491000 2.100000 2.832000 -0.491000 0.300000 2.832000 -0.491000 0.220000 2.832000 -0.491000 0.000000 2.734000 -0.491000 0.000000 2.734000 -0.491000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-81">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-81">
+								<gml:posList srsDimension="3">2.764000 0.789000 2.260000 1.343000 0.789000 2.260000 1.343000 -0.821000 2.260000 2.763000 -0.821000 2.260000 2.764000 0.789000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-82">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-82">
+								<gml:posList srsDimension="3">1.441000 0.759000 2.100000 1.343000 0.759000 2.100000 1.343000 0.759000 0.000000 1.441000 0.759000 0.000000 1.441000 0.759000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-83">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-83">
+								<gml:posList srsDimension="3">1.343000 0.759000 0.000000 1.343000 0.759000 2.100000 1.343000 -0.891000 2.100000 1.343000 -0.891000 2.190000 1.343000 -0.821000 2.260000 1.343000 0.789000 2.260000 1.343000 0.859000 2.190000 1.343000 0.859000 0.000000 1.343000 0.759000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-84">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-84">
+								<gml:posList srsDimension="3">1.441000 0.859000 2.100000 1.441000 0.759000 2.100000 1.441000 0.759000 0.000000 1.441000 0.859000 0.000000 1.441000 0.859000 0.220000 1.441000 0.859000 0.300000 1.441000 0.859000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-85">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-85">
+								<gml:posList srsDimension="3">2.832000 -0.591000 2.100000 2.832000 -0.891000 2.100000 1.343000 -0.891000 2.100000 1.343000 0.759000 2.100000 1.441000 0.759000 2.100000 1.441000 0.859000 2.100000 2.734000 0.859000 2.100000 2.734000 0.759000 2.100000 2.832000 0.759000 2.100000 2.832000 -0.491000 2.100000 2.734000 -0.491000 2.100000 2.734000 -0.591000 2.100000 2.832000 -0.591000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-86">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-86">
+								<gml:posList srsDimension="3">-1.441000 -0.890000 2.100000 -1.441000 -0.890000 2.190000 -2.832000 -0.890000 2.190000 -2.832000 -0.890000 2.100000 -1.441000 -0.890000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-87">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-87">
+								<gml:posList srsDimension="3">-2.832000 -0.490000 0.300000 -2.832000 -0.490000 2.100000 -2.832000 0.760000 2.100000 -2.832000 0.760000 0.300000 -2.832000 -0.490000 0.300000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-87_1">
+								<gml:posList srsDimension="3">-2.832000 0.660000 1.132000 -2.832000 0.660000 1.182000 -2.832000 -0.390000 1.182000 -2.832000 -0.390000 1.132000 -2.832000 0.660000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-87_2">
+								<gml:posList srsDimension="3">-2.832000 -0.390000 1.232000 -2.832000 0.660000 1.232000 -2.832000 0.660000 1.282000 -2.832000 -0.390000 1.282000 -2.832000 -0.390000 1.232000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-88">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-88">
+								<gml:posList srsDimension="3">-2.763000 0.790000 2.260000 -2.764000 -0.820000 2.260000 -1.441000 -0.820000 2.260000 -1.441000 0.790000 2.260000 -2.763000 0.790000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-89">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-89">
+								<gml:posList srsDimension="3">-2.832000 0.860000 2.190000 -1.441000 0.860000 2.190000 -1.441000 0.860000 2.100000 -2.734000 0.860000 2.100000 -2.734000 0.860000 0.300000 -2.734000 0.860000 0.220000 -2.734000 0.860000 0.000000 -2.832000 0.860000 0.000000 -2.832000 0.860000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-90">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-90">
+								<gml:posList srsDimension="3">-2.832000 0.760000 2.100000 -2.734000 0.760000 2.100000 -2.734000 0.860000 2.100000 -1.441000 0.860000 2.100000 -1.441000 -0.890000 2.100000 -2.832000 -0.890000 2.100000 -2.832000 -0.590000 2.100000 -2.734000 -0.590000 2.100000 -2.734000 -0.490000 2.100000 -2.832000 -0.490000 2.100000 -2.832000 0.760000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-91">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-91">
+								<gml:posList srsDimension="3">-2.832000 0.760000 0.300000 -2.832000 0.760000 2.100000 -2.832000 -0.490000 2.100000 -2.832000 -0.490000 0.300000 -2.832000 -0.490000 0.220000 -2.832000 -0.490000 0.000000 -2.832000 -0.590000 0.000000 -2.832000 -0.590000 2.100000 -2.832000 -0.890000 2.100000 -2.832000 -0.890000 2.190000 -2.832000 0.860000 2.190000 -2.832000 0.860000 0.000000 -2.832000 0.760000 0.000000 -2.832000 0.760000 0.220000 -2.832000 0.760000 0.300000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-92">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-92">
+								<gml:posList srsDimension="3">-2.832000 -0.490000 2.100000 -2.734000 -0.490000 2.100000 -2.734000 -0.490000 0.000000 -2.832000 -0.490000 0.000000 -2.832000 -0.490000 0.220000 -2.832000 -0.490000 0.300000 -2.832000 -0.490000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-93">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-93">
+								<gml:posList srsDimension="3">-2.734000 -0.590000 2.100000 -2.832000 -0.590000 2.100000 -2.832000 -0.590000 0.000000 -2.734000 -0.590000 0.000000 -2.734000 -0.590000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-94">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-94">
+								<gml:posList srsDimension="3">-2.763000 0.790000 2.260000 -2.832000 0.860000 2.190000 -2.832000 -0.890000 2.190000 -2.764000 -0.820000 2.260000 -2.763000 0.790000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-95">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-95">
+								<gml:posList srsDimension="3">-2.734000 -0.490000 2.100000 -2.734000 -0.590000 2.100000 -2.734000 -0.590000 0.000000 -2.734000 -0.490000 0.000000 -2.734000 -0.490000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-96">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-96">
+								<gml:posList srsDimension="3">-1.441000 -0.890000 2.190000 -1.441000 -0.820000 2.260000 -2.764000 -0.820000 2.260000 -2.832000 -0.890000 2.190000 -1.441000 -0.890000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-97">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-97">
+								<gml:posList srsDimension="3">-2.734000 0.760000 2.100000 -2.832000 0.760000 2.100000 -2.832000 0.760000 0.300000 -2.832000 0.760000 0.220000 -2.832000 0.760000 0.000000 -2.734000 0.760000 0.000000 -2.734000 0.760000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-98">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-98">
+								<gml:posList srsDimension="3">-1.441000 0.790000 2.260000 -1.441000 0.860000 2.190000 -2.832000 0.860000 2.190000 -2.763000 0.790000 2.260000 -1.441000 0.790000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-99">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-99">
+								<gml:posList srsDimension="3">-2.734000 0.860000 2.100000 -2.734000 0.760000 2.100000 -2.734000 0.760000 0.000000 -2.734000 0.860000 0.000000 -2.734000 0.860000 0.220000 -2.734000 0.860000 0.300000 -2.734000 0.860000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-100">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-100">
+								<gml:posList srsDimension="3">-2.832000 -0.490000 0.220000 -2.832000 -0.490000 0.300000 -2.832000 0.760000 0.300000 -2.832000 0.760000 0.220000 -2.832000 -0.490000 0.220000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-101">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-101">
+								<gml:posList srsDimension="3">-2.734000 0.860000 0.220000 -2.734000 0.860000 0.300000 -1.441000 0.860000 0.300000 -1.441000 0.860000 0.220000 -2.734000 0.860000 0.220000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-102">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-102">
+								<gml:posList srsDimension="3">-2.832000 0.660000 1.282000 -2.832000 0.660000 1.232000 -2.832000 -0.390000 1.232000 -2.832000 -0.390000 1.282000 -2.832000 0.660000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-103">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-103">
+								<gml:posList srsDimension="3">-2.832000 -0.390000 1.132000 -2.832000 -0.390000 1.182000 -2.832000 0.660000 1.182000 -2.832000 0.660000 1.132000 -2.832000 -0.390000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-104">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-104">
+								<gml:posList srsDimension="3">-2.629000 0.860000 1.132000 -2.629000 0.860000 1.182000 -1.539000 0.860000 1.182000 -1.539000 0.860000 1.132000 -2.629000 0.860000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-105">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-105">
+								<gml:posList srsDimension="3">-1.539000 0.860000 1.282000 -1.539000 0.860000 1.232000 -2.629000 0.860000 1.232000 -2.629000 0.860000 1.282000 -1.539000 0.860000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-106">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-106">
+								<gml:posList srsDimension="3">-2.734000 0.860000 2.100000 -1.441000 0.860000 2.100000 -1.441000 0.860000 0.300000 -2.734000 0.860000 0.300000 -2.734000 0.860000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-106_1">
+								<gml:posList srsDimension="3">-1.539000 0.860000 1.182000 -2.629000 0.860000 1.182000 -2.629000 0.860000 1.132000 -1.539000 0.860000 1.132000 -1.539000 0.860000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-106_2">
+								<gml:posList srsDimension="3">-2.629000 0.860000 1.282000 -2.629000 0.860000 1.232000 -1.539000 0.860000 1.232000 -1.539000 0.860000 1.282000 -2.629000 0.860000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-107">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-107">
+								<gml:posList srsDimension="3">1.245000 0.859000 1.282000 1.245000 0.859000 1.232000 0.154000 0.860000 1.232000 0.154000 0.860000 1.282000 1.245000 0.859000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-108">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-108">
+								<gml:posList srsDimension="3">-0.049000 0.760000 0.000000 -0.049000 0.760000 2.100000 -0.049000 -0.890000 2.100000 -0.049000 -0.890000 2.190000 -0.049000 -0.820000 2.260000 -0.049000 0.790000 2.260000 -0.049000 0.860000 2.190000 -0.049000 0.860000 0.000000 -0.049000 0.760000 0.000000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-109">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-109">
+								<gml:posList srsDimension="3">1.343000 -0.891000 2.100000 1.343000 -0.891000 2.190000 -0.049000 -0.890000 2.190000 -0.049000 -0.890000 2.100000 1.343000 -0.891000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-110">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-110">
+								<gml:posList srsDimension="3">-0.049000 -0.820000 2.260000 -0.049000 -0.890000 2.190000 1.343000 -0.891000 2.190000 1.343000 -0.821000 2.260000 -0.049000 -0.820000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-111">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-111">
+								<gml:posList srsDimension="3">-0.049000 0.860000 2.190000 -0.049000 0.790000 2.260000 1.343000 0.789000 2.260000 1.343000 0.859000 2.190000 -0.049000 0.860000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-112">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-112">
+								<gml:posList srsDimension="3">0.154000 0.860000 1.132000 0.154000 0.860000 1.182000 1.245000 0.859000 1.182000 1.245000 0.859000 1.132000 0.154000 0.860000 1.132000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-113">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-113">
+								<gml:posList srsDimension="3">1.343000 0.789000 2.260000 -0.049000 0.790000 2.260000 -0.049000 -0.820000 2.260000 1.343000 -0.821000 2.260000 1.343000 0.789000 2.260000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-114">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-114">
+								<gml:posList srsDimension="3">0.049000 0.760000 2.100000 -0.049000 0.760000 2.100000 -0.049000 0.760000 0.000000 0.049000 0.760000 0.000000 0.049000 0.760000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-115">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-115">
+								<gml:posList srsDimension="3">-0.049000 -0.890000 2.100000 -0.049000 0.760000 2.100000 0.049000 0.760000 2.100000 0.049000 0.860000 2.100000 1.343000 0.859000 2.100000 1.343000 -0.891000 2.100000 -0.049000 -0.890000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-116">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-116">
+								<gml:posList srsDimension="3">-0.049000 0.860000 2.190000 1.343000 0.859000 2.190000 1.343000 0.859000 2.100000 0.049000 0.860000 2.100000 0.049000 0.860000 0.547000 0.049000 0.860000 0.504000 0.049000 0.860000 0.300000 0.049000 0.860000 0.220000 0.049000 0.860000 0.000000 -0.049000 0.860000 0.000000 -0.049000 0.860000 2.190000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-117">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-117">
+								<gml:posList srsDimension="3">0.049000 0.860000 0.220000 0.049000 0.860000 0.300000 1.343000 0.859000 0.300000 1.343000 0.859000 0.220000 0.049000 0.860000 0.220000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-118">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-118">
+								<gml:posList srsDimension="3">0.049000 0.860000 2.100000 0.049000 0.760000 2.100000 0.049000 0.760000 0.000000 0.049000 0.860000 0.000000 0.049000 0.860000 0.220000 0.049000 0.860000 0.300000 0.049000 0.860000 0.504000 0.049000 0.860000 0.547000 0.049000 0.860000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-119">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-119">
+								<gml:posList srsDimension="3">0.049000 0.860000 0.547000 0.049000 0.860000 0.504000 0.149000 0.860000 0.504000 0.149000 0.860000 0.547000 0.049000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-120">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-120">
+								<gml:posList srsDimension="3">0.149000 0.860000 0.504000 0.149000 0.535000 0.504000 0.149000 0.535000 0.547000 0.149000 0.860000 0.547000 0.149000 0.860000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-121">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-121">
+								<gml:posList srsDimension="3">0.199000 0.535000 0.504000 0.199000 0.860000 0.504000 0.199000 0.860000 0.547000 0.199000 0.535000 0.547000 0.199000 0.535000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-122">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-122">
+								<gml:posList srsDimension="3">0.149000 0.535000 0.547000 0.149000 0.535000 0.504000 0.199000 0.535000 0.504000 0.199000 0.535000 0.547000 0.149000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-123">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-123">
+								<gml:posList srsDimension="3">0.149000 0.860000 0.547000 0.149000 0.535000 0.547000 0.199000 0.535000 0.547000 0.199000 0.860000 0.547000 0.149000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-124">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-124">
+								<gml:posList srsDimension="3">1.193000 0.859000 0.504000 1.192000 0.534000 0.504000 1.192000 0.534000 0.547000 1.193000 0.859000 0.547000 1.193000 0.859000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-125">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-125">
+								<gml:posList srsDimension="3">1.242000 0.534000 0.504000 1.242000 0.534000 0.547000 1.192000 0.534000 0.547000 1.192000 0.534000 0.504000 1.242000 0.534000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-126">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-126">
+								<gml:posList srsDimension="3">1.242000 0.534000 0.547000 1.243000 0.859000 0.547000 1.193000 0.859000 0.547000 1.192000 0.534000 0.547000 1.242000 0.534000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-127">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-127">
+								<gml:posList srsDimension="3">0.499000 0.859000 0.547000 0.499000 0.535000 0.547000 0.549000 0.535000 0.547000 0.549000 0.859000 0.547000 0.499000 0.859000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-128">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-128">
+								<gml:posList srsDimension="3">0.499000 0.535000 0.547000 0.499000 0.535000 0.504000 0.549000 0.535000 0.504000 0.549000 0.535000 0.547000 0.499000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-129">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-129">
+								<gml:posList srsDimension="3">0.549000 0.535000 0.504000 0.549000 0.859000 0.504000 0.549000 0.859000 0.547000 0.549000 0.535000 0.547000 0.549000 0.535000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-130">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-130">
+								<gml:posList srsDimension="3">0.499000 0.859000 0.504000 0.499000 0.535000 0.504000 0.499000 0.535000 0.547000 0.499000 0.859000 0.547000 0.499000 0.859000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-131">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-131">
+								<gml:posList srsDimension="3">0.839000 0.535000 0.547000 0.839000 0.535000 0.504000 0.889000 0.535000 0.504000 0.889000 0.535000 0.547000 0.839000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-132">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-132">
+								<gml:posList srsDimension="3">0.889000 0.535000 0.504000 0.889000 0.859000 0.504000 0.889000 0.859000 0.547000 0.889000 0.535000 0.547000 0.889000 0.535000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-133">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-133">
+								<gml:posList srsDimension="3">0.839000 0.859000 0.547000 0.839000 0.535000 0.547000 0.889000 0.535000 0.547000 0.889000 0.859000 0.547000 0.839000 0.859000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-134">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-134">
+								<gml:posList srsDimension="3">0.219000 0.840000 0.547000 0.219000 0.535000 0.547000 0.479000 0.535000 0.547000 0.479000 0.839000 0.547000 0.219000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-135">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-135">
+								<gml:posList srsDimension="3">0.219000 0.535000 0.520000 0.219000 0.840000 0.520000 0.479000 0.839000 0.520000 0.479000 0.535000 0.520000 0.219000 0.535000 0.520000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-136">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-136">
+								<gml:posList srsDimension="3">0.219000 0.535000 0.547000 0.219000 0.840000 0.547000 0.219000 0.840000 0.520000 0.219000 0.535000 0.520000 0.219000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-137">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-137">
+								<gml:posList srsDimension="3">0.219000 0.840000 0.547000 0.479000 0.839000 0.547000 0.479000 0.839000 0.520000 0.219000 0.840000 0.520000 0.219000 0.840000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-138">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-138">
+								<gml:posList srsDimension="3">0.479000 0.839000 0.547000 0.479000 0.535000 0.547000 0.479000 0.535000 0.520000 0.479000 0.839000 0.520000 0.479000 0.839000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-139">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-139">
+								<gml:posList srsDimension="3">0.479000 0.535000 0.547000 0.219000 0.535000 0.547000 0.219000 0.535000 0.520000 0.479000 0.535000 0.520000 0.479000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-140">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-140">
+								<gml:posList srsDimension="3">0.839000 0.859000 0.504000 0.839000 0.535000 0.504000 0.839000 0.535000 0.547000 0.839000 0.859000 0.547000 0.839000 0.859000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-141">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-141">
+								<gml:posList srsDimension="3">0.564000 0.839000 0.547000 0.824000 0.839000 0.547000 0.824000 0.839000 0.520000 0.564000 0.839000 0.520000 0.564000 0.839000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-142">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-142">
+								<gml:posList srsDimension="3">0.564000 0.535000 0.520000 0.564000 0.839000 0.520000 0.824000 0.839000 0.520000 0.824000 0.535000 0.520000 0.564000 0.535000 0.520000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-143">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-143">
+								<gml:posList srsDimension="3">0.564000 0.535000 0.547000 0.564000 0.839000 0.547000 0.564000 0.839000 0.520000 0.564000 0.535000 0.520000 0.564000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-144">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-144">
+								<gml:posList srsDimension="3">0.824000 0.535000 0.547000 0.564000 0.535000 0.547000 0.564000 0.535000 0.520000 0.824000 0.535000 0.520000 0.824000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-145">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-145">
+								<gml:posList srsDimension="3">0.824000 0.839000 0.547000 0.824000 0.535000 0.547000 0.824000 0.535000 0.520000 0.824000 0.839000 0.520000 0.824000 0.839000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-146">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-146">
+								<gml:posList srsDimension="3">0.564000 0.839000 0.547000 0.564000 0.535000 0.547000 0.824000 0.535000 0.547000 0.824000 0.839000 0.547000 0.564000 0.839000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-147">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-147">
+								<gml:posList srsDimension="3">0.911000 0.839000 0.547000 0.910000 0.535000 0.547000 1.170000 0.534000 0.547000 1.171000 0.839000 0.547000 0.911000 0.839000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-148">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-148">
+								<gml:posList srsDimension="3">1.171000 0.839000 0.547000 1.170000 0.534000 0.547000 1.170000 0.534000 0.520000 1.171000 0.839000 0.520000 1.171000 0.839000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-149">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-149">
+								<gml:posList srsDimension="3">0.910000 0.535000 0.520000 0.911000 0.839000 0.520000 1.171000 0.839000 0.520000 1.170000 0.534000 0.520000 0.910000 0.535000 0.520000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-150">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-150">
+								<gml:posList srsDimension="3">1.170000 0.534000 0.547000 0.910000 0.535000 0.547000 0.910000 0.535000 0.520000 1.170000 0.534000 0.520000 1.170000 0.534000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-151">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-151">
+								<gml:posList srsDimension="3">0.911000 0.839000 0.547000 1.171000 0.839000 0.547000 1.171000 0.839000 0.520000 0.911000 0.839000 0.520000 0.911000 0.839000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-152">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-152">
+								<gml:posList srsDimension="3">0.910000 0.535000 0.547000 0.911000 0.839000 0.547000 0.911000 0.839000 0.520000 0.910000 0.535000 0.520000 0.910000 0.535000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-153">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-153">
+								<gml:posList srsDimension="3">1.242000 0.534000 0.504000 1.243000 0.859000 0.504000 1.243000 0.859000 0.547000 1.242000 0.534000 0.547000 1.242000 0.534000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-154">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-154">
+								<gml:posList srsDimension="3">0.889000 0.859000 0.547000 0.889000 0.859000 0.504000 0.839000 0.859000 0.504000 0.839000 0.859000 0.547000 0.889000 0.859000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-155">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-155">
+								<gml:posList srsDimension="3">0.549000 0.859000 0.547000 0.549000 0.859000 0.504000 0.499000 0.859000 0.504000 0.499000 0.859000 0.547000 0.549000 0.859000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-156">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-156">
+								<gml:posList srsDimension="3">1.243000 0.859000 0.504000 1.193000 0.859000 0.504000 1.193000 0.859000 0.547000 1.243000 0.859000 0.547000 1.243000 0.859000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-157">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-157">
+								<gml:posList srsDimension="3">0.199000 0.860000 0.504000 0.149000 0.860000 0.504000 0.149000 0.860000 0.547000 0.199000 0.860000 0.547000 0.199000 0.860000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-158">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-158">
+								<gml:posList srsDimension="3">0.149000 0.860000 0.504000 0.199000 0.860000 0.504000 0.499000 0.859000 0.504000 0.549000 0.859000 0.504000 0.839000 0.859000 0.504000 0.889000 0.859000 0.504000 1.193000 0.859000 0.504000 1.243000 0.859000 0.504000 1.343000 0.859000 0.504000 1.343000 0.859000 0.300000 0.049000 0.860000 0.300000 0.049000 0.860000 0.504000 0.149000 0.860000 0.504000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-159">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-159">
+								<gml:posList srsDimension="3">0.549000 0.859000 0.547000 0.549000 0.859000 0.504000 0.839000 0.859000 0.504000 0.839000 0.859000 0.547000 0.549000 0.859000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-160">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-160">
+								<gml:posList srsDimension="3">0.199000 0.860000 0.547000 0.199000 0.860000 0.504000 0.499000 0.859000 0.504000 0.499000 0.859000 0.547000 0.199000 0.860000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-161">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-161">
+								<gml:posList srsDimension="3">0.889000 0.859000 0.547000 0.889000 0.859000 0.504000 1.193000 0.859000 0.504000 1.193000 0.859000 0.547000 0.889000 0.859000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-162">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-162">
+								<gml:posList srsDimension="3">1.243000 0.859000 0.547000 1.243000 0.859000 0.504000 1.343000 0.859000 0.504000 1.343000 0.859000 0.547000 1.243000 0.859000 0.547000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+				<gml:surfaceMember>
+					<gml:Polygon gml:id="PolyIDGeo-163">
+						<gml:exterior>
+							<gml:LinearRing gml:id="ringID-163">
+								<gml:posList srsDimension="3">1.343000 0.859000 2.100000 1.343000 0.859000 0.547000 1.243000 0.859000 0.547000 1.193000 0.859000 0.547000 0.889000 0.859000 0.547000 0.839000 0.859000 0.547000 0.549000 0.859000 0.547000 0.499000 0.859000 0.547000 0.199000 0.860000 0.547000 0.149000 0.860000 0.547000 0.049000 0.860000 0.547000 0.049000 0.860000 2.100000 1.343000 0.859000 2.100000 </gml:posList>
+							</gml:LinearRing>
+						</gml:exterior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-163_1">
+								<gml:posList srsDimension="3">1.245000 0.859000 1.182000 0.154000 0.860000 1.182000 0.154000 0.860000 1.132000 1.245000 0.859000 1.132000 1.245000 0.859000 1.182000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+						<gml:interior>
+							<gml:LinearRing gml:id="ringID-163_2">
+								<gml:posList srsDimension="3">0.154000 0.860000 1.282000 0.154000 0.860000 1.232000 1.245000 0.859000 1.232000 1.245000 0.859000 1.282000 0.154000 0.860000 1.282000 </gml:posList>
+							</gml:LinearRing>
+						</gml:interior>
+					</gml:Polygon>
+				</gml:surfaceMember>
+			</gml:MultiSurface>
+		</gen:lod2Geometry>
+	</gen:GenericCityObject>
+</core:cityObjectMember>
+</core:CityModel>
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive.zip b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive.zip
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive.zip
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive.zip
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive/mock1.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive/mock1.gml
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive/mock1.gml
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive/mock1.gml
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive/mock2.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive/mock2.gml
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive/mock2.gml
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive/mock2.gml
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive/mock3.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive/mock3.gml
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive/mock3.gml
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive/mock3.gml
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive/mock4.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive/mock4.gml
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive/mock4.gml
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive/mock4.gml
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive/mock5.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive/mock5.gml
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/mock_archive/mock5.gml
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/mock_archive/mock5.gml
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/validate.zip b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/validate.zip
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/validate.zip
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/validate.zip
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/validate/valCorrect.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/validate/valCorrect.gml
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/validate/valCorrect.gml
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/validate/valCorrect.gml
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/validate/valFaulty.gml b/CityDoctorParent/CityDoctorModel/src/test/resources/zip/validate/valFaulty.gml
similarity index 100%
rename from CityDoctorParent/Extensions/CityDoctorZipLoader/src/test/resources/validate/valFaulty.gml
rename to CityDoctorParent/CityDoctorModel/src/test/resources/zip/validate/valFaulty.gml
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/pom.xml b/CityDoctorParent/Extensions/CityDoctorZipLoader/pom.xml
deleted file mode 100644
index 84fc7de..0000000
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/pom.xml
+++ /dev/null
@@ -1,194 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>de.hft.stuttgart</groupId>
-        <artifactId>CityDoctorParent</artifactId>
-        <version>3.16.0</version>
-        <relativePath>../../pom.xml</relativePath>
-    </parent>
-    <artifactId>CityDoctorZipLoader</artifactId>
-    <name>CityDoctorZipLoader</name>
-    <description>ZipLoader enables the loading and parsing of zip archives</description>
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-jar-plugin</artifactId>
-                <version>3.2.0</version>
-            </plugin>
-        </plugins>
-    </build>
-    <dependencies>
-        <dependency>
-            <groupId>de.hft.stuttgart</groupId>
-            <artifactId>CityDoctorModel</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>de.hft.stuttgart</groupId>
-            <artifactId>CityDoctorValidation</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-api</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.logging.log4j</groupId>
-            <artifactId>log4j-slf4j18-impl</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>de.hft.stuttgart</groupId>
-            <artifactId>CityDoctorGUI</artifactId>
-        </dependency>
-    </dependencies>
-    <profiles>
-        <profile>
-            <id>create-binaries</id>
-            <properties>
-                <win-jre>jre-${jre-version-short}</win-jre>
-                <lin-jre>${win-jre}</lin-jre>
-                <mac-jre>${win-jre}.jre</mac-jre>
-            </properties>
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>com.googlecode.maven-download-plugin</groupId>
-                        <artifactId>download-maven-plugin</artifactId>
-                        <version>1.7.0</version>
-                        <executions>
-                            <execution>
-                                <id>downloadWindowsJre</id>
-                                <phase>install</phase>
-                                <goals>
-                                    <goal>wget</goal>
-                                </goals>
-                                <configuration>
-                                    <uri>https://download.bell-sw.com/java/${jre-version}/bellsoft-jre${jre-version}-windows-amd64.zip</uri>
-                                    <unpack>false</unpack>
-                                    <outputDirectory>${project.build.directory}/jre/jre-win</outputDirectory>
-                                    <outputFileName>win-runtime.zip</outputFileName>
-                                </configuration>
-                            </execution>
-                            <execution>
-                                <id>downloadLinuxJre</id>
-                                <phase>install</phase>
-                                <goals>
-                                    <goal>wget</goal>
-                                </goals>
-                                <configuration>
-                                    <uri>https://download.bell-sw.com/java/${jre-version}/bellsoft-jre${jre-version}-linux-amd64.tar.gz</uri>
-                                    <unpack>false</unpack>
-                                    <outputDirectory>${project.build.directory}/jre/jre-lin</outputDirectory>
-                                    <outputFileName>lin-runtime.tar.gz</outputFileName>
-                                </configuration>
-                            </execution>
-                            <execution>
-                                <id>downloadMacJre</id>
-                                <phase>install</phase>
-                                <goals>
-                                    <goal>wget</goal>
-                                </goals>
-                                <configuration>
-                                    <uri>https://download.bell-sw.com/java/${jre-version}/bellsoft-jre${jre-version}-macos-amd64.zip</uri>
-                                    <unpack>false</unpack>
-                                    <outputDirectory>${project.build.directory}/jre/jre-mac</outputDirectory>
-                                    <outputFileName>mac-runtime.zip</outputFileName>
-                                </configuration>
-                            </execution>
-                        </executions>
-                    </plugin>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-antrun-plugin</artifactId>
-                        <version>3.1.0</version>
-                        <executions>
-                            <execution>
-                                <id>unpack</id>
-                                <phase>install</phase>
-                                <configuration>
-                                    <target name="unpack">
-                                        <untar src="${project.build.directory}/jre/jre-lin/lin-runtime.tar.gz" dest="${project.build.directory}/jre/jre-lin/runtime" compression="gzip"></untar>
-                                        <unzip src="${project.build.directory}/jre/jre-win/win-runtime.zip" dest="${project.build.directory}/jre/jre-win/runtime"></unzip>
-                                        <unzip src="${project.build.directory}/jre/jre-mac/mac-runtime.zip" dest="${project.build.directory}/jre/jre-mac/runtime"></unzip>
-                                    </target>
-                                </configuration>
-                                <goals>
-                                    <goal>run</goal>
-                                </goals>
-                            </execution>
-                        </executions>
-                    </plugin>
-                    <plugin>
-                        <artifactId>maven-assembly-plugin</artifactId>
-                        <configuration>
-                            <appendAssemblyId>false</appendAssemblyId>
-                        </configuration>
-                        <executions>
-                            <execution>
-                                <id>create-archive-no-runtime</id>
-                                <phase>install</phase>
-                                <goals>
-                                    <goal>single</goal>
-                                </goals>
-                                <configuration>
-                                    <finalName>${project.artifactId}-${project.version}-no-runtime</finalName>
-                                    <descriptors>
-                                        <descriptor>${project.basedir}/src/assembly/no_runtime/assembly.xml</descriptor>
-                                    </descriptors>
-                                </configuration>
-                            </execution>
-                            <execution>
-                                <id>create-archive-win</id>
-                                <phase>install</phase>
-                                <goals>
-                                    <goal>single</goal>
-                                </goals>
-                                <configuration>
-                                    <finalName>${project.artifactId}-${project.version}-win</finalName>
-                                    <descriptors>
-                                        <descriptor>${project.basedir}/src/assembly/win/assembly.xml</descriptor>
-                                    </descriptors>
-                                </configuration>
-                            </execution>
-                            <execution>
-                                <id>create-archive-lin</id>
-                                <phase>install</phase>
-                                <goals>
-                                    <goal>single</goal>
-                                </goals>
-                                <configuration>
-                                    <finalName>${project.artifactId}-${project.version}-lin</finalName>
-                                    <descriptors>
-                                        <descriptor>${project.basedir}/src/assembly/lin/assembly.xml</descriptor>
-                                    </descriptors>
-                                </configuration>
-                            </execution>
-                            <execution>
-                                <id>create-archive-mac</id>
-                                <phase>install</phase>
-                                <goals>
-                                    <goal>single</goal>
-                                </goals>
-                                <configuration>
-                                    <finalName>${project.artifactId}-${project.version}-mac</finalName>
-                                    <descriptors>
-                                        <descriptor>${project.basedir}/src/assembly/mac/assembly.xml</descriptor>
-                                    </descriptors>
-                                </configuration>
-                            </execution>
-                        </executions>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-    </profiles>
-</project>
\ No newline at end of file
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/CityGmlZipEntry.java b/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/CityGmlZipEntry.java
deleted file mode 100644
index b25ab71..0000000
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/CityGmlZipEntry.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package de.hft.stuttgart.citydoctor2.ziploader;
-
-import de.hft.stuttgart.citydoctor2.check.Checker;
-import de.hft.stuttgart.citydoctor2.datastructure.CityDoctorModel;
-import de.hft.stuttgart.citydoctor2.parser.CityGmlParseException;
-import de.hft.stuttgart.citydoctor2.parser.CityGmlParser;
-import de.hft.stuttgart.citydoctor2.parser.InvalidGmlFileException;
-import de.hft.stuttgart.citydoctor2.parser.ParserConfiguration;
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipFile;
-
-public class CityGmlZipEntry {
-
-    private static final Logger logger = LogManager.getLogger(CityGmlZipEntry.class);
-
-    private final String fileName;
-    private final CityDoctorModel model;
-    private CityGmlArchive parentArchive;
-    private boolean validated = false;
-    private ZipEntryErrorType errorType = null;
-
-
-    public static CityGmlZipEntry of(ZipEntry entry, ZipFile archive, ParserConfiguration config){
-        if ((double) entry.getSize() /1024/1024 > 20) {
-            return new ErroneousEntry(entry, ZipEntryErrorType.EXCESSIVE_FILESIZE);
-        } else {
-            try {
-                CityGmlParser.gagLogger(true);
-                CityDoctorModel model = CityGmlParser.parseCityGmlZipEntry(entry, archive, config);
-                return new CityGmlZipEntry(entry, model);
-            } catch (CityGmlParseException | InvalidGmlFileException e) {
-                logger.error(e);
-                return new ErroneousEntry(entry, ZipEntryErrorType.INVALID_CITY_GML_FILE);
-            } catch (IOException e){
-                logger.error(e);
-                return new ErroneousEntry(entry, ZipEntryErrorType.IO_ERROR);
-            }
-        }
-    }
-
-    private CityGmlZipEntry(ZipEntry entry, CityDoctorModel model){
-        this.fileName = entry.getName().substring(entry.getName().lastIndexOf('/') + 1);
-        this.model = model;
-    }
-
-    protected CityGmlZipEntry(ZipEntry entry) {
-        this.fileName = entry.getName().substring(entry.getName().lastIndexOf('/') + 1);
-        this.model = null;
-    }
-
-    public void setArchive(CityGmlArchive archive){
-        parentArchive = archive;
-    }
-
-    public CityGmlArchive getArchive(){
-        return parentArchive;
-    }
-
-    public void validateModel(){
-        Checker checker = new Checker(this.getModel());
-        checker.runChecks();
-        validated = true;
-    }
-
-    public boolean isValidated(){
-        return validated;
-    }
-
-    public String getFileName() {
-        return fileName;
-    }
-
-    public CityDoctorModel getModel() {
-        return model;
-    }
-
-}
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/ZipParser.java b/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/ZipParser.java
deleted file mode 100644
index b50d35b..0000000
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/ZipParser.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package de.hft.stuttgart.citydoctor2.ziploader;
-
-import de.hft.stuttgart.citydoctor2.parser.ParserConfiguration;
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
-
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.List;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipFile;
-
-public class ZipParser {
-
-    private static final Logger logger = LogManager.getLogger(ZipParser.class);
-
-
-
-}
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderController.java b/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderController.java
deleted file mode 100644
index 9264205..0000000
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderController.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package de.hft.stuttgart.citydoctor2.ziploader.gui;
-
-import de.hft.stuttgart.citydoctor2.parser.ParserConfiguration;
-import de.hft.stuttgart.citydoctor2.ziploader.CityGmlArchive;
-import javafx.stage.FileChooser;
-
-import java.io.File;
-
-public class ZipLoaderController {
-
-    private ZipLoaderView zipLoaderView;
-    private ParserConfiguration config;
-    private CityGmlArchive archive;
-
-    public ZipLoaderController(ZipLoaderView zipLoaderView) {
-        this.zipLoaderView = zipLoaderView;
-
-    }
-
-    public void openZipArchive(File file){
-        archive = CityGmlArchive.fromZipFile(file.getPath(), config);
-
-    }
-}
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderGUI.java b/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderGUI.java
deleted file mode 100644
index 03ea9af..0000000
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderGUI.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package de.hft.stuttgart.citydoctor2.ziploader.gui;
-
-import de.hft.stuttgart.citydoctor2.gui.MainWindow;
-import de.hft.stuttgart.citydoctor2.gui.ViewRegistration;
-
-public class ZipLoaderGUI {
-
-    public static void main(String[] args) {
-        ViewRegistration.registerView(new ZipLoaderView());
-        MainWindow.main(args);
-    }
-}
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderToolbar.java b/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderToolbar.java
deleted file mode 100644
index a1b00c3..0000000
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderToolbar.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package de.hft.stuttgart.citydoctor2.ziploader.gui;
-
-import de.hft.stuttgart.citydoctor2.gui.MainWindow;
-
-public class ZipLoaderToolbar {
-    public ZipLoaderToolbar(ZipLoaderController controller, MainWindow mainWindow) {
-
-    }
-}
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderView.java b/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderView.java
deleted file mode 100644
index 32860e1..0000000
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/java/de/hft/stuttgart/citydoctor2/ziploader/gui/ZipLoaderView.java
+++ /dev/null
@@ -1,86 +0,0 @@
-package de.hft.stuttgart.citydoctor2.ziploader.gui;
-
-import de.hft.stuttgart.citydoctor2.check.Checker;
-import de.hft.stuttgart.citydoctor2.datastructure.CityDoctorModel;
-import de.hft.stuttgart.citydoctor2.gui.MainWindow;
-import de.hft.stuttgart.citydoctor2.gui.View;
-import javafx.fxml.FXMLLoader;
-import javafx.scene.Node;
-import javafx.scene.image.Image;
-import javafx.scene.layout.HBox;
-import javafx.stage.FileChooser;
-import javafx.stage.Window;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.Optional;
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
-
-public class ZipLoaderView extends View{
-
-    private static final Logger logger = LogManager.getLogger(ZipLoaderView.class);
-
-    Image image;
-    private Window parent;
-    private Node zipLoaderWindow;
-    private ZipLoaderController controller;
-    private ZipLoaderToolbar toolbar;
-
-
-
-    public ZipLoaderView() {
-        image = new Image(getClass().getResourceAsStream("zip.png"));
-    }
-
-    @Override
-    public Optional<HBox> getToolbar() {
-        return Optional.empty();
-    }
-
-    @Override
-    public Node getMainScreen() {
-        return null;
-    }
-
-    @Override
-    public Image getViewLogo() {
-        return image;
-    }
-
-    @Override
-    public void initializeView(MainWindow mainWindow) {
-        this.parent = mainWindow.getMainStage();
-        FXMLLoader loader = new FXMLLoader(getClass().getResource("ZipLoaderGUI.fxml"));
-        loader.setController(this);
-        try {
-            zipLoaderWindow = loader.load();
-            controller = new ZipLoaderController(this);
-            toolbar = new ZipLoaderToolbar(controller, mainWindow);
-        } catch (IOException e) {
-            logger.catching(e);
-        }
-
-    }
-
-    @Override
-    public void onHide() {
-
-    }
-
-    @Override
-    public void onShow(CityDoctorModel model, Checker checker) {
-
-    }
-
-    private void openZipArchive(){
-        FileChooser fileChooser = new FileChooser();
-        fileChooser.setTitle("Open ZIP-file");
-        fileChooser.getExtensionFilters().add(
-                new FileChooser.ExtensionFilter("Zip File", "*.zip"));
-        File selectedFile = fileChooser.showOpenDialog(parent);
-        if(selectedFile != null){
-            controller.openZipArchive(selectedFile);
-        }
-    }
-}
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/citydoctor_logo.ico b/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/citydoctor_logo.ico
deleted file mode 100644
index 3321b741356a9f40506da39dd8377c83e227d67a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 4286
zcmeH~SxA&o6vwam<s?B`q_ebH8C2A3NEm9AEfg)bK15L(Q7;uOWN5xfy%Z7AMh_7^
zR9aRq*<x8)kXRY?5<1@u>dd%RqvI?#%jujub3bJ4n{j3=2>OOI-<^BUJ-`3m?=Y5x
zpR6oK-|TieW0{PxxoDWh^3f=tKUnr=LePR4|L(Uzk_&Z`@e3KH|5i)1<IFR)lCcK4
zFw`*bK9&7B9WX{K$)(726L-!e6I?!Lhf8PeJRQ>FLLDa<gE6D2!@#~y)=BbXV(7;j
zp=4VpSlYZGo-UgYj_m6JLyFQTbs5a08x0NGv8Ej4wiA2d6f?Z8a|!IQcl|RLEHIeG
zxU^H<L^K#AV=lJWLG1Mf7O+`-!<gY2JzYN7vcf7fICWBMK|C6?QtMLWVtpeVD((ia
zHxQ0e{Y}0H_jGd&s2^jr<j0~RL(`g#TsyH3mvn>QuZmJF2%y~K2YR>$oRdE?H7&D8
zqG2j)Pt{AtW@7K%-U$>Z-iLG-Z|xKsK2hvw8jxE-?8S52puaDUhKGqAaQI=#f;KT9
z$|Lb7GqWDqPFiD)@7!UL;{W-+!Ohn##vX{YE^)4wQQLQK?u;L%Qgc^Pa2)iKd{V6s
zko|%9ub!)~ah32<v+JL_#27S1;CqQb=t*GGsVMQd1A_lE0-yV+gh)7>+D7)D|N9;g
z{gZG<s{|17e@|yjlqa(1si65jD&j}uZ!WaLm*zpWP%-B>H+lH^IZ{6P(H=<WX!R`z
z^!<o^AGUw@!`++xP_#@ri^ckjI{zz<_QLFRlj1*hoD3^-I^fv;9=Lwd4z-V*(D>F3
zpFeoGQTp-20l0R-&V33Ob-)yjau<T^i6*El{iei=*8kMO)aDyk`e4&?D@;q3mAax2
zqrIn(mwEr)y56sxW1`MT_(KQTIS_z`moB(^KG?n;>uj)gi3O;gWNUIQuyccrpZDbR
z?v)!{&f$A#y!@eB5=oDgPxsl;ekf*izT8VbG<FAecEQUhu7u8_pMwE-QS0QfC}xQ7
zQyu@5mig#Yh2{_W@^!FnwG~d6eS-&g9PqKx1J-u0GN-7Y=$>Tj@ba>n+YUHW{vEci
zvcjx1g-L9RS*1@g&r{=zd>u1op>H|f8$SshalQkgyJR`V6!BwuXEIr<Pc|0mrPfN+
za1Z|neMDUynCAZrLc03#?qtDq6IwO-Vx5hV?pm>E_>;bTp8N6u>}de?$p95efEy$P
b7(0a%CC|gy3_D|KWM;-RqhS=281(!CmHv7&

diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zip.png b/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zip.png
deleted file mode 100644
index acdf663537eb5b282f5b563ac4d75e9951598c7e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 852
zcmV-a1FQUrP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80009UNkl<ZSVzT|
z-)qxQ6vyvP(**k~O=M#Z6sAmvAmW~;Oqg>o!d{g5<5fiGAK;THIuIZH3sig-M19l;
z!QaYInD~ncqWCh9p*BgYwJapp?_Ha%bV<|Rwl*)fN$$Dd&pG#;b5lyXe9<oJla>II
z$z)$V9v=#G!t=a^d_MoBo|8fVTv$=$o0QUhQ4wT}d~{v!U>Hc#09;&E<!6M@!HW1i
zM1BN=u#JG+jQ96U)0zyL(-c4|mFiWL*o!K0;=1gxZQFN(7SCidhAd0J@GhUrSz1c~
z5buFF_k4&k_6CbB!n*_Y0JxxGWEmd;5a?_}5m+lOjZ^B~0L&C2>_{$W-ww-#mI2CP
zq%X^!lMfj8nx<(Rh6d3N190(JOnO2o*}=t;&11;sTsgEI1~3egVN8QK-Bl|NeO1@9
zuK>1_F?ZB73y4tgCA<Z?u3d%rbp1MKpRoVKm{V#y0LTkiG!?S&A0*!c$MH@U3I$$f
zp_gz3q70)tp#MH<ozOCjGVCfqB9YjjD9W}*AS8)A=JPy{@N>hoEbCphUDFXjWM<F_
z&m%z_YGP|4*=r>39z1vXI}v~)?ACE(fXrfvr7DpD{Qd^Cttj2ktIyd8cvb%%?R!7Y
zk4K^a%e|dnrP5M=u~_`>-=lOdp-G<OC5-X3|6J3wEs{j%0JeM}Ri7Us5m*7J2>f*%
zcUYE54<XVFgvSAJ9pfo<OMYI&a1b3w<9ZH&(Y6D?n<>X}W>q!*7Gm=__s0Nm4FJ<<
z<%6=EU-Z1Jj%0if@l0C*kONnE$l)nJrbn>vPpbj&{0w7s5}xyqm;S08Sowx%X$t~!
z;4*;D`VpvX!HL>RXekG<mzJMQQB^=GL$9EH0RR)If`_72a1n+VY8P$%p3R{T?8baY
z2!I>?uTGeURvIl-NBguI_i%M)I-Oo0kH>x@Ic+3oHfW7HNvPe${vE<Tf5o^U0)Sq*
z2_0|%YurL|9%~9fM=ImP6QA33LQK4D1@Ze3KZ>8fn*#7B8%Aoo=gGYy5FPt#CIS;?
eBY32?58)qayW23$l>cu40000<MNUMnLSTYy41%Tr

diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zipLoaderGUI.fxml b/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zipLoaderGUI.fxml
deleted file mode 100644
index c00817e..0000000
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zipLoaderGUI.fxml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<?import javafx.scene.control.ScrollPane?>
-<?import javafx.scene.control.SplitPane?>
-<?import javafx.scene.control.TreeView?>
-<?import javafx.scene.layout.AnchorPane?>
-<?import javafx.scene.layout.VBox?>
-
-
-<VBox maxHeight="534.0" maxWidth="833.0" prefHeight="534.0" prefWidth="833.0" xmlns="http://javafx.com/javafx/22" xmlns:fx="http://javafx.com/fxml/1">
-   <children>
-      <SplitPane dividerPositions="0.48736462093862815" prefHeight="487.0" prefWidth="833.0">
-        <items>
-          <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="160.0" prefWidth="100.0">
-               <children>
-                  <ScrollPane prefHeight="534.0" prefWidth="402.0">
-                     <content>
-                        <TreeView prefHeight="482.0" prefWidth="400.0" />
-                     </content>
-                  </ScrollPane>
-               </children>
-            </AnchorPane>
-          <AnchorPane minHeight="0.0" minWidth="0.0" SplitPane.resizableWithParent="false">
-               <children>
-                  <TreeView prefHeight="482.0" prefWidth="423.0" />
-               </children>
-            </AnchorPane>
-        </items>
-      </SplitPane>
-   </children>
-</VBox>
diff --git a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zipLoaderToolbar.fxml b/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zipLoaderToolbar.fxml
deleted file mode 100644
index e70be18..0000000
--- a/CityDoctorParent/Extensions/CityDoctorZipLoader/src/main/resources/de/hft/stuttgart/citydoctor2/ziploader/gui/zipLoaderToolbar.fxml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<?import javafx.geometry.Insets?>
-<?import javafx.scene.control.Button?>
-<?import javafx.scene.control.Separator?>
-<?import javafx.scene.control.ToggleButton?>
-<?import javafx.scene.image.ImageView?>
-<?import javafx.scene.layout.HBox?>
-
-<HBox maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" spacing="5.0" xmlns="http://javafx.com/javafx/22" xmlns:fx="http://javafx.com/fxml/1">
-   <children>
-      <ToggleButton fx:id="openZipBtn" mnemonicParsing="false" selected="true">
-         <graphic>
-            <ImageView fx:id="openZipImage" fitHeight="32.0" fitWidth="32.0" pickOnBounds="true" preserveRatio="true" />
-         </graphic>
-      </ToggleButton>
-      <ToggleButton fx:id="loadEntryBtn" mnemonicParsing="false">
-         <graphic>
-            <ImageView fx:id="loadEntryImage" fitHeight="32.0" fitWidth="32.0" pickOnBounds="true" preserveRatio="true" />
-         </graphic>
-      </ToggleButton>
-      <Separator orientation="VERTICAL" />
-      <HBox fx:id="spacer" maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" minWidth="0.0" />
-      <Button fx:id="exportZipBtn" mnemonicParsing="false">
-         <graphic>
-            <ImageView fx:id="exportZipImage" fitHeight="32.0" fitWidth="32.0" pickOnBounds="true" preserveRatio="true" />
-         </graphic>
-      </Button>
-   </children>
-   <padding>
-      <Insets bottom="5.0" left="5.0" right="5.0" top="5.0" />
-   </padding>
-</HBox>
diff --git a/CityDoctorParent/pom.xml b/CityDoctorParent/pom.xml
index 97fa576..60fc050 100644
--- a/CityDoctorParent/pom.xml
+++ b/CityDoctorParent/pom.xml
@@ -264,7 +264,6 @@
 
         <!--CityDoctor2 Extension Modules-->
         <module>Extensions/CityDoctorGUI</module>
-        <module>Extensions/CityDoctorZipLoader</module>
         <module>Extensions/CityDoctorAutoPro</module>
         <module>Extensions/CityDoctorHealer</module>
         <module>Extensions/CityDoctorHealerGenetic</module>
-- 
GitLab