From 52978bfd98c84e82022cf1e183e03d4a8dc23283 Mon Sep 17 00:00:00 2001
From: Nie <yni@eonerc.rwth-aachen.de>
Date: Mon, 6 Feb 2023 11:22:04 +0100
Subject: [PATCH] tool and example for network generation

---
 network/district.py      |  492 ++++
 network/overpass.geojson | 5245 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 5737 insertions(+)
 create mode 100644 network/district.py
 create mode 100644 network/overpass.geojson

diff --git a/network/district.py b/network/district.py
new file mode 100644
index 0000000..79df426
--- /dev/null
+++ b/network/district.py
@@ -0,0 +1,492 @@
+"""Develop on the project uesgraph from RWTH Aachen University,
+E.ON Energy Research Center, Institute for Energy Efficient Buildings and
+Indoor Climate.
+The district object used a updated coordinate system with the unit of meter.
+"""
+import os
+import numpy as np
+import networkx as nx
+import pyproj
+import shapely.geometry as sg
+import shapely.ops as ops
+from shapely.prepared import prep
+import geopandas as gpd
+import matplotlib.pyplot as plt
+import momepy
+from itertools import combinations
+
+
+def latlon2abs(geometry, lat1, lat2):
+    """Convert a geometry object from lat/lon to absolute coords.
+
+    Taken from http://gis.stackexchange.com/questions/127607/
+
+    Parameters
+    ----------
+    geometry : a shapely geometry object
+    lat1 : float
+        First reference latitude
+    lat 2 : float
+        Second reference latitude
+
+    Returns
+    -------
+    converted : a shapely geometry object
+    """
+    proj_4326_crs = pyproj.crs.CRS("epsg:4326")
+    proj_from_latlat_crs = pyproj.crs.CRS(proj="aea", lat_1=lat1, lat_2=lat2)
+    transformer = pyproj.Transformer.from_crs(
+        proj_4326_crs,
+        proj_from_latlat_crs,
+        always_xy=True).transform
+
+    converted = ops.transform(transformer, geometry)
+
+    return converted
+
+
+def shapely_insert_point(point, line):
+    """Add a shapely point into shapely linestring. The point should be
+    contained by the line. In the transformation of roads in map could change
+    the form of road, in some situation the intersection point of two road
+    is not described in the linestring. After the transformation the
+    information is loss. The handling of the data could use Shapely methods
+    and attributes, it provides lot of analysis tool.
+    This method is not finished, because the crs transformation method could
+    avoid the problem. Remain this method just for backup and would be
+    deleted for stable version."""
+    if line.contains(point):
+        # if contains, means the point is already on the line, nothing need
+        # to be changed.
+        print('the line contains point')
+    else:
+        pass
+
+
+def shapely_split_street(street, other_pt_list=None):
+    """The osm generated street contains multiple points, this method split
+    the street into multipel lines with these points. So that by generation
+    of network, the whole street could be changed into edge."""
+    shapely_pt_list = []
+    # print(street)
+    if isinstance(street, sg.LineString):
+        for point in street.coords:
+            shapely_pt_list.append(sg.Point(point))
+    elif isinstance(street, sg.MultiLineString):
+        for line in street:
+            for point in line.coords:
+                shapely_pt_list.append(sg.Point(point))
+
+    if other_pt_list is not None:
+        shapely_pt_list += other_pt_list
+
+    for pt in shapely_pt_list:
+        split_list = ops.split(street, pt)
+        street = sg.MultiLineString(split_list.geoms)
+    # print(street)
+    return street
+
+
+def nx_search_subgraph(graph, node_list):
+    """Use networkx method to find a subgraph containing all nodes (
+    buildings) in between. The code comes from
+    https://stackoverflow.com/questions/61929188/get-networkx-subgraph-containing-all-nodes-in-between
+    """
+    # paths = {}
+    # for nodes in combinations(node_list, r=2):
+    #     paths[nodes] = nx.shortest_path_length(graph, *nodes)
+    #
+    # max_path = max(paths.items(), key=lambda x: x[1])[0]
+    # longest_induced_path = nx.shortest_path(graph, *max_path)
+
+    H = nx.MultiGraph()
+    for nodes in combinations(node_list, r=2):
+        shortest_path = nx.shortest_path(graph, *nodes, weight='mm_len')
+        sG = nx.subgraph(graph, shortest_path)
+        H = nx.compose(sG, H)
+    # nx.draw(H, {n: [n[0], n[1]] for n in list(H.nodes)})
+    # plt.show()
+
+    return H
+
+
+class District(nx.Graph):
+    """
+    Contains buildings and streets, could generate the minimum spanning
+    tree for energy network.
+    Buildings are polygon.
+    Streets are multiple lines.
+    """
+
+    def __init__(self):
+        super().__init__()
+        self.buildings = None
+        self.streets = None
+
+        self.min_lat = None
+        self.min_lon = None
+        self.max_lat = None
+        self.max_lon = None
+
+    def read_osm(self, osm_file):
+        """using geopands to import buildings and streets from OpenStreetMap
+        data"""
+        roh_data = gpd.read_file((osm_file))
+
+        # Filter buildings with building column. If some specific building
+        # type like garage are not wanted, filter condition could be changed.
+        self.buildings = roh_data[roh_data['building'].notnull()]
+        # print(self.buildings)
+
+        # Filter roads, same as building dataframe, the specific road type
+        # could be used as additional condition.
+        self.streets = roh_data[roh_data['building'].isnull()]
+        # print(self.streets)
+
+    def crs_trans(self, adj_precision=False):
+        """Transform the coordination reference system into germany center
+        reference system, which use meter as the unit."""
+        self.buildings = self.buildings.to_crs(25832)
+        self.streets = self.streets.to_crs(25832)
+
+        # adjust precision for each point. The precision could cause problem
+        # at finding a point on the line. This way doesn't work as well. Just
+        # save as a backup.
+        if adj_precision:
+            for idx, bld in self.buildings.iterrows():
+                geojson = sg.mapping(bld['geometry'])
+                geojson['coordinates'] = np.round(np.array(
+                    geojson['coordinates']), 2)
+                self.buildings['geometry'][idx] = sg.shape(geojson)
+
+            for idx, street in self.streets.iterrows():
+                geojson = sg.mapping(street['geometry'])
+                geojson['coordinates'] = np.round(np.array(
+                    geojson['coordinates']), 2)
+                self.streets['geometry'][idx] = sg.shape(geojson)
+
+    def adj_pos(self):
+        """adjust the canvas position. Using the minimum latitude and
+        longitude as the zero point."""
+        min_lat_list = []
+        min_lon_list = []
+        max_lat_list = []
+        max_lon_list = []
+
+        for idx, bld in self.buildings.iterrows():
+            min_lat_list.append(bld['geometry'].bounds[0])
+            min_lon_list.append(bld['geometry'].bounds[1])
+            max_lat_list.append(bld['geometry'].bounds[2])
+            max_lon_list.append(bld['geometry'].bounds[3])
+
+        for idx, street in self.streets.iterrows():
+            min_lat_list.append(street['geometry'].bounds[0])
+            min_lon_list.append(street['geometry'].bounds[1])
+            max_lat_list.append(street['geometry'].bounds[2])
+            max_lon_list.append(street['geometry'].bounds[3])
+
+        self.min_lat = min(min_lat_list)
+        self.min_lon = min(min_lon_list)
+        self.max_lat = max(max_lat_list)
+        self.max_lon = max(max_lon_list)
+        # print(self.min_lat)
+        # print(self.min_lon)
+        # print(self.max_lat)
+        # print(self.max_lon)
+
+        # Adjust the coordinate of points in Polygon and LineString
+        for idx, bld in self.buildings.iterrows():
+            coords = bld['geometry'].exterior.coords[:]
+            for point_idx in range(len(coords)):
+                coords[point_idx] = (coords[point_idx][0] - self.min_lat,
+                                     coords[point_idx][1] - self.min_lon)
+            self.buildings['geometry'][idx] = sg.Polygon(coords)
+
+        for idx, street in self.streets.iterrows():
+            coords = street['geometry'].coords[:]
+            for point_idx in range(len(coords)):
+                coords[point_idx] = (coords[point_idx][0] - self.min_lat,
+                                     coords[point_idx][1] - self.min_lon)
+            self.streets['geometry'][idx] = sg.LineString(coords)
+
+    def line_to_multi(self):
+        """Turn the shapely LineString into MultiLineString, whose content
+        Lines are only consist of two point. By generation of networkx object
+        the lineString object might loss the information of points in line"""
+        for idx, street in self.streets.iterrows():
+            if isinstance(street['geometry'], sg.LineString):
+                self.streets['geometry'][idx] = \
+                    shapely_split_street(street['geometry'])
+            elif isinstance(street['geometry'], sg.MultiLineString):
+                new_seg_list = []
+                for line in street['geometry']:
+                    line_seg = shapely_split_street(line)
+                    new_seg_list += list(line_seg.geoms)
+                self.streets['geometry'][idx] = sg.MultiLineString(new_seg_list)
+
+    def merge_streets(self, other_streets_list=None):
+        """merge streets into a multilinestring."""
+        street_list = []
+        for street in self.streets['geometry']:
+            if isinstance(street, sg.MultiLineString):
+                for lines in street:
+                    street_list.append(lines)
+            elif isinstance(street, sg.LineString):
+                street_list.append(street)
+
+        if other_streets_list is not None:
+            for other_street in other_streets_list:
+                street_list.append(other_street)
+            return street_list
+        else:
+            return ops.linemerge(street_list)
+
+    def gen_network(self):
+        """Using the buildings and roads geographical information to generate
+        the shortest network, which is along the roads and connect all the
+        building to a possible network. In this method, the methods from
+        shapely for analysing graph are used."""
+
+        all_street = self.merge_streets()
+
+        # split the streets with the nearest points. Since the points might
+        # not on the line because of precision issue, using the two
+        # preliminary lines to split the original streets. Save the point on
+        # street to split the street later.
+        bld_street_list = []
+        bld_pt_list = []
+        bld_node_list = []
+        street_pt_list = []
+        for bld in self.buildings.centroid:
+            point_list = list(ops.nearest_points(all_street, bld))
+            bld_pt_list.append(point_list[1])
+            bld_node_list.append((point_list[1].x, point_list[1].y))
+
+            for idx, street_line in self.streets.iterrows():
+                street = None
+                seg_idx = 1
+                if isinstance(street_line['geometry'], sg.LineString):
+                    if point_list[0].buffer(0.01).intersection(
+                            street_line['geometry']):
+                        point_left = sg.Point(list(point_list[0].buffer(
+                            0.01).intersection(
+                            street_line['geometry'].parallel_offset(
+                                distance=0.001, side='left')).coords[0]))
+                        point_right = sg.Point(list(point_list[0].buffer(
+                            0.01).intersection(
+                            street_line['geometry'].parallel_offset(
+                                distance=0.001, side='right')).coords[0]))
+
+                        pre_street_left = sg.LineString([point_left, point_list[1]])
+                        pre_street_right = sg.LineString(
+                            [point_right, point_list[1]])
+                        if pre_street_left.crosses(street_line['geometry']):
+                            split_list = ops.split(street_line['geometry'],
+                                                   pre_street_left)
+                            street = sg.MultiLineString(split_list.geoms)
+                        elif pre_street_right.crosses(street_line['geometry']):
+                            split_list = ops.split(street_line['geometry'],
+                                                   pre_street_right)
+                            street = sg.MultiLineString(split_list.geoms)
+                elif isinstance(street_line['geometry'], sg.MultiLineString):
+                    line_seg_list = []
+                    connect_street = False
+                    seg_idx = 0
+                    for line in range(len(street_line['geometry'])):
+                        if point_list[0].buffer(0.01).intersection(
+                                street_line['geometry'][line]):
+                            connect_street = True
+                            seg_idx = line + 1
+                            point_left = sg.Point(list(point_list[0].buffer(
+                                0.01).intersection(
+                                street_line['geometry'][line].parallel_offset(
+                                    distance=0.001, side='left')).coords[0]))
+                            point_right = sg.Point(list(point_list[0].buffer(
+                                0.01).intersection(
+                                street_line['geometry'][line].parallel_offset(
+                                    distance=0.001, side='right')).coords[0]))
+
+                            pre_street_left = sg.LineString(
+                                [point_left, point_list[1]])
+                            pre_street_right = sg.LineString(
+                                [point_right, point_list[1]])
+                            if pre_street_left.crosses(street_line['geometry'][line]):
+                                split_list = ops.split(street_line['geometry'][line],
+                                                       pre_street_left)
+                                line_seg_list += split_list.geoms
+                            elif pre_street_right.crosses(
+                                    street_line['geometry'][line]):
+                                split_list = ops.split(street_line['geometry'][line],
+                                                       pre_street_right)
+                                line_seg_list += split_list.geoms
+                            # else:
+                            #     street = None
+                        else:
+                            line_seg_list.append(street_line['geometry'][line])
+
+                    if connect_street:
+                        street = sg.MultiLineString(line_seg_list)
+
+                if street:
+                    street_pt = sg.Point(list(list(street.geoms)[
+                                                  seg_idx].coords)[0])
+                    street_pt_list.append(street_pt)
+                    bld_street = sg.LineString((point_list[1], street_pt))
+                    bld_street_list.append(bld_street)
+                    self.streets['geometry'][idx] = street
+
+        self.line_to_multi()
+        print(bld_street_list)
+        print('##')
+        new_streets = self.merge_streets(bld_street_list)
+        street_df = gpd.GeoDataFrame({'geometry': new_streets},
+                                     crs=self.streets.crs,
+                                     geometry='geometry')
+
+        # plot the street segments
+        ##########################################
+        # fig, axs = plt.subplots(figsize=(12, 6))
+        # for geom in new_streets:
+        #     xs, ys = geom.xy
+        #     axs.plot(xs, ys)
+        # plt.show()
+
+        # use networkx to generate subgraph
+        # The package momepy could change the geopandas dataframe into a
+        # networkx object. The approach method for primal would only save the
+        # start and end point of the lines. These codes are not used in the
+        # current use case.
+        G = momepy.gdf_to_nx(street_df, approach="primal")
+        print(G.edges.data())
+        sG = nx_search_subgraph(G, bld_node_list)
+        # nodes, edges, sw = momepy.nx_to_gdf(sG, points=True, lines=True,
+        #                                     spatial_weights=True)
+
+        # print(nodes)
+        # print(edges)
+        # print(edges.length)
+        # f, ax = plt.subplots(figsize=(12, 6))
+        # nodes.plot(ax=ax, column='geometry', cmap='tab20b',
+        #            zorder=2)
+        # edges.plot(ax=ax, color='lightgrey', zorder=1)
+        # ax.set_axis_off()
+        # plt.show()
+
+        return sG
+
+    # not used, might be deleted later
+    def search_nearest_pt(self):
+        """find the nearest point of streets and each building. Merge the
+        streets at first and find the nearest point with shapely method."""
+        all_street = self.merge_streets()
+
+        # generate empty gdf to store the network points and the lines
+        # between building and street.
+        points_df = gpd.GeoDataFrame(crs=self.streets.crs, columns=['geometry'],
+                                     geometry='geometry')
+        lines_df = gpd.GeoDataFrame(crs=self.streets.crs, columns=['geometry'],
+                                    geometry='geometry')
+
+        # search the nearest point for buildings and streets.
+        for bld in self.buildings.centroid:
+            # point_list = list(ops.nearest_points(bld, all_street))
+            point_list = list(ops.nearest_points(all_street, bld))
+
+            # The nearest point is not on the line of street because of
+            # precision issues. Using buffer and intersection to find another
+            # point on the line.
+            # point_list[1] = sg.Point(list(point_list[1].buffer(
+            #     0.0001).intersection(all_street).coords[0]))
+            # point_list[1] = sg.Point(list(all_street.intersection(point_list[1].buffer(
+            #     0.0001)).coords[0]))
+            new_point_bld = gpd.GeoDataFrame(crs=self.streets.crs,
+                                             columns=['geometry'],
+                                             geometry=[point_list[0]])
+            new_point_street = gpd.GeoDataFrame(crs=self.streets.crs,
+                                                columns=['geometry'],
+                                                geometry=[point_list[1]])
+            new_line = gpd.GeoDataFrame(crs=self.streets.crs,
+                                        columns=['geometry'],
+                                        geometry=[sg.LineString(point_list)])
+            points_df = points_df.append(new_point_bld)
+            points_df = points_df.append(new_point_street)
+            lines_df = lines_df.append(new_line)
+
+            if all_street.contains(point_list[0]):
+                print('find point 1')
+            if all_street.contains(point_list[1]):
+                print('find point 2')
+            if point_list[0].within(all_street.buffer(0.0000001)):
+                print('find point 3')
+            if point_list[1].within(all_street.buffer(0.0000001)):
+                print('find point 4')
+            # print(type(list(point_list[1].buffer(0.001).intersection(
+            #     all_street).coords[0])))
+
+        return points_df, lines_df
+
+    # not used, might be deleted later
+    def crs_to_meter(self):
+        """using pyproj to turn the coordinate reference system (crs) to
+        absolute distance, which could be used to calculate the length of
+        network and area of buildings."""
+        for idx, bld in self.buildings.iterrows():
+            self.buildings['geometry'][idx] = \
+                latlon2abs(bld['geometry'], bld['geometry'].exterior.coords[0][
+                    1], bld['geometry'].exterior.coords[1][1])
+
+        # Todo: The code is not right for roads, because the intersection
+        #  information of line segments is lost after coordinate transformation
+        #   it could be solved with shapely function ops.linemerge(lines),
+        #   or add the intersect points into the road information
+        # The following codes are the pitch for the transformations problem.
+        # for idx_1, street_1 in self.streets.iterrows():
+        #     for idx_2, street_2 in self.streets.iterrows():
+        #         if isinstance(self.streets['geometry'][idx_1].intersection(
+        #                 self.streets['geometry'][idx_2]), Point):
+        #             shapely_insert_point(self.streets['geometry'][idx_1
+        #                                  ].intersection(
+        #                 self.streets['geometry'][idx_2]),  self.streets[
+        #                 'geometry'][idx_1])
+
+        for idx, street in self.streets.iterrows():
+            self.streets['geometry'][idx] = \
+                latlon2abs(street['geometry'], street['geometry'].coords[0][
+                    1], street['geometry'].coords[1][1])
+
+
+if __name__ == "__main__":
+    base_path = os.path.dirname(__file__)
+    map_file = os.path.join(base_path, 'overpass.geojson')
+
+    d = District()
+    d.read_osm(map_file)
+
+    # reducing the number of buildings and streets for test
+    d.buildings = d.buildings[0:6]
+
+    # handling map
+    #####################
+    d.crs_trans()
+    d.adj_pos()
+
+    # generating network
+    #####################
+    G = d.gen_network()
+
+    # Plotting streets and building
+    #####################
+    # f, ax = plt.subplots(1, 1, figsize=(12, 6))
+    # d.streets.plot(color="k", ax=ax, aspect=1)
+    # # d.buildings.plot(color="k", ax=ax, aspect=1)
+    # d.buildings.centroid.plot(color="k", ax=ax, aspect=1)
+    # plt.show()
+
+    # Plotting generated network with/without streets
+    ######################
+    positions = {n: [n[0], n[1]] for n in list(G.nodes)}
+    f, ax = plt.subplots(1, 1, figsize=(40, 20))
+    # f, ax = plt.subplots(1, 1, figsize=(12, 6))
+    # d.streets.plot(color="k", ax=ax)
+    nx.draw(G, positions, ax=ax, node_size=50)
+    plt.show()
diff --git a/network/overpass.geojson b/network/overpass.geojson
new file mode 100644
index 0000000..bd38fdf
--- /dev/null
+++ b/network/overpass.geojson
@@ -0,0 +1,5245 @@
+{
+  "type": "FeatureCollection",
+  "generator": "overpass-ide",
+  "copyright": "The data included in this document is from www.openstreetmap.org. The data is made available under ODbL.",
+  "timestamp": "2022-12-01T17:52:39Z",
+  "features": [
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/95924050",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "13",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnstieg",
+        "building": "apartments",
+        "building:levels": "2",
+        "roof:colour": "grey",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0573793,
+              50.7827378
+            ],
+            [
+              6.0573579,
+              50.7826604
+            ],
+            [
+              6.0575392,
+              50.7826397
+            ],
+            [
+              6.0575601,
+              50.7827181
+            ],
+            [
+              6.0574735,
+              50.7827274
+            ],
+            [
+              6.0573793,
+              50.7827378
+            ]
+          ]
+        ]
+      },
+      "id": "way/95924050"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/95924062",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "67",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "apartments",
+        "building:levels": "2",
+        "roof:colour": "grey",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0575937,
+              50.7830167
+            ],
+            [
+              6.0574623,
+              50.7830317
+            ],
+            [
+              6.0574512,
+              50.7829917
+            ],
+            [
+              6.0574422,
+              50.782955
+            ],
+            [
+              6.0575728,
+              50.7829402
+            ],
+            [
+              6.0575937,
+              50.7830167
+            ]
+          ]
+        ]
+      },
+      "id": "way/95924062"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/104657385",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "72",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0586729,
+              50.7841951
+            ],
+            [
+              6.058547,
+              50.7842368
+            ],
+            [
+              6.0584408,
+              50.7841081
+            ],
+            [
+              6.0585112,
+              50.7840848
+            ],
+            [
+              6.0585668,
+              50.7840664
+            ],
+            [
+              6.0586729,
+              50.7841951
+            ]
+          ]
+        ]
+      },
+      "id": "way/104657385"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/104657387",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "60",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0599303,
+              50.7836083
+            ],
+            [
+              6.0598128,
+              50.7836675
+            ],
+            [
+              6.0596683,
+              50.7835522
+            ],
+            [
+              6.0597352,
+              50.7835185
+            ],
+            [
+              6.0597858,
+              50.783493
+            ],
+            [
+              6.0599303,
+              50.7836083
+            ]
+          ]
+        ]
+      },
+      "id": "way/104657387"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/104657388",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "68",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0591159,
+              50.7840051
+            ],
+            [
+              6.0589979,
+              50.7840638
+            ],
+            [
+              6.0588548,
+              50.7839481
+            ],
+            [
+              6.0589303,
+              50.7839106
+            ],
+            [
+              6.0589728,
+              50.7838894
+            ],
+            [
+              6.0591159,
+              50.7840051
+            ]
+          ]
+        ]
+      },
+      "id": "way/104657388"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/104657395",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "64",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0595223,
+              50.7838121
+            ],
+            [
+              6.0594045,
+              50.783871
+            ],
+            [
+              6.0592608,
+              50.7837554
+            ],
+            [
+              6.0593284,
+              50.7837216
+            ],
+            [
+              6.0593786,
+              50.7836965
+            ],
+            [
+              6.0595223,
+              50.7838121
+            ]
+          ]
+        ]
+      },
+      "id": "way/104657395"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/125767549",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "52",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0605725,
+              50.7832223
+            ],
+            [
+              6.060685,
+              50.7831827
+            ],
+            [
+              6.0607865,
+              50.7832981
+            ],
+            [
+              6.060674,
+              50.7833377
+            ],
+            [
+              6.0605725,
+              50.7832223
+            ]
+          ]
+        ]
+      },
+      "id": "way/125767549"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/139975779",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "62",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0598128,
+              50.7836675
+            ],
+            [
+              6.0599303,
+              50.7836083
+            ],
+            [
+              6.0600747,
+              50.7837235
+            ],
+            [
+              6.0599572,
+              50.7837827
+            ],
+            [
+              6.0598128,
+              50.7836675
+            ]
+          ]
+        ]
+      },
+      "id": "way/139975779"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/139975780",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "66",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0594045,
+              50.783871
+            ],
+            [
+              6.0595223,
+              50.7838121
+            ],
+            [
+              6.0596661,
+              50.7839277
+            ],
+            [
+              6.0595483,
+              50.7839866
+            ],
+            [
+              6.0594045,
+              50.783871
+            ]
+          ]
+        ]
+      },
+      "id": "way/139975780"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/139975781",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "70",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0589979,
+              50.7840638
+            ],
+            [
+              6.0591159,
+              50.7840051
+            ],
+            [
+              6.0592592,
+              50.784121
+            ],
+            [
+              6.0591412,
+              50.7841796
+            ],
+            [
+              6.0589979,
+              50.7840638
+            ]
+          ]
+        ]
+      },
+      "id": "way/139975781"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/139975782",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "74",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.058547,
+              50.7842368
+            ],
+            [
+              6.0586729,
+              50.7841951
+            ],
+            [
+              6.0587794,
+              50.7843242
+            ],
+            [
+              6.0586534,
+              50.784366
+            ],
+            [
+              6.058547,
+              50.7842368
+            ]
+          ]
+        ]
+      },
+      "id": "way/139975782"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/139975783",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "76",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "apartments"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0579393,
+              50.7843211
+            ],
+            [
+              6.0578764,
+              50.784236
+            ],
+            [
+              6.0580865,
+              50.7841744
+            ],
+            [
+              6.0581488,
+              50.7842604
+            ],
+            [
+              6.0579393,
+              50.7843211
+            ]
+          ]
+        ]
+      },
+      "id": "way/139975783"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150852",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "46",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0586467,
+              50.7828944
+            ],
+            [
+              6.0587235,
+              50.782857
+            ],
+            [
+              6.0588054,
+              50.7829233
+            ],
+            [
+              6.0587458,
+              50.782952
+            ],
+            [
+              6.0587668,
+              50.7829693
+            ],
+            [
+              6.0587194,
+              50.7829925
+            ],
+            [
+              6.0586688,
+              50.7829516
+            ],
+            [
+              6.0587008,
+              50.782934
+            ],
+            [
+              6.0586467,
+              50.7828944
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150852"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150854",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "55",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0586599,
+              50.7827834
+            ],
+            [
+              6.0585801,
+              50.782717
+            ],
+            [
+              6.0586275,
+              50.7826944
+            ],
+            [
+              6.0586091,
+              50.7826789
+            ],
+            [
+              6.0586515,
+              50.7826587
+            ],
+            [
+              6.0586749,
+              50.7826475
+            ],
+            [
+              6.0586874,
+              50.782658
+            ],
+            [
+              6.0587058,
+              50.7826736
+            ],
+            [
+              6.0586758,
+              50.7826879
+            ],
+            [
+              6.0587424,
+              50.782744
+            ],
+            [
+              6.0586599,
+              50.7827834
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150854"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150858",
+        "building": "garages"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0585415,
+              50.783038
+            ],
+            [
+              6.0585618,
+              50.7830304
+            ],
+            [
+              6.0585359,
+              50.7830026
+            ],
+            [
+              6.0586119,
+              50.7829798
+            ],
+            [
+              6.0586688,
+              50.7829516
+            ],
+            [
+              6.0587194,
+              50.7829925
+            ],
+            [
+              6.0587381,
+              50.7830093
+            ],
+            [
+              6.0586746,
+              50.7830309
+            ],
+            [
+              6.0585674,
+              50.7830667
+            ],
+            [
+              6.0585415,
+              50.783038
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150858"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150882",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0578255,
+              50.783251
+            ],
+            [
+              6.057801,
+              50.783193
+            ],
+            [
+              6.057841,
+              50.7831862
+            ],
+            [
+              6.0578655,
+              50.7832442
+            ],
+            [
+              6.0578255,
+              50.783251
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150882"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150886",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0591817,
+              50.7826614
+            ],
+            [
+              6.0591763,
+              50.7826581
+            ],
+            [
+              6.0592245,
+              50.7826269
+            ],
+            [
+              6.0592851,
+              50.7826633
+            ],
+            [
+              6.0593479,
+              50.7827022
+            ],
+            [
+              6.0593014,
+              50.782733
+            ],
+            [
+              6.0592374,
+              50.7826936
+            ],
+            [
+              6.0591817,
+              50.7826614
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150886"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150890",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "50",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0583359,
+              50.7831586
+            ],
+            [
+              6.0582936,
+              50.7831124
+            ],
+            [
+              6.058256,
+              50.7830737
+            ],
+            [
+              6.0583243,
+              50.7830472
+            ],
+            [
+              6.0583378,
+              50.7830593
+            ],
+            [
+              6.0583647,
+              50.7830469
+            ],
+            [
+              6.0583371,
+              50.7830171
+            ],
+            [
+              6.0584106,
+              50.7829896
+            ],
+            [
+              6.0584758,
+              50.7830625
+            ],
+            [
+              6.0584041,
+              50.7830893
+            ],
+            [
+              6.0583951,
+              50.7830796
+            ],
+            [
+              6.058366,
+              50.7830915
+            ],
+            [
+              6.0584044,
+              50.7831323
+            ],
+            [
+              6.0583359,
+              50.7831586
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150890"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150894",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0582528,
+              50.7831274
+            ],
+            [
+              6.0582936,
+              50.7831124
+            ],
+            [
+              6.0583359,
+              50.7831586
+            ],
+            [
+              6.0582951,
+              50.7831736
+            ],
+            [
+              6.0582855,
+              50.7831631
+            ],
+            [
+              6.0582528,
+              50.7831274
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150894"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150907",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "50a",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "detached"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0580005,
+              50.7832123
+            ],
+            [
+              6.0579536,
+              50.7831162
+            ],
+            [
+              6.0581431,
+              50.783079
+            ],
+            [
+              6.058166,
+              50.7831258
+            ],
+            [
+              6.058189,
+              50.783173
+            ],
+            [
+              6.05819,
+              50.7831751
+            ],
+            [
+              6.0580005,
+              50.7832123
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150907"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150930",
+        "building": "house"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0584455,
+              50.7828017
+            ],
+            [
+              6.0583971,
+              50.7827509
+            ],
+            [
+              6.0582868,
+              50.7827933
+            ],
+            [
+              6.0582674,
+              50.7827729
+            ],
+            [
+              6.058405,
+              50.7827201
+            ],
+            [
+              6.0584729,
+              50.7827912
+            ],
+            [
+              6.0584455,
+              50.7828017
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150930"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150932",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "48",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "house"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0584758,
+              50.7830625
+            ],
+            [
+              6.0584106,
+              50.7829896
+            ],
+            [
+              6.0584947,
+              50.7829582
+            ],
+            [
+              6.0585359,
+              50.7830026
+            ],
+            [
+              6.0585618,
+              50.7830304
+            ],
+            [
+              6.0585415,
+              50.783038
+            ],
+            [
+              6.0585674,
+              50.7830667
+            ],
+            [
+              6.0585926,
+              50.7830949
+            ],
+            [
+              6.0585241,
+              50.7831202
+            ],
+            [
+              6.0584758,
+              50.7830625
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150932"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150940",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "5",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnstieg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0576323,
+              50.7832395
+            ],
+            [
+              6.0577134,
+              50.7832257
+            ],
+            [
+              6.0577063,
+              50.7832091
+            ],
+            [
+              6.057801,
+              50.783193
+            ],
+            [
+              6.0578255,
+              50.783251
+            ],
+            [
+              6.0578471,
+              50.7833019
+            ],
+            [
+              6.0577474,
+              50.7833189
+            ],
+            [
+              6.0576714,
+              50.7833318
+            ],
+            [
+              6.0576512,
+              50.7832842
+            ],
+            [
+              6.0576323,
+              50.7832395
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150940"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150942",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.058189,
+              50.783173
+            ],
+            [
+              6.058166,
+              50.7831258
+            ],
+            [
+              6.0582371,
+              50.7831123
+            ],
+            [
+              6.0582528,
+              50.7831274
+            ],
+            [
+              6.0582855,
+              50.7831631
+            ],
+            [
+              6.0582621,
+              50.7831731
+            ],
+            [
+              6.0582243,
+              50.7831893
+            ],
+            [
+              6.0582094,
+              50.7831664
+            ],
+            [
+              6.058189,
+              50.783173
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150942"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150962",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "40",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0590976,
+              50.7827596
+            ],
+            [
+              6.0590054,
+              50.782703
+            ],
+            [
+              6.0590599,
+              50.7826674
+            ],
+            [
+              6.0591216,
+              50.7827026
+            ],
+            [
+              6.0591456,
+              50.7826864
+            ],
+            [
+              6.0592013,
+              50.7827186
+            ],
+            [
+              6.0592579,
+              50.7827519
+            ],
+            [
+              6.0592123,
+              50.782781
+            ],
+            [
+              6.059134,
+              50.7827347
+            ],
+            [
+              6.0590976,
+              50.7827596
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150962"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150965",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "61",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "apartments"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0581034,
+              50.7828637
+            ],
+            [
+              6.0582868,
+              50.7827933
+            ],
+            [
+              6.0583727,
+              50.7828841
+            ],
+            [
+              6.058289,
+              50.7829163
+            ],
+            [
+              6.0582699,
+              50.7828963
+            ],
+            [
+              6.0581709,
+              50.7829343
+            ],
+            [
+              6.0581034,
+              50.7828637
+            ]
+          ]
+        ]
+      },
+      "id": "way/147150965"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156150",
+        "building": "garages"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0604348,
+              50.782842
+            ],
+            [
+              6.0603861,
+              50.7828011
+            ],
+            [
+              6.0603397,
+              50.7827622
+            ],
+            [
+              6.0604021,
+              50.7827323
+            ],
+            [
+              6.06046,
+              50.782781
+            ],
+            [
+              6.0604962,
+              50.7827637
+            ],
+            [
+              6.060547,
+              50.7828064
+            ],
+            [
+              6.0605058,
+              50.7828262
+            ],
+            [
+              6.0604976,
+              50.7828193
+            ],
+            [
+              6.0604404,
+              50.7828467
+            ],
+            [
+              6.0604348,
+              50.782842
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156150"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156152",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "75",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0589125,
+              50.7834803
+            ],
+            [
+              6.0589899,
+              50.7835476
+            ],
+            [
+              6.0589088,
+              50.7835852
+            ],
+            [
+              6.058879,
+              50.7835593
+            ],
+            [
+              6.0588033,
+              50.7835943
+            ],
+            [
+              6.0587599,
+              50.7835565
+            ],
+            [
+              6.0587716,
+              50.7835512
+            ],
+            [
+              6.0587432,
+              50.7835265
+            ],
+            [
+              6.058812,
+              50.7834947
+            ],
+            [
+              6.0588361,
+              50.7835157
+            ],
+            [
+              6.0589125,
+              50.7834803
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156152"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156154",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "77",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0584729,
+              50.7836228
+            ],
+            [
+              6.0585021,
+              50.7836466
+            ],
+            [
+              6.0585653,
+              50.7836981
+            ],
+            [
+              6.0585364,
+              50.7837123
+            ],
+            [
+              6.0585686,
+              50.7837386
+            ],
+            [
+              6.0584943,
+              50.7837745
+            ],
+            [
+              6.0584165,
+              50.7837102
+            ],
+            [
+              6.0584797,
+              50.7836783
+            ],
+            [
+              6.0584347,
+              50.7836416
+            ],
+            [
+              6.0584729,
+              50.7836228
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156154"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156155",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "59",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0601787,
+              50.7829034
+            ],
+            [
+              6.0602318,
+              50.7828769
+            ],
+            [
+              6.0602487,
+              50.7828905
+            ],
+            [
+              6.0603013,
+              50.7828642
+            ],
+            [
+              6.0603817,
+              50.7829295
+            ],
+            [
+              6.0603069,
+              50.7829668
+            ],
+            [
+              6.0602584,
+              50.7829279
+            ],
+            [
+              6.060228,
+              50.7829431
+            ],
+            [
+              6.0601787,
+              50.7829034
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156155"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156156",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "63",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0597727,
+              50.7830892
+            ],
+            [
+              6.0598904,
+              50.7830354
+            ],
+            [
+              6.0599075,
+              50.7830503
+            ],
+            [
+              6.0599619,
+              50.783025
+            ],
+            [
+              6.0600391,
+              50.7830943
+            ],
+            [
+              6.0599676,
+              50.7831276
+            ],
+            [
+              6.0599383,
+              50.7831023
+            ],
+            [
+              6.0598376,
+              50.7831483
+            ],
+            [
+              6.0597727,
+              50.7830892
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156156"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156157",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "55",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0605773,
+              50.7828364
+            ],
+            [
+              6.060547,
+              50.7828064
+            ],
+            [
+              6.0604962,
+              50.7827637
+            ],
+            [
+              6.0604682,
+              50.7827357
+            ],
+            [
+              6.0605465,
+              50.7827016
+            ],
+            [
+              6.0605637,
+              50.7827175
+            ],
+            [
+              6.0606035,
+              50.7827001
+            ],
+            [
+              6.060627,
+              50.7827218
+            ],
+            [
+              6.0606572,
+              50.7827087
+            ],
+            [
+              6.0607244,
+              50.7827724
+            ],
+            [
+              6.0605773,
+              50.7828364
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156157"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156161",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "3",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnstieg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0577071,
+              50.7834228
+            ],
+            [
+              6.057785,
+              50.7833906
+            ],
+            [
+              6.0578791,
+              50.7833516
+            ],
+            [
+              6.0579514,
+              50.7834219
+            ],
+            [
+              6.0577795,
+              50.7834931
+            ],
+            [
+              6.0577071,
+              50.7834228
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156161"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156162",
+        "building": "garages"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.059796,
+              50.7831667
+            ],
+            [
+              6.0597311,
+              50.7831076
+            ],
+            [
+              6.0597727,
+              50.7830892
+            ],
+            [
+              6.0598376,
+              50.7831483
+            ],
+            [
+              6.059796,
+              50.7831667
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156162"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156168",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0594499,
+              50.7832664
+            ],
+            [
+              6.0594072,
+              50.7832319
+            ],
+            [
+              6.0594417,
+              50.7832148
+            ],
+            [
+              6.0594844,
+              50.7832492
+            ],
+            [
+              6.0594499,
+              50.7832664
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156168"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156169",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0593453,
+              50.7836549
+            ],
+            [
+              6.05939,
+              50.7836908
+            ],
+            [
+              6.0593786,
+              50.7836965
+            ],
+            [
+              6.0593284,
+              50.7837216
+            ],
+            [
+              6.0592842,
+              50.783686
+            ],
+            [
+              6.0593453,
+              50.7836549
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156169"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156171",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0585112,
+              50.7840848
+            ],
+            [
+              6.0584797,
+              50.7840466
+            ],
+            [
+              6.0585511,
+              50.7840229
+            ],
+            [
+              6.0585826,
+              50.7840611
+            ],
+            [
+              6.0585668,
+              50.7840664
+            ],
+            [
+              6.0585112,
+              50.7840848
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156171"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156172",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0589303,
+              50.7839106
+            ],
+            [
+              6.0588893,
+              50.7838775
+            ],
+            [
+              6.0589505,
+              50.783847
+            ],
+            [
+              6.0589915,
+              50.7838802
+            ],
+            [
+              6.0589728,
+              50.7838894
+            ],
+            [
+              6.0589303,
+              50.7839106
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156172"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156173",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0585021,
+              50.7836466
+            ],
+            [
+              6.058562,
+              50.7836181
+            ],
+            [
+              6.0586532,
+              50.7836949
+            ],
+            [
+              6.058594,
+              50.7837231
+            ],
+            [
+              6.0585653,
+              50.7836981
+            ],
+            [
+              6.0585021,
+              50.7836466
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156173"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156174",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0596956,
+              50.7834868
+            ],
+            [
+              6.0597614,
+              50.7834536
+            ],
+            [
+              6.0598011,
+              50.7834853
+            ],
+            [
+              6.0597858,
+              50.783493
+            ],
+            [
+              6.0597352,
+              50.7835185
+            ],
+            [
+              6.0596956,
+              50.7834868
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156174"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156175",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0593656,
+              50.7832427
+            ],
+            [
+              6.0593995,
+              50.7832258
+            ],
+            [
+              6.0594072,
+              50.7832319
+            ],
+            [
+              6.0594499,
+              50.7832664
+            ],
+            [
+              6.0594159,
+              50.7832833
+            ],
+            [
+              6.0593656,
+              50.7832427
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156175"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156176",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "67",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0594652,
+              50.783194
+            ],
+            [
+              6.0595185,
+              50.783168
+            ],
+            [
+              6.0595434,
+              50.7831883
+            ],
+            [
+              6.0595862,
+              50.7831673
+            ],
+            [
+              6.059659,
+              50.7832268
+            ],
+            [
+              6.059593,
+              50.7832591
+            ],
+            [
+              6.0595498,
+              50.7832238
+            ],
+            [
+              6.0595196,
+              50.7832385
+            ],
+            [
+              6.0594652,
+              50.783194
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156176"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156178",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "75a",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0586452,
+              50.7835489
+            ],
+            [
+              6.0587618,
+              50.7836471
+            ],
+            [
+              6.0586564,
+              50.7836975
+            ],
+            [
+              6.0586532,
+              50.7836949
+            ],
+            [
+              6.058562,
+              50.7836181
+            ],
+            [
+              6.0585397,
+              50.7835993
+            ],
+            [
+              6.0586452,
+              50.7835489
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156178"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156180",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "69",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0592231,
+              50.7832963
+            ],
+            [
+              6.0593428,
+              50.783237
+            ],
+            [
+              6.0594062,
+              50.7832886
+            ],
+            [
+              6.0593665,
+              50.7833082
+            ],
+            [
+              6.0594124,
+              50.7833454
+            ],
+            [
+              6.0593324,
+              50.783385
+            ],
+            [
+              6.0592537,
+              50.7833212
+            ],
+            [
+              6.0592231,
+              50.7832963
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156180"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156181",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "81",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0582885,
+              50.7838752
+            ],
+            [
+              6.0581895,
+              50.7837935
+            ],
+            [
+              6.0582895,
+              50.7837428
+            ],
+            [
+              6.0583442,
+              50.783788
+            ],
+            [
+              6.0583175,
+              50.783799
+            ],
+            [
+              6.0583654,
+              50.7838384
+            ],
+            [
+              6.0582885,
+              50.7838752
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156181"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156182",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "73",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0589125,
+              50.7834803
+            ],
+            [
+              6.0589584,
+              50.7834591
+            ],
+            [
+              6.0589437,
+              50.7834463
+            ],
+            [
+              6.058999,
+              50.7834207
+            ],
+            [
+              6.0590444,
+              50.7834601
+            ],
+            [
+              6.0590158,
+              50.7834734
+            ],
+            [
+              6.0590626,
+              50.783514
+            ],
+            [
+              6.0589899,
+              50.7835476
+            ],
+            [
+              6.0589125,
+              50.7834803
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156182"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156183",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "71",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0591301,
+              50.7833574
+            ],
+            [
+              6.0591807,
+              50.7833324
+            ],
+            [
+              6.0591997,
+              50.7833479
+            ],
+            [
+              6.0592537,
+              50.7833212
+            ],
+            [
+              6.0593324,
+              50.783385
+            ],
+            [
+              6.0592583,
+              50.7834217
+            ],
+            [
+              6.0592122,
+              50.7833842
+            ],
+            [
+              6.0591817,
+              50.7833993
+            ],
+            [
+              6.0591301,
+              50.7833574
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156183"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147156185",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "1",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnstieg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0578464,
+              50.7835591
+            ],
+            [
+              6.0579707,
+              50.7835089
+            ],
+            [
+              6.0579815,
+              50.7835196
+            ],
+            [
+              6.0581064,
+              50.7834692
+            ],
+            [
+              6.0582109,
+              50.7835733
+            ],
+            [
+              6.0580809,
+              50.7836258
+            ],
+            [
+              6.0580369,
+              50.7835819
+            ],
+            [
+              6.0579177,
+              50.7836301
+            ],
+            [
+              6.0578464,
+              50.7835591
+            ]
+          ]
+        ]
+      },
+      "id": "way/147156185"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147215963",
+        "building": "garages"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0573453,
+              50.7827976
+            ],
+            [
+              6.0574325,
+              50.7827883
+            ],
+            [
+              6.057464,
+              50.7829079
+            ],
+            [
+              6.0573767,
+              50.7829171
+            ],
+            [
+              6.0573453,
+              50.7827976
+            ]
+          ]
+        ]
+      },
+      "id": "way/147215963"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147215972",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0569407,
+              50.7831676
+            ],
+            [
+              6.056941,
+              50.7831168
+            ],
+            [
+              6.0569357,
+              50.7831168
+            ],
+            [
+              6.0569357,
+              50.7831061
+            ],
+            [
+              6.0569813,
+              50.7831061
+            ],
+            [
+              6.0569814,
+              50.7831676
+            ],
+            [
+              6.0569407,
+              50.7831676
+            ]
+          ]
+        ]
+      },
+      "id": "way/147215972"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147215983",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "3",
+        "addr:postcode": "52074",
+        "addr:street": "An den Finkenweiden",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0571578,
+              50.7832882
+            ],
+            [
+              6.0570726,
+              50.7832921
+            ],
+            [
+              6.057064,
+              50.7832155
+            ],
+            [
+              6.0571146,
+              50.783213
+            ],
+            [
+              6.0571133,
+              50.7832002
+            ],
+            [
+              6.0571117,
+              50.783185
+            ],
+            [
+              6.0570857,
+              50.7831859
+            ],
+            [
+              6.0570796,
+              50.7831436
+            ],
+            [
+              6.0571403,
+              50.7831409
+            ],
+            [
+              6.0571578,
+              50.7832882
+            ]
+          ]
+        ]
+      },
+      "id": "way/147215983"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147283615",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "83",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "house",
+        "building:levels": "2",
+        "roof:levels": "1",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0577064,
+              50.7839202
+            ],
+            [
+              6.0578086,
+              50.7838855
+            ],
+            [
+              6.0578229,
+              50.7838806
+            ],
+            [
+              6.0579084,
+              50.7839813
+            ],
+            [
+              6.0577909,
+              50.7840212
+            ],
+            [
+              6.0577697,
+              50.7839963
+            ],
+            [
+              6.057756,
+              50.784001
+            ],
+            [
+              6.0577181,
+              50.7839564
+            ],
+            [
+              6.0577329,
+              50.7839514
+            ],
+            [
+              6.0577064,
+              50.7839202
+            ]
+          ]
+        ]
+      },
+      "id": "way/147283615"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147283621",
+        "building": "carport"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0575376,
+              50.7838109
+            ],
+            [
+              6.0576202,
+              50.7837822
+            ],
+            [
+              6.0576631,
+              50.7838308
+            ],
+            [
+              6.0576185,
+              50.7838459
+            ],
+            [
+              6.0575808,
+              50.7838609
+            ],
+            [
+              6.0575376,
+              50.7838109
+            ]
+          ]
+        ]
+      },
+      "id": "way/147283621"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147283626",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "85",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "apartments",
+        "building:levels": "2",
+        "roof:levels": "1",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0576032,
+              50.7841106
+            ],
+            [
+              6.057529,
+              50.7840227
+            ],
+            [
+              6.0575767,
+              50.784007
+            ],
+            [
+              6.0575677,
+              50.7839962
+            ],
+            [
+              6.0576339,
+              50.783974
+            ],
+            [
+              6.0577167,
+              50.784073
+            ],
+            [
+              6.0576032,
+              50.7841106
+            ]
+          ]
+        ]
+      },
+      "id": "way/147283626"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147283632",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "89",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0571256,
+              50.7842783
+            ],
+            [
+              6.0570642,
+              50.7842025
+            ],
+            [
+              6.0571159,
+              50.7841857
+            ],
+            [
+              6.0570862,
+              50.7841491
+            ],
+            [
+              6.0571457,
+              50.7841297
+            ],
+            [
+              6.0572369,
+              50.7842422
+            ],
+            [
+              6.0571256,
+              50.7842783
+            ]
+          ]
+        ]
+      },
+      "id": "way/147283632"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147542850",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0570279,
+              50.7836539
+            ],
+            [
+              6.0570295,
+              50.7837027
+            ],
+            [
+              6.0569885,
+              50.7837033
+            ],
+            [
+              6.056987,
+              50.7836545
+            ],
+            [
+              6.0570279,
+              50.7836539
+            ]
+          ]
+        ]
+      },
+      "id": "way/147542850"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147542851",
+        "addr:city": "Aachen",
+        "addr:housenumber": "4",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnstieg",
+        "building": "apartments",
+        "building:levels": "2"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0573871,
+              50.7836947
+            ],
+            [
+              6.0575195,
+              50.7836275
+            ],
+            [
+              6.057641,
+              50.7837233
+            ],
+            [
+              6.0575087,
+              50.7837905
+            ],
+            [
+              6.0573871,
+              50.7836947
+            ]
+          ]
+        ]
+      },
+      "id": "way/147542851"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147542856",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0569665,
+              50.7837799
+            ],
+            [
+              6.0569649,
+              50.7837313
+            ],
+            [
+              6.0570304,
+              50.7837305
+            ],
+            [
+              6.0570307,
+              50.7837414
+            ],
+            [
+              6.0570319,
+              50.783779
+            ],
+            [
+              6.0569938,
+              50.7837795
+            ],
+            [
+              6.0569665,
+              50.7837799
+            ]
+          ]
+        ]
+      },
+      "id": "way/147542856"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147542866",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0570307,
+              50.7837414
+            ],
+            [
+              6.0570304,
+              50.7837305
+            ],
+            [
+              6.0570295,
+              50.7837027
+            ],
+            [
+              6.0570279,
+              50.7836539
+            ],
+            [
+              6.0570817,
+              50.7836533
+            ],
+            [
+              6.0570845,
+              50.7837407
+            ],
+            [
+              6.0570307,
+              50.7837414
+            ]
+          ]
+        ]
+      },
+      "id": "way/147542866"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147542878",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "4",
+        "addr:postcode": "52074",
+        "addr:street": "An den Finkenweiden",
+        "building": "semidetached_house"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0571363,
+              50.7835648
+            ],
+            [
+              6.0572249,
+              50.7835603
+            ],
+            [
+              6.0572371,
+              50.783677
+            ],
+            [
+              6.057202,
+              50.7836788
+            ],
+            [
+              6.0571978,
+              50.783645
+            ],
+            [
+              6.0571468,
+              50.7836476
+            ],
+            [
+              6.0571436,
+              50.7836306
+            ],
+            [
+              6.0571363,
+              50.7835648
+            ]
+          ]
+        ]
+      },
+      "id": "way/147542878"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/183902420",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0569938,
+              50.7837795
+            ],
+            [
+              6.0570319,
+              50.783779
+            ],
+            [
+              6.057034,
+              50.7838315
+            ],
+            [
+              6.0569953,
+              50.7838324
+            ],
+            [
+              6.0569938,
+              50.7837795
+            ]
+          ]
+        ]
+      },
+      "id": "way/183902420"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886186",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0594776,
+              50.782965
+            ],
+            [
+              6.0595019,
+              50.7829847
+            ],
+            [
+              6.0594249,
+              50.7830244
+            ],
+            [
+              6.0593889,
+              50.7829967
+            ],
+            [
+              6.0594147,
+              50.7829821
+            ],
+            [
+              6.0594293,
+              50.7829913
+            ],
+            [
+              6.0594776,
+              50.782965
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886186"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886192",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0588444,
+              50.7831915
+            ],
+            [
+              6.058901,
+              50.7831647
+            ],
+            [
+              6.0589429,
+              50.7832
+            ],
+            [
+              6.0588862,
+              50.7832268
+            ],
+            [
+              6.0588444,
+              50.7831915
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886192"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886194",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0595743,
+              50.7828847
+            ],
+            [
+              6.0595465,
+              50.7828616
+            ],
+            [
+              6.0595876,
+              50.7828419
+            ],
+            [
+              6.0596154,
+              50.7828649
+            ],
+            [
+              6.0595743,
+              50.7828847
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886194"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886195",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0596748,
+              50.7829506
+            ],
+            [
+              6.0596117,
+              50.7829008
+            ],
+            [
+              6.0596959,
+              50.7828581
+            ],
+            [
+              6.0597511,
+              50.7829017
+            ],
+            [
+              6.059708,
+              50.7829235
+            ],
+            [
+              6.0597158,
+              50.7829297
+            ],
+            [
+              6.0596748,
+              50.7829506
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886195"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886197",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "59",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "house"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0582868,
+              50.7827933
+            ],
+            [
+              6.0583971,
+              50.7827509
+            ],
+            [
+              6.0584455,
+              50.7828017
+            ],
+            [
+              6.0584154,
+              50.7828132
+            ],
+            [
+              6.0584535,
+              50.7828531
+            ],
+            [
+              6.0583727,
+              50.7828841
+            ],
+            [
+              6.0582868,
+              50.7827933
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886197"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886199",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0587681,
+              50.7833239
+            ],
+            [
+              6.0587426,
+              50.7833025
+            ],
+            [
+              6.0587843,
+              50.7832826
+            ],
+            [
+              6.0588099,
+              50.7833039
+            ],
+            [
+              6.0587681,
+              50.7833239
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886199"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886202",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0594146,
+              50.7829701
+            ],
+            [
+              6.0593703,
+              50.782937
+            ],
+            [
+              6.0594213,
+              50.7829133
+            ],
+            [
+              6.059463,
+              50.7829474
+            ],
+            [
+              6.0594146,
+              50.7829701
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886202"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886204",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0595782,
+              50.7828225
+            ],
+            [
+              6.0596211,
+              50.782803
+            ],
+            [
+              6.059687,
+              50.7828549
+            ],
+            [
+              6.0596431,
+              50.7828754
+            ],
+            [
+              6.0595782,
+              50.7828225
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886204"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886208",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "44",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "house"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0587235,
+              50.782857
+            ],
+            [
+              6.0588001,
+              50.7828198
+            ],
+            [
+              6.0588496,
+              50.7828607
+            ],
+            [
+              6.0588714,
+              50.7828512
+            ],
+            [
+              6.0589213,
+              50.7828915
+            ],
+            [
+              6.0588753,
+              50.7829148
+            ],
+            [
+              6.0588548,
+              50.7828993
+            ],
+            [
+              6.0588054,
+              50.7829233
+            ],
+            [
+              6.0587235,
+              50.782857
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886208"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886214",
+        "building": "garages"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0579291,
+              50.7828885
+            ],
+            [
+              6.0580512,
+              50.7828764
+            ],
+            [
+              6.0580642,
+              50.7829288
+            ],
+            [
+              6.0579421,
+              50.782941
+            ],
+            [
+              6.0579291,
+              50.7828885
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886214"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886215",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0587118,
+              50.7833061
+            ],
+            [
+              6.0586839,
+              50.7832823
+            ],
+            [
+              6.0587548,
+              50.7832491
+            ],
+            [
+              6.0587827,
+              50.7832729
+            ],
+            [
+              6.0587118,
+              50.7833061
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886215"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886216",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0594249,
+              50.7830244
+            ],
+            [
+              6.0593877,
+              50.7830438
+            ],
+            [
+              6.0593516,
+              50.783016
+            ],
+            [
+              6.0593889,
+              50.7829967
+            ],
+            [
+              6.0594249,
+              50.7830244
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886216"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886217",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "42",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0590976,
+              50.7827596
+            ],
+            [
+              6.0590685,
+              50.7827786
+            ],
+            [
+              6.0591306,
+              50.7828168
+            ],
+            [
+              6.0590468,
+              50.7828715
+            ],
+            [
+              6.0588927,
+              50.7827766
+            ],
+            [
+              6.0590054,
+              50.782703
+            ],
+            [
+              6.0590976,
+              50.7827596
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886217"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886219",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0584365,
+              50.782743
+            ],
+            [
+              6.05841,
+              50.7827233
+            ],
+            [
+              6.058434,
+              50.7827104
+            ],
+            [
+              6.0584605,
+              50.78273
+            ],
+            [
+              6.0584365,
+              50.782743
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886219"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886220",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0586903,
+              50.7833808
+            ],
+            [
+              6.0586579,
+              50.7833535
+            ],
+            [
+              6.0587065,
+              50.7833304
+            ],
+            [
+              6.0587389,
+              50.7833578
+            ],
+            [
+              6.0586903,
+              50.7833808
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886220"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886221",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0577474,
+              50.7833189
+            ],
+            [
+              6.0577677,
+              50.783372
+            ],
+            [
+              6.0576873,
+              50.7834042
+            ],
+            [
+              6.0576698,
+              50.7834119
+            ],
+            [
+              6.057643,
+              50.7833372
+            ],
+            [
+              6.0576714,
+              50.7833318
+            ],
+            [
+              6.0577474,
+              50.7833189
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886221"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886222",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "57",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "house"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0586599,
+              50.7827834
+            ],
+            [
+              6.0585913,
+              50.7828161
+            ],
+            [
+              6.0585459,
+              50.7827779
+            ],
+            [
+              6.058512,
+              50.7827941
+            ],
+            [
+              6.0584618,
+              50.7827518
+            ],
+            [
+              6.0585102,
+              50.7827288
+            ],
+            [
+              6.0585265,
+              50.7827425
+            ],
+            [
+              6.0585801,
+              50.782717
+            ],
+            [
+              6.0586599,
+              50.7827834
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886222"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886228",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0593434,
+              50.7830124
+            ],
+            [
+              6.0593009,
+              50.7829803
+            ],
+            [
+              6.0593423,
+              50.7829584
+            ],
+            [
+              6.0593847,
+              50.7829905
+            ],
+            [
+              6.0593434,
+              50.7830124
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886228"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886229",
+        "building": "garage"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0577071,
+              50.7834228
+            ],
+            [
+              6.0576873,
+              50.7834042
+            ],
+            [
+              6.0577677,
+              50.783372
+            ],
+            [
+              6.057785,
+              50.7833906
+            ],
+            [
+              6.0577071,
+              50.7834228
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886229"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/186886237",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0582625,
+              50.7832262
+            ],
+            [
+              6.0582243,
+              50.7831893
+            ],
+            [
+              6.0582621,
+              50.7831731
+            ],
+            [
+              6.0583003,
+              50.7832102
+            ],
+            [
+              6.0582625,
+              50.7832262
+            ]
+          ]
+        ]
+      },
+      "id": "way/186886237"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/187483354",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0568957,
+              50.7829126
+            ],
+            [
+              6.0568957,
+              50.7828766
+            ],
+            [
+              6.0569527,
+              50.7828766
+            ],
+            [
+              6.0569527,
+              50.7829126
+            ],
+            [
+              6.0568957,
+              50.7829126
+            ]
+          ]
+        ]
+      },
+      "id": "way/187483354"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/187483385",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0571019,
+              50.7828926
+            ],
+            [
+              6.0570961,
+              50.7828615
+            ],
+            [
+              6.0571489,
+              50.7828575
+            ],
+            [
+              6.0571547,
+              50.7828886
+            ],
+            [
+              6.0571019,
+              50.7828926
+            ]
+          ]
+        ]
+      },
+      "id": "way/187483385"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/187483419",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0569865,
+              50.7827975
+            ],
+            [
+              6.0570527,
+              50.7827964
+            ],
+            [
+              6.0570538,
+              50.7828231
+            ],
+            [
+              6.0569876,
+              50.7828242
+            ],
+            [
+              6.0569865,
+              50.7827975
+            ]
+          ]
+        ]
+      },
+      "id": "way/187483419"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/189993215",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "91",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0571256,
+              50.7842783
+            ],
+            [
+              6.0569596,
+              50.784332
+            ],
+            [
+              6.0568895,
+              50.784244
+            ],
+            [
+              6.0568754,
+              50.7842264
+            ],
+            [
+              6.0569566,
+              50.7842005
+            ],
+            [
+              6.0569796,
+              50.7842293
+            ],
+            [
+              6.0570642,
+              50.7842025
+            ],
+            [
+              6.0571256,
+              50.7842783
+            ]
+          ]
+        ]
+      },
+      "id": "way/189993215"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/189993216",
+        "building": "garages"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0572416,
+              50.7842088
+            ],
+            [
+              6.0571869,
+              50.784143
+            ],
+            [
+              6.0572617,
+              50.7841181
+            ],
+            [
+              6.0573244,
+              50.7841935
+            ],
+            [
+              6.0572846,
+              50.7842067
+            ],
+            [
+              6.0572766,
+              50.7841972
+            ],
+            [
+              6.0572416,
+              50.7842088
+            ]
+          ]
+        ]
+      },
+      "id": "way/189993216"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/189993463",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "2",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnstieg",
+        "building": "office"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0576185,
+              50.7838459
+            ],
+            [
+              6.0576631,
+              50.7838308
+            ],
+            [
+              6.05774,
+              50.7838047
+            ],
+            [
+              6.0578086,
+              50.7838855
+            ],
+            [
+              6.0577064,
+              50.7839202
+            ],
+            [
+              6.0576741,
+              50.7838822
+            ],
+            [
+              6.0576549,
+              50.7838888
+            ],
+            [
+              6.0576185,
+              50.7838459
+            ]
+          ]
+        ]
+      },
+      "id": "way/189993463"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/189993464",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "85a",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "apartments",
+        "building:levels": "2",
+        "roof:levels": "1",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.057529,
+              50.7840227
+            ],
+            [
+              6.0576032,
+              50.7841106
+            ],
+            [
+              6.0574849,
+              50.7841498
+            ],
+            [
+              6.0574108,
+              50.7840617
+            ],
+            [
+              6.057529,
+              50.7840227
+            ]
+          ]
+        ]
+      },
+      "id": "way/189993464"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/189993465",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "87",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "apartments",
+        "building:levels": "2",
+        "roof:levels": "1",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0574108,
+              50.7840617
+            ],
+            [
+              6.0574849,
+              50.7841498
+            ],
+            [
+              6.057372,
+              50.7841877
+            ],
+            [
+              6.057298,
+              50.7840996
+            ],
+            [
+              6.0574108,
+              50.7840617
+            ]
+          ]
+        ]
+      },
+      "id": "way/189993465"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/218907639",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "53",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0606572,
+              50.7827087
+            ],
+            [
+              6.0606906,
+              50.7826941
+            ],
+            [
+              6.0606653,
+              50.7826708
+            ],
+            [
+              6.0607723,
+              50.7826242
+            ],
+            [
+              6.060866,
+              50.7827107
+            ],
+            [
+              6.0607244,
+              50.7827724
+            ],
+            [
+              6.0606572,
+              50.7827087
+            ]
+          ]
+        ]
+      },
+      "id": "way/218907639"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/218907640",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "57",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0603013,
+              50.7828642
+            ],
+            [
+              6.0603543,
+              50.7828377
+            ],
+            [
+              6.0603384,
+              50.7828249
+            ],
+            [
+              6.0603861,
+              50.7828011
+            ],
+            [
+              6.0604348,
+              50.782842
+            ],
+            [
+              6.06041,
+              50.7828544
+            ],
+            [
+              6.0604567,
+              50.782892
+            ],
+            [
+              6.0603817,
+              50.7829295
+            ],
+            [
+              6.0603013,
+              50.7828642
+            ]
+          ]
+        ]
+      },
+      "id": "way/218907640"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/218907642",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "81a",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0581895,
+              50.7837935
+            ],
+            [
+              6.0582885,
+              50.7838752
+            ],
+            [
+              6.0582176,
+              50.7839095
+            ],
+            [
+              6.0581186,
+              50.7838278
+            ],
+            [
+              6.0581895,
+              50.7837935
+            ]
+          ]
+        ]
+      },
+      "id": "way/218907642"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/218907643",
+        "building": "hut"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.05839,
+              50.7835586
+            ],
+            [
+              6.058365,
+              50.7835358
+            ],
+            [
+              6.0584227,
+              50.7835104
+            ],
+            [
+              6.0584477,
+              50.7835332
+            ],
+            [
+              6.05839,
+              50.7835586
+            ]
+          ]
+        ]
+      },
+      "id": "way/218907643"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/218907644",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "61",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0599619,
+              50.783025
+            ],
+            [
+              6.0600159,
+              50.7829998
+            ],
+            [
+              6.0599987,
+              50.782985
+            ],
+            [
+              6.0600477,
+              50.7829622
+            ],
+            [
+              6.0600953,
+              50.7830033
+            ],
+            [
+              6.060069,
+              50.7830156
+            ],
+            [
+              6.0601178,
+              50.7830577
+            ],
+            [
+              6.0600391,
+              50.7830943
+            ],
+            [
+              6.0599619,
+              50.783025
+            ]
+          ]
+        ]
+      },
+      "id": "way/218907644"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/218907645",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "65",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "semidetached_house",
+        "building:levels": "1",
+        "roof:levels": "2",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0595862,
+              50.7831673
+            ],
+            [
+              6.0596472,
+              50.783135
+            ],
+            [
+              6.0596178,
+              50.7831119
+            ],
+            [
+              6.0596704,
+              50.7830852
+            ],
+            [
+              6.0597119,
+              50.7831178
+            ],
+            [
+              6.05968,
+              50.7831341
+            ],
+            [
+              6.0597459,
+              50.7831859
+            ],
+            [
+              6.059659,
+              50.7832268
+            ],
+            [
+              6.0595862,
+              50.7831673
+            ]
+          ]
+        ]
+      },
+      "id": "way/218907645"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/218907646",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "79",
+        "addr:postcode": "52074",
+        "addr:street": "Seffenter Weg",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0584165,
+              50.7837102
+            ],
+            [
+              6.0584943,
+              50.7837745
+            ],
+            [
+              6.0584191,
+              50.7838109
+            ],
+            [
+              6.0583739,
+              50.7837736
+            ],
+            [
+              6.0583442,
+              50.783788
+            ],
+            [
+              6.0582895,
+              50.7837428
+            ],
+            [
+              6.0583217,
+              50.7837273
+            ],
+            [
+              6.0583437,
+              50.7837454
+            ],
+            [
+              6.0584165,
+              50.7837102
+            ]
+          ]
+        ]
+      },
+      "id": "way/218907646"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/219828598",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0572801,
+              50.7836748
+            ],
+            [
+              6.0572916,
+              50.7836755
+            ],
+            [
+              6.0573068,
+              50.7837702
+            ],
+            [
+              6.057254,
+              50.7837756
+            ],
+            [
+              6.0572371,
+              50.783677
+            ],
+            [
+              6.0572801,
+              50.7836748
+            ]
+          ]
+        ]
+      },
+      "id": "way/219828598"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/219828600",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "2",
+        "addr:postcode": "52074",
+        "addr:street": "An den Finkenweiden",
+        "building": "semidetached_house"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0572249,
+              50.7835603
+            ],
+            [
+              6.0573085,
+              50.783556
+            ],
+            [
+              6.0573183,
+              50.7836335
+            ],
+            [
+              6.0572947,
+              50.7836347
+            ],
+            [
+              6.0572751,
+              50.7836357
+            ],
+            [
+              6.0572801,
+              50.7836748
+            ],
+            [
+              6.0572371,
+              50.783677
+            ],
+            [
+              6.0572249,
+              50.7835603
+            ]
+          ]
+        ]
+      },
+      "id": "way/219828600"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/219828605",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.057254,
+              50.7837756
+            ],
+            [
+              6.0571695,
+              50.7837798
+            ],
+            [
+              6.0571575,
+              50.7836874
+            ],
+            [
+              6.0572031,
+              50.7836849
+            ],
+            [
+              6.057202,
+              50.7836788
+            ],
+            [
+              6.0572371,
+              50.783677
+            ],
+            [
+              6.057254,
+              50.7837756
+            ]
+          ]
+        ]
+      },
+      "id": "way/219828605"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/219916938",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "1",
+        "addr:postcode": "52074",
+        "addr:street": "An den Finkenweiden",
+        "building": "yes"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0571578,
+              50.7832882
+            ],
+            [
+              6.0571403,
+              50.7831409
+            ],
+            [
+              6.0572519,
+              50.7831358
+            ],
+            [
+              6.057262,
+              50.7832246
+            ],
+            [
+              6.0572423,
+              50.7832255
+            ],
+            [
+              6.0572431,
+              50.7832352
+            ],
+            [
+              6.0572489,
+              50.7832841
+            ],
+            [
+              6.0571578,
+              50.7832882
+            ]
+          ]
+        ]
+      },
+      "id": "way/219916938"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/239429004",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "63",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "apartments",
+        "building:levels": "2",
+        "roof:colour": "grey",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0577034,
+              50.7829254
+            ],
+            [
+              6.057834,
+              50.7829106
+            ],
+            [
+              6.0578461,
+              50.7829494
+            ],
+            [
+              6.0578566,
+              50.7829867
+            ],
+            [
+              6.0577252,
+              50.7830017
+            ],
+            [
+              6.0577034,
+              50.7829254
+            ]
+          ]
+        ]
+      },
+      "id": "way/239429004"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/239429005",
+        "addr:city": "Aachen",
+        "addr:country": "DE",
+        "addr:housenumber": "65",
+        "addr:postcode": "52074",
+        "addr:street": "Hörnhang",
+        "building": "apartments",
+        "building:levels": "2",
+        "roof:colour": "grey",
+        "roof:shape": "gabled"
+      },
+      "geometry": {
+        "type": "Polygon",
+        "coordinates": [
+          [
+            [
+              6.0577252,
+              50.7830017
+            ],
+            [
+              6.0576576,
+              50.7830098
+            ],
+            [
+              6.0575937,
+              50.7830167
+            ],
+            [
+              6.0575728,
+              50.7829402
+            ],
+            [
+              6.0577034,
+              50.7829254
+            ],
+            [
+              6.0577252,
+              50.7830017
+            ]
+          ]
+        ]
+      },
+      "id": "way/239429005"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/8028255",
+        "bicycle": "yes",
+        "foot": "yes",
+        "highway": "living_street",
+        "lit": "yes",
+        "name": "Seffenter Weg",
+        "name:etymology:wikidata": "Q2097161",
+        "source": "image",
+        "surface": "paving_stones"
+      },
+      "geometry": {
+        "type": "LineString",
+        "coordinates": [
+          [
+            6.0581453,
+            50.7840116
+          ],
+          [
+            6.0584415,
+            50.7838943
+          ],
+          [
+            6.0585907,
+            50.7838324
+          ],
+          [
+            6.0591573,
+            50.7835686
+          ],
+          [
+            6.0595384,
+            50.7833815
+          ],
+          [
+            6.0597673,
+            50.7832705
+          ],
+          [
+            6.0599424,
+            50.7832002
+          ],
+          [
+            6.0602353,
+            50.7830674
+          ],
+          [
+            6.0605946,
+            50.7829044
+          ],
+          [
+            6.060657,
+            50.7829536
+          ]
+        ]
+      },
+      "id": "way/8028255"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/8028256",
+        "highway": "residential",
+        "lit": "yes",
+        "maxspeed": "30",
+        "name": "Hörnhang",
+        "note": "Einfahrtsbeschränkung nur in Richtung Hörnstieg ausgeschildert",
+        "surface": "asphalt",
+        "vehicle:backward": "destination"
+      },
+      "geometry": {
+        "type": "LineString",
+        "coordinates": [
+          [
+            6.0573833,
+            50.7831826
+          ],
+          [
+            6.0575113,
+            50.7831612
+          ],
+          [
+            6.0578504,
+            50.7831044
+          ],
+          [
+            6.0581165,
+            50.7830514
+          ],
+          [
+            6.0583294,
+            50.7829918
+          ],
+          [
+            6.0587031,
+            50.7828334
+          ],
+          [
+            6.0590825,
+            50.7826148
+          ],
+          [
+            6.0595912,
+            50.782249
+          ],
+          [
+            6.0598066,
+            50.7821128
+          ],
+          [
+            6.060008,
+            50.7820149
+          ],
+          [
+            6.060054,
+            50.7819925
+          ],
+          [
+            6.0603394,
+            50.7818917
+          ],
+          [
+            6.0605082,
+            50.7818427
+          ],
+          [
+            6.0606994,
+            50.7818003
+          ],
+          [
+            6.0609157,
+            50.7817741
+          ],
+          [
+            6.0610106,
+            50.7817626
+          ],
+          [
+            6.0612303,
+            50.7817547
+          ],
+          [
+            6.0614191,
+            50.7817566
+          ],
+          [
+            6.0615906,
+            50.7817698
+          ],
+          [
+            6.061809,
+            50.7817998
+          ],
+          [
+            6.0620338,
+            50.7818471
+          ],
+          [
+            6.0622274,
+            50.7818997
+          ],
+          [
+            6.0624143,
+            50.7819741
+          ],
+          [
+            6.0624678,
+            50.7819973
+          ],
+          [
+            6.0626248,
+            50.7820961
+          ],
+          [
+            6.0627376,
+            50.7821865
+          ],
+          [
+            6.0628136,
+            50.7822787
+          ],
+          [
+            6.0628277,
+            50.7822957
+          ],
+          [
+            6.0628915,
+            50.7823678
+          ]
+        ]
+      },
+      "id": "way/8028256"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/8028257",
+        "cycleway:both": "no",
+        "highway": "residential",
+        "lit": "yes",
+        "maxspeed": "30",
+        "motorcar:backward": "destination",
+        "motorcycle:backward": "destination",
+        "name": "An den Finkenweiden",
+        "note": "Einfahrtsbeschränkung nur in Richtung Hörnstieg ausgeschildert",
+        "sidewalk": "both",
+        "surface": "asphalt"
+      },
+      "geometry": {
+        "type": "LineString",
+        "coordinates": [
+          [
+            6.0574803,
+            50.7834648
+          ],
+          [
+            6.0571106,
+            50.7834848
+          ],
+          [
+            6.0565977,
+            50.783485
+          ],
+          [
+            6.0559676,
+            50.7834087
+          ],
+          [
+            6.0555469,
+            50.7833073
+          ],
+          [
+            6.0552155,
+            50.783184
+          ],
+          [
+            6.0549953,
+            50.783089
+          ],
+          [
+            6.0547155,
+            50.782937
+          ],
+          [
+            6.0544587,
+            50.7827703
+          ],
+          [
+            6.0542366,
+            50.7825632
+          ],
+          [
+            6.0540916,
+            50.7823912
+          ],
+          [
+            6.0539719,
+            50.7822107
+          ],
+          [
+            6.0537886,
+            50.7819209
+          ],
+          [
+            6.0537629,
+            50.7818586
+          ]
+        ]
+      },
+      "id": "way/8028257"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/9182668",
+        "highway": "residential",
+        "lit": "yes",
+        "maxspeed": "30",
+        "name": "Hörnstieg",
+        "surface": "asphalt",
+        "vehicle": "destination"
+      },
+      "geometry": {
+        "type": "LineString",
+        "coordinates": [
+          [
+            6.0582157,
+            50.7840594
+          ],
+          [
+            6.0581453,
+            50.7840116
+          ],
+          [
+            6.0581179,
+            50.7839928
+          ],
+          [
+            6.0575797,
+            50.783623
+          ],
+          [
+            6.0574803,
+            50.7834648
+          ],
+          [
+            6.0573833,
+            50.7831826
+          ],
+          [
+            6.0572573,
+            50.7827732
+          ],
+          [
+            6.0571672,
+            50.7824807
+          ],
+          [
+            6.0571178,
+            50.7823202
+          ]
+        ]
+      },
+      "id": "way/9182668"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/75221792",
+        "bicycle": "yes",
+        "hgv": "no",
+        "highway": "tertiary",
+        "lanes": "2",
+        "lit": "yes",
+        "maxspeed": "30",
+        "name": "Seffenter Weg",
+        "name:etymology:wikidata": "Q2097161",
+        "shoulder": "no",
+        "surface": "asphalt",
+        "zone:maxspeed": "DE:30"
+      },
+      "geometry": {
+        "type": "LineString",
+        "coordinates": [
+          [
+            6.0549145,
+            50.7853459
+          ],
+          [
+            6.0550531,
+            50.7852585
+          ],
+          [
+            6.0551851,
+            50.785171
+          ],
+          [
+            6.0553383,
+            50.7850723
+          ],
+          [
+            6.0553876,
+            50.7850422
+          ],
+          [
+            6.0554954,
+            50.7849814
+          ],
+          [
+            6.0556079,
+            50.7849251
+          ],
+          [
+            6.0561664,
+            50.7847179
+          ],
+          [
+            6.0573576,
+            50.7843197
+          ],
+          [
+            6.057428,
+            50.7842977
+          ],
+          [
+            6.0579104,
+            50.7841469
+          ],
+          [
+            6.0581149,
+            50.7840889
+          ],
+          [
+            6.0582157,
+            50.7840594
+          ],
+          [
+            6.0583887,
+            50.7839995
+          ],
+          [
+            6.0587286,
+            50.7838598
+          ],
+          [
+            6.0587869,
+            50.7838323
+          ],
+          [
+            6.0591738,
+            50.7836499
+          ],
+          [
+            6.0596066,
+            50.7834458
+          ],
+          [
+            6.0605651,
+            50.7829939
+          ],
+          [
+            6.060657,
+            50.7829536
+          ],
+          [
+            6.0609983,
+            50.7828039
+          ],
+          [
+            6.0613656,
+            50.7827012
+          ],
+          [
+            6.0624412,
+            50.7824725
+          ],
+          [
+            6.0628915,
+            50.7823678
+          ],
+          [
+            6.0631852,
+            50.7822965
+          ],
+          [
+            6.0633257,
+            50.7822594
+          ],
+          [
+            6.0638828,
+            50.7821114
+          ],
+          [
+            6.0643662,
+            50.7819865
+          ],
+          [
+            6.0644059,
+            50.7819756
+          ],
+          [
+            6.0645811,
+            50.7819271
+          ]
+        ]
+      },
+      "id": "way/75221792"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/127204147",
+        "access": "private",
+        "highway": "service"
+      },
+      "geometry": {
+        "type": "LineString",
+        "coordinates": [
+          [
+            6.0608202,
+            50.7833132
+          ],
+          [
+            6.0605961,
+            50.7830283
+          ],
+          [
+            6.0605651,
+            50.7829939
+          ]
+        ]
+      },
+      "id": "way/127204147"
+    },
+    {
+      "type": "Feature",
+      "properties": {
+        "@id": "way/147150983",
+        "access": "private",
+        "highway": "service"
+      },
+      "geometry": {
+        "type": "LineString",
+        "coordinates": [
+          [
+            6.0621632,
+            50.7828901
+          ],
+          [
+            6.0608202,
+            50.7833132
+          ],
+          [
+            6.0602969,
+            50.7834994
+          ]
+        ]
+      },
+      "id": "way/147150983"
+    }
+  ]
+}
\ No newline at end of file
-- 
GitLab