OpenStreetMap

Mit dem Laden der Karte akzeptieren Sie die Datenschutzerklärung von OpenStreetMap Foundation.
Mehr erfahren

Karte laden

ICAgICAgICA8ZGl2IAogICAgICAgICAgICBpZD0ibGVhZmxldC1tYXAtOGY0M2JhZjE2MjVjYyIgCiAgICAgICAgICAgIGNsYXNzPSJsZWFmbGV0LW1hcCIgCiAgICAgICAgICAgIHN0eWxlPSJoZWlnaHQ6NTAwcHg7IHdpZHRoOjEwMCU7Ij48L2Rpdj4KICAgICAgICA8c2NyaXB0PgogICAgICAgIHdpbmRvdy5XUExlYWZsZXRNYXBQbHVnaW4gPSB3aW5kb3cuV1BMZWFmbGV0TWFwUGx1Z2luIHx8IFtdOwogICAgICAgIHdpbmRvdy5XUExlYWZsZXRNYXBQbHVnaW4ucHVzaChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIHZhciBiYXNlVXJsID0gJ2h0dHBzOi8ve3N9LnRpbGUub3BlbnN0cmVldG1hcC5vcmcve3p9L3t4fS97eX0ucG5nJywKICAgICAgICAgICAgICAgIGJhc2UgPSAoIWJhc2VVcmwgJiYgd2luZG93Lk1RKSA/IAogICAgICAgICAgICAgICAgICAgIE1RLm1hcExheWVyKCkgOiBMLnRpbGVMYXllcihiYXNlVXJsLCB7IAogICAgICAgICAgICAgICAgICAgICAgICBzdWJkb21haW5zOiAnYWJjJwogICAgICAgICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgICAgb3B0aW9ucyA9IEwuVXRpbC5leHRlbmQoe30sIHsKICAgICAgICAgICAgICAgICAgICBtYXhab29tOiAxOCwKICAgICAgICAgICAgICAgICAgICBtaW5ab29tOiAwLAogICAgICAgICAgICAgICAgICAgIGxheWVyczogW2Jhc2VdLAogICAgICAgICAgICAgICAgICAgIHpvb21Db250cm9sOiAxLAogICAgICAgICAgICAgICAgICAgIHNjcm9sbFdoZWVsWm9vbTogMCwKICAgICAgICAgICAgICAgICAgICBkb3VibGVDbGlja1pvb206IDAsCiAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRpb25Db250cm9sOiBmYWxzZQogICAgICAgICAgICAgICAgfSwge30pLAogICAgICAgICAgICAgICAgbWFwID0gTC5tYXAoJ2xlYWZsZXQtbWFwLThmNDNiYWYxNjI1Y2MnLCBvcHRpb25zKQogICAgICAgICAgICAgICAgICAgIC5zZXRWaWV3KFs1MC4yNjQ2NDExLDEwLjk2NTE2MDFdLDE1KTsKICAgICAgICAgICAgaWYgKDApIHsKICAgICAgICAgICAgICAgIG1hcC5fc2hvdWxkRml0Qm91bmRzID0gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGF0dENvbnRyb2wgPSBMLmNvbnRyb2wuYXR0cmlidXRpb24oe3ByZWZpeDpmYWxzZX0pLmFkZFRvKG1hcCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dENvbnRyb2wuYWRkQXR0cmlidXRpb24oJzxhIGhyZWY9Imh0dHA6Ly9sZWFmbGV0anMuY29tIiB0aXRsZT0iQSBKUyBsaWJyYXJ5IGZvciBpbnRlcmFjdGl2ZSBtYXBzIj5MZWFmbGV0PC9hPicpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRDb250cm9sLmFkZEF0dHJpYnV0aW9uKCdcclxuwqkgPGEgaHJlZj0iaHR0cDovL3d3dy5vcGVuc3RyZWV0bWFwLm9yZy9jb3B5cmlnaHQiPk9wZW5TdHJlZXRNYXA8L2E+IGNvbnRyaWJ1dG9ycycpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LldQTGVhZmxldE1hcFBsdWdpbi5tYXBzLnB1c2gobWFwKTsKICAgICAgICB9KTsgLy8gZW5kIGFkZAogICAgICAgIDwvc2NyaXB0Pg0KICAgICAgICA8c2NyaXB0PgogICAgICAgIHdpbmRvdy5XUExlYWZsZXRNYXBQbHVnaW4gPSB3aW5kb3cuV1BMZWFmbGV0TWFwUGx1Z2luIHx8IFtdOwogICAgICAgIHdpbmRvdy5XUExlYWZsZXRNYXBQbHVnaW4ucHVzaChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIHZhciBtYXJrZXJfb3B0aW9ucyA9IChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICB2YXIgX29wdGlvbnMgPSB7Imljb25VcmwiOiJcL3dwLWNvbnRlbnRcL3VwbG9hZHNcLzIwMTZcLzAzXC9waW4ucG5nIiwiaWNvblNpemUiOlsiNDAsNDAiXSwiaWNvbkFuY2hvciI6WyIyMCw0MCJdfTsKICAgICAgICAgICAgICAgIHZhciBpY29uQXJyYXlzID0gWwogICAgICAgICAgICAgICAgICAgICdpY29uU2l6ZScsIAogICAgICAgICAgICAgICAgICAgICdpY29uQW5jaG9yJywgCiAgICAgICAgICAgICAgICAgICAgJ3NoYWRvd1NpemUnLCAKICAgICAgICAgICAgICAgICAgICAnc2hhZG93QW5jaG9yJywKICAgICAgICAgICAgICAgICAgICAncG9wdXBBbmNob3InCiAgICAgICAgICAgICAgICBdOwogICAgICAgICAgICAgICAgdmFyIGRlZmF1bHRfaWNvbiA9IEwuSWNvbi5EZWZhdWx0LnByb3RvdHlwZS5vcHRpb25zOwogICAgICAgICAgICAgICAgaWYgKF9vcHRpb25zLmljb25VcmwpIHsKICAgICAgICAgICAgICAgICAgICAvLyBhcnJheXMgYXJlIHN0cmluZ3MsIHVuZm9ydHVuYXRlbHkuLi4KICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMCwgbGVuID0gaWNvbkFycmF5cy5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgb3B0aW9uX25hbWUgPSBpY29uQXJyYXlzW2ldLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uID0gX29wdGlvbnNbIG9wdGlvbl9uYW1lIF07CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnZlcnQgIjEsMiIgdG8gWzEsIDJdOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAob3B0aW9uKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgYXJyID0gb3B0aW9uLmpvaW4oJycpLnNwbGl0KCcsJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBhcnJheS5tYXAgZm9yIGllPDkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGogPSAwLCBsZW5KID0gYXJyLmxlbmd0aDsgaiA8IGxlbko7IGorKykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycltqXSA9IE51bWJlcihhcnJbal0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgX29wdGlvbnNbIG9wdGlvbl9uYW1lIF0gPSBhcnI7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgLy8gZGVmYXVsdCBwb3B1cEFuY2hvcgogICAgICAgICAgICAgICAgICAgIGlmICghX29wdGlvbnMucG9wdXBBbmNob3IpIHsKICAgICAgICAgICAgICAgICAgICAgICAgLy8gc2V0IChyb3VnaGx5KSB0byBzaXplIG9mIGljb24KICAgICAgICAgICAgICAgICAgICAgICAgX29wdGlvbnMucG9wdXBBbmNob3IgPSAoZnVuY3Rpb24gKGlfc2l6ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gY29weSBhcnJheQogICAgICAgICAgICAgICAgICAgICAgICAgICAgaV9zaXplID0gaV9zaXplLnNsaWNlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGludmVyc2UgY29vcmRpbmF0ZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlfc2l6ZVswXSA9IDA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpX3NpemVbMV0gKj0gLTE7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBib3R0b20gcG9zaXRpb24gb24gcG9wdXAgaXMgN3B4CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpX3NpemVbMV0gLT0gMzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpX3NpemU7CiAgICAgICAgICAgICAgICAgICAgICAgIH0pKF9vcHRpb25zLmljb25TaXplIHx8IGRlZmF1bHRfaWNvbi5pY29uU2l6ZSk7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBfb3B0aW9ucy5pY29uID0gbmV3IEwuSWNvbiggX29wdGlvbnMgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiBfb3B0aW9uczsKICAgICAgICAgICAgfSkoKTsKICAgICAgICAgICAgdmFyIGRyYWdnYWJsZSA9IG1hcmtlcl9vcHRpb25zLmRyYWdnYWJsZTsKICAgICAgICAgICAgdmFyIG1hcmtlciA9IEwubWFya2VyKAogICAgICAgICAgICAgICAgWzUwLjI2NDY0MTEsMTAuOTY1MTYwMV0sIAogICAgICAgICAgICAgICAgbWFya2VyX29wdGlvbnMKICAgICAgICAgICAgKTsKICAgICAgICAgICAgdmFyIG1hcCA9IHdpbmRvdy5XUExlYWZsZXRNYXBQbHVnaW4uZ2V0Q3VycmVudE1hcCgpOwogICAgICAgICAgICB2YXIgaXNfaW1hZ2UgPSBtYXAuaXNfaW1hZ2VfbWFwOwogICAgICAgICAgICB2YXIgZ3JvdXAgPSB3aW5kb3cuV1BMZWFmbGV0TWFwUGx1Z2luLmdldEN1cnJlbnRHcm91cCgpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoZHJhZ2dhYmxlKSB7CiAgICAgICAgICAgICAgICBtYXJrZXIub24oJ2RyYWdlbmQnLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGxhdGxuZyA9IHRoaXMuZ2V0TGF0TG5nKCksCiAgICAgICAgICAgICAgICAgICAgICAgIGxhdCA9IGxhdGxuZy5sYXQsCiAgICAgICAgICAgICAgICAgICAgICAgIGxuZyA9IGxhdGxuZy5sbmc7CiAgICAgICAgICAgICAgICAgICAgaWYgKGlzX2ltYWdlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdsZWFmbGV0LW1hcmtlciB5PScgKyBsYXQgKyAnIHg9JyArIGxuZyk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ2xlYWZsZXQtbWFya2VyIGxhdD0nICsgbGF0ICsgJyBsbmc9JyArIGxuZyk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgbWFya2VyLmFkZFRvKCBncm91cCApOwogICAgICAgICAgICBtYXJrZXIuYmluZFBvcHVwKHdpbmRvdy5XUExlYWZsZXRNYXBQbHVnaW4udW5lc2NhcGUoJyZsdDtzdHJvbmcmZ3Q7Rm9yc3RlciAmYW1wOyBQYXJ0bmVyJmx0Oy9zdHJvbmcmZ3Q7Jmx0O2JyJmd0O1N0ZXVlcmJlcmF0dW5nc2dlc2VsbHNjaGFmdCBtYkImbHQ7YnImZ3Q7Vm9yZGVyZSBLcmV1emdhc3NlIDgmbHQ7YnImZ3Q7OTY0NTAgQ29idXJnJmx0O2JyJmd0O1RlbGVmb246IDA5NTYxLzgwNTgtMCZsdDticiZndDtUZWxlZmF4OiAwOTU2MS84MDU4LTMwJykpOyAgICAgICAgICAgIHdpbmRvdy5XUExlYWZsZXRNYXBQbHVnaW4ubWFya2Vycy5wdXNoKCBtYXJrZXIgKTsKICAgICAgICB9KTsgLy8gZW5kIGFkZCBmdW5jdGlvbgogICAgICAgIDwvc2NyaXB0PgogICAgICAgIA==

Service

Kontakt

Formulare zum Download

Terminanfrage

Bitte füllen Sie alle mit * gekennzeichneten Felder aus.

8 + 0 = ?