From d6b8e8679cb1cacd59721bf6544c8bacfa87d71a Mon Sep 17 00:00:00 2001 From: Patrick Brosi Date: Wed, 19 Aug 2026 11:22:15 +0200 Subject: [PATCH 1/7] add failing tests for self-check triples with duplicates --- src/spatialjoin/tests/TestMain.cpp | 28 ++++++++++++++++++++++++- src/spatialjoin/tests/datasets/issue-23 | 2 ++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/src/spatialjoin/tests/TestMain.cpp b/src/spatialjoin/tests/TestMain.cpp index e7fee0b..21e991a 100644 --- a/src/spatialjoin/tests/TestMain.cpp +++ b/src/spatialjoin/tests/TestMain.cpp @@ -856,6 +856,22 @@ int main(int, char**) { std::string::npos); } + { + RunStats stats; + auto res = fullRun(TEST_DATASET_DIR "/issue-23", cfg, &stats); + TEST(stats.numReferences, ==, 4); + + size_t a = res.find("$lsa equals lsb$"); + TEST(a != std::string::npos); + // no second time! + TEST(res.find("$lsa\tequals\tlsb$", a+1) == std::string::npos); + + size_t aa = res.find("$lsb equals lsc$"); + TEST(aa != std::string::npos); + // no second time! + TEST(res.find("$lsb equals lsc$", aa+1) == std::string::npos); + } + { RunStats stats; auto res = fullRun(TEST_DATASET_DIR "/references", cfg, &stats); @@ -1056,13 +1072,18 @@ int main(int, char**) { { RunStats stats; auto res = fullRun(TEST_DATASET_DIR "/issue-23", cfg, &stats); - TEST(stats.numReferences, ==, 2); + TEST(stats.numReferences, ==, 4); size_t a = res.find("$lsa\t1FFF0FFF2\tlsb$"); TEST(a != std::string::npos); // no second time! TEST(res.find("$lsa\t1FFF0FFF2\tlsb$", a+1) == std::string::npos); + size_t aa = res.find("$lsb\t1FFF0FFF2\tlsc$"); + TEST(aa != std::string::npos); + // no second time! + TEST(res.find("$lsb\t1FFF0FFF2\tlsc$", aa+1) == std::string::npos); + size_t b = res.find("$lsb\t1FFF0FFF2\tlsa$"); TEST(b != std::string::npos); // no second time! @@ -1077,6 +1098,11 @@ int main(int, char**) { TEST(d != std::string::npos); // no second time! TEST(res.find("$polyb\t2FFF1FFF2\tpolya$", d+1) == std::string::npos); + + size_t e = res.find("$polyc\t2FFF1FFF2\tpolyb$"); + TEST(d != std::string::npos); + // no second time! + TEST(res.find("$polyc\t2FFF1FFF2\tpolyb$", e+1) == std::string::npos); } { RunStats stats; diff --git a/src/spatialjoin/tests/datasets/issue-23 b/src/spatialjoin/tests/datasets/issue-23 index e834558..110d182 100644 --- a/src/spatialjoin/tests/datasets/issue-23 +++ b/src/spatialjoin/tests/datasets/issue-23 @@ -1,4 +1,6 @@ lsa LINESTRING(8.0000000 50.0000000,7.9999408 50.0125663,7.9997631 50.0251321,7.9994671 50.0376969,7.9990526 50.0502602,7.9985197 50.0628215,7.9978684 50.0753804,7.9970988 50.0879362,7.9962109 50.1004886,7.9952047 50.1130371,7.9940802 50.1255810,7.9928375 50.1381201,7.9914767 50.1506536,7.9899978 50.1631812,7.9884008 50.1757024,7.9866859 50.1882166,7.9848531 50.2007234,7.9829024 50.2132223,7.9808339 50.2257128,7.9786478 50.2381943,7.9763441 50.2506665,7.9739229 50.2631287,7.9713843 50.2755806,7.9687284 50.2880216,7.9659552 50.3004512,7.9630650 50.3128689,7.9600578 50.3252743,7.9569338 50.3376669,7.9536930 50.3500461,7.9503356 50.3624115,7.9468618 50.3747626,7.9432716 50.3870989,7.9395652 50.3994200,7.9357427 50.4117252,7.9318044 50.4240142,7.9277503 50.4362865,7.9235806 50.4485415,7.9192955 50.4607789,7.9148952 50.4729980,7.9103798 50.4851985,7.9057495 50.4973798,7.9010045 50.5095415,7.8961449 50.5216830,7.8911710 50.5338040,7.8860830 50.5459039,7.8808811 50.5579822,7.8755654 50.5700385,7.8701362 50.5820723,7.8645936 50.5940832,7.8589380 50.6060705,7.8531695 50.6180340,7.8472884 50.6299730,7.8412949 50.6418872,7.8351892 50.6537761,7.8289716 50.6656391,7.8226423 50.6774758,7.8162016 50.6892858,7.8096497 50.7010686,7.8029868 50.7128238,7.7962133 50.7245507,7.7893295 50.7362491,7.7823355 50.7479184,7.7752316 50.7595582,7.7680182 50.7711680,7.7606955 50.7827473,7.7532639 50.7942958,7.7457235 50.8058129,7.7380748 50.8172981,7.7303179 50.8287512,7.7224533 50.8401715,7.7144812 50.8515586,7.7064019 50.8629121,7.6982158 50.8742315,7.6899231 50.8855165,7.6815243 50.8967664,7.6730196 50.9079810,7.6644093 50.9191597,7.6556939 50.9303022,7.6468737 50.9414079,7.6379489 50.9524764,7.6289200 50.9635073,7.6197874 50.9745003,7.6105513 50.9854547,7.6012121 50.9963702,7.5917703 51.0072464,7.5822261 51.0180828,7.5725800 51.0288791,7.5628323 51.0396347,7.5529834 51.0503493,7.5430338 51.0610224,7.5329838 51.0716536,7.5228337 51.0822425,7.5125841 51.0927887,7.5022353 51.1032917,7.4917877 51.1137512,7.4812417 51.1241668,7.4705978 51.1345379,7.4598563 51.1448643,7.4490178 51.1551454,7.4380825 51.1653810,7.4270510 51.1755705,7.4159237 51.1857136,7.4047010 51.1958100,7.3933833 51.2058591,7.3819712 51.2158606,7.3704650 51.2258141,7.3588653 51.2357192,7.3471724 51.2455756,7.3353869 51.2553827,7.3235092 51.2651403,7.3115397 51.2748480,7.2994790 51.2845053,7.2873275 51.2941119,7.2750857 51.3036675,7.2627541 51.3131715,7.2503332 51.3226237,7.2378234 51.3320237,7.2252253 51.3413712,7.2125394 51.3506656,7.1997660 51.3599068,7.1869059 51.3690942,7.1739594 51.3782276,7.1609271 51.3873066,7.1478094 51.3963308,7.1346070 51.4052999,7.1213203 51.4142136,7.1079499 51.4230714,7.0944963 51.4318730,7.0809599 51.4406180,7.0673414 51.4493063,7.0536413 51.4579373,7.0398601 51.4665107,7.0259984 51.4750262,7.0120567 51.4834835,6.9980356 51.4918823,6.9839356 51.5002221,6.9697573 51.5085028,6.9555012 51.5167238,6.9411679 51.5248850,6.9267580 51.5329860,6.9122720 51.5410265,6.8977105 51.5490061,6.8830741 51.5569246,6.8683633 51.5647816,6.8535788 51.5725769,6.8387212 51.5803100,6.8237909 51.5879808,6.8087886 51.5955889,6.7937149 51.6031340,6.7785705 51.6106158,6.7633558 51.6180340,6.7480714 51.6253883,6.7327181 51.6326785,6.7172964 51.6399042,6.7018068 51.6470652,6.6862501 51.6541611,6.6706268 51.6611918,6.6549376 51.6681569,6.6391830 51.6750561,6.6233638 51.6818892,6.6074804 51.6886559,6.5915336 51.6953559,6.5755239 51.7019890,6.5594520 51.7085549,6.5433186 51.7150533,6.5271242 51.7214841,6.5108696 51.7278468,6.4945553 51.7341414,6.4781820 51.7403675,6.4617504 51.7465249,6.4452610 51.7526134,6.4287146 51.7586326,6.4121118 51.7645825,6.3954532 51.7704626,6.3787396 51.7762729,6.3619715 51.7820130,6.3451496 51.7876828,6.3282747 51.7932821,6.3113473 51.7988105,6.2943681 51.8042679,6.2773379 51.8096541,6.2602572 51.8149688,6.2431267 51.8202119,6.2259472 51.8253832,6.2087193 51.8304823,6.1914437 51.8355093,6.1741210 51.8404637,6.1567520 51.8453455,6.1393373 51.8501544,6.1218776 51.8548903,6.1043737 51.8595530,6.0868261 51.8641422,6.0692356 51.8686579,6.0516030 51.8730998,6.0339288 51.8774677,6.0162138 51.8817615,5.9984586 51.8859811,5.9806641 51.8901262,5.9628308 51.8941966,5.9449596 51.8981923,5.9270510 51.9021130,5.9091058 51.9059587,5.8911247 51.9097291,5.8731085 51.9134241,5.8550578 51.9170436,5.8369733 51.9205874,5.8188558 51.9240553,5.8007060 51.9274474,5.7825245 51.9307633,5.7643122 51.9340030,5.7460697 51.9371663,5.7277977 51.9402532,5.7094970 51.9432635,5.6911683 51.9461970,5.6728123 51.9490537,5.6544297 51.9518335,5.6360213 51.9545362,5.6175878 51.9571618,5.5991299 51.9597101,5.5806484 51.9621810,5.5621439 51.9645745,5.5436173 51.9668904,5.5250692 51.9691287,5.5065003 51.9712892,5.4879115 51.9733719,5.4693034 51.9753767,5.4506768 51.9773035,5.4320323 51.9791522,5.4133709 51.9809229,5.3946931 51.9826153,5.3759997 51.9842294,5.3572915 51.9857652,5.3385692 51.9872226,5.3198335 51.9886016,5.3010851 51.9899020,5.2823249 51.9911239,5.2635536 51.9922672,5.2447718 51.9933319,5.2259804 51.9943178,5.2071801 51.9952250,5.1883716 51.9960535,5.1695556 51.9968031,5.1507330 51.9974739,5.1319044 51.9980659,5.1130705 51.9985789,5.0942323 51.9990131,5.0753903 51.9993684,5.0565453 51.9996447,5.0376981 51.9998421,5.0188494 51.9999605,5.0000000 52.0000000,4.9811506 51.9999605,4.9623019 51.9998421,4.9434547 51.9996447,4.9246097 51.9993684,4.9057677 51.9990131,4.8869295 51.9985789,4.8680956 51.9980659,4.8492670 51.9974739,4.8304444 51.9968031,4.8116284 51.9960535,4.7928199 51.9952250,4.7740196 51.9943178,4.7552282 51.9933319,4.7364464 51.9922672,4.7176751 51.9911239,4.6989149 51.9899020,4.6801665 51.9886016,4.6614308 51.9872226,4.6427085 51.9857652,4.6240003 51.9842294,4.6053069 51.9826153,4.5866291 51.9809229,4.5679677 51.9791522,4.5493232 51.9773035,4.5306966 51.9753767,4.5120885 51.9733719,4.4934997 51.9712892,4.4749308 51.9691287,4.4563827 51.9668904,4.4378561 51.9645745,4.4193516 51.9621810,4.4008701 51.9597101,4.3824122 51.9571618,4.3639787 51.9545362,4.3455703 51.9518335,4.3271877 51.9490537,4.3088317 51.9461970,4.2905030 51.9432635,4.2722023 51.9402532,4.2539303 51.9371663,4.2356878 51.9340030,4.2174755 51.9307633,4.1992940 51.9274474,4.1811442 51.9240553,4.1630267 51.9205874,4.1449422 51.9170436,4.1268915 51.9134241,4.1088753 51.9097291,4.0908942 51.9059587,4.0729490 51.9021130,4.0550404 51.8981923,4.0371692 51.8941966,4.0193359 51.8901262,4.0015414 51.8859811,3.9837862 51.8817615,3.9660712 51.8774677,3.9483970 51.8730998,3.9307644 51.8686579,3.9131739 51.8641422,3.8956263 51.8595530,3.8781224 51.8548903,3.8606627 51.8501544,3.8432480 51.8453455,3.8258790 51.8404637,3.8085563 51.8355093,3.7912807 51.8304823,3.7740528 51.8253832,3.7568733 51.8202119,3.7397428 51.8149688,3.7226621 51.8096541,3.7056319 51.8042679,3.6886527 51.7988105,3.6717253 51.7932821,3.6548504 51.7876828,3.6380285 51.7820130,3.6212604 51.7762729,3.6045468 51.7704626,3.5878882 51.7645825,3.5712854 51.7586326,3.5547390 51.7526134,3.5382496 51.7465249,3.5218180 51.7403675,3.5054447 51.7341414,3.4891304 51.7278468,3.4728758 51.7214841,3.4566814 51.7150533,3.4405480 51.7085549,3.4244761 51.7019890,3.4084664 51.6953559,3.3925196 51.6886559,3.3766362 51.6818892,3.3608170 51.6750561,3.3450624 51.6681569,3.3293732 51.6611918,3.3137499 51.6541611,3.2981932 51.6470652,3.2827036 51.6399042,3.2672819 51.6326785,3.2519286 51.6253883,3.2366442 51.6180340,3.2214295 51.6106158,3.2062851 51.6031340,3.1912114 51.5955889,3.1762091 51.5879808,3.1612788 51.5803100,3.1464212 51.5725769,3.1316367 51.5647816,3.1169259 51.5569246,3.1022895 51.5490061,3.0877280 51.5410265,3.0732420 51.5329860,3.0588321 51.5248850,3.0444988 51.5167238,3.0302427 51.5085028,3.0160644 51.5002221,3.0019644 51.4918823,2.9879433 51.4834835,2.9740016 51.4750262,2.9601399 51.4665107,2.9463587 51.4579373,2.9326586 51.4493063,2.9190401 51.4406180,2.9055037 51.4318730,2.8920501 51.4230714,2.8786797 51.4142136,2.8653930 51.4052999,2.8521906 51.3963308,2.8390729 51.3873066,2.8260406 51.3782276,2.8130941 51.3690942,2.8002340 51.3599068,2.7874606 51.3506656,2.7747747 51.3413712,2.7621766 51.3320237,2.7496668 51.3226237,2.7372459 51.3131715,2.7249143 51.3036675,2.7126725 51.2941119,2.7005210 51.2845053,2.6884603 51.2748480,2.6764908 51.2651403,2.6646131 51.2553827,2.6528276 51.2455756,2.6411347 51.2357192,2.6295350 51.2258141,2.6180288 51.2158606,2.6066167 51.2058591,2.5952990 51.1958100,2.5840763 51.1857136,2.5729490 51.1755705,2.5619175 51.1653810,2.5509822 51.1551454,2.5401437 51.1448643,2.5294022 51.1345379,2.5187583 51.1241668,2.5082123 51.1137512,2.4977647 51.1032917,2.4874159 51.0927887,2.4771663 51.0822425,2.4670162 51.0716536,2.4569662 51.0610224,2.4470166 51.0503493,2.4371677 51.0396347,2.4274200 51.0288791,2.4177739 51.0180828,2.4082297 51.0072464,2.3987879 50.9963702,2.3894487 50.9854547,2.3802126 50.9745003,2.3710800 50.9635073,2.3620511 50.9524764,2.3531263 50.9414079,2.3443061 50.9303022,2.3355907 50.9191597,2.3269804 50.9079810,2.3184757 50.8967664,2.3100769 50.8855165,2.3017842 50.8742315,2.2935981 50.8629121,2.2855188 50.8515586,2.2775467 50.8401715,2.2696821 50.8287512,2.2619252 50.8172981,2.2542765 50.8058129,2.2467361 50.7942958,2.2393045 50.7827473,2.2319818 50.7711680,2.2247684 50.7595582,2.2176645 50.7479184,2.2106705 50.7362491,2.2037867 50.7245507,2.1970132 50.7128238,2.1903503 50.7010686,2.1837984 50.6892858,2.1773577 50.6774758,2.1710284 50.6656391,2.1648108 50.6537761,2.1587051 50.6418872,2.1527116 50.6299730,2.1468305 50.6180340,2.1410620 50.6060705,2.1354064 50.5940832,2.1298638 50.5820723,2.1244346 50.5700385,2.1191189 50.5579822,2.1139170 50.5459039,2.1088290 50.5338040,2.1038551 50.5216830,2.0989955 50.5095415,2.0942505 50.4973798,2.0896202 50.4851985,2.0851048 50.4729980,2.0807045 50.4607789,2.0764194 50.4485415,2.0722497 50.4362865,2.0681956 50.4240142,2.0642573 50.4117252,2.0604348 50.3994200,2.0567284 50.3870989,2.0531382 50.3747626,2.0496644 50.3624115,2.0463070 50.3500461,2.0430662 50.3376669,2.0399422 50.3252743,2.0369350 50.3128689,2.0340448 50.3004512,2.0312716 50.2880216,2.0286157 50.2755806,2.0260771 50.2631287,2.0236559 50.2506665,2.0213522 50.2381943,2.0191661 50.2257128,2.0170976 50.2132223,2.0151469 50.2007234,2.0133141 50.1882166,2.0115992 50.1757024,2.0100022 50.1631812,2.0085233 50.1506536,2.0071625 50.1381201,2.0059198 50.1255810,2.0047953 50.1130371,2.0037891 50.1004886,2.0029012 50.0879362,2.0021316 50.0753804,2.0014803 50.0628215,2.0009474 50.0502602,2.0005329 50.0376969,2.0002369 50.0251321,2.0000592 50.0125663,2.0000000 50.0000000,2.0000592 49.9874337,2.0002369 49.9748679,2.0005329 49.9623031,2.0009474 49.9497398,2.0014803 49.9371785,2.0021316 49.9246196,2.0029012 49.9120638,2.0037891 49.8995114,2.0047953 49.8869629,2.0059198 49.8744190,2.0071625 49.8618799,2.0085233 49.8493464,2.0100022 49.8368188,2.0115992 49.8242976,2.0133141 49.8117834,2.0151469 49.7992766,2.0170976 49.7867777,2.0191661 49.7742872,2.0213522 49.7618057,2.0236559 49.7493335,2.0260771 49.7368713,2.0286157 49.7244194,2.0312716 49.7119784,2.0340448 49.6995488,2.0369350 49.6871311,2.0399422 49.6747257,2.0430662 49.6623331,2.0463070 49.6499539,2.0496644 49.6375885,2.0531382 49.6252374,2.0567284 49.6129011,2.0604348 49.6005800,2.0642573 49.5882748,2.0681956 49.5759858,2.0722497 49.5637135,2.0764194 49.5514585,2.0807045 49.5392211,2.0851048 49.5270020,2.0896202 49.5148015,2.0942505 49.5026202,2.0989955 49.4904585,2.1038551 49.4783170,2.1088290 49.4661960,2.1139170 49.4540961,2.1191189 49.4420178,2.1244346 49.4299615,2.1298638 49.4179277,2.1354064 49.4059168,2.1410620 49.3939295,2.1468305 49.3819660,2.1527116 49.3700270,2.1587051 49.3581128,2.1648108 49.3462239,2.1710284 49.3343609,2.1773577 49.3225242,2.1837984 49.3107142,2.1903503 49.2989314,2.1970132 49.2871762,2.2037867 49.2754493,2.2106705 49.2637509,2.2176645 49.2520816,2.2247684 49.2404418,2.2319818 49.2288320,2.2393045 49.2172527,2.2467361 49.2057042,2.2542765 49.1941871,2.2619252 49.1827019,2.2696821 49.1712488,2.2775467 49.1598285,2.2855188 49.1484414,2.2935981 49.1370879,2.3017842 49.1257685,2.3100769 49.1144835,2.3184757 49.1032336,2.3269804 49.0920190,2.3355907 49.0808403,2.3443061 49.0696978,2.3531263 49.0585921,2.3620511 49.0475236,2.3710800 49.0364927,2.3802126 49.0254997,2.3894487 49.0145453,2.3987879 49.0036298,2.4082297 48.9927536,2.4177739 48.9819172,2.4274200 48.9711209,2.4371677 48.9603653,2.4470166 48.9496507,2.4569662 48.9389776,2.4670162 48.9283464,2.4771663 48.9177575,2.4874159 48.9072113,2.4977647 48.8967083,2.5082123 48.8862488,2.5187583 48.8758332,2.5294022 48.8654621,2.5401437 48.8551357,2.5509822 48.8448546,2.5619175 48.8346190,2.5729490 48.8244295,2.5840763 48.8142864,2.5952990 48.8041900,2.6066167 48.7941409,2.6180288 48.7841394,2.6295350 48.7741859,2.6411347 48.7642808,2.6528276 48.7544244,2.6646131 48.7446173,2.6764908 48.7348597,2.6884603 48.7251520,2.7005210 48.7154947,2.7126725 48.7058881,2.7249143 48.6963325,2.7372459 48.6868285,2.7496668 48.6773763,2.7621766 48.6679763,2.7747747 48.6586288,2.7874606 48.6493344,2.8002340 48.6400932,2.8130941 48.6309058,2.8260406 48.6217724,2.8390729 48.6126934,2.8521906 48.6036692,2.8653930 48.5947001,2.8786797 48.5857864,2.8920501 48.5769286,2.9055037 48.5681270,2.9190401 48.5593820,2.9326586 48.5506937,2.9463587 48.5420627,2.9601399 48.5334893,2.9740016 48.5249738,2.9879433 48.5165165,3.0019644 48.5081177,3.0160644 48.4997779,3.0302427 48.4914972,3.0444988 48.4832762,3.0588321 48.4751150,3.0732420 48.4670140,3.0877280 48.4589735,3.1022895 48.4509939,3.1169259 48.4430754,3.1316367 48.4352184,3.1464212 48.4274231,3.1612788 48.4196900,3.1762091 48.4120192,3.1912114 48.4044111,3.2062851 48.3968660,3.2214295 48.3893842,3.2366442 48.3819660,3.2519286 48.3746117,3.2672819 48.3673215,3.2827036 48.3600958,3.2981932 48.3529348,3.3137499 48.3458389,3.3293732 48.3388082,3.3450624 48.3318431,3.3608170 48.3249439,3.3766362 48.3181108,3.3925196 48.3113441,3.4084664 48.3046441,3.4244761 48.2980110,3.4405480 48.2914451,3.4566814 48.2849467,3.4728758 48.2785159,3.4891304 48.2721532,3.5054447 48.2658586,3.5218180 48.2596325,3.5382496 48.2534751,3.5547390 48.2473866,3.5712854 48.2413674,3.5878882 48.2354175,3.6045468 48.2295374,3.6212604 48.2237271,3.6380285 48.2179870,3.6548504 48.2123172,3.6717253 48.2067179,3.6886527 48.2011895,3.7056319 48.1957321,3.7226621 48.1903459,3.7397428 48.1850312,3.7568733 48.1797881,3.7740528 48.1746168,3.7912807 48.1695177,3.8085563 48.1644907,3.8258790 48.1595363,3.8432480 48.1546545,3.8606627 48.1498456,3.8781224 48.1451097,3.8956263 48.1404470,3.9131739 48.1358578,3.9307644 48.1313421,3.9483970 48.1269002,3.9660712 48.1225323,3.9837862 48.1182385,4.0015414 48.1140189,4.0193359 48.1098738,4.0371692 48.1058034,4.0550404 48.1018077,4.0729490 48.0978870,4.0908942 48.0940413,4.1088753 48.0902709,4.1268915 48.0865759,4.1449422 48.0829564,4.1630267 48.0794126,4.1811442 48.0759447,4.1992940 48.0725526,4.2174755 48.0692367,4.2356878 48.0659970,4.2539303 48.0628337,4.2722023 48.0597468,4.2905030 48.0567365,4.3088317 48.0538030,4.3271877 48.0509463,4.3455703 48.0481665,4.3639787 48.0454638,4.3824122 48.0428382,4.4008701 48.0402899,4.4193516 48.0378190,4.4378561 48.0354255,4.4563827 48.0331096,4.4749308 48.0308713,4.4934997 48.0287108,4.5120885 48.0266281,4.5306966 48.0246233,4.5493232 48.0226965,4.5679677 48.0208478,4.5866291 48.0190771,4.6053069 48.0173847,4.6240003 48.0157706,4.6427085 48.0142348,4.6614308 48.0127774,4.6801665 48.0113984,4.6989149 48.0100980,4.7176751 48.0088761,4.7364464 48.0077328,4.7552282 48.0066681,4.7740196 48.0056822,4.7928199 48.0047750,4.8116284 48.0039465,4.8304444 48.0031969,4.8492670 48.0025261,4.8680956 48.0019341,4.8869295 48.0014211,4.9057677 48.0009869,4.9246097 48.0006316,4.9434547 48.0003553,4.9623019 48.0001579,4.9811506 48.0000395,5.0000000 48.0000000,5.0188494 48.0000395,5.0376981 48.0001579,5.0565453 48.0003553,5.0753903 48.0006316,5.0942323 48.0009869,5.1130705 48.0014211,5.1319044 48.0019341,5.1507330 48.0025261,5.1695556 48.0031969,5.1883716 48.0039465,5.2071801 48.0047750,5.2259804 48.0056822,5.2447718 48.0066681,5.2635536 48.0077328,5.2823249 48.0088761,5.3010851 48.0100980,5.3198335 48.0113984,5.3385692 48.0127774,5.3572915 48.0142348,5.3759997 48.0157706,5.3946931 48.0173847,5.4133709 48.0190771,5.4320323 48.0208478,5.4506768 48.0226965,5.4693034 48.0246233,5.4879115 48.0266281,5.5065003 48.0287108,5.5250692 48.0308713,5.5436173 48.0331096,5.5621439 48.0354255,5.5806484 48.0378190,5.5991299 48.0402899,5.6175878 48.0428382,5.6360213 48.0454638,5.6544297 48.0481665,5.6728123 48.0509463,5.6911683 48.0538030,5.7094970 48.0567365,5.7277977 48.0597468,5.7460697 48.0628337,5.7643122 48.0659970,5.7825245 48.0692367,5.8007060 48.0725526,5.8188558 48.0759447,5.8369733 48.0794126,5.8550578 48.0829564,5.8731085 48.0865759,5.8911247 48.0902709,5.9091058 48.0940413,5.9270510 48.0978870,5.9449596 48.1018077,5.9628308 48.1058034,5.9806641 48.1098738,5.9984586 48.1140189,6.0162138 48.1182385,6.0339288 48.1225323,6.0516030 48.1269002,6.0692356 48.1313421,6.0868261 48.1358578,6.1043737 48.1404470,6.1218776 48.1451097,6.1393373 48.1498456,6.1567520 48.1546545,6.1741210 48.1595363,6.1914437 48.1644907,6.2087193 48.1695177,6.2259472 48.1746168,6.2431267 48.1797881,6.2602572 48.1850312,6.2773379 48.1903459,6.2943681 48.1957321,6.3113473 48.2011895,6.3282747 48.2067179,6.3451496 48.2123172,6.3619715 48.2179870,6.3787396 48.2237271,6.3954532 48.2295374,6.4121118 48.2354175,6.4287146 48.2413674,6.4452610 48.2473866,6.4617504 48.2534751,6.4781820 48.2596325,6.4945553 48.2658586,6.5108696 48.2721532,6.5271242 48.2785159,6.5433186 48.2849467,6.5594520 48.2914451,6.5755239 48.2980110,6.5915336 48.3046441,6.6074804 48.3113441,6.6233638 48.3181108,6.6391830 48.3249439,6.6549376 48.3318431,6.6706268 48.3388082,6.6862501 48.3458389,6.7018068 48.3529348,6.7172964 48.3600958,6.7327181 48.3673215,6.7480714 48.3746117,6.7633558 48.3819660,6.7785705 48.3893842,6.7937149 48.3968660,6.8087886 48.4044111,6.8237909 48.4120192,6.8387212 48.4196900,6.8535788 48.4274231,6.8683633 48.4352184,6.8830741 48.4430754,6.8977105 48.4509939,6.9122720 48.4589735,6.9267580 48.4670140,6.9411679 48.4751150,6.9555012 48.4832762,6.9697573 48.4914972,6.9839356 48.4997779,6.9980356 48.5081177,7.0120567 48.5165165,7.0259984 48.5249738,7.0398601 48.5334893,7.0536413 48.5420627,7.0673414 48.5506937,7.0809599 48.5593820,7.0944963 48.5681270,7.1079499 48.5769286,7.1213203 48.5857864,7.1346070 48.5947001,7.1478094 48.6036692,7.1609271 48.6126934,7.1739594 48.6217724,7.1869059 48.6309058,7.1997660 48.6400932,7.2125394 48.6493344,7.2252253 48.6586288,7.2378234 48.6679763,7.2503332 48.6773763,7.2627541 48.6868285,7.2750857 48.6963325,7.2873275 48.7058881,7.2994790 48.7154947,7.3115397 48.7251520,7.3235092 48.7348597,7.3353869 48.7446173,7.3471724 48.7544244,7.3588653 48.7642808,7.3704650 48.7741859,7.3819712 48.7841394,7.3933833 48.7941409,7.4047010 48.8041900,7.4159237 48.8142864,7.4270510 48.8244295,7.4380825 48.8346190,7.4490178 48.8448546,7.4598563 48.8551357,7.4705978 48.8654621,7.4812417 48.8758332,7.4917877 48.8862488,7.5022353 48.8967083,7.5125841 48.9072113,7.5228337 48.9177575,7.5329838 48.9283464,7.5430338 48.9389776,7.5529834 48.9496507,7.5628323 48.9603653,7.5725800 48.9711209,7.5822261 48.9819172,7.5917703 48.9927536,7.6012121 49.0036298,7.6105513 49.0145453,7.6197874 49.0254997,7.6289200 49.0364927,7.6379489 49.0475236,7.6468737 49.0585921,7.6556939 49.0696978,7.6644093 49.0808403,7.6730196 49.0920190,7.6815243 49.1032336,7.6899231 49.1144835,7.6982158 49.1257685,7.7064019 49.1370879,7.7144812 49.1484414,7.7224533 49.1598285,7.7303179 49.1712488,7.7380748 49.1827019,7.7457235 49.1941871,7.7532639 49.2057042,7.7606955 49.2172527,7.7680182 49.2288320,7.7752316 49.2404418,7.7823355 49.2520816,7.7893295 49.2637509,7.7962133 49.2754493,7.8029868 49.2871762,7.8096497 49.2989314,7.8162016 49.3107142,7.8226423 49.3225242,7.8289716 49.3343609,7.8351892 49.3462239,7.8412949 49.3581128,7.8472884 49.3700270,7.8531695 49.3819660,7.8589380 49.3939295,7.8645936 49.4059168,7.8701362 49.4179277,7.8755654 49.4299615,7.8808811 49.4420178,7.8860830 49.4540961,7.8911710 49.4661960,7.8961449 49.4783170,7.9010045 49.4904585,7.9057495 49.5026202,7.9103798 49.5148015,7.9148952 49.5270020,7.9192955 49.5392211,7.9235806 49.5514585,7.9277503 49.5637135,7.9318044 49.5759858,7.9357427 49.5882748,7.9395652 49.6005800,7.9432716 49.6129011,7.9468618 49.6252374,7.9503356 49.6375885,7.9536930 49.6499539,7.9569338 49.6623331,7.9600578 49.6747257,7.9630650 49.6871311,7.9659552 49.6995488,7.9687284 49.7119784,7.9713843 49.7244194,7.9739229 49.7368713,7.9763441 49.7493335,7.9786478 49.7618057,7.9808339 49.7742872,7.9829024 49.7867777,7.9848531 49.7992766,7.9866859 49.8117834,7.9884008 49.8242976,7.9899978 49.8368188,7.9914767 49.8493464,7.9928375 49.8618799,7.9940802 49.8744190,7.9952047 49.8869629,7.9962109 49.8995114,7.9970988 49.9120638,7.9978684 49.9246196,7.9985197 49.9371785,7.9990526 49.9497398,7.9994671 49.9623031,7.9997631 49.9748679,7.9999408 49.9874337,8.0000000 50.0000000) lsb LINESTRING(8.0000000 50.0000000,7.9999408 50.0125663,7.9997631 50.0251321,7.9994671 50.0376969,7.9990526 50.0502602,7.9985197 50.0628215,7.9978684 50.0753804,7.9970988 50.0879362,7.9962109 50.1004886,7.9952047 50.1130371,7.9940802 50.1255810,7.9928375 50.1381201,7.9914767 50.1506536,7.9899978 50.1631812,7.9884008 50.1757024,7.9866859 50.1882166,7.9848531 50.2007234,7.9829024 50.2132223,7.9808339 50.2257128,7.9786478 50.2381943,7.9763441 50.2506665,7.9739229 50.2631287,7.9713843 50.2755806,7.9687284 50.2880216,7.9659552 50.3004512,7.9630650 50.3128689,7.9600578 50.3252743,7.9569338 50.3376669,7.9536930 50.3500461,7.9503356 50.3624115,7.9468618 50.3747626,7.9432716 50.3870989,7.9395652 50.3994200,7.9357427 50.4117252,7.9318044 50.4240142,7.9277503 50.4362865,7.9235806 50.4485415,7.9192955 50.4607789,7.9148952 50.4729980,7.9103798 50.4851985,7.9057495 50.4973798,7.9010045 50.5095415,7.8961449 50.5216830,7.8911710 50.5338040,7.8860830 50.5459039,7.8808811 50.5579822,7.8755654 50.5700385,7.8701362 50.5820723,7.8645936 50.5940832,7.8589380 50.6060705,7.8531695 50.6180340,7.8472884 50.6299730,7.8412949 50.6418872,7.8351892 50.6537761,7.8289716 50.6656391,7.8226423 50.6774758,7.8162016 50.6892858,7.8096497 50.7010686,7.8029868 50.7128238,7.7962133 50.7245507,7.7893295 50.7362491,7.7823355 50.7479184,7.7752316 50.7595582,7.7680182 50.7711680,7.7606955 50.7827473,7.7532639 50.7942958,7.7457235 50.8058129,7.7380748 50.8172981,7.7303179 50.8287512,7.7224533 50.8401715,7.7144812 50.8515586,7.7064019 50.8629121,7.6982158 50.8742315,7.6899231 50.8855165,7.6815243 50.8967664,7.6730196 50.9079810,7.6644093 50.9191597,7.6556939 50.9303022,7.6468737 50.9414079,7.6379489 50.9524764,7.6289200 50.9635073,7.6197874 50.9745003,7.6105513 50.9854547,7.6012121 50.9963702,7.5917703 51.0072464,7.5822261 51.0180828,7.5725800 51.0288791,7.5628323 51.0396347,7.5529834 51.0503493,7.5430338 51.0610224,7.5329838 51.0716536,7.5228337 51.0822425,7.5125841 51.0927887,7.5022353 51.1032917,7.4917877 51.1137512,7.4812417 51.1241668,7.4705978 51.1345379,7.4598563 51.1448643,7.4490178 51.1551454,7.4380825 51.1653810,7.4270510 51.1755705,7.4159237 51.1857136,7.4047010 51.1958100,7.3933833 51.2058591,7.3819712 51.2158606,7.3704650 51.2258141,7.3588653 51.2357192,7.3471724 51.2455756,7.3353869 51.2553827,7.3235092 51.2651403,7.3115397 51.2748480,7.2994790 51.2845053,7.2873275 51.2941119,7.2750857 51.3036675,7.2627541 51.3131715,7.2503332 51.3226237,7.2378234 51.3320237,7.2252253 51.3413712,7.2125394 51.3506656,7.1997660 51.3599068,7.1869059 51.3690942,7.1739594 51.3782276,7.1609271 51.3873066,7.1478094 51.3963308,7.1346070 51.4052999,7.1213203 51.4142136,7.1079499 51.4230714,7.0944963 51.4318730,7.0809599 51.4406180,7.0673414 51.4493063,7.0536413 51.4579373,7.0398601 51.4665107,7.0259984 51.4750262,7.0120567 51.4834835,6.9980356 51.4918823,6.9839356 51.5002221,6.9697573 51.5085028,6.9555012 51.5167238,6.9411679 51.5248850,6.9267580 51.5329860,6.9122720 51.5410265,6.8977105 51.5490061,6.8830741 51.5569246,6.8683633 51.5647816,6.8535788 51.5725769,6.8387212 51.5803100,6.8237909 51.5879808,6.8087886 51.5955889,6.7937149 51.6031340,6.7785705 51.6106158,6.7633558 51.6180340,6.7480714 51.6253883,6.7327181 51.6326785,6.7172964 51.6399042,6.7018068 51.6470652,6.6862501 51.6541611,6.6706268 51.6611918,6.6549376 51.6681569,6.6391830 51.6750561,6.6233638 51.6818892,6.6074804 51.6886559,6.5915336 51.6953559,6.5755239 51.7019890,6.5594520 51.7085549,6.5433186 51.7150533,6.5271242 51.7214841,6.5108696 51.7278468,6.4945553 51.7341414,6.4781820 51.7403675,6.4617504 51.7465249,6.4452610 51.7526134,6.4287146 51.7586326,6.4121118 51.7645825,6.3954532 51.7704626,6.3787396 51.7762729,6.3619715 51.7820130,6.3451496 51.7876828,6.3282747 51.7932821,6.3113473 51.7988105,6.2943681 51.8042679,6.2773379 51.8096541,6.2602572 51.8149688,6.2431267 51.8202119,6.2259472 51.8253832,6.2087193 51.8304823,6.1914437 51.8355093,6.1741210 51.8404637,6.1567520 51.8453455,6.1393373 51.8501544,6.1218776 51.8548903,6.1043737 51.8595530,6.0868261 51.8641422,6.0692356 51.8686579,6.0516030 51.8730998,6.0339288 51.8774677,6.0162138 51.8817615,5.9984586 51.8859811,5.9806641 51.8901262,5.9628308 51.8941966,5.9449596 51.8981923,5.9270510 51.9021130,5.9091058 51.9059587,5.8911247 51.9097291,5.8731085 51.9134241,5.8550578 51.9170436,5.8369733 51.9205874,5.8188558 51.9240553,5.8007060 51.9274474,5.7825245 51.9307633,5.7643122 51.9340030,5.7460697 51.9371663,5.7277977 51.9402532,5.7094970 51.9432635,5.6911683 51.9461970,5.6728123 51.9490537,5.6544297 51.9518335,5.6360213 51.9545362,5.6175878 51.9571618,5.5991299 51.9597101,5.5806484 51.9621810,5.5621439 51.9645745,5.5436173 51.9668904,5.5250692 51.9691287,5.5065003 51.9712892,5.4879115 51.9733719,5.4693034 51.9753767,5.4506768 51.9773035,5.4320323 51.9791522,5.4133709 51.9809229,5.3946931 51.9826153,5.3759997 51.9842294,5.3572915 51.9857652,5.3385692 51.9872226,5.3198335 51.9886016,5.3010851 51.9899020,5.2823249 51.9911239,5.2635536 51.9922672,5.2447718 51.9933319,5.2259804 51.9943178,5.2071801 51.9952250,5.1883716 51.9960535,5.1695556 51.9968031,5.1507330 51.9974739,5.1319044 51.9980659,5.1130705 51.9985789,5.0942323 51.9990131,5.0753903 51.9993684,5.0565453 51.9996447,5.0376981 51.9998421,5.0188494 51.9999605,5.0000000 52.0000000,4.9811506 51.9999605,4.9623019 51.9998421,4.9434547 51.9996447,4.9246097 51.9993684,4.9057677 51.9990131,4.8869295 51.9985789,4.8680956 51.9980659,4.8492670 51.9974739,4.8304444 51.9968031,4.8116284 51.9960535,4.7928199 51.9952250,4.7740196 51.9943178,4.7552282 51.9933319,4.7364464 51.9922672,4.7176751 51.9911239,4.6989149 51.9899020,4.6801665 51.9886016,4.6614308 51.9872226,4.6427085 51.9857652,4.6240003 51.9842294,4.6053069 51.9826153,4.5866291 51.9809229,4.5679677 51.9791522,4.5493232 51.9773035,4.5306966 51.9753767,4.5120885 51.9733719,4.4934997 51.9712892,4.4749308 51.9691287,4.4563827 51.9668904,4.4378561 51.9645745,4.4193516 51.9621810,4.4008701 51.9597101,4.3824122 51.9571618,4.3639787 51.9545362,4.3455703 51.9518335,4.3271877 51.9490537,4.3088317 51.9461970,4.2905030 51.9432635,4.2722023 51.9402532,4.2539303 51.9371663,4.2356878 51.9340030,4.2174755 51.9307633,4.1992940 51.9274474,4.1811442 51.9240553,4.1630267 51.9205874,4.1449422 51.9170436,4.1268915 51.9134241,4.1088753 51.9097291,4.0908942 51.9059587,4.0729490 51.9021130,4.0550404 51.8981923,4.0371692 51.8941966,4.0193359 51.8901262,4.0015414 51.8859811,3.9837862 51.8817615,3.9660712 51.8774677,3.9483970 51.8730998,3.9307644 51.8686579,3.9131739 51.8641422,3.8956263 51.8595530,3.8781224 51.8548903,3.8606627 51.8501544,3.8432480 51.8453455,3.8258790 51.8404637,3.8085563 51.8355093,3.7912807 51.8304823,3.7740528 51.8253832,3.7568733 51.8202119,3.7397428 51.8149688,3.7226621 51.8096541,3.7056319 51.8042679,3.6886527 51.7988105,3.6717253 51.7932821,3.6548504 51.7876828,3.6380285 51.7820130,3.6212604 51.7762729,3.6045468 51.7704626,3.5878882 51.7645825,3.5712854 51.7586326,3.5547390 51.7526134,3.5382496 51.7465249,3.5218180 51.7403675,3.5054447 51.7341414,3.4891304 51.7278468,3.4728758 51.7214841,3.4566814 51.7150533,3.4405480 51.7085549,3.4244761 51.7019890,3.4084664 51.6953559,3.3925196 51.6886559,3.3766362 51.6818892,3.3608170 51.6750561,3.3450624 51.6681569,3.3293732 51.6611918,3.3137499 51.6541611,3.2981932 51.6470652,3.2827036 51.6399042,3.2672819 51.6326785,3.2519286 51.6253883,3.2366442 51.6180340,3.2214295 51.6106158,3.2062851 51.6031340,3.1912114 51.5955889,3.1762091 51.5879808,3.1612788 51.5803100,3.1464212 51.5725769,3.1316367 51.5647816,3.1169259 51.5569246,3.1022895 51.5490061,3.0877280 51.5410265,3.0732420 51.5329860,3.0588321 51.5248850,3.0444988 51.5167238,3.0302427 51.5085028,3.0160644 51.5002221,3.0019644 51.4918823,2.9879433 51.4834835,2.9740016 51.4750262,2.9601399 51.4665107,2.9463587 51.4579373,2.9326586 51.4493063,2.9190401 51.4406180,2.9055037 51.4318730,2.8920501 51.4230714,2.8786797 51.4142136,2.8653930 51.4052999,2.8521906 51.3963308,2.8390729 51.3873066,2.8260406 51.3782276,2.8130941 51.3690942,2.8002340 51.3599068,2.7874606 51.3506656,2.7747747 51.3413712,2.7621766 51.3320237,2.7496668 51.3226237,2.7372459 51.3131715,2.7249143 51.3036675,2.7126725 51.2941119,2.7005210 51.2845053,2.6884603 51.2748480,2.6764908 51.2651403,2.6646131 51.2553827,2.6528276 51.2455756,2.6411347 51.2357192,2.6295350 51.2258141,2.6180288 51.2158606,2.6066167 51.2058591,2.5952990 51.1958100,2.5840763 51.1857136,2.5729490 51.1755705,2.5619175 51.1653810,2.5509822 51.1551454,2.5401437 51.1448643,2.5294022 51.1345379,2.5187583 51.1241668,2.5082123 51.1137512,2.4977647 51.1032917,2.4874159 51.0927887,2.4771663 51.0822425,2.4670162 51.0716536,2.4569662 51.0610224,2.4470166 51.0503493,2.4371677 51.0396347,2.4274200 51.0288791,2.4177739 51.0180828,2.4082297 51.0072464,2.3987879 50.9963702,2.3894487 50.9854547,2.3802126 50.9745003,2.3710800 50.9635073,2.3620511 50.9524764,2.3531263 50.9414079,2.3443061 50.9303022,2.3355907 50.9191597,2.3269804 50.9079810,2.3184757 50.8967664,2.3100769 50.8855165,2.3017842 50.8742315,2.2935981 50.8629121,2.2855188 50.8515586,2.2775467 50.8401715,2.2696821 50.8287512,2.2619252 50.8172981,2.2542765 50.8058129,2.2467361 50.7942958,2.2393045 50.7827473,2.2319818 50.7711680,2.2247684 50.7595582,2.2176645 50.7479184,2.2106705 50.7362491,2.2037867 50.7245507,2.1970132 50.7128238,2.1903503 50.7010686,2.1837984 50.6892858,2.1773577 50.6774758,2.1710284 50.6656391,2.1648108 50.6537761,2.1587051 50.6418872,2.1527116 50.6299730,2.1468305 50.6180340,2.1410620 50.6060705,2.1354064 50.5940832,2.1298638 50.5820723,2.1244346 50.5700385,2.1191189 50.5579822,2.1139170 50.5459039,2.1088290 50.5338040,2.1038551 50.5216830,2.0989955 50.5095415,2.0942505 50.4973798,2.0896202 50.4851985,2.0851048 50.4729980,2.0807045 50.4607789,2.0764194 50.4485415,2.0722497 50.4362865,2.0681956 50.4240142,2.0642573 50.4117252,2.0604348 50.3994200,2.0567284 50.3870989,2.0531382 50.3747626,2.0496644 50.3624115,2.0463070 50.3500461,2.0430662 50.3376669,2.0399422 50.3252743,2.0369350 50.3128689,2.0340448 50.3004512,2.0312716 50.2880216,2.0286157 50.2755806,2.0260771 50.2631287,2.0236559 50.2506665,2.0213522 50.2381943,2.0191661 50.2257128,2.0170976 50.2132223,2.0151469 50.2007234,2.0133141 50.1882166,2.0115992 50.1757024,2.0100022 50.1631812,2.0085233 50.1506536,2.0071625 50.1381201,2.0059198 50.1255810,2.0047953 50.1130371,2.0037891 50.1004886,2.0029012 50.0879362,2.0021316 50.0753804,2.0014803 50.0628215,2.0009474 50.0502602,2.0005329 50.0376969,2.0002369 50.0251321,2.0000592 50.0125663,2.0000000 50.0000000,2.0000592 49.9874337,2.0002369 49.9748679,2.0005329 49.9623031,2.0009474 49.9497398,2.0014803 49.9371785,2.0021316 49.9246196,2.0029012 49.9120638,2.0037891 49.8995114,2.0047953 49.8869629,2.0059198 49.8744190,2.0071625 49.8618799,2.0085233 49.8493464,2.0100022 49.8368188,2.0115992 49.8242976,2.0133141 49.8117834,2.0151469 49.7992766,2.0170976 49.7867777,2.0191661 49.7742872,2.0213522 49.7618057,2.0236559 49.7493335,2.0260771 49.7368713,2.0286157 49.7244194,2.0312716 49.7119784,2.0340448 49.6995488,2.0369350 49.6871311,2.0399422 49.6747257,2.0430662 49.6623331,2.0463070 49.6499539,2.0496644 49.6375885,2.0531382 49.6252374,2.0567284 49.6129011,2.0604348 49.6005800,2.0642573 49.5882748,2.0681956 49.5759858,2.0722497 49.5637135,2.0764194 49.5514585,2.0807045 49.5392211,2.0851048 49.5270020,2.0896202 49.5148015,2.0942505 49.5026202,2.0989955 49.4904585,2.1038551 49.4783170,2.1088290 49.4661960,2.1139170 49.4540961,2.1191189 49.4420178,2.1244346 49.4299615,2.1298638 49.4179277,2.1354064 49.4059168,2.1410620 49.3939295,2.1468305 49.3819660,2.1527116 49.3700270,2.1587051 49.3581128,2.1648108 49.3462239,2.1710284 49.3343609,2.1773577 49.3225242,2.1837984 49.3107142,2.1903503 49.2989314,2.1970132 49.2871762,2.2037867 49.2754493,2.2106705 49.2637509,2.2176645 49.2520816,2.2247684 49.2404418,2.2319818 49.2288320,2.2393045 49.2172527,2.2467361 49.2057042,2.2542765 49.1941871,2.2619252 49.1827019,2.2696821 49.1712488,2.2775467 49.1598285,2.2855188 49.1484414,2.2935981 49.1370879,2.3017842 49.1257685,2.3100769 49.1144835,2.3184757 49.1032336,2.3269804 49.0920190,2.3355907 49.0808403,2.3443061 49.0696978,2.3531263 49.0585921,2.3620511 49.0475236,2.3710800 49.0364927,2.3802126 49.0254997,2.3894487 49.0145453,2.3987879 49.0036298,2.4082297 48.9927536,2.4177739 48.9819172,2.4274200 48.9711209,2.4371677 48.9603653,2.4470166 48.9496507,2.4569662 48.9389776,2.4670162 48.9283464,2.4771663 48.9177575,2.4874159 48.9072113,2.4977647 48.8967083,2.5082123 48.8862488,2.5187583 48.8758332,2.5294022 48.8654621,2.5401437 48.8551357,2.5509822 48.8448546,2.5619175 48.8346190,2.5729490 48.8244295,2.5840763 48.8142864,2.5952990 48.8041900,2.6066167 48.7941409,2.6180288 48.7841394,2.6295350 48.7741859,2.6411347 48.7642808,2.6528276 48.7544244,2.6646131 48.7446173,2.6764908 48.7348597,2.6884603 48.7251520,2.7005210 48.7154947,2.7126725 48.7058881,2.7249143 48.6963325,2.7372459 48.6868285,2.7496668 48.6773763,2.7621766 48.6679763,2.7747747 48.6586288,2.7874606 48.6493344,2.8002340 48.6400932,2.8130941 48.6309058,2.8260406 48.6217724,2.8390729 48.6126934,2.8521906 48.6036692,2.8653930 48.5947001,2.8786797 48.5857864,2.8920501 48.5769286,2.9055037 48.5681270,2.9190401 48.5593820,2.9326586 48.5506937,2.9463587 48.5420627,2.9601399 48.5334893,2.9740016 48.5249738,2.9879433 48.5165165,3.0019644 48.5081177,3.0160644 48.4997779,3.0302427 48.4914972,3.0444988 48.4832762,3.0588321 48.4751150,3.0732420 48.4670140,3.0877280 48.4589735,3.1022895 48.4509939,3.1169259 48.4430754,3.1316367 48.4352184,3.1464212 48.4274231,3.1612788 48.4196900,3.1762091 48.4120192,3.1912114 48.4044111,3.2062851 48.3968660,3.2214295 48.3893842,3.2366442 48.3819660,3.2519286 48.3746117,3.2672819 48.3673215,3.2827036 48.3600958,3.2981932 48.3529348,3.3137499 48.3458389,3.3293732 48.3388082,3.3450624 48.3318431,3.3608170 48.3249439,3.3766362 48.3181108,3.3925196 48.3113441,3.4084664 48.3046441,3.4244761 48.2980110,3.4405480 48.2914451,3.4566814 48.2849467,3.4728758 48.2785159,3.4891304 48.2721532,3.5054447 48.2658586,3.5218180 48.2596325,3.5382496 48.2534751,3.5547390 48.2473866,3.5712854 48.2413674,3.5878882 48.2354175,3.6045468 48.2295374,3.6212604 48.2237271,3.6380285 48.2179870,3.6548504 48.2123172,3.6717253 48.2067179,3.6886527 48.2011895,3.7056319 48.1957321,3.7226621 48.1903459,3.7397428 48.1850312,3.7568733 48.1797881,3.7740528 48.1746168,3.7912807 48.1695177,3.8085563 48.1644907,3.8258790 48.1595363,3.8432480 48.1546545,3.8606627 48.1498456,3.8781224 48.1451097,3.8956263 48.1404470,3.9131739 48.1358578,3.9307644 48.1313421,3.9483970 48.1269002,3.9660712 48.1225323,3.9837862 48.1182385,4.0015414 48.1140189,4.0193359 48.1098738,4.0371692 48.1058034,4.0550404 48.1018077,4.0729490 48.0978870,4.0908942 48.0940413,4.1088753 48.0902709,4.1268915 48.0865759,4.1449422 48.0829564,4.1630267 48.0794126,4.1811442 48.0759447,4.1992940 48.0725526,4.2174755 48.0692367,4.2356878 48.0659970,4.2539303 48.0628337,4.2722023 48.0597468,4.2905030 48.0567365,4.3088317 48.0538030,4.3271877 48.0509463,4.3455703 48.0481665,4.3639787 48.0454638,4.3824122 48.0428382,4.4008701 48.0402899,4.4193516 48.0378190,4.4378561 48.0354255,4.4563827 48.0331096,4.4749308 48.0308713,4.4934997 48.0287108,4.5120885 48.0266281,4.5306966 48.0246233,4.5493232 48.0226965,4.5679677 48.0208478,4.5866291 48.0190771,4.6053069 48.0173847,4.6240003 48.0157706,4.6427085 48.0142348,4.6614308 48.0127774,4.6801665 48.0113984,4.6989149 48.0100980,4.7176751 48.0088761,4.7364464 48.0077328,4.7552282 48.0066681,4.7740196 48.0056822,4.7928199 48.0047750,4.8116284 48.0039465,4.8304444 48.0031969,4.8492670 48.0025261,4.8680956 48.0019341,4.8869295 48.0014211,4.9057677 48.0009869,4.9246097 48.0006316,4.9434547 48.0003553,4.9623019 48.0001579,4.9811506 48.0000395,5.0000000 48.0000000,5.0188494 48.0000395,5.0376981 48.0001579,5.0565453 48.0003553,5.0753903 48.0006316,5.0942323 48.0009869,5.1130705 48.0014211,5.1319044 48.0019341,5.1507330 48.0025261,5.1695556 48.0031969,5.1883716 48.0039465,5.2071801 48.0047750,5.2259804 48.0056822,5.2447718 48.0066681,5.2635536 48.0077328,5.2823249 48.0088761,5.3010851 48.0100980,5.3198335 48.0113984,5.3385692 48.0127774,5.3572915 48.0142348,5.3759997 48.0157706,5.3946931 48.0173847,5.4133709 48.0190771,5.4320323 48.0208478,5.4506768 48.0226965,5.4693034 48.0246233,5.4879115 48.0266281,5.5065003 48.0287108,5.5250692 48.0308713,5.5436173 48.0331096,5.5621439 48.0354255,5.5806484 48.0378190,5.5991299 48.0402899,5.6175878 48.0428382,5.6360213 48.0454638,5.6544297 48.0481665,5.6728123 48.0509463,5.6911683 48.0538030,5.7094970 48.0567365,5.7277977 48.0597468,5.7460697 48.0628337,5.7643122 48.0659970,5.7825245 48.0692367,5.8007060 48.0725526,5.8188558 48.0759447,5.8369733 48.0794126,5.8550578 48.0829564,5.8731085 48.0865759,5.8911247 48.0902709,5.9091058 48.0940413,5.9270510 48.0978870,5.9449596 48.1018077,5.9628308 48.1058034,5.9806641 48.1098738,5.9984586 48.1140189,6.0162138 48.1182385,6.0339288 48.1225323,6.0516030 48.1269002,6.0692356 48.1313421,6.0868261 48.1358578,6.1043737 48.1404470,6.1218776 48.1451097,6.1393373 48.1498456,6.1567520 48.1546545,6.1741210 48.1595363,6.1914437 48.1644907,6.2087193 48.1695177,6.2259472 48.1746168,6.2431267 48.1797881,6.2602572 48.1850312,6.2773379 48.1903459,6.2943681 48.1957321,6.3113473 48.2011895,6.3282747 48.2067179,6.3451496 48.2123172,6.3619715 48.2179870,6.3787396 48.2237271,6.3954532 48.2295374,6.4121118 48.2354175,6.4287146 48.2413674,6.4452610 48.2473866,6.4617504 48.2534751,6.4781820 48.2596325,6.4945553 48.2658586,6.5108696 48.2721532,6.5271242 48.2785159,6.5433186 48.2849467,6.5594520 48.2914451,6.5755239 48.2980110,6.5915336 48.3046441,6.6074804 48.3113441,6.6233638 48.3181108,6.6391830 48.3249439,6.6549376 48.3318431,6.6706268 48.3388082,6.6862501 48.3458389,6.7018068 48.3529348,6.7172964 48.3600958,6.7327181 48.3673215,6.7480714 48.3746117,6.7633558 48.3819660,6.7785705 48.3893842,6.7937149 48.3968660,6.8087886 48.4044111,6.8237909 48.4120192,6.8387212 48.4196900,6.8535788 48.4274231,6.8683633 48.4352184,6.8830741 48.4430754,6.8977105 48.4509939,6.9122720 48.4589735,6.9267580 48.4670140,6.9411679 48.4751150,6.9555012 48.4832762,6.9697573 48.4914972,6.9839356 48.4997779,6.9980356 48.5081177,7.0120567 48.5165165,7.0259984 48.5249738,7.0398601 48.5334893,7.0536413 48.5420627,7.0673414 48.5506937,7.0809599 48.5593820,7.0944963 48.5681270,7.1079499 48.5769286,7.1213203 48.5857864,7.1346070 48.5947001,7.1478094 48.6036692,7.1609271 48.6126934,7.1739594 48.6217724,7.1869059 48.6309058,7.1997660 48.6400932,7.2125394 48.6493344,7.2252253 48.6586288,7.2378234 48.6679763,7.2503332 48.6773763,7.2627541 48.6868285,7.2750857 48.6963325,7.2873275 48.7058881,7.2994790 48.7154947,7.3115397 48.7251520,7.3235092 48.7348597,7.3353869 48.7446173,7.3471724 48.7544244,7.3588653 48.7642808,7.3704650 48.7741859,7.3819712 48.7841394,7.3933833 48.7941409,7.4047010 48.8041900,7.4159237 48.8142864,7.4270510 48.8244295,7.4380825 48.8346190,7.4490178 48.8448546,7.4598563 48.8551357,7.4705978 48.8654621,7.4812417 48.8758332,7.4917877 48.8862488,7.5022353 48.8967083,7.5125841 48.9072113,7.5228337 48.9177575,7.5329838 48.9283464,7.5430338 48.9389776,7.5529834 48.9496507,7.5628323 48.9603653,7.5725800 48.9711209,7.5822261 48.9819172,7.5917703 48.9927536,7.6012121 49.0036298,7.6105513 49.0145453,7.6197874 49.0254997,7.6289200 49.0364927,7.6379489 49.0475236,7.6468737 49.0585921,7.6556939 49.0696978,7.6644093 49.0808403,7.6730196 49.0920190,7.6815243 49.1032336,7.6899231 49.1144835,7.6982158 49.1257685,7.7064019 49.1370879,7.7144812 49.1484414,7.7224533 49.1598285,7.7303179 49.1712488,7.7380748 49.1827019,7.7457235 49.1941871,7.7532639 49.2057042,7.7606955 49.2172527,7.7680182 49.2288320,7.7752316 49.2404418,7.7823355 49.2520816,7.7893295 49.2637509,7.7962133 49.2754493,7.8029868 49.2871762,7.8096497 49.2989314,7.8162016 49.3107142,7.8226423 49.3225242,7.8289716 49.3343609,7.8351892 49.3462239,7.8412949 49.3581128,7.8472884 49.3700270,7.8531695 49.3819660,7.8589380 49.3939295,7.8645936 49.4059168,7.8701362 49.4179277,7.8755654 49.4299615,7.8808811 49.4420178,7.8860830 49.4540961,7.8911710 49.4661960,7.8961449 49.4783170,7.9010045 49.4904585,7.9057495 49.5026202,7.9103798 49.5148015,7.9148952 49.5270020,7.9192955 49.5392211,7.9235806 49.5514585,7.9277503 49.5637135,7.9318044 49.5759858,7.9357427 49.5882748,7.9395652 49.6005800,7.9432716 49.6129011,7.9468618 49.6252374,7.9503356 49.6375885,7.9536930 49.6499539,7.9569338 49.6623331,7.9600578 49.6747257,7.9630650 49.6871311,7.9659552 49.6995488,7.9687284 49.7119784,7.9713843 49.7244194,7.9739229 49.7368713,7.9763441 49.7493335,7.9786478 49.7618057,7.9808339 49.7742872,7.9829024 49.7867777,7.9848531 49.7992766,7.9866859 49.8117834,7.9884008 49.8242976,7.9899978 49.8368188,7.9914767 49.8493464,7.9928375 49.8618799,7.9940802 49.8744190,7.9952047 49.8869629,7.9962109 49.8995114,7.9970988 49.9120638,7.9978684 49.9246196,7.9985197 49.9371785,7.9990526 49.9497398,7.9994671 49.9623031,7.9997631 49.9748679,7.9999408 49.9874337,8.0000000 50.0000000) +lsc LINESTRING(8.0000000 50.0000000,7.9999408 50.0125663,7.9997631 50.0251321,7.9994671 50.0376969,7.9990526 50.0502602,7.9985197 50.0628215,7.9978684 50.0753804,7.9970988 50.0879362,7.9962109 50.1004886,7.9952047 50.1130371,7.9940802 50.1255810,7.9928375 50.1381201,7.9914767 50.1506536,7.9899978 50.1631812,7.9884008 50.1757024,7.9866859 50.1882166,7.9848531 50.2007234,7.9829024 50.2132223,7.9808339 50.2257128,7.9786478 50.2381943,7.9763441 50.2506665,7.9739229 50.2631287,7.9713843 50.2755806,7.9687284 50.2880216,7.9659552 50.3004512,7.9630650 50.3128689,7.9600578 50.3252743,7.9569338 50.3376669,7.9536930 50.3500461,7.9503356 50.3624115,7.9468618 50.3747626,7.9432716 50.3870989,7.9395652 50.3994200,7.9357427 50.4117252,7.9318044 50.4240142,7.9277503 50.4362865,7.9235806 50.4485415,7.9192955 50.4607789,7.9148952 50.4729980,7.9103798 50.4851985,7.9057495 50.4973798,7.9010045 50.5095415,7.8961449 50.5216830,7.8911710 50.5338040,7.8860830 50.5459039,7.8808811 50.5579822,7.8755654 50.5700385,7.8701362 50.5820723,7.8645936 50.5940832,7.8589380 50.6060705,7.8531695 50.6180340,7.8472884 50.6299730,7.8412949 50.6418872,7.8351892 50.6537761,7.8289716 50.6656391,7.8226423 50.6774758,7.8162016 50.6892858,7.8096497 50.7010686,7.8029868 50.7128238,7.7962133 50.7245507,7.7893295 50.7362491,7.7823355 50.7479184,7.7752316 50.7595582,7.7680182 50.7711680,7.7606955 50.7827473,7.7532639 50.7942958,7.7457235 50.8058129,7.7380748 50.8172981,7.7303179 50.8287512,7.7224533 50.8401715,7.7144812 50.8515586,7.7064019 50.8629121,7.6982158 50.8742315,7.6899231 50.8855165,7.6815243 50.8967664,7.6730196 50.9079810,7.6644093 50.9191597,7.6556939 50.9303022,7.6468737 50.9414079,7.6379489 50.9524764,7.6289200 50.9635073,7.6197874 50.9745003,7.6105513 50.9854547,7.6012121 50.9963702,7.5917703 51.0072464,7.5822261 51.0180828,7.5725800 51.0288791,7.5628323 51.0396347,7.5529834 51.0503493,7.5430338 51.0610224,7.5329838 51.0716536,7.5228337 51.0822425,7.5125841 51.0927887,7.5022353 51.1032917,7.4917877 51.1137512,7.4812417 51.1241668,7.4705978 51.1345379,7.4598563 51.1448643,7.4490178 51.1551454,7.4380825 51.1653810,7.4270510 51.1755705,7.4159237 51.1857136,7.4047010 51.1958100,7.3933833 51.2058591,7.3819712 51.2158606,7.3704650 51.2258141,7.3588653 51.2357192,7.3471724 51.2455756,7.3353869 51.2553827,7.3235092 51.2651403,7.3115397 51.2748480,7.2994790 51.2845053,7.2873275 51.2941119,7.2750857 51.3036675,7.2627541 51.3131715,7.2503332 51.3226237,7.2378234 51.3320237,7.2252253 51.3413712,7.2125394 51.3506656,7.1997660 51.3599068,7.1869059 51.3690942,7.1739594 51.3782276,7.1609271 51.3873066,7.1478094 51.3963308,7.1346070 51.4052999,7.1213203 51.4142136,7.1079499 51.4230714,7.0944963 51.4318730,7.0809599 51.4406180,7.0673414 51.4493063,7.0536413 51.4579373,7.0398601 51.4665107,7.0259984 51.4750262,7.0120567 51.4834835,6.9980356 51.4918823,6.9839356 51.5002221,6.9697573 51.5085028,6.9555012 51.5167238,6.9411679 51.5248850,6.9267580 51.5329860,6.9122720 51.5410265,6.8977105 51.5490061,6.8830741 51.5569246,6.8683633 51.5647816,6.8535788 51.5725769,6.8387212 51.5803100,6.8237909 51.5879808,6.8087886 51.5955889,6.7937149 51.6031340,6.7785705 51.6106158,6.7633558 51.6180340,6.7480714 51.6253883,6.7327181 51.6326785,6.7172964 51.6399042,6.7018068 51.6470652,6.6862501 51.6541611,6.6706268 51.6611918,6.6549376 51.6681569,6.6391830 51.6750561,6.6233638 51.6818892,6.6074804 51.6886559,6.5915336 51.6953559,6.5755239 51.7019890,6.5594520 51.7085549,6.5433186 51.7150533,6.5271242 51.7214841,6.5108696 51.7278468,6.4945553 51.7341414,6.4781820 51.7403675,6.4617504 51.7465249,6.4452610 51.7526134,6.4287146 51.7586326,6.4121118 51.7645825,6.3954532 51.7704626,6.3787396 51.7762729,6.3619715 51.7820130,6.3451496 51.7876828,6.3282747 51.7932821,6.3113473 51.7988105,6.2943681 51.8042679,6.2773379 51.8096541,6.2602572 51.8149688,6.2431267 51.8202119,6.2259472 51.8253832,6.2087193 51.8304823,6.1914437 51.8355093,6.1741210 51.8404637,6.1567520 51.8453455,6.1393373 51.8501544,6.1218776 51.8548903,6.1043737 51.8595530,6.0868261 51.8641422,6.0692356 51.8686579,6.0516030 51.8730998,6.0339288 51.8774677,6.0162138 51.8817615,5.9984586 51.8859811,5.9806641 51.8901262,5.9628308 51.8941966,5.9449596 51.8981923,5.9270510 51.9021130,5.9091058 51.9059587,5.8911247 51.9097291,5.8731085 51.9134241,5.8550578 51.9170436,5.8369733 51.9205874,5.8188558 51.9240553,5.8007060 51.9274474,5.7825245 51.9307633,5.7643122 51.9340030,5.7460697 51.9371663,5.7277977 51.9402532,5.7094970 51.9432635,5.6911683 51.9461970,5.6728123 51.9490537,5.6544297 51.9518335,5.6360213 51.9545362,5.6175878 51.9571618,5.5991299 51.9597101,5.5806484 51.9621810,5.5621439 51.9645745,5.5436173 51.9668904,5.5250692 51.9691287,5.5065003 51.9712892,5.4879115 51.9733719,5.4693034 51.9753767,5.4506768 51.9773035,5.4320323 51.9791522,5.4133709 51.9809229,5.3946931 51.9826153,5.3759997 51.9842294,5.3572915 51.9857652,5.3385692 51.9872226,5.3198335 51.9886016,5.3010851 51.9899020,5.2823249 51.9911239,5.2635536 51.9922672,5.2447718 51.9933319,5.2259804 51.9943178,5.2071801 51.9952250,5.1883716 51.9960535,5.1695556 51.9968031,5.1507330 51.9974739,5.1319044 51.9980659,5.1130705 51.9985789,5.0942323 51.9990131,5.0753903 51.9993684,5.0565453 51.9996447,5.0376981 51.9998421,5.0188494 51.9999605,5.0000000 52.0000000,4.9811506 51.9999605,4.9623019 51.9998421,4.9434547 51.9996447,4.9246097 51.9993684,4.9057677 51.9990131,4.8869295 51.9985789,4.8680956 51.9980659,4.8492670 51.9974739,4.8304444 51.9968031,4.8116284 51.9960535,4.7928199 51.9952250,4.7740196 51.9943178,4.7552282 51.9933319,4.7364464 51.9922672,4.7176751 51.9911239,4.6989149 51.9899020,4.6801665 51.9886016,4.6614308 51.9872226,4.6427085 51.9857652,4.6240003 51.9842294,4.6053069 51.9826153,4.5866291 51.9809229,4.5679677 51.9791522,4.5493232 51.9773035,4.5306966 51.9753767,4.5120885 51.9733719,4.4934997 51.9712892,4.4749308 51.9691287,4.4563827 51.9668904,4.4378561 51.9645745,4.4193516 51.9621810,4.4008701 51.9597101,4.3824122 51.9571618,4.3639787 51.9545362,4.3455703 51.9518335,4.3271877 51.9490537,4.3088317 51.9461970,4.2905030 51.9432635,4.2722023 51.9402532,4.2539303 51.9371663,4.2356878 51.9340030,4.2174755 51.9307633,4.1992940 51.9274474,4.1811442 51.9240553,4.1630267 51.9205874,4.1449422 51.9170436,4.1268915 51.9134241,4.1088753 51.9097291,4.0908942 51.9059587,4.0729490 51.9021130,4.0550404 51.8981923,4.0371692 51.8941966,4.0193359 51.8901262,4.0015414 51.8859811,3.9837862 51.8817615,3.9660712 51.8774677,3.9483970 51.8730998,3.9307644 51.8686579,3.9131739 51.8641422,3.8956263 51.8595530,3.8781224 51.8548903,3.8606627 51.8501544,3.8432480 51.8453455,3.8258790 51.8404637,3.8085563 51.8355093,3.7912807 51.8304823,3.7740528 51.8253832,3.7568733 51.8202119,3.7397428 51.8149688,3.7226621 51.8096541,3.7056319 51.8042679,3.6886527 51.7988105,3.6717253 51.7932821,3.6548504 51.7876828,3.6380285 51.7820130,3.6212604 51.7762729,3.6045468 51.7704626,3.5878882 51.7645825,3.5712854 51.7586326,3.5547390 51.7526134,3.5382496 51.7465249,3.5218180 51.7403675,3.5054447 51.7341414,3.4891304 51.7278468,3.4728758 51.7214841,3.4566814 51.7150533,3.4405480 51.7085549,3.4244761 51.7019890,3.4084664 51.6953559,3.3925196 51.6886559,3.3766362 51.6818892,3.3608170 51.6750561,3.3450624 51.6681569,3.3293732 51.6611918,3.3137499 51.6541611,3.2981932 51.6470652,3.2827036 51.6399042,3.2672819 51.6326785,3.2519286 51.6253883,3.2366442 51.6180340,3.2214295 51.6106158,3.2062851 51.6031340,3.1912114 51.5955889,3.1762091 51.5879808,3.1612788 51.5803100,3.1464212 51.5725769,3.1316367 51.5647816,3.1169259 51.5569246,3.1022895 51.5490061,3.0877280 51.5410265,3.0732420 51.5329860,3.0588321 51.5248850,3.0444988 51.5167238,3.0302427 51.5085028,3.0160644 51.5002221,3.0019644 51.4918823,2.9879433 51.4834835,2.9740016 51.4750262,2.9601399 51.4665107,2.9463587 51.4579373,2.9326586 51.4493063,2.9190401 51.4406180,2.9055037 51.4318730,2.8920501 51.4230714,2.8786797 51.4142136,2.8653930 51.4052999,2.8521906 51.3963308,2.8390729 51.3873066,2.8260406 51.3782276,2.8130941 51.3690942,2.8002340 51.3599068,2.7874606 51.3506656,2.7747747 51.3413712,2.7621766 51.3320237,2.7496668 51.3226237,2.7372459 51.3131715,2.7249143 51.3036675,2.7126725 51.2941119,2.7005210 51.2845053,2.6884603 51.2748480,2.6764908 51.2651403,2.6646131 51.2553827,2.6528276 51.2455756,2.6411347 51.2357192,2.6295350 51.2258141,2.6180288 51.2158606,2.6066167 51.2058591,2.5952990 51.1958100,2.5840763 51.1857136,2.5729490 51.1755705,2.5619175 51.1653810,2.5509822 51.1551454,2.5401437 51.1448643,2.5294022 51.1345379,2.5187583 51.1241668,2.5082123 51.1137512,2.4977647 51.1032917,2.4874159 51.0927887,2.4771663 51.0822425,2.4670162 51.0716536,2.4569662 51.0610224,2.4470166 51.0503493,2.4371677 51.0396347,2.4274200 51.0288791,2.4177739 51.0180828,2.4082297 51.0072464,2.3987879 50.9963702,2.3894487 50.9854547,2.3802126 50.9745003,2.3710800 50.9635073,2.3620511 50.9524764,2.3531263 50.9414079,2.3443061 50.9303022,2.3355907 50.9191597,2.3269804 50.9079810,2.3184757 50.8967664,2.3100769 50.8855165,2.3017842 50.8742315,2.2935981 50.8629121,2.2855188 50.8515586,2.2775467 50.8401715,2.2696821 50.8287512,2.2619252 50.8172981,2.2542765 50.8058129,2.2467361 50.7942958,2.2393045 50.7827473,2.2319818 50.7711680,2.2247684 50.7595582,2.2176645 50.7479184,2.2106705 50.7362491,2.2037867 50.7245507,2.1970132 50.7128238,2.1903503 50.7010686,2.1837984 50.6892858,2.1773577 50.6774758,2.1710284 50.6656391,2.1648108 50.6537761,2.1587051 50.6418872,2.1527116 50.6299730,2.1468305 50.6180340,2.1410620 50.6060705,2.1354064 50.5940832,2.1298638 50.5820723,2.1244346 50.5700385,2.1191189 50.5579822,2.1139170 50.5459039,2.1088290 50.5338040,2.1038551 50.5216830,2.0989955 50.5095415,2.0942505 50.4973798,2.0896202 50.4851985,2.0851048 50.4729980,2.0807045 50.4607789,2.0764194 50.4485415,2.0722497 50.4362865,2.0681956 50.4240142,2.0642573 50.4117252,2.0604348 50.3994200,2.0567284 50.3870989,2.0531382 50.3747626,2.0496644 50.3624115,2.0463070 50.3500461,2.0430662 50.3376669,2.0399422 50.3252743,2.0369350 50.3128689,2.0340448 50.3004512,2.0312716 50.2880216,2.0286157 50.2755806,2.0260771 50.2631287,2.0236559 50.2506665,2.0213522 50.2381943,2.0191661 50.2257128,2.0170976 50.2132223,2.0151469 50.2007234,2.0133141 50.1882166,2.0115992 50.1757024,2.0100022 50.1631812,2.0085233 50.1506536,2.0071625 50.1381201,2.0059198 50.1255810,2.0047953 50.1130371,2.0037891 50.1004886,2.0029012 50.0879362,2.0021316 50.0753804,2.0014803 50.0628215,2.0009474 50.0502602,2.0005329 50.0376969,2.0002369 50.0251321,2.0000592 50.0125663,2.0000000 50.0000000,2.0000592 49.9874337,2.0002369 49.9748679,2.0005329 49.9623031,2.0009474 49.9497398,2.0014803 49.9371785,2.0021316 49.9246196,2.0029012 49.9120638,2.0037891 49.8995114,2.0047953 49.8869629,2.0059198 49.8744190,2.0071625 49.8618799,2.0085233 49.8493464,2.0100022 49.8368188,2.0115992 49.8242976,2.0133141 49.8117834,2.0151469 49.7992766,2.0170976 49.7867777,2.0191661 49.7742872,2.0213522 49.7618057,2.0236559 49.7493335,2.0260771 49.7368713,2.0286157 49.7244194,2.0312716 49.7119784,2.0340448 49.6995488,2.0369350 49.6871311,2.0399422 49.6747257,2.0430662 49.6623331,2.0463070 49.6499539,2.0496644 49.6375885,2.0531382 49.6252374,2.0567284 49.6129011,2.0604348 49.6005800,2.0642573 49.5882748,2.0681956 49.5759858,2.0722497 49.5637135,2.0764194 49.5514585,2.0807045 49.5392211,2.0851048 49.5270020,2.0896202 49.5148015,2.0942505 49.5026202,2.0989955 49.4904585,2.1038551 49.4783170,2.1088290 49.4661960,2.1139170 49.4540961,2.1191189 49.4420178,2.1244346 49.4299615,2.1298638 49.4179277,2.1354064 49.4059168,2.1410620 49.3939295,2.1468305 49.3819660,2.1527116 49.3700270,2.1587051 49.3581128,2.1648108 49.3462239,2.1710284 49.3343609,2.1773577 49.3225242,2.1837984 49.3107142,2.1903503 49.2989314,2.1970132 49.2871762,2.2037867 49.2754493,2.2106705 49.2637509,2.2176645 49.2520816,2.2247684 49.2404418,2.2319818 49.2288320,2.2393045 49.2172527,2.2467361 49.2057042,2.2542765 49.1941871,2.2619252 49.1827019,2.2696821 49.1712488,2.2775467 49.1598285,2.2855188 49.1484414,2.2935981 49.1370879,2.3017842 49.1257685,2.3100769 49.1144835,2.3184757 49.1032336,2.3269804 49.0920190,2.3355907 49.0808403,2.3443061 49.0696978,2.3531263 49.0585921,2.3620511 49.0475236,2.3710800 49.0364927,2.3802126 49.0254997,2.3894487 49.0145453,2.3987879 49.0036298,2.4082297 48.9927536,2.4177739 48.9819172,2.4274200 48.9711209,2.4371677 48.9603653,2.4470166 48.9496507,2.4569662 48.9389776,2.4670162 48.9283464,2.4771663 48.9177575,2.4874159 48.9072113,2.4977647 48.8967083,2.5082123 48.8862488,2.5187583 48.8758332,2.5294022 48.8654621,2.5401437 48.8551357,2.5509822 48.8448546,2.5619175 48.8346190,2.5729490 48.8244295,2.5840763 48.8142864,2.5952990 48.8041900,2.6066167 48.7941409,2.6180288 48.7841394,2.6295350 48.7741859,2.6411347 48.7642808,2.6528276 48.7544244,2.6646131 48.7446173,2.6764908 48.7348597,2.6884603 48.7251520,2.7005210 48.7154947,2.7126725 48.7058881,2.7249143 48.6963325,2.7372459 48.6868285,2.7496668 48.6773763,2.7621766 48.6679763,2.7747747 48.6586288,2.7874606 48.6493344,2.8002340 48.6400932,2.8130941 48.6309058,2.8260406 48.6217724,2.8390729 48.6126934,2.8521906 48.6036692,2.8653930 48.5947001,2.8786797 48.5857864,2.8920501 48.5769286,2.9055037 48.5681270,2.9190401 48.5593820,2.9326586 48.5506937,2.9463587 48.5420627,2.9601399 48.5334893,2.9740016 48.5249738,2.9879433 48.5165165,3.0019644 48.5081177,3.0160644 48.4997779,3.0302427 48.4914972,3.0444988 48.4832762,3.0588321 48.4751150,3.0732420 48.4670140,3.0877280 48.4589735,3.1022895 48.4509939,3.1169259 48.4430754,3.1316367 48.4352184,3.1464212 48.4274231,3.1612788 48.4196900,3.1762091 48.4120192,3.1912114 48.4044111,3.2062851 48.3968660,3.2214295 48.3893842,3.2366442 48.3819660,3.2519286 48.3746117,3.2672819 48.3673215,3.2827036 48.3600958,3.2981932 48.3529348,3.3137499 48.3458389,3.3293732 48.3388082,3.3450624 48.3318431,3.3608170 48.3249439,3.3766362 48.3181108,3.3925196 48.3113441,3.4084664 48.3046441,3.4244761 48.2980110,3.4405480 48.2914451,3.4566814 48.2849467,3.4728758 48.2785159,3.4891304 48.2721532,3.5054447 48.2658586,3.5218180 48.2596325,3.5382496 48.2534751,3.5547390 48.2473866,3.5712854 48.2413674,3.5878882 48.2354175,3.6045468 48.2295374,3.6212604 48.2237271,3.6380285 48.2179870,3.6548504 48.2123172,3.6717253 48.2067179,3.6886527 48.2011895,3.7056319 48.1957321,3.7226621 48.1903459,3.7397428 48.1850312,3.7568733 48.1797881,3.7740528 48.1746168,3.7912807 48.1695177,3.8085563 48.1644907,3.8258790 48.1595363,3.8432480 48.1546545,3.8606627 48.1498456,3.8781224 48.1451097,3.8956263 48.1404470,3.9131739 48.1358578,3.9307644 48.1313421,3.9483970 48.1269002,3.9660712 48.1225323,3.9837862 48.1182385,4.0015414 48.1140189,4.0193359 48.1098738,4.0371692 48.1058034,4.0550404 48.1018077,4.0729490 48.0978870,4.0908942 48.0940413,4.1088753 48.0902709,4.1268915 48.0865759,4.1449422 48.0829564,4.1630267 48.0794126,4.1811442 48.0759447,4.1992940 48.0725526,4.2174755 48.0692367,4.2356878 48.0659970,4.2539303 48.0628337,4.2722023 48.0597468,4.2905030 48.0567365,4.3088317 48.0538030,4.3271877 48.0509463,4.3455703 48.0481665,4.3639787 48.0454638,4.3824122 48.0428382,4.4008701 48.0402899,4.4193516 48.0378190,4.4378561 48.0354255,4.4563827 48.0331096,4.4749308 48.0308713,4.4934997 48.0287108,4.5120885 48.0266281,4.5306966 48.0246233,4.5493232 48.0226965,4.5679677 48.0208478,4.5866291 48.0190771,4.6053069 48.0173847,4.6240003 48.0157706,4.6427085 48.0142348,4.6614308 48.0127774,4.6801665 48.0113984,4.6989149 48.0100980,4.7176751 48.0088761,4.7364464 48.0077328,4.7552282 48.0066681,4.7740196 48.0056822,4.7928199 48.0047750,4.8116284 48.0039465,4.8304444 48.0031969,4.8492670 48.0025261,4.8680956 48.0019341,4.8869295 48.0014211,4.9057677 48.0009869,4.9246097 48.0006316,4.9434547 48.0003553,4.9623019 48.0001579,4.9811506 48.0000395,5.0000000 48.0000000,5.0188494 48.0000395,5.0376981 48.0001579,5.0565453 48.0003553,5.0753903 48.0006316,5.0942323 48.0009869,5.1130705 48.0014211,5.1319044 48.0019341,5.1507330 48.0025261,5.1695556 48.0031969,5.1883716 48.0039465,5.2071801 48.0047750,5.2259804 48.0056822,5.2447718 48.0066681,5.2635536 48.0077328,5.2823249 48.0088761,5.3010851 48.0100980,5.3198335 48.0113984,5.3385692 48.0127774,5.3572915 48.0142348,5.3759997 48.0157706,5.3946931 48.0173847,5.4133709 48.0190771,5.4320323 48.0208478,5.4506768 48.0226965,5.4693034 48.0246233,5.4879115 48.0266281,5.5065003 48.0287108,5.5250692 48.0308713,5.5436173 48.0331096,5.5621439 48.0354255,5.5806484 48.0378190,5.5991299 48.0402899,5.6175878 48.0428382,5.6360213 48.0454638,5.6544297 48.0481665,5.6728123 48.0509463,5.6911683 48.0538030,5.7094970 48.0567365,5.7277977 48.0597468,5.7460697 48.0628337,5.7643122 48.0659970,5.7825245 48.0692367,5.8007060 48.0725526,5.8188558 48.0759447,5.8369733 48.0794126,5.8550578 48.0829564,5.8731085 48.0865759,5.8911247 48.0902709,5.9091058 48.0940413,5.9270510 48.0978870,5.9449596 48.1018077,5.9628308 48.1058034,5.9806641 48.1098738,5.9984586 48.1140189,6.0162138 48.1182385,6.0339288 48.1225323,6.0516030 48.1269002,6.0692356 48.1313421,6.0868261 48.1358578,6.1043737 48.1404470,6.1218776 48.1451097,6.1393373 48.1498456,6.1567520 48.1546545,6.1741210 48.1595363,6.1914437 48.1644907,6.2087193 48.1695177,6.2259472 48.1746168,6.2431267 48.1797881,6.2602572 48.1850312,6.2773379 48.1903459,6.2943681 48.1957321,6.3113473 48.2011895,6.3282747 48.2067179,6.3451496 48.2123172,6.3619715 48.2179870,6.3787396 48.2237271,6.3954532 48.2295374,6.4121118 48.2354175,6.4287146 48.2413674,6.4452610 48.2473866,6.4617504 48.2534751,6.4781820 48.2596325,6.4945553 48.2658586,6.5108696 48.2721532,6.5271242 48.2785159,6.5433186 48.2849467,6.5594520 48.2914451,6.5755239 48.2980110,6.5915336 48.3046441,6.6074804 48.3113441,6.6233638 48.3181108,6.6391830 48.3249439,6.6549376 48.3318431,6.6706268 48.3388082,6.6862501 48.3458389,6.7018068 48.3529348,6.7172964 48.3600958,6.7327181 48.3673215,6.7480714 48.3746117,6.7633558 48.3819660,6.7785705 48.3893842,6.7937149 48.3968660,6.8087886 48.4044111,6.8237909 48.4120192,6.8387212 48.4196900,6.8535788 48.4274231,6.8683633 48.4352184,6.8830741 48.4430754,6.8977105 48.4509939,6.9122720 48.4589735,6.9267580 48.4670140,6.9411679 48.4751150,6.9555012 48.4832762,6.9697573 48.4914972,6.9839356 48.4997779,6.9980356 48.5081177,7.0120567 48.5165165,7.0259984 48.5249738,7.0398601 48.5334893,7.0536413 48.5420627,7.0673414 48.5506937,7.0809599 48.5593820,7.0944963 48.5681270,7.1079499 48.5769286,7.1213203 48.5857864,7.1346070 48.5947001,7.1478094 48.6036692,7.1609271 48.6126934,7.1739594 48.6217724,7.1869059 48.6309058,7.1997660 48.6400932,7.2125394 48.6493344,7.2252253 48.6586288,7.2378234 48.6679763,7.2503332 48.6773763,7.2627541 48.6868285,7.2750857 48.6963325,7.2873275 48.7058881,7.2994790 48.7154947,7.3115397 48.7251520,7.3235092 48.7348597,7.3353869 48.7446173,7.3471724 48.7544244,7.3588653 48.7642808,7.3704650 48.7741859,7.3819712 48.7841394,7.3933833 48.7941409,7.4047010 48.8041900,7.4159237 48.8142864,7.4270510 48.8244295,7.4380825 48.8346190,7.4490178 48.8448546,7.4598563 48.8551357,7.4705978 48.8654621,7.4812417 48.8758332,7.4917877 48.8862488,7.5022353 48.8967083,7.5125841 48.9072113,7.5228337 48.9177575,7.5329838 48.9283464,7.5430338 48.9389776,7.5529834 48.9496507,7.5628323 48.9603653,7.5725800 48.9711209,7.5822261 48.9819172,7.5917703 48.9927536,7.6012121 49.0036298,7.6105513 49.0145453,7.6197874 49.0254997,7.6289200 49.0364927,7.6379489 49.0475236,7.6468737 49.0585921,7.6556939 49.0696978,7.6644093 49.0808403,7.6730196 49.0920190,7.6815243 49.1032336,7.6899231 49.1144835,7.6982158 49.1257685,7.7064019 49.1370879,7.7144812 49.1484414,7.7224533 49.1598285,7.7303179 49.1712488,7.7380748 49.1827019,7.7457235 49.1941871,7.7532639 49.2057042,7.7606955 49.2172527,7.7680182 49.2288320,7.7752316 49.2404418,7.7823355 49.2520816,7.7893295 49.2637509,7.7962133 49.2754493,7.8029868 49.2871762,7.8096497 49.2989314,7.8162016 49.3107142,7.8226423 49.3225242,7.8289716 49.3343609,7.8351892 49.3462239,7.8412949 49.3581128,7.8472884 49.3700270,7.8531695 49.3819660,7.8589380 49.3939295,7.8645936 49.4059168,7.8701362 49.4179277,7.8755654 49.4299615,7.8808811 49.4420178,7.8860830 49.4540961,7.8911710 49.4661960,7.8961449 49.4783170,7.9010045 49.4904585,7.9057495 49.5026202,7.9103798 49.5148015,7.9148952 49.5270020,7.9192955 49.5392211,7.9235806 49.5514585,7.9277503 49.5637135,7.9318044 49.5759858,7.9357427 49.5882748,7.9395652 49.6005800,7.9432716 49.6129011,7.9468618 49.6252374,7.9503356 49.6375885,7.9536930 49.6499539,7.9569338 49.6623331,7.9600578 49.6747257,7.9630650 49.6871311,7.9659552 49.6995488,7.9687284 49.7119784,7.9713843 49.7244194,7.9739229 49.7368713,7.9763441 49.7493335,7.9786478 49.7618057,7.9808339 49.7742872,7.9829024 49.7867777,7.9848531 49.7992766,7.9866859 49.8117834,7.9884008 49.8242976,7.9899978 49.8368188,7.9914767 49.8493464,7.9928375 49.8618799,7.9940802 49.8744190,7.9952047 49.8869629,7.9962109 49.8995114,7.9970988 49.9120638,7.9978684 49.9246196,7.9985197 49.9371785,7.9990526 49.9497398,7.9994671 49.9623031,7.9997631 49.9748679,7.9999408 49.9874337,8.0000000 50.0000000) polya POLYGON((8.0000000 50.0000000,7.9999408 50.0125663,7.9997631 50.0251321,7.9994671 50.0376969,7.9990526 50.0502602,7.9985197 50.0628215,7.9978684 50.0753804,7.9970988 50.0879362,7.9962109 50.1004886,7.9952047 50.1130371,7.9940802 50.1255810,7.9928375 50.1381201,7.9914767 50.1506536,7.9899978 50.1631812,7.9884008 50.1757024,7.9866859 50.1882166,7.9848531 50.2007234,7.9829024 50.2132223,7.9808339 50.2257128,7.9786478 50.2381943,7.9763441 50.2506665,7.9739229 50.2631287,7.9713843 50.2755806,7.9687284 50.2880216,7.9659552 50.3004512,7.9630650 50.3128689,7.9600578 50.3252743,7.9569338 50.3376669,7.9536930 50.3500461,7.9503356 50.3624115,7.9468618 50.3747626,7.9432716 50.3870989,7.9395652 50.3994200,7.9357427 50.4117252,7.9318044 50.4240142,7.9277503 50.4362865,7.9235806 50.4485415,7.9192955 50.4607789,7.9148952 50.4729980,7.9103798 50.4851985,7.9057495 50.4973798,7.9010045 50.5095415,7.8961449 50.5216830,7.8911710 50.5338040,7.8860830 50.5459039,7.8808811 50.5579822,7.8755654 50.5700385,7.8701362 50.5820723,7.8645936 50.5940832,7.8589380 50.6060705,7.8531695 50.6180340,7.8472884 50.6299730,7.8412949 50.6418872,7.8351892 50.6537761,7.8289716 50.6656391,7.8226423 50.6774758,7.8162016 50.6892858,7.8096497 50.7010686,7.8029868 50.7128238,7.7962133 50.7245507,7.7893295 50.7362491,7.7823355 50.7479184,7.7752316 50.7595582,7.7680182 50.7711680,7.7606955 50.7827473,7.7532639 50.7942958,7.7457235 50.8058129,7.7380748 50.8172981,7.7303179 50.8287512,7.7224533 50.8401715,7.7144812 50.8515586,7.7064019 50.8629121,7.6982158 50.8742315,7.6899231 50.8855165,7.6815243 50.8967664,7.6730196 50.9079810,7.6644093 50.9191597,7.6556939 50.9303022,7.6468737 50.9414079,7.6379489 50.9524764,7.6289200 50.9635073,7.6197874 50.9745003,7.6105513 50.9854547,7.6012121 50.9963702,7.5917703 51.0072464,7.5822261 51.0180828,7.5725800 51.0288791,7.5628323 51.0396347,7.5529834 51.0503493,7.5430338 51.0610224,7.5329838 51.0716536,7.5228337 51.0822425,7.5125841 51.0927887,7.5022353 51.1032917,7.4917877 51.1137512,7.4812417 51.1241668,7.4705978 51.1345379,7.4598563 51.1448643,7.4490178 51.1551454,7.4380825 51.1653810,7.4270510 51.1755705,7.4159237 51.1857136,7.4047010 51.1958100,7.3933833 51.2058591,7.3819712 51.2158606,7.3704650 51.2258141,7.3588653 51.2357192,7.3471724 51.2455756,7.3353869 51.2553827,7.3235092 51.2651403,7.3115397 51.2748480,7.2994790 51.2845053,7.2873275 51.2941119,7.2750857 51.3036675,7.2627541 51.3131715,7.2503332 51.3226237,7.2378234 51.3320237,7.2252253 51.3413712,7.2125394 51.3506656,7.1997660 51.3599068,7.1869059 51.3690942,7.1739594 51.3782276,7.1609271 51.3873066,7.1478094 51.3963308,7.1346070 51.4052999,7.1213203 51.4142136,7.1079499 51.4230714,7.0944963 51.4318730,7.0809599 51.4406180,7.0673414 51.4493063,7.0536413 51.4579373,7.0398601 51.4665107,7.0259984 51.4750262,7.0120567 51.4834835,6.9980356 51.4918823,6.9839356 51.5002221,6.9697573 51.5085028,6.9555012 51.5167238,6.9411679 51.5248850,6.9267580 51.5329860,6.9122720 51.5410265,6.8977105 51.5490061,6.8830741 51.5569246,6.8683633 51.5647816,6.8535788 51.5725769,6.8387212 51.5803100,6.8237909 51.5879808,6.8087886 51.5955889,6.7937149 51.6031340,6.7785705 51.6106158,6.7633558 51.6180340,6.7480714 51.6253883,6.7327181 51.6326785,6.7172964 51.6399042,6.7018068 51.6470652,6.6862501 51.6541611,6.6706268 51.6611918,6.6549376 51.6681569,6.6391830 51.6750561,6.6233638 51.6818892,6.6074804 51.6886559,6.5915336 51.6953559,6.5755239 51.7019890,6.5594520 51.7085549,6.5433186 51.7150533,6.5271242 51.7214841,6.5108696 51.7278468,6.4945553 51.7341414,6.4781820 51.7403675,6.4617504 51.7465249,6.4452610 51.7526134,6.4287146 51.7586326,6.4121118 51.7645825,6.3954532 51.7704626,6.3787396 51.7762729,6.3619715 51.7820130,6.3451496 51.7876828,6.3282747 51.7932821,6.3113473 51.7988105,6.2943681 51.8042679,6.2773379 51.8096541,6.2602572 51.8149688,6.2431267 51.8202119,6.2259472 51.8253832,6.2087193 51.8304823,6.1914437 51.8355093,6.1741210 51.8404637,6.1567520 51.8453455,6.1393373 51.8501544,6.1218776 51.8548903,6.1043737 51.8595530,6.0868261 51.8641422,6.0692356 51.8686579,6.0516030 51.8730998,6.0339288 51.8774677,6.0162138 51.8817615,5.9984586 51.8859811,5.9806641 51.8901262,5.9628308 51.8941966,5.9449596 51.8981923,5.9270510 51.9021130,5.9091058 51.9059587,5.8911247 51.9097291,5.8731085 51.9134241,5.8550578 51.9170436,5.8369733 51.9205874,5.8188558 51.9240553,5.8007060 51.9274474,5.7825245 51.9307633,5.7643122 51.9340030,5.7460697 51.9371663,5.7277977 51.9402532,5.7094970 51.9432635,5.6911683 51.9461970,5.6728123 51.9490537,5.6544297 51.9518335,5.6360213 51.9545362,5.6175878 51.9571618,5.5991299 51.9597101,5.5806484 51.9621810,5.5621439 51.9645745,5.5436173 51.9668904,5.5250692 51.9691287,5.5065003 51.9712892,5.4879115 51.9733719,5.4693034 51.9753767,5.4506768 51.9773035,5.4320323 51.9791522,5.4133709 51.9809229,5.3946931 51.9826153,5.3759997 51.9842294,5.3572915 51.9857652,5.3385692 51.9872226,5.3198335 51.9886016,5.3010851 51.9899020,5.2823249 51.9911239,5.2635536 51.9922672,5.2447718 51.9933319,5.2259804 51.9943178,5.2071801 51.9952250,5.1883716 51.9960535,5.1695556 51.9968031,5.1507330 51.9974739,5.1319044 51.9980659,5.1130705 51.9985789,5.0942323 51.9990131,5.0753903 51.9993684,5.0565453 51.9996447,5.0376981 51.9998421,5.0188494 51.9999605,5.0000000 52.0000000,4.9811506 51.9999605,4.9623019 51.9998421,4.9434547 51.9996447,4.9246097 51.9993684,4.9057677 51.9990131,4.8869295 51.9985789,4.8680956 51.9980659,4.8492670 51.9974739,4.8304444 51.9968031,4.8116284 51.9960535,4.7928199 51.9952250,4.7740196 51.9943178,4.7552282 51.9933319,4.7364464 51.9922672,4.7176751 51.9911239,4.6989149 51.9899020,4.6801665 51.9886016,4.6614308 51.9872226,4.6427085 51.9857652,4.6240003 51.9842294,4.6053069 51.9826153,4.5866291 51.9809229,4.5679677 51.9791522,4.5493232 51.9773035,4.5306966 51.9753767,4.5120885 51.9733719,4.4934997 51.9712892,4.4749308 51.9691287,4.4563827 51.9668904,4.4378561 51.9645745,4.4193516 51.9621810,4.4008701 51.9597101,4.3824122 51.9571618,4.3639787 51.9545362,4.3455703 51.9518335,4.3271877 51.9490537,4.3088317 51.9461970,4.2905030 51.9432635,4.2722023 51.9402532,4.2539303 51.9371663,4.2356878 51.9340030,4.2174755 51.9307633,4.1992940 51.9274474,4.1811442 51.9240553,4.1630267 51.9205874,4.1449422 51.9170436,4.1268915 51.9134241,4.1088753 51.9097291,4.0908942 51.9059587,4.0729490 51.9021130,4.0550404 51.8981923,4.0371692 51.8941966,4.0193359 51.8901262,4.0015414 51.8859811,3.9837862 51.8817615,3.9660712 51.8774677,3.9483970 51.8730998,3.9307644 51.8686579,3.9131739 51.8641422,3.8956263 51.8595530,3.8781224 51.8548903,3.8606627 51.8501544,3.8432480 51.8453455,3.8258790 51.8404637,3.8085563 51.8355093,3.7912807 51.8304823,3.7740528 51.8253832,3.7568733 51.8202119,3.7397428 51.8149688,3.7226621 51.8096541,3.7056319 51.8042679,3.6886527 51.7988105,3.6717253 51.7932821,3.6548504 51.7876828,3.6380285 51.7820130,3.6212604 51.7762729,3.6045468 51.7704626,3.5878882 51.7645825,3.5712854 51.7586326,3.5547390 51.7526134,3.5382496 51.7465249,3.5218180 51.7403675,3.5054447 51.7341414,3.4891304 51.7278468,3.4728758 51.7214841,3.4566814 51.7150533,3.4405480 51.7085549,3.4244761 51.7019890,3.4084664 51.6953559,3.3925196 51.6886559,3.3766362 51.6818892,3.3608170 51.6750561,3.3450624 51.6681569,3.3293732 51.6611918,3.3137499 51.6541611,3.2981932 51.6470652,3.2827036 51.6399042,3.2672819 51.6326785,3.2519286 51.6253883,3.2366442 51.6180340,3.2214295 51.6106158,3.2062851 51.6031340,3.1912114 51.5955889,3.1762091 51.5879808,3.1612788 51.5803100,3.1464212 51.5725769,3.1316367 51.5647816,3.1169259 51.5569246,3.1022895 51.5490061,3.0877280 51.5410265,3.0732420 51.5329860,3.0588321 51.5248850,3.0444988 51.5167238,3.0302427 51.5085028,3.0160644 51.5002221,3.0019644 51.4918823,2.9879433 51.4834835,2.9740016 51.4750262,2.9601399 51.4665107,2.9463587 51.4579373,2.9326586 51.4493063,2.9190401 51.4406180,2.9055037 51.4318730,2.8920501 51.4230714,2.8786797 51.4142136,2.8653930 51.4052999,2.8521906 51.3963308,2.8390729 51.3873066,2.8260406 51.3782276,2.8130941 51.3690942,2.8002340 51.3599068,2.7874606 51.3506656,2.7747747 51.3413712,2.7621766 51.3320237,2.7496668 51.3226237,2.7372459 51.3131715,2.7249143 51.3036675,2.7126725 51.2941119,2.7005210 51.2845053,2.6884603 51.2748480,2.6764908 51.2651403,2.6646131 51.2553827,2.6528276 51.2455756,2.6411347 51.2357192,2.6295350 51.2258141,2.6180288 51.2158606,2.6066167 51.2058591,2.5952990 51.1958100,2.5840763 51.1857136,2.5729490 51.1755705,2.5619175 51.1653810,2.5509822 51.1551454,2.5401437 51.1448643,2.5294022 51.1345379,2.5187583 51.1241668,2.5082123 51.1137512,2.4977647 51.1032917,2.4874159 51.0927887,2.4771663 51.0822425,2.4670162 51.0716536,2.4569662 51.0610224,2.4470166 51.0503493,2.4371677 51.0396347,2.4274200 51.0288791,2.4177739 51.0180828,2.4082297 51.0072464,2.3987879 50.9963702,2.3894487 50.9854547,2.3802126 50.9745003,2.3710800 50.9635073,2.3620511 50.9524764,2.3531263 50.9414079,2.3443061 50.9303022,2.3355907 50.9191597,2.3269804 50.9079810,2.3184757 50.8967664,2.3100769 50.8855165,2.3017842 50.8742315,2.2935981 50.8629121,2.2855188 50.8515586,2.2775467 50.8401715,2.2696821 50.8287512,2.2619252 50.8172981,2.2542765 50.8058129,2.2467361 50.7942958,2.2393045 50.7827473,2.2319818 50.7711680,2.2247684 50.7595582,2.2176645 50.7479184,2.2106705 50.7362491,2.2037867 50.7245507,2.1970132 50.7128238,2.1903503 50.7010686,2.1837984 50.6892858,2.1773577 50.6774758,2.1710284 50.6656391,2.1648108 50.6537761,2.1587051 50.6418872,2.1527116 50.6299730,2.1468305 50.6180340,2.1410620 50.6060705,2.1354064 50.5940832,2.1298638 50.5820723,2.1244346 50.5700385,2.1191189 50.5579822,2.1139170 50.5459039,2.1088290 50.5338040,2.1038551 50.5216830,2.0989955 50.5095415,2.0942505 50.4973798,2.0896202 50.4851985,2.0851048 50.4729980,2.0807045 50.4607789,2.0764194 50.4485415,2.0722497 50.4362865,2.0681956 50.4240142,2.0642573 50.4117252,2.0604348 50.3994200,2.0567284 50.3870989,2.0531382 50.3747626,2.0496644 50.3624115,2.0463070 50.3500461,2.0430662 50.3376669,2.0399422 50.3252743,2.0369350 50.3128689,2.0340448 50.3004512,2.0312716 50.2880216,2.0286157 50.2755806,2.0260771 50.2631287,2.0236559 50.2506665,2.0213522 50.2381943,2.0191661 50.2257128,2.0170976 50.2132223,2.0151469 50.2007234,2.0133141 50.1882166,2.0115992 50.1757024,2.0100022 50.1631812,2.0085233 50.1506536,2.0071625 50.1381201,2.0059198 50.1255810,2.0047953 50.1130371,2.0037891 50.1004886,2.0029012 50.0879362,2.0021316 50.0753804,2.0014803 50.0628215,2.0009474 50.0502602,2.0005329 50.0376969,2.0002369 50.0251321,2.0000592 50.0125663,2.0000000 50.0000000,2.0000592 49.9874337,2.0002369 49.9748679,2.0005329 49.9623031,2.0009474 49.9497398,2.0014803 49.9371785,2.0021316 49.9246196,2.0029012 49.9120638,2.0037891 49.8995114,2.0047953 49.8869629,2.0059198 49.8744190,2.0071625 49.8618799,2.0085233 49.8493464,2.0100022 49.8368188,2.0115992 49.8242976,2.0133141 49.8117834,2.0151469 49.7992766,2.0170976 49.7867777,2.0191661 49.7742872,2.0213522 49.7618057,2.0236559 49.7493335,2.0260771 49.7368713,2.0286157 49.7244194,2.0312716 49.7119784,2.0340448 49.6995488,2.0369350 49.6871311,2.0399422 49.6747257,2.0430662 49.6623331,2.0463070 49.6499539,2.0496644 49.6375885,2.0531382 49.6252374,2.0567284 49.6129011,2.0604348 49.6005800,2.0642573 49.5882748,2.0681956 49.5759858,2.0722497 49.5637135,2.0764194 49.5514585,2.0807045 49.5392211,2.0851048 49.5270020,2.0896202 49.5148015,2.0942505 49.5026202,2.0989955 49.4904585,2.1038551 49.4783170,2.1088290 49.4661960,2.1139170 49.4540961,2.1191189 49.4420178,2.1244346 49.4299615,2.1298638 49.4179277,2.1354064 49.4059168,2.1410620 49.3939295,2.1468305 49.3819660,2.1527116 49.3700270,2.1587051 49.3581128,2.1648108 49.3462239,2.1710284 49.3343609,2.1773577 49.3225242,2.1837984 49.3107142,2.1903503 49.2989314,2.1970132 49.2871762,2.2037867 49.2754493,2.2106705 49.2637509,2.2176645 49.2520816,2.2247684 49.2404418,2.2319818 49.2288320,2.2393045 49.2172527,2.2467361 49.2057042,2.2542765 49.1941871,2.2619252 49.1827019,2.2696821 49.1712488,2.2775467 49.1598285,2.2855188 49.1484414,2.2935981 49.1370879,2.3017842 49.1257685,2.3100769 49.1144835,2.3184757 49.1032336,2.3269804 49.0920190,2.3355907 49.0808403,2.3443061 49.0696978,2.3531263 49.0585921,2.3620511 49.0475236,2.3710800 49.0364927,2.3802126 49.0254997,2.3894487 49.0145453,2.3987879 49.0036298,2.4082297 48.9927536,2.4177739 48.9819172,2.4274200 48.9711209,2.4371677 48.9603653,2.4470166 48.9496507,2.4569662 48.9389776,2.4670162 48.9283464,2.4771663 48.9177575,2.4874159 48.9072113,2.4977647 48.8967083,2.5082123 48.8862488,2.5187583 48.8758332,2.5294022 48.8654621,2.5401437 48.8551357,2.5509822 48.8448546,2.5619175 48.8346190,2.5729490 48.8244295,2.5840763 48.8142864,2.5952990 48.8041900,2.6066167 48.7941409,2.6180288 48.7841394,2.6295350 48.7741859,2.6411347 48.7642808,2.6528276 48.7544244,2.6646131 48.7446173,2.6764908 48.7348597,2.6884603 48.7251520,2.7005210 48.7154947,2.7126725 48.7058881,2.7249143 48.6963325,2.7372459 48.6868285,2.7496668 48.6773763,2.7621766 48.6679763,2.7747747 48.6586288,2.7874606 48.6493344,2.8002340 48.6400932,2.8130941 48.6309058,2.8260406 48.6217724,2.8390729 48.6126934,2.8521906 48.6036692,2.8653930 48.5947001,2.8786797 48.5857864,2.8920501 48.5769286,2.9055037 48.5681270,2.9190401 48.5593820,2.9326586 48.5506937,2.9463587 48.5420627,2.9601399 48.5334893,2.9740016 48.5249738,2.9879433 48.5165165,3.0019644 48.5081177,3.0160644 48.4997779,3.0302427 48.4914972,3.0444988 48.4832762,3.0588321 48.4751150,3.0732420 48.4670140,3.0877280 48.4589735,3.1022895 48.4509939,3.1169259 48.4430754,3.1316367 48.4352184,3.1464212 48.4274231,3.1612788 48.4196900,3.1762091 48.4120192,3.1912114 48.4044111,3.2062851 48.3968660,3.2214295 48.3893842,3.2366442 48.3819660,3.2519286 48.3746117,3.2672819 48.3673215,3.2827036 48.3600958,3.2981932 48.3529348,3.3137499 48.3458389,3.3293732 48.3388082,3.3450624 48.3318431,3.3608170 48.3249439,3.3766362 48.3181108,3.3925196 48.3113441,3.4084664 48.3046441,3.4244761 48.2980110,3.4405480 48.2914451,3.4566814 48.2849467,3.4728758 48.2785159,3.4891304 48.2721532,3.5054447 48.2658586,3.5218180 48.2596325,3.5382496 48.2534751,3.5547390 48.2473866,3.5712854 48.2413674,3.5878882 48.2354175,3.6045468 48.2295374,3.6212604 48.2237271,3.6380285 48.2179870,3.6548504 48.2123172,3.6717253 48.2067179,3.6886527 48.2011895,3.7056319 48.1957321,3.7226621 48.1903459,3.7397428 48.1850312,3.7568733 48.1797881,3.7740528 48.1746168,3.7912807 48.1695177,3.8085563 48.1644907,3.8258790 48.1595363,3.8432480 48.1546545,3.8606627 48.1498456,3.8781224 48.1451097,3.8956263 48.1404470,3.9131739 48.1358578,3.9307644 48.1313421,3.9483970 48.1269002,3.9660712 48.1225323,3.9837862 48.1182385,4.0015414 48.1140189,4.0193359 48.1098738,4.0371692 48.1058034,4.0550404 48.1018077,4.0729490 48.0978870,4.0908942 48.0940413,4.1088753 48.0902709,4.1268915 48.0865759,4.1449422 48.0829564,4.1630267 48.0794126,4.1811442 48.0759447,4.1992940 48.0725526,4.2174755 48.0692367,4.2356878 48.0659970,4.2539303 48.0628337,4.2722023 48.0597468,4.2905030 48.0567365,4.3088317 48.0538030,4.3271877 48.0509463,4.3455703 48.0481665,4.3639787 48.0454638,4.3824122 48.0428382,4.4008701 48.0402899,4.4193516 48.0378190,4.4378561 48.0354255,4.4563827 48.0331096,4.4749308 48.0308713,4.4934997 48.0287108,4.5120885 48.0266281,4.5306966 48.0246233,4.5493232 48.0226965,4.5679677 48.0208478,4.5866291 48.0190771,4.6053069 48.0173847,4.6240003 48.0157706,4.6427085 48.0142348,4.6614308 48.0127774,4.6801665 48.0113984,4.6989149 48.0100980,4.7176751 48.0088761,4.7364464 48.0077328,4.7552282 48.0066681,4.7740196 48.0056822,4.7928199 48.0047750,4.8116284 48.0039465,4.8304444 48.0031969,4.8492670 48.0025261,4.8680956 48.0019341,4.8869295 48.0014211,4.9057677 48.0009869,4.9246097 48.0006316,4.9434547 48.0003553,4.9623019 48.0001579,4.9811506 48.0000395,5.0000000 48.0000000,5.0188494 48.0000395,5.0376981 48.0001579,5.0565453 48.0003553,5.0753903 48.0006316,5.0942323 48.0009869,5.1130705 48.0014211,5.1319044 48.0019341,5.1507330 48.0025261,5.1695556 48.0031969,5.1883716 48.0039465,5.2071801 48.0047750,5.2259804 48.0056822,5.2447718 48.0066681,5.2635536 48.0077328,5.2823249 48.0088761,5.3010851 48.0100980,5.3198335 48.0113984,5.3385692 48.0127774,5.3572915 48.0142348,5.3759997 48.0157706,5.3946931 48.0173847,5.4133709 48.0190771,5.4320323 48.0208478,5.4506768 48.0226965,5.4693034 48.0246233,5.4879115 48.0266281,5.5065003 48.0287108,5.5250692 48.0308713,5.5436173 48.0331096,5.5621439 48.0354255,5.5806484 48.0378190,5.5991299 48.0402899,5.6175878 48.0428382,5.6360213 48.0454638,5.6544297 48.0481665,5.6728123 48.0509463,5.6911683 48.0538030,5.7094970 48.0567365,5.7277977 48.0597468,5.7460697 48.0628337,5.7643122 48.0659970,5.7825245 48.0692367,5.8007060 48.0725526,5.8188558 48.0759447,5.8369733 48.0794126,5.8550578 48.0829564,5.8731085 48.0865759,5.8911247 48.0902709,5.9091058 48.0940413,5.9270510 48.0978870,5.9449596 48.1018077,5.9628308 48.1058034,5.9806641 48.1098738,5.9984586 48.1140189,6.0162138 48.1182385,6.0339288 48.1225323,6.0516030 48.1269002,6.0692356 48.1313421,6.0868261 48.1358578,6.1043737 48.1404470,6.1218776 48.1451097,6.1393373 48.1498456,6.1567520 48.1546545,6.1741210 48.1595363,6.1914437 48.1644907,6.2087193 48.1695177,6.2259472 48.1746168,6.2431267 48.1797881,6.2602572 48.1850312,6.2773379 48.1903459,6.2943681 48.1957321,6.3113473 48.2011895,6.3282747 48.2067179,6.3451496 48.2123172,6.3619715 48.2179870,6.3787396 48.2237271,6.3954532 48.2295374,6.4121118 48.2354175,6.4287146 48.2413674,6.4452610 48.2473866,6.4617504 48.2534751,6.4781820 48.2596325,6.4945553 48.2658586,6.5108696 48.2721532,6.5271242 48.2785159,6.5433186 48.2849467,6.5594520 48.2914451,6.5755239 48.2980110,6.5915336 48.3046441,6.6074804 48.3113441,6.6233638 48.3181108,6.6391830 48.3249439,6.6549376 48.3318431,6.6706268 48.3388082,6.6862501 48.3458389,6.7018068 48.3529348,6.7172964 48.3600958,6.7327181 48.3673215,6.7480714 48.3746117,6.7633558 48.3819660,6.7785705 48.3893842,6.7937149 48.3968660,6.8087886 48.4044111,6.8237909 48.4120192,6.8387212 48.4196900,6.8535788 48.4274231,6.8683633 48.4352184,6.8830741 48.4430754,6.8977105 48.4509939,6.9122720 48.4589735,6.9267580 48.4670140,6.9411679 48.4751150,6.9555012 48.4832762,6.9697573 48.4914972,6.9839356 48.4997779,6.9980356 48.5081177,7.0120567 48.5165165,7.0259984 48.5249738,7.0398601 48.5334893,7.0536413 48.5420627,7.0673414 48.5506937,7.0809599 48.5593820,7.0944963 48.5681270,7.1079499 48.5769286,7.1213203 48.5857864,7.1346070 48.5947001,7.1478094 48.6036692,7.1609271 48.6126934,7.1739594 48.6217724,7.1869059 48.6309058,7.1997660 48.6400932,7.2125394 48.6493344,7.2252253 48.6586288,7.2378234 48.6679763,7.2503332 48.6773763,7.2627541 48.6868285,7.2750857 48.6963325,7.2873275 48.7058881,7.2994790 48.7154947,7.3115397 48.7251520,7.3235092 48.7348597,7.3353869 48.7446173,7.3471724 48.7544244,7.3588653 48.7642808,7.3704650 48.7741859,7.3819712 48.7841394,7.3933833 48.7941409,7.4047010 48.8041900,7.4159237 48.8142864,7.4270510 48.8244295,7.4380825 48.8346190,7.4490178 48.8448546,7.4598563 48.8551357,7.4705978 48.8654621,7.4812417 48.8758332,7.4917877 48.8862488,7.5022353 48.8967083,7.5125841 48.9072113,7.5228337 48.9177575,7.5329838 48.9283464,7.5430338 48.9389776,7.5529834 48.9496507,7.5628323 48.9603653,7.5725800 48.9711209,7.5822261 48.9819172,7.5917703 48.9927536,7.6012121 49.0036298,7.6105513 49.0145453,7.6197874 49.0254997,7.6289200 49.0364927,7.6379489 49.0475236,7.6468737 49.0585921,7.6556939 49.0696978,7.6644093 49.0808403,7.6730196 49.0920190,7.6815243 49.1032336,7.6899231 49.1144835,7.6982158 49.1257685,7.7064019 49.1370879,7.7144812 49.1484414,7.7224533 49.1598285,7.7303179 49.1712488,7.7380748 49.1827019,7.7457235 49.1941871,7.7532639 49.2057042,7.7606955 49.2172527,7.7680182 49.2288320,7.7752316 49.2404418,7.7823355 49.2520816,7.7893295 49.2637509,7.7962133 49.2754493,7.8029868 49.2871762,7.8096497 49.2989314,7.8162016 49.3107142,7.8226423 49.3225242,7.8289716 49.3343609,7.8351892 49.3462239,7.8412949 49.3581128,7.8472884 49.3700270,7.8531695 49.3819660,7.8589380 49.3939295,7.8645936 49.4059168,7.8701362 49.4179277,7.8755654 49.4299615,7.8808811 49.4420178,7.8860830 49.4540961,7.8911710 49.4661960,7.8961449 49.4783170,7.9010045 49.4904585,7.9057495 49.5026202,7.9103798 49.5148015,7.9148952 49.5270020,7.9192955 49.5392211,7.9235806 49.5514585,7.9277503 49.5637135,7.9318044 49.5759858,7.9357427 49.5882748,7.9395652 49.6005800,7.9432716 49.6129011,7.9468618 49.6252374,7.9503356 49.6375885,7.9536930 49.6499539,7.9569338 49.6623331,7.9600578 49.6747257,7.9630650 49.6871311,7.9659552 49.6995488,7.9687284 49.7119784,7.9713843 49.7244194,7.9739229 49.7368713,7.9763441 49.7493335,7.9786478 49.7618057,7.9808339 49.7742872,7.9829024 49.7867777,7.9848531 49.7992766,7.9866859 49.8117834,7.9884008 49.8242976,7.9899978 49.8368188,7.9914767 49.8493464,7.9928375 49.8618799,7.9940802 49.8744190,7.9952047 49.8869629,7.9962109 49.8995114,7.9970988 49.9120638,7.9978684 49.9246196,7.9985197 49.9371785,7.9990526 49.9497398,7.9994671 49.9623031,7.9997631 49.9748679,7.9999408 49.9874337,8.0000000 50.0000000)) polyb POLYGON((8.0000000 50.0000000,7.9999408 50.0125663,7.9997631 50.0251321,7.9994671 50.0376969,7.9990526 50.0502602,7.9985197 50.0628215,7.9978684 50.0753804,7.9970988 50.0879362,7.9962109 50.1004886,7.9952047 50.1130371,7.9940802 50.1255810,7.9928375 50.1381201,7.9914767 50.1506536,7.9899978 50.1631812,7.9884008 50.1757024,7.9866859 50.1882166,7.9848531 50.2007234,7.9829024 50.2132223,7.9808339 50.2257128,7.9786478 50.2381943,7.9763441 50.2506665,7.9739229 50.2631287,7.9713843 50.2755806,7.9687284 50.2880216,7.9659552 50.3004512,7.9630650 50.3128689,7.9600578 50.3252743,7.9569338 50.3376669,7.9536930 50.3500461,7.9503356 50.3624115,7.9468618 50.3747626,7.9432716 50.3870989,7.9395652 50.3994200,7.9357427 50.4117252,7.9318044 50.4240142,7.9277503 50.4362865,7.9235806 50.4485415,7.9192955 50.4607789,7.9148952 50.4729980,7.9103798 50.4851985,7.9057495 50.4973798,7.9010045 50.5095415,7.8961449 50.5216830,7.8911710 50.5338040,7.8860830 50.5459039,7.8808811 50.5579822,7.8755654 50.5700385,7.8701362 50.5820723,7.8645936 50.5940832,7.8589380 50.6060705,7.8531695 50.6180340,7.8472884 50.6299730,7.8412949 50.6418872,7.8351892 50.6537761,7.8289716 50.6656391,7.8226423 50.6774758,7.8162016 50.6892858,7.8096497 50.7010686,7.8029868 50.7128238,7.7962133 50.7245507,7.7893295 50.7362491,7.7823355 50.7479184,7.7752316 50.7595582,7.7680182 50.7711680,7.7606955 50.7827473,7.7532639 50.7942958,7.7457235 50.8058129,7.7380748 50.8172981,7.7303179 50.8287512,7.7224533 50.8401715,7.7144812 50.8515586,7.7064019 50.8629121,7.6982158 50.8742315,7.6899231 50.8855165,7.6815243 50.8967664,7.6730196 50.9079810,7.6644093 50.9191597,7.6556939 50.9303022,7.6468737 50.9414079,7.6379489 50.9524764,7.6289200 50.9635073,7.6197874 50.9745003,7.6105513 50.9854547,7.6012121 50.9963702,7.5917703 51.0072464,7.5822261 51.0180828,7.5725800 51.0288791,7.5628323 51.0396347,7.5529834 51.0503493,7.5430338 51.0610224,7.5329838 51.0716536,7.5228337 51.0822425,7.5125841 51.0927887,7.5022353 51.1032917,7.4917877 51.1137512,7.4812417 51.1241668,7.4705978 51.1345379,7.4598563 51.1448643,7.4490178 51.1551454,7.4380825 51.1653810,7.4270510 51.1755705,7.4159237 51.1857136,7.4047010 51.1958100,7.3933833 51.2058591,7.3819712 51.2158606,7.3704650 51.2258141,7.3588653 51.2357192,7.3471724 51.2455756,7.3353869 51.2553827,7.3235092 51.2651403,7.3115397 51.2748480,7.2994790 51.2845053,7.2873275 51.2941119,7.2750857 51.3036675,7.2627541 51.3131715,7.2503332 51.3226237,7.2378234 51.3320237,7.2252253 51.3413712,7.2125394 51.3506656,7.1997660 51.3599068,7.1869059 51.3690942,7.1739594 51.3782276,7.1609271 51.3873066,7.1478094 51.3963308,7.1346070 51.4052999,7.1213203 51.4142136,7.1079499 51.4230714,7.0944963 51.4318730,7.0809599 51.4406180,7.0673414 51.4493063,7.0536413 51.4579373,7.0398601 51.4665107,7.0259984 51.4750262,7.0120567 51.4834835,6.9980356 51.4918823,6.9839356 51.5002221,6.9697573 51.5085028,6.9555012 51.5167238,6.9411679 51.5248850,6.9267580 51.5329860,6.9122720 51.5410265,6.8977105 51.5490061,6.8830741 51.5569246,6.8683633 51.5647816,6.8535788 51.5725769,6.8387212 51.5803100,6.8237909 51.5879808,6.8087886 51.5955889,6.7937149 51.6031340,6.7785705 51.6106158,6.7633558 51.6180340,6.7480714 51.6253883,6.7327181 51.6326785,6.7172964 51.6399042,6.7018068 51.6470652,6.6862501 51.6541611,6.6706268 51.6611918,6.6549376 51.6681569,6.6391830 51.6750561,6.6233638 51.6818892,6.6074804 51.6886559,6.5915336 51.6953559,6.5755239 51.7019890,6.5594520 51.7085549,6.5433186 51.7150533,6.5271242 51.7214841,6.5108696 51.7278468,6.4945553 51.7341414,6.4781820 51.7403675,6.4617504 51.7465249,6.4452610 51.7526134,6.4287146 51.7586326,6.4121118 51.7645825,6.3954532 51.7704626,6.3787396 51.7762729,6.3619715 51.7820130,6.3451496 51.7876828,6.3282747 51.7932821,6.3113473 51.7988105,6.2943681 51.8042679,6.2773379 51.8096541,6.2602572 51.8149688,6.2431267 51.8202119,6.2259472 51.8253832,6.2087193 51.8304823,6.1914437 51.8355093,6.1741210 51.8404637,6.1567520 51.8453455,6.1393373 51.8501544,6.1218776 51.8548903,6.1043737 51.8595530,6.0868261 51.8641422,6.0692356 51.8686579,6.0516030 51.8730998,6.0339288 51.8774677,6.0162138 51.8817615,5.9984586 51.8859811,5.9806641 51.8901262,5.9628308 51.8941966,5.9449596 51.8981923,5.9270510 51.9021130,5.9091058 51.9059587,5.8911247 51.9097291,5.8731085 51.9134241,5.8550578 51.9170436,5.8369733 51.9205874,5.8188558 51.9240553,5.8007060 51.9274474,5.7825245 51.9307633,5.7643122 51.9340030,5.7460697 51.9371663,5.7277977 51.9402532,5.7094970 51.9432635,5.6911683 51.9461970,5.6728123 51.9490537,5.6544297 51.9518335,5.6360213 51.9545362,5.6175878 51.9571618,5.5991299 51.9597101,5.5806484 51.9621810,5.5621439 51.9645745,5.5436173 51.9668904,5.5250692 51.9691287,5.5065003 51.9712892,5.4879115 51.9733719,5.4693034 51.9753767,5.4506768 51.9773035,5.4320323 51.9791522,5.4133709 51.9809229,5.3946931 51.9826153,5.3759997 51.9842294,5.3572915 51.9857652,5.3385692 51.9872226,5.3198335 51.9886016,5.3010851 51.9899020,5.2823249 51.9911239,5.2635536 51.9922672,5.2447718 51.9933319,5.2259804 51.9943178,5.2071801 51.9952250,5.1883716 51.9960535,5.1695556 51.9968031,5.1507330 51.9974739,5.1319044 51.9980659,5.1130705 51.9985789,5.0942323 51.9990131,5.0753903 51.9993684,5.0565453 51.9996447,5.0376981 51.9998421,5.0188494 51.9999605,5.0000000 52.0000000,4.9811506 51.9999605,4.9623019 51.9998421,4.9434547 51.9996447,4.9246097 51.9993684,4.9057677 51.9990131,4.8869295 51.9985789,4.8680956 51.9980659,4.8492670 51.9974739,4.8304444 51.9968031,4.8116284 51.9960535,4.7928199 51.9952250,4.7740196 51.9943178,4.7552282 51.9933319,4.7364464 51.9922672,4.7176751 51.9911239,4.6989149 51.9899020,4.6801665 51.9886016,4.6614308 51.9872226,4.6427085 51.9857652,4.6240003 51.9842294,4.6053069 51.9826153,4.5866291 51.9809229,4.5679677 51.9791522,4.5493232 51.9773035,4.5306966 51.9753767,4.5120885 51.9733719,4.4934997 51.9712892,4.4749308 51.9691287,4.4563827 51.9668904,4.4378561 51.9645745,4.4193516 51.9621810,4.4008701 51.9597101,4.3824122 51.9571618,4.3639787 51.9545362,4.3455703 51.9518335,4.3271877 51.9490537,4.3088317 51.9461970,4.2905030 51.9432635,4.2722023 51.9402532,4.2539303 51.9371663,4.2356878 51.9340030,4.2174755 51.9307633,4.1992940 51.9274474,4.1811442 51.9240553,4.1630267 51.9205874,4.1449422 51.9170436,4.1268915 51.9134241,4.1088753 51.9097291,4.0908942 51.9059587,4.0729490 51.9021130,4.0550404 51.8981923,4.0371692 51.8941966,4.0193359 51.8901262,4.0015414 51.8859811,3.9837862 51.8817615,3.9660712 51.8774677,3.9483970 51.8730998,3.9307644 51.8686579,3.9131739 51.8641422,3.8956263 51.8595530,3.8781224 51.8548903,3.8606627 51.8501544,3.8432480 51.8453455,3.8258790 51.8404637,3.8085563 51.8355093,3.7912807 51.8304823,3.7740528 51.8253832,3.7568733 51.8202119,3.7397428 51.8149688,3.7226621 51.8096541,3.7056319 51.8042679,3.6886527 51.7988105,3.6717253 51.7932821,3.6548504 51.7876828,3.6380285 51.7820130,3.6212604 51.7762729,3.6045468 51.7704626,3.5878882 51.7645825,3.5712854 51.7586326,3.5547390 51.7526134,3.5382496 51.7465249,3.5218180 51.7403675,3.5054447 51.7341414,3.4891304 51.7278468,3.4728758 51.7214841,3.4566814 51.7150533,3.4405480 51.7085549,3.4244761 51.7019890,3.4084664 51.6953559,3.3925196 51.6886559,3.3766362 51.6818892,3.3608170 51.6750561,3.3450624 51.6681569,3.3293732 51.6611918,3.3137499 51.6541611,3.2981932 51.6470652,3.2827036 51.6399042,3.2672819 51.6326785,3.2519286 51.6253883,3.2366442 51.6180340,3.2214295 51.6106158,3.2062851 51.6031340,3.1912114 51.5955889,3.1762091 51.5879808,3.1612788 51.5803100,3.1464212 51.5725769,3.1316367 51.5647816,3.1169259 51.5569246,3.1022895 51.5490061,3.0877280 51.5410265,3.0732420 51.5329860,3.0588321 51.5248850,3.0444988 51.5167238,3.0302427 51.5085028,3.0160644 51.5002221,3.0019644 51.4918823,2.9879433 51.4834835,2.9740016 51.4750262,2.9601399 51.4665107,2.9463587 51.4579373,2.9326586 51.4493063,2.9190401 51.4406180,2.9055037 51.4318730,2.8920501 51.4230714,2.8786797 51.4142136,2.8653930 51.4052999,2.8521906 51.3963308,2.8390729 51.3873066,2.8260406 51.3782276,2.8130941 51.3690942,2.8002340 51.3599068,2.7874606 51.3506656,2.7747747 51.3413712,2.7621766 51.3320237,2.7496668 51.3226237,2.7372459 51.3131715,2.7249143 51.3036675,2.7126725 51.2941119,2.7005210 51.2845053,2.6884603 51.2748480,2.6764908 51.2651403,2.6646131 51.2553827,2.6528276 51.2455756,2.6411347 51.2357192,2.6295350 51.2258141,2.6180288 51.2158606,2.6066167 51.2058591,2.5952990 51.1958100,2.5840763 51.1857136,2.5729490 51.1755705,2.5619175 51.1653810,2.5509822 51.1551454,2.5401437 51.1448643,2.5294022 51.1345379,2.5187583 51.1241668,2.5082123 51.1137512,2.4977647 51.1032917,2.4874159 51.0927887,2.4771663 51.0822425,2.4670162 51.0716536,2.4569662 51.0610224,2.4470166 51.0503493,2.4371677 51.0396347,2.4274200 51.0288791,2.4177739 51.0180828,2.4082297 51.0072464,2.3987879 50.9963702,2.3894487 50.9854547,2.3802126 50.9745003,2.3710800 50.9635073,2.3620511 50.9524764,2.3531263 50.9414079,2.3443061 50.9303022,2.3355907 50.9191597,2.3269804 50.9079810,2.3184757 50.8967664,2.3100769 50.8855165,2.3017842 50.8742315,2.2935981 50.8629121,2.2855188 50.8515586,2.2775467 50.8401715,2.2696821 50.8287512,2.2619252 50.8172981,2.2542765 50.8058129,2.2467361 50.7942958,2.2393045 50.7827473,2.2319818 50.7711680,2.2247684 50.7595582,2.2176645 50.7479184,2.2106705 50.7362491,2.2037867 50.7245507,2.1970132 50.7128238,2.1903503 50.7010686,2.1837984 50.6892858,2.1773577 50.6774758,2.1710284 50.6656391,2.1648108 50.6537761,2.1587051 50.6418872,2.1527116 50.6299730,2.1468305 50.6180340,2.1410620 50.6060705,2.1354064 50.5940832,2.1298638 50.5820723,2.1244346 50.5700385,2.1191189 50.5579822,2.1139170 50.5459039,2.1088290 50.5338040,2.1038551 50.5216830,2.0989955 50.5095415,2.0942505 50.4973798,2.0896202 50.4851985,2.0851048 50.4729980,2.0807045 50.4607789,2.0764194 50.4485415,2.0722497 50.4362865,2.0681956 50.4240142,2.0642573 50.4117252,2.0604348 50.3994200,2.0567284 50.3870989,2.0531382 50.3747626,2.0496644 50.3624115,2.0463070 50.3500461,2.0430662 50.3376669,2.0399422 50.3252743,2.0369350 50.3128689,2.0340448 50.3004512,2.0312716 50.2880216,2.0286157 50.2755806,2.0260771 50.2631287,2.0236559 50.2506665,2.0213522 50.2381943,2.0191661 50.2257128,2.0170976 50.2132223,2.0151469 50.2007234,2.0133141 50.1882166,2.0115992 50.1757024,2.0100022 50.1631812,2.0085233 50.1506536,2.0071625 50.1381201,2.0059198 50.1255810,2.0047953 50.1130371,2.0037891 50.1004886,2.0029012 50.0879362,2.0021316 50.0753804,2.0014803 50.0628215,2.0009474 50.0502602,2.0005329 50.0376969,2.0002369 50.0251321,2.0000592 50.0125663,2.0000000 50.0000000,2.0000592 49.9874337,2.0002369 49.9748679,2.0005329 49.9623031,2.0009474 49.9497398,2.0014803 49.9371785,2.0021316 49.9246196,2.0029012 49.9120638,2.0037891 49.8995114,2.0047953 49.8869629,2.0059198 49.8744190,2.0071625 49.8618799,2.0085233 49.8493464,2.0100022 49.8368188,2.0115992 49.8242976,2.0133141 49.8117834,2.0151469 49.7992766,2.0170976 49.7867777,2.0191661 49.7742872,2.0213522 49.7618057,2.0236559 49.7493335,2.0260771 49.7368713,2.0286157 49.7244194,2.0312716 49.7119784,2.0340448 49.6995488,2.0369350 49.6871311,2.0399422 49.6747257,2.0430662 49.6623331,2.0463070 49.6499539,2.0496644 49.6375885,2.0531382 49.6252374,2.0567284 49.6129011,2.0604348 49.6005800,2.0642573 49.5882748,2.0681956 49.5759858,2.0722497 49.5637135,2.0764194 49.5514585,2.0807045 49.5392211,2.0851048 49.5270020,2.0896202 49.5148015,2.0942505 49.5026202,2.0989955 49.4904585,2.1038551 49.4783170,2.1088290 49.4661960,2.1139170 49.4540961,2.1191189 49.4420178,2.1244346 49.4299615,2.1298638 49.4179277,2.1354064 49.4059168,2.1410620 49.3939295,2.1468305 49.3819660,2.1527116 49.3700270,2.1587051 49.3581128,2.1648108 49.3462239,2.1710284 49.3343609,2.1773577 49.3225242,2.1837984 49.3107142,2.1903503 49.2989314,2.1970132 49.2871762,2.2037867 49.2754493,2.2106705 49.2637509,2.2176645 49.2520816,2.2247684 49.2404418,2.2319818 49.2288320,2.2393045 49.2172527,2.2467361 49.2057042,2.2542765 49.1941871,2.2619252 49.1827019,2.2696821 49.1712488,2.2775467 49.1598285,2.2855188 49.1484414,2.2935981 49.1370879,2.3017842 49.1257685,2.3100769 49.1144835,2.3184757 49.1032336,2.3269804 49.0920190,2.3355907 49.0808403,2.3443061 49.0696978,2.3531263 49.0585921,2.3620511 49.0475236,2.3710800 49.0364927,2.3802126 49.0254997,2.3894487 49.0145453,2.3987879 49.0036298,2.4082297 48.9927536,2.4177739 48.9819172,2.4274200 48.9711209,2.4371677 48.9603653,2.4470166 48.9496507,2.4569662 48.9389776,2.4670162 48.9283464,2.4771663 48.9177575,2.4874159 48.9072113,2.4977647 48.8967083,2.5082123 48.8862488,2.5187583 48.8758332,2.5294022 48.8654621,2.5401437 48.8551357,2.5509822 48.8448546,2.5619175 48.8346190,2.5729490 48.8244295,2.5840763 48.8142864,2.5952990 48.8041900,2.6066167 48.7941409,2.6180288 48.7841394,2.6295350 48.7741859,2.6411347 48.7642808,2.6528276 48.7544244,2.6646131 48.7446173,2.6764908 48.7348597,2.6884603 48.7251520,2.7005210 48.7154947,2.7126725 48.7058881,2.7249143 48.6963325,2.7372459 48.6868285,2.7496668 48.6773763,2.7621766 48.6679763,2.7747747 48.6586288,2.7874606 48.6493344,2.8002340 48.6400932,2.8130941 48.6309058,2.8260406 48.6217724,2.8390729 48.6126934,2.8521906 48.6036692,2.8653930 48.5947001,2.8786797 48.5857864,2.8920501 48.5769286,2.9055037 48.5681270,2.9190401 48.5593820,2.9326586 48.5506937,2.9463587 48.5420627,2.9601399 48.5334893,2.9740016 48.5249738,2.9879433 48.5165165,3.0019644 48.5081177,3.0160644 48.4997779,3.0302427 48.4914972,3.0444988 48.4832762,3.0588321 48.4751150,3.0732420 48.4670140,3.0877280 48.4589735,3.1022895 48.4509939,3.1169259 48.4430754,3.1316367 48.4352184,3.1464212 48.4274231,3.1612788 48.4196900,3.1762091 48.4120192,3.1912114 48.4044111,3.2062851 48.3968660,3.2214295 48.3893842,3.2366442 48.3819660,3.2519286 48.3746117,3.2672819 48.3673215,3.2827036 48.3600958,3.2981932 48.3529348,3.3137499 48.3458389,3.3293732 48.3388082,3.3450624 48.3318431,3.3608170 48.3249439,3.3766362 48.3181108,3.3925196 48.3113441,3.4084664 48.3046441,3.4244761 48.2980110,3.4405480 48.2914451,3.4566814 48.2849467,3.4728758 48.2785159,3.4891304 48.2721532,3.5054447 48.2658586,3.5218180 48.2596325,3.5382496 48.2534751,3.5547390 48.2473866,3.5712854 48.2413674,3.5878882 48.2354175,3.6045468 48.2295374,3.6212604 48.2237271,3.6380285 48.2179870,3.6548504 48.2123172,3.6717253 48.2067179,3.6886527 48.2011895,3.7056319 48.1957321,3.7226621 48.1903459,3.7397428 48.1850312,3.7568733 48.1797881,3.7740528 48.1746168,3.7912807 48.1695177,3.8085563 48.1644907,3.8258790 48.1595363,3.8432480 48.1546545,3.8606627 48.1498456,3.8781224 48.1451097,3.8956263 48.1404470,3.9131739 48.1358578,3.9307644 48.1313421,3.9483970 48.1269002,3.9660712 48.1225323,3.9837862 48.1182385,4.0015414 48.1140189,4.0193359 48.1098738,4.0371692 48.1058034,4.0550404 48.1018077,4.0729490 48.0978870,4.0908942 48.0940413,4.1088753 48.0902709,4.1268915 48.0865759,4.1449422 48.0829564,4.1630267 48.0794126,4.1811442 48.0759447,4.1992940 48.0725526,4.2174755 48.0692367,4.2356878 48.0659970,4.2539303 48.0628337,4.2722023 48.0597468,4.2905030 48.0567365,4.3088317 48.0538030,4.3271877 48.0509463,4.3455703 48.0481665,4.3639787 48.0454638,4.3824122 48.0428382,4.4008701 48.0402899,4.4193516 48.0378190,4.4378561 48.0354255,4.4563827 48.0331096,4.4749308 48.0308713,4.4934997 48.0287108,4.5120885 48.0266281,4.5306966 48.0246233,4.5493232 48.0226965,4.5679677 48.0208478,4.5866291 48.0190771,4.6053069 48.0173847,4.6240003 48.0157706,4.6427085 48.0142348,4.6614308 48.0127774,4.6801665 48.0113984,4.6989149 48.0100980,4.7176751 48.0088761,4.7364464 48.0077328,4.7552282 48.0066681,4.7740196 48.0056822,4.7928199 48.0047750,4.8116284 48.0039465,4.8304444 48.0031969,4.8492670 48.0025261,4.8680956 48.0019341,4.8869295 48.0014211,4.9057677 48.0009869,4.9246097 48.0006316,4.9434547 48.0003553,4.9623019 48.0001579,4.9811506 48.0000395,5.0000000 48.0000000,5.0188494 48.0000395,5.0376981 48.0001579,5.0565453 48.0003553,5.0753903 48.0006316,5.0942323 48.0009869,5.1130705 48.0014211,5.1319044 48.0019341,5.1507330 48.0025261,5.1695556 48.0031969,5.1883716 48.0039465,5.2071801 48.0047750,5.2259804 48.0056822,5.2447718 48.0066681,5.2635536 48.0077328,5.2823249 48.0088761,5.3010851 48.0100980,5.3198335 48.0113984,5.3385692 48.0127774,5.3572915 48.0142348,5.3759997 48.0157706,5.3946931 48.0173847,5.4133709 48.0190771,5.4320323 48.0208478,5.4506768 48.0226965,5.4693034 48.0246233,5.4879115 48.0266281,5.5065003 48.0287108,5.5250692 48.0308713,5.5436173 48.0331096,5.5621439 48.0354255,5.5806484 48.0378190,5.5991299 48.0402899,5.6175878 48.0428382,5.6360213 48.0454638,5.6544297 48.0481665,5.6728123 48.0509463,5.6911683 48.0538030,5.7094970 48.0567365,5.7277977 48.0597468,5.7460697 48.0628337,5.7643122 48.0659970,5.7825245 48.0692367,5.8007060 48.0725526,5.8188558 48.0759447,5.8369733 48.0794126,5.8550578 48.0829564,5.8731085 48.0865759,5.8911247 48.0902709,5.9091058 48.0940413,5.9270510 48.0978870,5.9449596 48.1018077,5.9628308 48.1058034,5.9806641 48.1098738,5.9984586 48.1140189,6.0162138 48.1182385,6.0339288 48.1225323,6.0516030 48.1269002,6.0692356 48.1313421,6.0868261 48.1358578,6.1043737 48.1404470,6.1218776 48.1451097,6.1393373 48.1498456,6.1567520 48.1546545,6.1741210 48.1595363,6.1914437 48.1644907,6.2087193 48.1695177,6.2259472 48.1746168,6.2431267 48.1797881,6.2602572 48.1850312,6.2773379 48.1903459,6.2943681 48.1957321,6.3113473 48.2011895,6.3282747 48.2067179,6.3451496 48.2123172,6.3619715 48.2179870,6.3787396 48.2237271,6.3954532 48.2295374,6.4121118 48.2354175,6.4287146 48.2413674,6.4452610 48.2473866,6.4617504 48.2534751,6.4781820 48.2596325,6.4945553 48.2658586,6.5108696 48.2721532,6.5271242 48.2785159,6.5433186 48.2849467,6.5594520 48.2914451,6.5755239 48.2980110,6.5915336 48.3046441,6.6074804 48.3113441,6.6233638 48.3181108,6.6391830 48.3249439,6.6549376 48.3318431,6.6706268 48.3388082,6.6862501 48.3458389,6.7018068 48.3529348,6.7172964 48.3600958,6.7327181 48.3673215,6.7480714 48.3746117,6.7633558 48.3819660,6.7785705 48.3893842,6.7937149 48.3968660,6.8087886 48.4044111,6.8237909 48.4120192,6.8387212 48.4196900,6.8535788 48.4274231,6.8683633 48.4352184,6.8830741 48.4430754,6.8977105 48.4509939,6.9122720 48.4589735,6.9267580 48.4670140,6.9411679 48.4751150,6.9555012 48.4832762,6.9697573 48.4914972,6.9839356 48.4997779,6.9980356 48.5081177,7.0120567 48.5165165,7.0259984 48.5249738,7.0398601 48.5334893,7.0536413 48.5420627,7.0673414 48.5506937,7.0809599 48.5593820,7.0944963 48.5681270,7.1079499 48.5769286,7.1213203 48.5857864,7.1346070 48.5947001,7.1478094 48.6036692,7.1609271 48.6126934,7.1739594 48.6217724,7.1869059 48.6309058,7.1997660 48.6400932,7.2125394 48.6493344,7.2252253 48.6586288,7.2378234 48.6679763,7.2503332 48.6773763,7.2627541 48.6868285,7.2750857 48.6963325,7.2873275 48.7058881,7.2994790 48.7154947,7.3115397 48.7251520,7.3235092 48.7348597,7.3353869 48.7446173,7.3471724 48.7544244,7.3588653 48.7642808,7.3704650 48.7741859,7.3819712 48.7841394,7.3933833 48.7941409,7.4047010 48.8041900,7.4159237 48.8142864,7.4270510 48.8244295,7.4380825 48.8346190,7.4490178 48.8448546,7.4598563 48.8551357,7.4705978 48.8654621,7.4812417 48.8758332,7.4917877 48.8862488,7.5022353 48.8967083,7.5125841 48.9072113,7.5228337 48.9177575,7.5329838 48.9283464,7.5430338 48.9389776,7.5529834 48.9496507,7.5628323 48.9603653,7.5725800 48.9711209,7.5822261 48.9819172,7.5917703 48.9927536,7.6012121 49.0036298,7.6105513 49.0145453,7.6197874 49.0254997,7.6289200 49.0364927,7.6379489 49.0475236,7.6468737 49.0585921,7.6556939 49.0696978,7.6644093 49.0808403,7.6730196 49.0920190,7.6815243 49.1032336,7.6899231 49.1144835,7.6982158 49.1257685,7.7064019 49.1370879,7.7144812 49.1484414,7.7224533 49.1598285,7.7303179 49.1712488,7.7380748 49.1827019,7.7457235 49.1941871,7.7532639 49.2057042,7.7606955 49.2172527,7.7680182 49.2288320,7.7752316 49.2404418,7.7823355 49.2520816,7.7893295 49.2637509,7.7962133 49.2754493,7.8029868 49.2871762,7.8096497 49.2989314,7.8162016 49.3107142,7.8226423 49.3225242,7.8289716 49.3343609,7.8351892 49.3462239,7.8412949 49.3581128,7.8472884 49.3700270,7.8531695 49.3819660,7.8589380 49.3939295,7.8645936 49.4059168,7.8701362 49.4179277,7.8755654 49.4299615,7.8808811 49.4420178,7.8860830 49.4540961,7.8911710 49.4661960,7.8961449 49.4783170,7.9010045 49.4904585,7.9057495 49.5026202,7.9103798 49.5148015,7.9148952 49.5270020,7.9192955 49.5392211,7.9235806 49.5514585,7.9277503 49.5637135,7.9318044 49.5759858,7.9357427 49.5882748,7.9395652 49.6005800,7.9432716 49.6129011,7.9468618 49.6252374,7.9503356 49.6375885,7.9536930 49.6499539,7.9569338 49.6623331,7.9600578 49.6747257,7.9630650 49.6871311,7.9659552 49.6995488,7.9687284 49.7119784,7.9713843 49.7244194,7.9739229 49.7368713,7.9763441 49.7493335,7.9786478 49.7618057,7.9808339 49.7742872,7.9829024 49.7867777,7.9848531 49.7992766,7.9866859 49.8117834,7.9884008 49.8242976,7.9899978 49.8368188,7.9914767 49.8493464,7.9928375 49.8618799,7.9940802 49.8744190,7.9952047 49.8869629,7.9962109 49.8995114,7.9970988 49.9120638,7.9978684 49.9246196,7.9985197 49.9371785,7.9990526 49.9497398,7.9994671 49.9623031,7.9997631 49.9748679,7.9999408 49.9874337,8.0000000 50.0000000)) +polyc POLYGON((8.0000000 50.0000000,7.9999408 50.0125663,7.9997631 50.0251321,7.9994671 50.0376969,7.9990526 50.0502602,7.9985197 50.0628215,7.9978684 50.0753804,7.9970988 50.0879362,7.9962109 50.1004886,7.9952047 50.1130371,7.9940802 50.1255810,7.9928375 50.1381201,7.9914767 50.1506536,7.9899978 50.1631812,7.9884008 50.1757024,7.9866859 50.1882166,7.9848531 50.2007234,7.9829024 50.2132223,7.9808339 50.2257128,7.9786478 50.2381943,7.9763441 50.2506665,7.9739229 50.2631287,7.9713843 50.2755806,7.9687284 50.2880216,7.9659552 50.3004512,7.9630650 50.3128689,7.9600578 50.3252743,7.9569338 50.3376669,7.9536930 50.3500461,7.9503356 50.3624115,7.9468618 50.3747626,7.9432716 50.3870989,7.9395652 50.3994200,7.9357427 50.4117252,7.9318044 50.4240142,7.9277503 50.4362865,7.9235806 50.4485415,7.9192955 50.4607789,7.9148952 50.4729980,7.9103798 50.4851985,7.9057495 50.4973798,7.9010045 50.5095415,7.8961449 50.5216830,7.8911710 50.5338040,7.8860830 50.5459039,7.8808811 50.5579822,7.8755654 50.5700385,7.8701362 50.5820723,7.8645936 50.5940832,7.8589380 50.6060705,7.8531695 50.6180340,7.8472884 50.6299730,7.8412949 50.6418872,7.8351892 50.6537761,7.8289716 50.6656391,7.8226423 50.6774758,7.8162016 50.6892858,7.8096497 50.7010686,7.8029868 50.7128238,7.7962133 50.7245507,7.7893295 50.7362491,7.7823355 50.7479184,7.7752316 50.7595582,7.7680182 50.7711680,7.7606955 50.7827473,7.7532639 50.7942958,7.7457235 50.8058129,7.7380748 50.8172981,7.7303179 50.8287512,7.7224533 50.8401715,7.7144812 50.8515586,7.7064019 50.8629121,7.6982158 50.8742315,7.6899231 50.8855165,7.6815243 50.8967664,7.6730196 50.9079810,7.6644093 50.9191597,7.6556939 50.9303022,7.6468737 50.9414079,7.6379489 50.9524764,7.6289200 50.9635073,7.6197874 50.9745003,7.6105513 50.9854547,7.6012121 50.9963702,7.5917703 51.0072464,7.5822261 51.0180828,7.5725800 51.0288791,7.5628323 51.0396347,7.5529834 51.0503493,7.5430338 51.0610224,7.5329838 51.0716536,7.5228337 51.0822425,7.5125841 51.0927887,7.5022353 51.1032917,7.4917877 51.1137512,7.4812417 51.1241668,7.4705978 51.1345379,7.4598563 51.1448643,7.4490178 51.1551454,7.4380825 51.1653810,7.4270510 51.1755705,7.4159237 51.1857136,7.4047010 51.1958100,7.3933833 51.2058591,7.3819712 51.2158606,7.3704650 51.2258141,7.3588653 51.2357192,7.3471724 51.2455756,7.3353869 51.2553827,7.3235092 51.2651403,7.3115397 51.2748480,7.2994790 51.2845053,7.2873275 51.2941119,7.2750857 51.3036675,7.2627541 51.3131715,7.2503332 51.3226237,7.2378234 51.3320237,7.2252253 51.3413712,7.2125394 51.3506656,7.1997660 51.3599068,7.1869059 51.3690942,7.1739594 51.3782276,7.1609271 51.3873066,7.1478094 51.3963308,7.1346070 51.4052999,7.1213203 51.4142136,7.1079499 51.4230714,7.0944963 51.4318730,7.0809599 51.4406180,7.0673414 51.4493063,7.0536413 51.4579373,7.0398601 51.4665107,7.0259984 51.4750262,7.0120567 51.4834835,6.9980356 51.4918823,6.9839356 51.5002221,6.9697573 51.5085028,6.9555012 51.5167238,6.9411679 51.5248850,6.9267580 51.5329860,6.9122720 51.5410265,6.8977105 51.5490061,6.8830741 51.5569246,6.8683633 51.5647816,6.8535788 51.5725769,6.8387212 51.5803100,6.8237909 51.5879808,6.8087886 51.5955889,6.7937149 51.6031340,6.7785705 51.6106158,6.7633558 51.6180340,6.7480714 51.6253883,6.7327181 51.6326785,6.7172964 51.6399042,6.7018068 51.6470652,6.6862501 51.6541611,6.6706268 51.6611918,6.6549376 51.6681569,6.6391830 51.6750561,6.6233638 51.6818892,6.6074804 51.6886559,6.5915336 51.6953559,6.5755239 51.7019890,6.5594520 51.7085549,6.5433186 51.7150533,6.5271242 51.7214841,6.5108696 51.7278468,6.4945553 51.7341414,6.4781820 51.7403675,6.4617504 51.7465249,6.4452610 51.7526134,6.4287146 51.7586326,6.4121118 51.7645825,6.3954532 51.7704626,6.3787396 51.7762729,6.3619715 51.7820130,6.3451496 51.7876828,6.3282747 51.7932821,6.3113473 51.7988105,6.2943681 51.8042679,6.2773379 51.8096541,6.2602572 51.8149688,6.2431267 51.8202119,6.2259472 51.8253832,6.2087193 51.8304823,6.1914437 51.8355093,6.1741210 51.8404637,6.1567520 51.8453455,6.1393373 51.8501544,6.1218776 51.8548903,6.1043737 51.8595530,6.0868261 51.8641422,6.0692356 51.8686579,6.0516030 51.8730998,6.0339288 51.8774677,6.0162138 51.8817615,5.9984586 51.8859811,5.9806641 51.8901262,5.9628308 51.8941966,5.9449596 51.8981923,5.9270510 51.9021130,5.9091058 51.9059587,5.8911247 51.9097291,5.8731085 51.9134241,5.8550578 51.9170436,5.8369733 51.9205874,5.8188558 51.9240553,5.8007060 51.9274474,5.7825245 51.9307633,5.7643122 51.9340030,5.7460697 51.9371663,5.7277977 51.9402532,5.7094970 51.9432635,5.6911683 51.9461970,5.6728123 51.9490537,5.6544297 51.9518335,5.6360213 51.9545362,5.6175878 51.9571618,5.5991299 51.9597101,5.5806484 51.9621810,5.5621439 51.9645745,5.5436173 51.9668904,5.5250692 51.9691287,5.5065003 51.9712892,5.4879115 51.9733719,5.4693034 51.9753767,5.4506768 51.9773035,5.4320323 51.9791522,5.4133709 51.9809229,5.3946931 51.9826153,5.3759997 51.9842294,5.3572915 51.9857652,5.3385692 51.9872226,5.3198335 51.9886016,5.3010851 51.9899020,5.2823249 51.9911239,5.2635536 51.9922672,5.2447718 51.9933319,5.2259804 51.9943178,5.2071801 51.9952250,5.1883716 51.9960535,5.1695556 51.9968031,5.1507330 51.9974739,5.1319044 51.9980659,5.1130705 51.9985789,5.0942323 51.9990131,5.0753903 51.9993684,5.0565453 51.9996447,5.0376981 51.9998421,5.0188494 51.9999605,5.0000000 52.0000000,4.9811506 51.9999605,4.9623019 51.9998421,4.9434547 51.9996447,4.9246097 51.9993684,4.9057677 51.9990131,4.8869295 51.9985789,4.8680956 51.9980659,4.8492670 51.9974739,4.8304444 51.9968031,4.8116284 51.9960535,4.7928199 51.9952250,4.7740196 51.9943178,4.7552282 51.9933319,4.7364464 51.9922672,4.7176751 51.9911239,4.6989149 51.9899020,4.6801665 51.9886016,4.6614308 51.9872226,4.6427085 51.9857652,4.6240003 51.9842294,4.6053069 51.9826153,4.5866291 51.9809229,4.5679677 51.9791522,4.5493232 51.9773035,4.5306966 51.9753767,4.5120885 51.9733719,4.4934997 51.9712892,4.4749308 51.9691287,4.4563827 51.9668904,4.4378561 51.9645745,4.4193516 51.9621810,4.4008701 51.9597101,4.3824122 51.9571618,4.3639787 51.9545362,4.3455703 51.9518335,4.3271877 51.9490537,4.3088317 51.9461970,4.2905030 51.9432635,4.2722023 51.9402532,4.2539303 51.9371663,4.2356878 51.9340030,4.2174755 51.9307633,4.1992940 51.9274474,4.1811442 51.9240553,4.1630267 51.9205874,4.1449422 51.9170436,4.1268915 51.9134241,4.1088753 51.9097291,4.0908942 51.9059587,4.0729490 51.9021130,4.0550404 51.8981923,4.0371692 51.8941966,4.0193359 51.8901262,4.0015414 51.8859811,3.9837862 51.8817615,3.9660712 51.8774677,3.9483970 51.8730998,3.9307644 51.8686579,3.9131739 51.8641422,3.8956263 51.8595530,3.8781224 51.8548903,3.8606627 51.8501544,3.8432480 51.8453455,3.8258790 51.8404637,3.8085563 51.8355093,3.7912807 51.8304823,3.7740528 51.8253832,3.7568733 51.8202119,3.7397428 51.8149688,3.7226621 51.8096541,3.7056319 51.8042679,3.6886527 51.7988105,3.6717253 51.7932821,3.6548504 51.7876828,3.6380285 51.7820130,3.6212604 51.7762729,3.6045468 51.7704626,3.5878882 51.7645825,3.5712854 51.7586326,3.5547390 51.7526134,3.5382496 51.7465249,3.5218180 51.7403675,3.5054447 51.7341414,3.4891304 51.7278468,3.4728758 51.7214841,3.4566814 51.7150533,3.4405480 51.7085549,3.4244761 51.7019890,3.4084664 51.6953559,3.3925196 51.6886559,3.3766362 51.6818892,3.3608170 51.6750561,3.3450624 51.6681569,3.3293732 51.6611918,3.3137499 51.6541611,3.2981932 51.6470652,3.2827036 51.6399042,3.2672819 51.6326785,3.2519286 51.6253883,3.2366442 51.6180340,3.2214295 51.6106158,3.2062851 51.6031340,3.1912114 51.5955889,3.1762091 51.5879808,3.1612788 51.5803100,3.1464212 51.5725769,3.1316367 51.5647816,3.1169259 51.5569246,3.1022895 51.5490061,3.0877280 51.5410265,3.0732420 51.5329860,3.0588321 51.5248850,3.0444988 51.5167238,3.0302427 51.5085028,3.0160644 51.5002221,3.0019644 51.4918823,2.9879433 51.4834835,2.9740016 51.4750262,2.9601399 51.4665107,2.9463587 51.4579373,2.9326586 51.4493063,2.9190401 51.4406180,2.9055037 51.4318730,2.8920501 51.4230714,2.8786797 51.4142136,2.8653930 51.4052999,2.8521906 51.3963308,2.8390729 51.3873066,2.8260406 51.3782276,2.8130941 51.3690942,2.8002340 51.3599068,2.7874606 51.3506656,2.7747747 51.3413712,2.7621766 51.3320237,2.7496668 51.3226237,2.7372459 51.3131715,2.7249143 51.3036675,2.7126725 51.2941119,2.7005210 51.2845053,2.6884603 51.2748480,2.6764908 51.2651403,2.6646131 51.2553827,2.6528276 51.2455756,2.6411347 51.2357192,2.6295350 51.2258141,2.6180288 51.2158606,2.6066167 51.2058591,2.5952990 51.1958100,2.5840763 51.1857136,2.5729490 51.1755705,2.5619175 51.1653810,2.5509822 51.1551454,2.5401437 51.1448643,2.5294022 51.1345379,2.5187583 51.1241668,2.5082123 51.1137512,2.4977647 51.1032917,2.4874159 51.0927887,2.4771663 51.0822425,2.4670162 51.0716536,2.4569662 51.0610224,2.4470166 51.0503493,2.4371677 51.0396347,2.4274200 51.0288791,2.4177739 51.0180828,2.4082297 51.0072464,2.3987879 50.9963702,2.3894487 50.9854547,2.3802126 50.9745003,2.3710800 50.9635073,2.3620511 50.9524764,2.3531263 50.9414079,2.3443061 50.9303022,2.3355907 50.9191597,2.3269804 50.9079810,2.3184757 50.8967664,2.3100769 50.8855165,2.3017842 50.8742315,2.2935981 50.8629121,2.2855188 50.8515586,2.2775467 50.8401715,2.2696821 50.8287512,2.2619252 50.8172981,2.2542765 50.8058129,2.2467361 50.7942958,2.2393045 50.7827473,2.2319818 50.7711680,2.2247684 50.7595582,2.2176645 50.7479184,2.2106705 50.7362491,2.2037867 50.7245507,2.1970132 50.7128238,2.1903503 50.7010686,2.1837984 50.6892858,2.1773577 50.6774758,2.1710284 50.6656391,2.1648108 50.6537761,2.1587051 50.6418872,2.1527116 50.6299730,2.1468305 50.6180340,2.1410620 50.6060705,2.1354064 50.5940832,2.1298638 50.5820723,2.1244346 50.5700385,2.1191189 50.5579822,2.1139170 50.5459039,2.1088290 50.5338040,2.1038551 50.5216830,2.0989955 50.5095415,2.0942505 50.4973798,2.0896202 50.4851985,2.0851048 50.4729980,2.0807045 50.4607789,2.0764194 50.4485415,2.0722497 50.4362865,2.0681956 50.4240142,2.0642573 50.4117252,2.0604348 50.3994200,2.0567284 50.3870989,2.0531382 50.3747626,2.0496644 50.3624115,2.0463070 50.3500461,2.0430662 50.3376669,2.0399422 50.3252743,2.0369350 50.3128689,2.0340448 50.3004512,2.0312716 50.2880216,2.0286157 50.2755806,2.0260771 50.2631287,2.0236559 50.2506665,2.0213522 50.2381943,2.0191661 50.2257128,2.0170976 50.2132223,2.0151469 50.2007234,2.0133141 50.1882166,2.0115992 50.1757024,2.0100022 50.1631812,2.0085233 50.1506536,2.0071625 50.1381201,2.0059198 50.1255810,2.0047953 50.1130371,2.0037891 50.1004886,2.0029012 50.0879362,2.0021316 50.0753804,2.0014803 50.0628215,2.0009474 50.0502602,2.0005329 50.0376969,2.0002369 50.0251321,2.0000592 50.0125663,2.0000000 50.0000000,2.0000592 49.9874337,2.0002369 49.9748679,2.0005329 49.9623031,2.0009474 49.9497398,2.0014803 49.9371785,2.0021316 49.9246196,2.0029012 49.9120638,2.0037891 49.8995114,2.0047953 49.8869629,2.0059198 49.8744190,2.0071625 49.8618799,2.0085233 49.8493464,2.0100022 49.8368188,2.0115992 49.8242976,2.0133141 49.8117834,2.0151469 49.7992766,2.0170976 49.7867777,2.0191661 49.7742872,2.0213522 49.7618057,2.0236559 49.7493335,2.0260771 49.7368713,2.0286157 49.7244194,2.0312716 49.7119784,2.0340448 49.6995488,2.0369350 49.6871311,2.0399422 49.6747257,2.0430662 49.6623331,2.0463070 49.6499539,2.0496644 49.6375885,2.0531382 49.6252374,2.0567284 49.6129011,2.0604348 49.6005800,2.0642573 49.5882748,2.0681956 49.5759858,2.0722497 49.5637135,2.0764194 49.5514585,2.0807045 49.5392211,2.0851048 49.5270020,2.0896202 49.5148015,2.0942505 49.5026202,2.0989955 49.4904585,2.1038551 49.4783170,2.1088290 49.4661960,2.1139170 49.4540961,2.1191189 49.4420178,2.1244346 49.4299615,2.1298638 49.4179277,2.1354064 49.4059168,2.1410620 49.3939295,2.1468305 49.3819660,2.1527116 49.3700270,2.1587051 49.3581128,2.1648108 49.3462239,2.1710284 49.3343609,2.1773577 49.3225242,2.1837984 49.3107142,2.1903503 49.2989314,2.1970132 49.2871762,2.2037867 49.2754493,2.2106705 49.2637509,2.2176645 49.2520816,2.2247684 49.2404418,2.2319818 49.2288320,2.2393045 49.2172527,2.2467361 49.2057042,2.2542765 49.1941871,2.2619252 49.1827019,2.2696821 49.1712488,2.2775467 49.1598285,2.2855188 49.1484414,2.2935981 49.1370879,2.3017842 49.1257685,2.3100769 49.1144835,2.3184757 49.1032336,2.3269804 49.0920190,2.3355907 49.0808403,2.3443061 49.0696978,2.3531263 49.0585921,2.3620511 49.0475236,2.3710800 49.0364927,2.3802126 49.0254997,2.3894487 49.0145453,2.3987879 49.0036298,2.4082297 48.9927536,2.4177739 48.9819172,2.4274200 48.9711209,2.4371677 48.9603653,2.4470166 48.9496507,2.4569662 48.9389776,2.4670162 48.9283464,2.4771663 48.9177575,2.4874159 48.9072113,2.4977647 48.8967083,2.5082123 48.8862488,2.5187583 48.8758332,2.5294022 48.8654621,2.5401437 48.8551357,2.5509822 48.8448546,2.5619175 48.8346190,2.5729490 48.8244295,2.5840763 48.8142864,2.5952990 48.8041900,2.6066167 48.7941409,2.6180288 48.7841394,2.6295350 48.7741859,2.6411347 48.7642808,2.6528276 48.7544244,2.6646131 48.7446173,2.6764908 48.7348597,2.6884603 48.7251520,2.7005210 48.7154947,2.7126725 48.7058881,2.7249143 48.6963325,2.7372459 48.6868285,2.7496668 48.6773763,2.7621766 48.6679763,2.7747747 48.6586288,2.7874606 48.6493344,2.8002340 48.6400932,2.8130941 48.6309058,2.8260406 48.6217724,2.8390729 48.6126934,2.8521906 48.6036692,2.8653930 48.5947001,2.8786797 48.5857864,2.8920501 48.5769286,2.9055037 48.5681270,2.9190401 48.5593820,2.9326586 48.5506937,2.9463587 48.5420627,2.9601399 48.5334893,2.9740016 48.5249738,2.9879433 48.5165165,3.0019644 48.5081177,3.0160644 48.4997779,3.0302427 48.4914972,3.0444988 48.4832762,3.0588321 48.4751150,3.0732420 48.4670140,3.0877280 48.4589735,3.1022895 48.4509939,3.1169259 48.4430754,3.1316367 48.4352184,3.1464212 48.4274231,3.1612788 48.4196900,3.1762091 48.4120192,3.1912114 48.4044111,3.2062851 48.3968660,3.2214295 48.3893842,3.2366442 48.3819660,3.2519286 48.3746117,3.2672819 48.3673215,3.2827036 48.3600958,3.2981932 48.3529348,3.3137499 48.3458389,3.3293732 48.3388082,3.3450624 48.3318431,3.3608170 48.3249439,3.3766362 48.3181108,3.3925196 48.3113441,3.4084664 48.3046441,3.4244761 48.2980110,3.4405480 48.2914451,3.4566814 48.2849467,3.4728758 48.2785159,3.4891304 48.2721532,3.5054447 48.2658586,3.5218180 48.2596325,3.5382496 48.2534751,3.5547390 48.2473866,3.5712854 48.2413674,3.5878882 48.2354175,3.6045468 48.2295374,3.6212604 48.2237271,3.6380285 48.2179870,3.6548504 48.2123172,3.6717253 48.2067179,3.6886527 48.2011895,3.7056319 48.1957321,3.7226621 48.1903459,3.7397428 48.1850312,3.7568733 48.1797881,3.7740528 48.1746168,3.7912807 48.1695177,3.8085563 48.1644907,3.8258790 48.1595363,3.8432480 48.1546545,3.8606627 48.1498456,3.8781224 48.1451097,3.8956263 48.1404470,3.9131739 48.1358578,3.9307644 48.1313421,3.9483970 48.1269002,3.9660712 48.1225323,3.9837862 48.1182385,4.0015414 48.1140189,4.0193359 48.1098738,4.0371692 48.1058034,4.0550404 48.1018077,4.0729490 48.0978870,4.0908942 48.0940413,4.1088753 48.0902709,4.1268915 48.0865759,4.1449422 48.0829564,4.1630267 48.0794126,4.1811442 48.0759447,4.1992940 48.0725526,4.2174755 48.0692367,4.2356878 48.0659970,4.2539303 48.0628337,4.2722023 48.0597468,4.2905030 48.0567365,4.3088317 48.0538030,4.3271877 48.0509463,4.3455703 48.0481665,4.3639787 48.0454638,4.3824122 48.0428382,4.4008701 48.0402899,4.4193516 48.0378190,4.4378561 48.0354255,4.4563827 48.0331096,4.4749308 48.0308713,4.4934997 48.0287108,4.5120885 48.0266281,4.5306966 48.0246233,4.5493232 48.0226965,4.5679677 48.0208478,4.5866291 48.0190771,4.6053069 48.0173847,4.6240003 48.0157706,4.6427085 48.0142348,4.6614308 48.0127774,4.6801665 48.0113984,4.6989149 48.0100980,4.7176751 48.0088761,4.7364464 48.0077328,4.7552282 48.0066681,4.7740196 48.0056822,4.7928199 48.0047750,4.8116284 48.0039465,4.8304444 48.0031969,4.8492670 48.0025261,4.8680956 48.0019341,4.8869295 48.0014211,4.9057677 48.0009869,4.9246097 48.0006316,4.9434547 48.0003553,4.9623019 48.0001579,4.9811506 48.0000395,5.0000000 48.0000000,5.0188494 48.0000395,5.0376981 48.0001579,5.0565453 48.0003553,5.0753903 48.0006316,5.0942323 48.0009869,5.1130705 48.0014211,5.1319044 48.0019341,5.1507330 48.0025261,5.1695556 48.0031969,5.1883716 48.0039465,5.2071801 48.0047750,5.2259804 48.0056822,5.2447718 48.0066681,5.2635536 48.0077328,5.2823249 48.0088761,5.3010851 48.0100980,5.3198335 48.0113984,5.3385692 48.0127774,5.3572915 48.0142348,5.3759997 48.0157706,5.3946931 48.0173847,5.4133709 48.0190771,5.4320323 48.0208478,5.4506768 48.0226965,5.4693034 48.0246233,5.4879115 48.0266281,5.5065003 48.0287108,5.5250692 48.0308713,5.5436173 48.0331096,5.5621439 48.0354255,5.5806484 48.0378190,5.5991299 48.0402899,5.6175878 48.0428382,5.6360213 48.0454638,5.6544297 48.0481665,5.6728123 48.0509463,5.6911683 48.0538030,5.7094970 48.0567365,5.7277977 48.0597468,5.7460697 48.0628337,5.7643122 48.0659970,5.7825245 48.0692367,5.8007060 48.0725526,5.8188558 48.0759447,5.8369733 48.0794126,5.8550578 48.0829564,5.8731085 48.0865759,5.8911247 48.0902709,5.9091058 48.0940413,5.9270510 48.0978870,5.9449596 48.1018077,5.9628308 48.1058034,5.9806641 48.1098738,5.9984586 48.1140189,6.0162138 48.1182385,6.0339288 48.1225323,6.0516030 48.1269002,6.0692356 48.1313421,6.0868261 48.1358578,6.1043737 48.1404470,6.1218776 48.1451097,6.1393373 48.1498456,6.1567520 48.1546545,6.1741210 48.1595363,6.1914437 48.1644907,6.2087193 48.1695177,6.2259472 48.1746168,6.2431267 48.1797881,6.2602572 48.1850312,6.2773379 48.1903459,6.2943681 48.1957321,6.3113473 48.2011895,6.3282747 48.2067179,6.3451496 48.2123172,6.3619715 48.2179870,6.3787396 48.2237271,6.3954532 48.2295374,6.4121118 48.2354175,6.4287146 48.2413674,6.4452610 48.2473866,6.4617504 48.2534751,6.4781820 48.2596325,6.4945553 48.2658586,6.5108696 48.2721532,6.5271242 48.2785159,6.5433186 48.2849467,6.5594520 48.2914451,6.5755239 48.2980110,6.5915336 48.3046441,6.6074804 48.3113441,6.6233638 48.3181108,6.6391830 48.3249439,6.6549376 48.3318431,6.6706268 48.3388082,6.6862501 48.3458389,6.7018068 48.3529348,6.7172964 48.3600958,6.7327181 48.3673215,6.7480714 48.3746117,6.7633558 48.3819660,6.7785705 48.3893842,6.7937149 48.3968660,6.8087886 48.4044111,6.8237909 48.4120192,6.8387212 48.4196900,6.8535788 48.4274231,6.8683633 48.4352184,6.8830741 48.4430754,6.8977105 48.4509939,6.9122720 48.4589735,6.9267580 48.4670140,6.9411679 48.4751150,6.9555012 48.4832762,6.9697573 48.4914972,6.9839356 48.4997779,6.9980356 48.5081177,7.0120567 48.5165165,7.0259984 48.5249738,7.0398601 48.5334893,7.0536413 48.5420627,7.0673414 48.5506937,7.0809599 48.5593820,7.0944963 48.5681270,7.1079499 48.5769286,7.1213203 48.5857864,7.1346070 48.5947001,7.1478094 48.6036692,7.1609271 48.6126934,7.1739594 48.6217724,7.1869059 48.6309058,7.1997660 48.6400932,7.2125394 48.6493344,7.2252253 48.6586288,7.2378234 48.6679763,7.2503332 48.6773763,7.2627541 48.6868285,7.2750857 48.6963325,7.2873275 48.7058881,7.2994790 48.7154947,7.3115397 48.7251520,7.3235092 48.7348597,7.3353869 48.7446173,7.3471724 48.7544244,7.3588653 48.7642808,7.3704650 48.7741859,7.3819712 48.7841394,7.3933833 48.7941409,7.4047010 48.8041900,7.4159237 48.8142864,7.4270510 48.8244295,7.4380825 48.8346190,7.4490178 48.8448546,7.4598563 48.8551357,7.4705978 48.8654621,7.4812417 48.8758332,7.4917877 48.8862488,7.5022353 48.8967083,7.5125841 48.9072113,7.5228337 48.9177575,7.5329838 48.9283464,7.5430338 48.9389776,7.5529834 48.9496507,7.5628323 48.9603653,7.5725800 48.9711209,7.5822261 48.9819172,7.5917703 48.9927536,7.6012121 49.0036298,7.6105513 49.0145453,7.6197874 49.0254997,7.6289200 49.0364927,7.6379489 49.0475236,7.6468737 49.0585921,7.6556939 49.0696978,7.6644093 49.0808403,7.6730196 49.0920190,7.6815243 49.1032336,7.6899231 49.1144835,7.6982158 49.1257685,7.7064019 49.1370879,7.7144812 49.1484414,7.7224533 49.1598285,7.7303179 49.1712488,7.7380748 49.1827019,7.7457235 49.1941871,7.7532639 49.2057042,7.7606955 49.2172527,7.7680182 49.2288320,7.7752316 49.2404418,7.7823355 49.2520816,7.7893295 49.2637509,7.7962133 49.2754493,7.8029868 49.2871762,7.8096497 49.2989314,7.8162016 49.3107142,7.8226423 49.3225242,7.8289716 49.3343609,7.8351892 49.3462239,7.8412949 49.3581128,7.8472884 49.3700270,7.8531695 49.3819660,7.8589380 49.3939295,7.8645936 49.4059168,7.8701362 49.4179277,7.8755654 49.4299615,7.8808811 49.4420178,7.8860830 49.4540961,7.8911710 49.4661960,7.8961449 49.4783170,7.9010045 49.4904585,7.9057495 49.5026202,7.9103798 49.5148015,7.9148952 49.5270020,7.9192955 49.5392211,7.9235806 49.5514585,7.9277503 49.5637135,7.9318044 49.5759858,7.9357427 49.5882748,7.9395652 49.6005800,7.9432716 49.6129011,7.9468618 49.6252374,7.9503356 49.6375885,7.9536930 49.6499539,7.9569338 49.6623331,7.9600578 49.6747257,7.9630650 49.6871311,7.9659552 49.6995488,7.9687284 49.7119784,7.9713843 49.7244194,7.9739229 49.7368713,7.9763441 49.7493335,7.9786478 49.7618057,7.9808339 49.7742872,7.9829024 49.7867777,7.9848531 49.7992766,7.9866859 49.8117834,7.9884008 49.8242976,7.9899978 49.8368188,7.9914767 49.8493464,7.9928375 49.8618799,7.9940802 49.8744190,7.9952047 49.8869629,7.9962109 49.8995114,7.9970988 49.9120638,7.9978684 49.9246196,7.9985197 49.9371785,7.9990526 49.9497398,7.9994671 49.9623031,7.9997631 49.9748679,7.9999408 49.9874337,8.0000000 50.0000000)) From 679a8063630eae0255a61480237d5bd9f775b08c Mon Sep 17 00:00:00 2001 From: Patrick Brosi Date: Wed, 19 Aug 2026 15:47:49 +0200 Subject: [PATCH 2/7] try to fix duplicate triple emissions --- src/spatialjoin/Sweeper.cpp | 195 ++++++++++++++++++++---------------- src/spatialjoin/Sweeper.h | 31 +++--- 2 files changed, 128 insertions(+), 98 deletions(-) diff --git a/src/spatialjoin/Sweeper.cpp b/src/spatialjoin/Sweeper.cpp index a0fd096..f8e43a3 100644 --- a/src/spatialjoin/Sweeper.cpp +++ b/src/spatialjoin/Sweeper.cpp @@ -1280,7 +1280,6 @@ void Sweeper::duplicatesToReferences() { jj++; if (cur->out) { - if (cur->type == POLYGON) { if (deletedPolys.erase(cur->id)) { // erase it if present, to avoid unnecessary memory consumption @@ -1941,8 +1940,11 @@ void Sweeper::writeRel(size_t t, const std::string& a, const std::string& b, // ____________________________________________________________________________ void Sweeper::writeDE9IM(size_t t, const std::string& a, size_t aSub, const std::string& b, size_t bSub, - util::geo::DE9IMatrix de9im) { - if (a != b) { + util::geo::DE9IMatrix de9im, bool expandB, + bool selfExp) { + selfExp = selfExp || (a == b && aSub == bSub); + + if (a != b && !(selfExp && (b < a || (b == a && bSub < aSub)))) { if (aSub > 0 && bSub == 0 && de9im.covers()) { // no need to lock and track the multigeometry here, we can directly // write that a contains b @@ -2000,23 +2002,22 @@ void Sweeper::writeDE9IM(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeDE9IM(t, a, aSub, idB.first, idB.second, de9im); + writeDE9IM(t, a, aSub, idB.first, idB.second, de9im, true, selfExp); } } } - // no need to check exactly the same direction again - if (a != b || aSub != bSub) { - if (referersA != _refs.end()) { - const auto& subs = referersA->second.find(aSub); - if (subs != referersA->second.end()) { - for (const auto& idA : subs->second) { - writeDE9IM(t, idA.first, idA.second, b, bSub, de9im); - } + // only expand the referers of a after b has been expanded completely, + // otherwise pairs would be reached twice + if (referersA != _refs.end()) { + const auto& subs = referersA->second.find(aSub); + if (subs != referersA->second.end()) { + for (const auto& idA : subs->second) { + writeDE9IM(t, idA.first, idA.second, b, bSub, de9im, false, selfExp); } } } @@ -2024,8 +2025,11 @@ void Sweeper::writeDE9IM(size_t t, const std::string& a, size_t aSub, // ____________________________________________________________________________ void Sweeper::writeDist(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub, double dist) { - if (a != b) { + const std::string& b, size_t bSub, double dist, + bool expandB, bool selfExp) { + selfExp = selfExp || (a == b && aSub == bSub); + + if (a != b && !(selfExp && (b < a || (b == a && bSub < aSub)))) { if (bSub > 0 || aSub > 0) { std::unique_lock lock(_mutsDistance[t]); if (bSub > 0 && (_subDistance[t][b].find(a) == _subDistance[t][b].end() || @@ -2048,23 +2052,22 @@ void Sweeper::writeDist(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeDist(t, a, aSub, idB.first, idB.second, dist); + writeDist(t, a, aSub, idB.first, idB.second, dist, true, selfExp); } } } - // no need to check exactly the same direction again - if (a != b || aSub != bSub) { - if (referersA != _refs.end()) { - const auto& subs = referersA->second.find(aSub); - if (subs != referersA->second.end()) { - for (const auto& idA : subs->second) { - writeDist(t, idA.first, idA.second, b, bSub, dist); - } + // only expand the referers of a after b has been expanded completely, + // otherwise pairs would be reached twice + if (referersA != _refs.end()) { + const auto& subs = referersA->second.find(aSub); + if (subs != referersA->second.end()) { + for (const auto& idA : subs->second) { + writeDist(t, idA.first, idA.second, b, bSub, dist, false, selfExp); } } } @@ -2072,8 +2075,11 @@ void Sweeper::writeDist(size_t t, const std::string& a, size_t aSub, // ____________________________________________________________________________ void Sweeper::writeIntersect(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub) { - if (a != b) { + const std::string& b, size_t bSub, bool expandB, + bool selfExp) { + selfExp = selfExp || (a == b && aSub == bSub); + + if (a != b && !(selfExp && (b < a || (b == a && bSub < aSub)))) { _relStats[t].intersects++; _relStats[t].intersects++; writeRel(t, a, b, _cfg.sepIsect); @@ -2087,23 +2093,22 @@ void Sweeper::writeIntersect(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeIntersect(t, a, aSub, idB.first, idB.second); + writeIntersect(t, a, aSub, idB.first, idB.second, true, selfExp); } } } - // no need to check exactly the same direction again - if (a != b || aSub != bSub) { - if (referersA != _refs.end()) { - const auto& subs = referersA->second.find(aSub); - if (subs != referersA->second.end()) { - for (const auto& idA : subs->second) { - writeIntersect(t, idA.first, idA.second, b, bSub); - } + // only expand the referers of a after b has been expanded completely, + // otherwise pairs would be reached twice + if (referersA != _refs.end()) { + const auto& subs = referersA->second.find(aSub); + if (subs != referersA->second.end()) { + for (const auto& idA : subs->second) { + writeIntersect(t, idA.first, idA.second, b, bSub, false, selfExp); } } } @@ -3222,7 +3227,7 @@ void Sweeper::fillBatch( // _____________________________________________________________________________ void Sweeper::writeOverlaps(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub) { + const std::string& b, size_t bSub, bool expandB) { if (a != b) { if (aSub == 0 && bSub == 0) { _relStats[t].overlaps++; @@ -3244,22 +3249,25 @@ void Sweeper::writeOverlaps(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeOverlaps(t, a, aSub, idB.first, idB.second); + writeOverlaps(t, a, aSub, idB.first, idB.second, true); } } } - // no need to check exactly the same direction again + // only expand the referers of a after b has been expanded completely, + // otherwise pairs would be reached twice + // + // for a self pair, there is also no need to check the same direction again if (a != b || aSub != bSub) { if (referersA != _refs.end()) { const auto& subs = referersA->second.find(aSub); if (subs != referersA->second.end()) { for (const auto& idA : subs->second) { - writeOverlaps(t, idA.first, idA.second, b, bSub); + writeOverlaps(t, idA.first, idA.second, b, bSub, false); } } } @@ -3268,7 +3276,8 @@ void Sweeper::writeOverlaps(size_t t, const std::string& a, size_t aSub, // _____________________________________________________________________________ void Sweeper::writeNotOverlaps(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub) { + const std::string& b, size_t bSub, + bool expandB) { if (a != b && (aSub != 0 || bSub != 0)) { std::unique_lock lock(_mutsNotOverlaps[t]); @@ -3283,11 +3292,11 @@ void Sweeper::writeNotOverlaps(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeNotOverlaps(t, a, aSub, idB.first, idB.second); + writeNotOverlaps(t, a, aSub, idB.first, idB.second, true); } } } @@ -3296,7 +3305,7 @@ void Sweeper::writeNotOverlaps(size_t t, const std::string& a, size_t aSub, const auto& subs = referersA->second.find(aSub); if (subs != referersA->second.end()) { for (const auto& idA : subs->second) { - writeNotOverlaps(t, idA.first, idA.second, b, bSub); + writeNotOverlaps(t, idA.first, idA.second, b, bSub, false); } } } @@ -3304,7 +3313,7 @@ void Sweeper::writeNotOverlaps(size_t t, const std::string& a, size_t aSub, // _____________________________________________________________________________ void Sweeper::writeCrosses(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub) { + const std::string& b, size_t bSub, bool expandB) { if (a == b) return; if (aSub == 0 && bSub == 0) { @@ -3326,22 +3335,25 @@ void Sweeper::writeCrosses(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeCrosses(t, a, aSub, idB.first, idB.second); + writeCrosses(t, a, aSub, idB.first, idB.second, true); } } } - // no need to check exactly the same direction again + // only expand the referers of a after b has been expanded completely, + // otherwise pairs would be reached twice + // + // for a self pair, there is also no need to check the same direction again if (a != b || aSub != bSub) { if (referersA != _refs.end()) { const auto& subs = referersA->second.find(aSub); if (subs != referersA->second.end()) { for (const auto& idA : subs->second) { - writeCrosses(t, idA.first, idA.second, b, bSub); + writeCrosses(t, idA.first, idA.second, b, bSub, false); } } } @@ -3350,7 +3362,7 @@ void Sweeper::writeCrosses(size_t t, const std::string& a, size_t aSub, // _____________________________________________________________________________ void Sweeper::writeNotCrosses(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub) { + const std::string& b, size_t bSub, bool expandB) { if (a != b && (aSub != 0 || bSub != 0)) { std::unique_lock lock(_mutsNotCrosses[t]); @@ -3365,22 +3377,25 @@ void Sweeper::writeNotCrosses(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeNotCrosses(t, a, aSub, idB.first, idB.second); + writeNotCrosses(t, a, aSub, idB.first, idB.second, true); } } } - // no need to check exactly the same direction again + // only expand the referers of a after b has been expanded completely, + // otherwise pairs would be reached twice + // + // for a self pair, there is also no need to check the same direction again if (a != b || aSub != bSub) { if (referersA != _refs.end()) { const auto& subs = referersA->second.find(aSub); if (subs != referersA->second.end()) { for (const auto& idA : subs->second) { - writeNotCrosses(t, idA.first, idA.second, b, bSub); + writeNotCrosses(t, idA.first, idA.second, b, bSub, false); } } } @@ -3389,7 +3404,7 @@ void Sweeper::writeNotCrosses(size_t t, const std::string& a, size_t aSub, // _____________________________________________________________________________ void Sweeper::writeTouches(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub) { + const std::string& b, size_t bSub, bool expandB) { if (a == b) return; if (aSub == 0 && bSub == 0) { @@ -3411,22 +3426,25 @@ void Sweeper::writeTouches(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeTouches(t, a, aSub, idB.first, idB.second); + writeTouches(t, a, aSub, idB.first, idB.second, true); } } } - // no need to check exactly the same direction again + // only expand the referers of a after b has been expanded completely, + // otherwise pairs would be reached twice + // + // for a self pair, there is also no need to check the same direction again if (a != b || aSub != bSub) { if (referersA != _refs.end()) { const auto& subs = referersA->second.find(aSub); if (subs != referersA->second.end()) { for (const auto& idA : subs->second) { - writeTouches(t, idA.first, idA.second, b, bSub); + writeTouches(t, idA.first, idA.second, b, bSub, false); } } } @@ -3435,7 +3453,7 @@ void Sweeper::writeTouches(size_t t, const std::string& a, size_t aSub, // _____________________________________________________________________________ void Sweeper::writeNotTouches(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub) { + const std::string& b, size_t bSub, bool expandB) { if (a != b && (aSub != 0 || bSub != 0)) { std::unique_lock lock(_mutsNotTouches[t]); @@ -3450,22 +3468,25 @@ void Sweeper::writeNotTouches(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeNotTouches(t, a, aSub, idB.first, idB.second); + writeNotTouches(t, a, aSub, idB.first, idB.second, true); } } } - // no need to check exactly the same direction again + // only expand the referers of a after b has been expanded completely, + // otherwise pairs would be reached twice + // + // for a self pair, there is also no need to check the same direction again if (a != b || aSub != bSub) { if (referersA != _refs.end()) { const auto& subs = referersA->second.find(aSub); if (subs != referersA->second.end()) { for (const auto& idA : subs->second) { - writeNotTouches(t, idA.first, idA.second, b, bSub); + writeNotTouches(t, idA.first, idA.second, b, bSub, false); } } } @@ -3474,8 +3495,11 @@ void Sweeper::writeNotTouches(size_t t, const std::string& a, size_t aSub, // _____________________________________________________________________________ void Sweeper::writeEquals(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub) { - if (a != b) { + const std::string& b, size_t bSub, bool expandB, + bool selfExp) { + selfExp = selfExp || (a == b && aSub == bSub); + + if (a != b && !(selfExp && (b < a || (b == a && bSub < aSub)))) { if (aSub == 0 && bSub == 0) { writeRel(t, a, b, _cfg.sepEquals); _relStats[t].equals++; @@ -3499,23 +3523,22 @@ void Sweeper::writeEquals(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeEquals(t, a, aSub, idB.first, idB.second); + writeEquals(t, a, aSub, idB.first, idB.second, true, selfExp); } } } - // no need to check exactly the same direction again - if (a != b || aSub != bSub) { - if (referersA != _refs.end()) { - const auto& subs = referersA->second.find(aSub); - if (subs != referersA->second.end()) { - for (const auto& idA : subs->second) { - writeEquals(t, idA.first, idA.second, b, bSub); - } + // only expand the referers of a after b has been expanded completely, + // otherwise pairs would be reached twice + if (referersA != _refs.end()) { + const auto& subs = referersA->second.find(aSub); + if (subs != referersA->second.end()) { + for (const auto& idA : subs->second) { + writeEquals(t, idA.first, idA.second, b, bSub, false, selfExp); } } } @@ -3523,7 +3546,7 @@ void Sweeper::writeEquals(size_t t, const std::string& a, size_t aSub, // _____________________________________________________________________________ void Sweeper::writeCovers(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub) { + const std::string& b, size_t bSub, bool expandB) { if (a != b) { if (bSub > 0) { std::unique_lock lock(_mutsCovers[t]); @@ -3541,11 +3564,11 @@ void Sweeper::writeCovers(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeCovers(t, a, aSub, idB.first, idB.second); + writeCovers(t, a, aSub, idB.first, idB.second, true); } } } @@ -3554,7 +3577,7 @@ void Sweeper::writeCovers(size_t t, const std::string& a, size_t aSub, const auto& subs = referersA->second.find(aSub); if (subs != referersA->second.end()) { for (const auto& idA : subs->second) { - writeCovers(t, idA.first, idA.second, b, bSub); + writeCovers(t, idA.first, idA.second, b, bSub, false); } } } @@ -3562,7 +3585,7 @@ void Sweeper::writeCovers(size_t t, const std::string& a, size_t aSub, // _____________________________________________________________________________ void Sweeper::writeContains(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub) { + const std::string& b, size_t bSub, bool expandB) { if (a != b) { if (bSub > 0) { std::unique_lock lock(_mutsContains[t]); @@ -3580,11 +3603,11 @@ void Sweeper::writeContains(size_t t, const std::string& a, size_t aSub, auto referersA = _refs.find(a); auto referersB = _refs.find(b); - if (referersB != _refs.end()) { + if (expandB && referersB != _refs.end()) { const auto& subs = referersB->second.find(bSub); if (subs != referersB->second.end()) { for (const auto& idB : subs->second) { - writeContains(t, a, aSub, idB.first, idB.second); + writeContains(t, a, aSub, idB.first, idB.second, true); } } } @@ -3593,7 +3616,7 @@ void Sweeper::writeContains(size_t t, const std::string& a, size_t aSub, const auto& subs = referersA->second.find(aSub); if (subs != referersA->second.end()) { for (const auto& idA : subs->second) { - writeContains(t, idA.first, idA.second, b, bSub); + writeContains(t, idA.first, idA.second, b, bSub, false); } } } diff --git a/src/spatialjoin/Sweeper.h b/src/spatialjoin/Sweeper.h index bd48579..c8ee5f1 100644 --- a/src/spatialjoin/Sweeper.h +++ b/src/spatialjoin/Sweeper.h @@ -486,34 +486,41 @@ class Sweeper { void clearMultis(bool force); void writeIntersect(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub); + const std::string& b, size_t bSub, bool expandB = true, + bool selfExp = false); void writeRel(size_t t, const std::string& a, const std::string& b, const std::string& pred); void writeContains(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub); + const std::string& b, size_t bSub, bool expandB = true); void writeCovers(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub); + const std::string& b, size_t bSub, bool expandB = true); void writeEquals(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub); + const std::string& b, size_t bSub, bool expandB = true, + bool selfExp = false); void writeDE9IM(size_t t, const std::string& a, size_t aSub, const std::string& b, size_t bSub, - util::geo::DE9IMatrix de9im); + util::geo::DE9IMatrix de9im, bool expandB = true, + bool selfExp = false); void writeDist(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub, double dist); + const std::string& b, size_t bSub, double dist, + bool expandB = true, bool selfExp = false); void writeTouches(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub); + const std::string& b, size_t bSub, bool expandB = true); void writeNotTouches(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub); + const std::string& b, size_t bSub, + bool expandB = true); void writeOverlaps(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub); + const std::string& b, size_t bSub, bool expandB = true); void writeNotOverlaps(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub); + const std::string& b, size_t bSub, + bool expandB = true); void writeCrosses(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub); + const std::string& b, size_t bSub, bool expandB = true); void writeNotCrosses(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub); + const std::string& b, size_t bSub, + bool expandB = true); void doCheck(JobVal cur, JobVal sv, size_t t); void doDistCheck(JobVal cur, JobVal sv, size_t t); From f819e58368d7fbd22139b99cd3953f8d8b3f3f21 Mon Sep 17 00:00:00 2001 From: Patrick Brosi Date: Wed, 19 Aug 2026 17:17:07 +0200 Subject: [PATCH 3/7] more deterministic output --- src/spatialjoin/Sweeper.cpp | 60 +++++++++++++++++++++++++++++-------- src/spatialjoin/Sweeper.h | 13 ++++++-- 2 files changed, 58 insertions(+), 15 deletions(-) diff --git a/src/spatialjoin/Sweeper.cpp b/src/spatialjoin/Sweeper.cpp index f8e43a3..265a41e 100644 --- a/src/spatialjoin/Sweeper.cpp +++ b/src/spatialjoin/Sweeper.cpp @@ -993,9 +993,10 @@ void Sweeper::multiOut(size_t tOut, const std::string& gidA) { // write covers for (auto i : subCovered) { if (i.second == _subSizes[gidA]) { + // CAREFUL: sub IDs are only flags here!! writeNotOverlaps(tOut, i.first, _subSizes.find(i.first) != _subSizes.end() ? 1 : 0, gidA, - 1); + 1, false, false); writeRel(tOut, i.first, gidA, _cfg.sepCovers); _relStats[tOut].covers++; } @@ -2695,8 +2696,7 @@ void Sweeper::doCheck(const JobVal cur, const JobVal sv, size_t t) { // crosses if (res.crosses1vs2()) { - _relStats[t].crosses++; - writeRel(t, a->id, b->id, _cfg.sepCrosses); + writeCrossesOneWay(t, a->id, a->subId, b->id, b->subId); } } else if (isSimpleLine(cur.type) && isArea(sv.type)) { std::shared_ptr b = getArea(sv, sv.large ? -1 : t); @@ -2731,7 +2731,7 @@ void Sweeper::doCheck(const JobVal cur, const JobVal sv, size_t t) { // covers if (res.coveredBy()) { - writeCovers(t, b->id, 0, a->id, 0); + writeCovers(t, b->id, b->subId, a->id, 0); } // touches @@ -2745,8 +2745,7 @@ void Sweeper::doCheck(const JobVal cur, const JobVal sv, size_t t) { // crosses if (res.crosses1vs2()) { - _relStats[t].crosses++; - writeRel(t, a->id, b->id, _cfg.sepCrosses); + writeCrossesOneWay(t, a->id, 0, b->id, b->subId); } } else if (isArea(cur.type) && sv.type == LINE) { std::shared_ptr a = getArea(cur, cur.large ? -1 : t); @@ -2797,8 +2796,7 @@ void Sweeper::doCheck(const JobVal cur, const JobVal sv, size_t t) { // crosses if (res.crosses1vs2()) { - _relStats[t].crosses++; - writeRel(t, b->id, a->id, _cfg.sepCrosses); + writeCrossesOneWay(t, b->id, b->subId, a->id, a->subId); } } else if (isArea(cur.type) && isSimpleLine(sv.type)) { std::shared_ptr a = getArea(cur, cur.large ? -1 : t); @@ -2845,8 +2843,7 @@ void Sweeper::doCheck(const JobVal cur, const JobVal sv, size_t t) { // crosses if (res.crosses1vs2()) { - _relStats[t].crosses++; - writeRel(t, b->id, a->id, _cfg.sepCrosses); + writeCrossesOneWay(t, b->id, 0, a->id, a->subId); } } else if (cur.type == LINE && sv.type == LINE) { auto ts = TIME(); @@ -3276,8 +3273,8 @@ void Sweeper::writeOverlaps(size_t t, const std::string& a, size_t aSub, // _____________________________________________________________________________ void Sweeper::writeNotOverlaps(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub, - bool expandB) { + const std::string& b, size_t bSub, bool expandB, + bool expandRefs) { if (a != b && (aSub != 0 || bSub != 0)) { std::unique_lock lock(_mutsNotOverlaps[t]); @@ -3285,7 +3282,7 @@ void Sweeper::writeNotOverlaps(size_t t, const std::string& a, size_t aSub, if (aSub != 0) _subNotOverlaps[t][a].insert(b); } - if (_refs.size() == 0) return; + if (!expandRefs || _refs.size() == 0) return; // handle references @@ -3402,6 +3399,43 @@ void Sweeper::writeNotCrosses(size_t t, const std::string& a, size_t aSub, } } +// _____________________________________________________________________________ +void Sweeper::writeCrossesOneWay(size_t t, const std::string& a, size_t aSub, + const std::string& b, size_t bSub, + bool expandB) { + if (a != b) { + _relStats[t].crosses++; + writeRel(t, a, b, _cfg.sepCrosses); + } + + if (_refs.size() == 0) return; + + // handle references + + auto referersA = _refs.find(a); + auto referersB = _refs.find(b); + + if (expandB && referersB != _refs.end()) { + const auto& subs = referersB->second.find(bSub); + if (subs != referersB->second.end()) { + for (const auto& idB : subs->second) { + writeCrossesOneWay(t, a, aSub, idB.first, idB.second, true); + } + } + } + + // only expand the referers of a after b has been expanded completely, + // otherwise pairs would be reached twice + if (referersA != _refs.end()) { + const auto& subs = referersA->second.find(aSub); + if (subs != referersA->second.end()) { + for (const auto& idA : subs->second) { + writeCrossesOneWay(t, idA.first, idA.second, b, bSub, false); + } + } + } +} + // _____________________________________________________________________________ void Sweeper::writeTouches(size_t t, const std::string& a, size_t aSub, const std::string& b, size_t bSub, bool expandB) { diff --git a/src/spatialjoin/Sweeper.h b/src/spatialjoin/Sweeper.h index c8ee5f1..081ca34 100644 --- a/src/spatialjoin/Sweeper.h +++ b/src/spatialjoin/Sweeper.h @@ -513,14 +513,17 @@ class Sweeper { void writeOverlaps(size_t t, const std::string& a, size_t aSub, const std::string& b, size_t bSub, bool expandB = true); void writeNotOverlaps(size_t t, const std::string& a, size_t aSub, - const std::string& b, size_t bSub, - bool expandB = true); + const std::string& b, size_t bSub, bool expandB = true, + bool expandRefs = true); void writeCrosses(size_t t, const std::string& a, size_t aSub, const std::string& b, size_t bSub, bool expandB = true); void writeNotCrosses(size_t t, const std::string& a, size_t aSub, const std::string& b, size_t bSub, bool expandB = true); + void writeCrossesOneWay(size_t t, const std::string& a, size_t aSub, + const std::string& b, size_t bSub, + bool expandB = true); void doCheck(JobVal cur, JobVal sv, size_t t); void doDistCheck(JobVal cur, JobVal sv, size_t t); @@ -632,6 +635,12 @@ class Sweeper { boxa->areaOrLen > boxb->areaOrLen) return 1; + // make ordernig of equal geoms deterministic + if (boxa->type != boxb->type) return boxa->type < boxb->type ? -1 : 1; + if (boxa->side != boxb->side) return boxa->side ? 1 : -1; + if (boxa->large != boxb->large) return boxa->large ? 1 : -1; + if (boxa->id != boxb->id) return boxa->id < boxb->id ? -1 : 1; + return 0; } From e6f65d3da770dec421580f525fbb543dac33c9d5 Mon Sep 17 00:00:00 2001 From: Patrick Brosi Date: Wed, 19 Aug 2026 18:10:08 +0200 Subject: [PATCH 4/7] explicit coversAll check if multiout overlaps --- src/spatialjoin/Sweeper.cpp | 31 ++++++++++++++++++++++++++++++- src/spatialjoin/Sweeper.h | 1 + 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/src/spatialjoin/Sweeper.cpp b/src/spatialjoin/Sweeper.cpp index 265a41e..0a10b8b 100644 --- a/src/spatialjoin/Sweeper.cpp +++ b/src/spatialjoin/Sweeper.cpp @@ -1081,6 +1081,8 @@ void Sweeper::multiOut(size_t tOut, const std::string& gidA) { auto gidB = b.first; if (b.second == _subSizes[gidA]) continue; + if (coversAll(gidA, gidB)) continue; + if (!notOverlaps(gidA, gidB)) { _relStats[tOut].overlaps++; writeRel(tOut, gidA, gidB, _cfg.sepOverlaps); @@ -1099,7 +1101,13 @@ void Sweeper::multiOut(size_t tOut, const std::string& gidA) { if (i != _subOverlaps[t].end()) { for (const auto& b : i->second) { auto gidB = b; - if (!notOverlaps(gidA, gidB)) overlapsTmp.push_back({gidA, gidB}); + + // if one of the two geometries covers the other completely, they do + // not overlap. notOverlaps may not capture this if gidB was flushed + // before + if (!notOverlaps(gidA, gidB) && !coversAll(gidA, gidB) && + !coversAll(gidB, gidA)) + overlapsTmp.push_back({gidA, gidB}); { std::unique_lock lock2(_mutsNotOverlaps[t]); @@ -3678,6 +3686,27 @@ bool Sweeper::notTouches(const std::string& a, const std::string& b) { return false; } +// _____________________________________________________________________________ +bool Sweeper::coversAll(const std::string& a, const std::string& b) { + // does a cover *every* sub geometry of the multi geometry b? Note that this + // can already be answered while b is still being swept, as long as a is + // complete: no check between a and b can happen after a was flushed + const auto& size = _subSizes.find(b); + if (size == _subSizes.end()) return false; + + size_t covered = 0; + + for (size_t t = 0; t < _cfg.numThreads + 1; t++) { + std::unique_lock lock(_mutsCovers[t]); + auto i = _subCovered[t].find(b); + if (i == _subCovered[t].end()) continue; + auto j = i->second.find(a); + if (j != i->second.end()) covered += j->second.size(); + } + + return covered == size->second; +} + // _____________________________________________________________________________ bool Sweeper::notOverlaps(const std::string& a, const std::string& b) { for (size_t t = 0; t < _cfg.numThreads + 1; t++) { diff --git a/src/spatialjoin/Sweeper.h b/src/spatialjoin/Sweeper.h index 081ca34..5135bc7 100644 --- a/src/spatialjoin/Sweeper.h +++ b/src/spatialjoin/Sweeper.h @@ -532,6 +532,7 @@ class Sweeper { void processQueue(size_t t); bool notOverlaps(const std::string& a, const std::string& b); + bool coversAll(const std::string& a, const std::string& b); bool notTouches(const std::string& a, const std::string& b); bool notCrosses(const std::string& a, const std::string& b); From 628718e535323a8dce50cc932a094a57061cecb9 Mon Sep 17 00:00:00 2001 From: Patrick Brosi Date: Wed, 19 Aug 2026 18:32:47 +0200 Subject: [PATCH 5/7] scan all threads subNotTouches etc maps --- src/spatialjoin/Sweeper.cpp | 134 +++++++++++++++++++----------------- 1 file changed, 69 insertions(+), 65 deletions(-) diff --git a/src/spatialjoin/Sweeper.cpp b/src/spatialjoin/Sweeper.cpp index 0a10b8b..3e65f7e 100644 --- a/src/spatialjoin/Sweeper.cpp +++ b/src/spatialjoin/Sweeper.cpp @@ -1004,31 +1004,32 @@ void Sweeper::multiOut(size_t tOut, const std::string& gidA) { // write touches, aggregate first to avoid locking during I/O std::vector> touchesTmp; + std::set touchesPartners; for (size_t t = 0; t < _cfg.numThreads + 1; t++) { - { - std::unique_lock lock(_mutsTouches[t]); - auto i = _subTouches[t].find(gidA); - if (i != _subTouches[t].end()) { - for (const auto& b : i->second) { - auto gidB = b; - if (!notTouches(gidA, gidB)) touchesTmp.push_back({gidA, gidB}); - - { - std::unique_lock lock2(_mutsNotTouches[t]); - auto j = _subNotTouches[t].find(gidB); - if (j != _subNotTouches[t].end()) j->second.erase(gidA); - } - - auto k = _subTouches[t].find(gidB); - if (k != _subTouches[t].end()) k->second.erase(gidA); - } - - _subTouches[t].erase(i); - } + std::unique_lock lock(_mutsTouches[t]); + auto i = _subTouches[t].find(gidA); + if (i != _subTouches[t].end()) { + touchesPartners.insert(i->second.begin(), i->second.end()); + _subTouches[t].erase(i); } + } + for (const auto& gidB : touchesPartners) { + if (!notTouches(gidA, gidB)) touchesTmp.push_back({gidA, gidB}); + } + + // the pairs are decided now, make sure the partners do not write them again + for (size_t t = 0; t < _cfg.numThreads + 1; t++) { + std::unique_lock lock(_mutsTouches[t]); std::unique_lock lock2(_mutsNotTouches[t]); + for (const auto& gidB : touchesPartners) { + auto j = _subNotTouches[t].find(gidB); + if (j != _subNotTouches[t].end()) j->second.erase(gidA); + + auto k = _subTouches[t].find(gidB); + if (k != _subTouches[t].end()) k->second.erase(gidA); + } _subNotTouches[t].erase(gidA); } @@ -1041,30 +1042,32 @@ void Sweeper::multiOut(size_t tOut, const std::string& gidA) { // write crosses, aggregate first to avoid locking during I/O std::vector> crossesTmp; - for (size_t t = 0; t < _cfg.numThreads + 1; t++) { - { - std::unique_lock lock(_mutsCrosses[t]); - auto i = _subCrosses[t].find(gidA); - if (i != _subCrosses[t].end()) { - for (const auto& b : i->second) { - auto gidB = b; - if (!notCrosses(gidA, gidB)) crossesTmp.push_back({gidA, gidB}); - - { - std::unique_lock lock2(_mutsNotCrosses[t]); - auto j = _subNotCrosses[t].find(gidB); - if (j != _subNotCrosses[t].end()) j->second.erase(gidA); - } + std::set crossesPartners; - auto k = _subCrosses[t].find(gidB); - if (k != _subCrosses[t].end()) k->second.erase(gidA); - } - - _subCrosses[t].erase(i); - } + for (size_t t = 0; t < _cfg.numThreads + 1; t++) { + std::unique_lock lock(_mutsCrosses[t]); + auto i = _subCrosses[t].find(gidA); + if (i != _subCrosses[t].end()) { + crossesPartners.insert(i->second.begin(), i->second.end()); + _subCrosses[t].erase(i); } + } + + for (const auto& gidB : crossesPartners) { + if (!notCrosses(gidA, gidB)) crossesTmp.push_back({gidA, gidB}); + } + // the pairs are decided now, make sure the partners do not write them again + for (size_t t = 0; t < _cfg.numThreads + 1; t++) { + std::unique_lock lock(_mutsCrosses[t]); std::unique_lock lock2(_mutsNotCrosses[t]); + for (const auto& gidB : crossesPartners) { + auto j = _subNotCrosses[t].find(gidB); + if (j != _subNotCrosses[t].end()) j->second.erase(gidA); + + auto k = _subCrosses[t].find(gidB); + if (k != _subCrosses[t].end()) k->second.erase(gidA); + } _subNotCrosses[t].erase(gidA); } @@ -1094,35 +1097,36 @@ void Sweeper::multiOut(size_t tOut, const std::string& gidA) { // write overlaps, aggregate first to avoid locking during I/O std::vector> overlapsTmp; + std::set overlapsPartners; + for (size_t t = 0; t < _cfg.numThreads + 1; t++) { - { - std::unique_lock lock(_mutsOverlaps[t]); - auto i = _subOverlaps[t].find(gidA); - if (i != _subOverlaps[t].end()) { - for (const auto& b : i->second) { - auto gidB = b; - - // if one of the two geometries covers the other completely, they do - // not overlap. notOverlaps may not capture this if gidB was flushed - // before - if (!notOverlaps(gidA, gidB) && !coversAll(gidA, gidB) && - !coversAll(gidB, gidA)) - overlapsTmp.push_back({gidA, gidB}); - - { - std::unique_lock lock2(_mutsNotOverlaps[t]); - auto j = _subNotOverlaps[t].find(gidB); - if (j != _subNotOverlaps[t].end()) j->second.erase(gidA); - } + std::unique_lock lock(_mutsOverlaps[t]); + auto i = _subOverlaps[t].find(gidA); + if (i != _subOverlaps[t].end()) { + overlapsPartners.insert(i->second.begin(), i->second.end()); + _subOverlaps[t].erase(i); + } + } - auto k = _subOverlaps[t].find(gidB); - if (k != _subOverlaps[t].end()) k->second.erase(gidA); - } + for (const auto& gidB : overlapsPartners) { + // if one of the two geometries covers the other completely, they do not + // overlap. notOverlaps may not capture this if gidB was flushed before + if (!notOverlaps(gidA, gidB) && !coversAll(gidA, gidB) && + !coversAll(gidB, gidA)) + overlapsTmp.push_back({gidA, gidB}); + } - _subOverlaps[t].erase(i); - } - } + // the pairs are decided now, make sure the partners do not write them again + for (size_t t = 0; t < _cfg.numThreads + 1; t++) { + std::unique_lock lock(_mutsOverlaps[t]); std::unique_lock lock2(_mutsNotOverlaps[t]); + for (const auto& gidB : overlapsPartners) { + auto j = _subNotOverlaps[t].find(gidB); + if (j != _subNotOverlaps[t].end()) j->second.erase(gidA); + + auto k = _subOverlaps[t].find(gidB); + if (k != _subOverlaps[t].end()) k->second.erase(gidA); + } _subNotOverlaps[t].erase(gidA); } From 8624e8a3c7122954db5dc5c64d000f5558529a47 Mon Sep 17 00:00:00 2001 From: Patrick Brosi Date: Thu, 20 Aug 2026 09:47:48 +0200 Subject: [PATCH 6/7] fix oversight: two equivalent lines contain each other, was not written --- src/spatialjoin/Sweeper.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/spatialjoin/Sweeper.cpp b/src/spatialjoin/Sweeper.cpp index 3e65f7e..3c436cd 100644 --- a/src/spatialjoin/Sweeper.cpp +++ b/src/spatialjoin/Sweeper.cpp @@ -2891,6 +2891,9 @@ void Sweeper::doCheck(const JobVal cur, const JobVal sv, size_t t) { writeEquals(t, a->id, a->subId, b->id, b->subId); writeCovers(t, a->id, a->subId, b->id, b->subId); + + writeContains(t, a->id, a->subId, b->id, b->subId); + writeContains(t, b->id, b->subId, a->id, a->subId); } } From 800b32e737d93d0e2f087a17546efc19262a8cd2 Mon Sep 17 00:00:00 2001 From: Patrick Brosi Date: Thu, 20 Aug 2026 10:09:46 +0200 Subject: [PATCH 7/7] regression tests for the deterministic output fixes, run selected datasets and two new manually created datasets with or without duplicate removal and with only one thread or with multiple threads and check if the (sorted) result is equivalent, also check a contains/overlaps contradiction which was possible in rare cases before --- src/spatialjoin/tests/TestMain.cpp | 359 +++++++----------- .../tests/datasets/duplicate-references | 10 + src/spatialjoin/tests/datasets/freiburg | 6 +- src/spatialjoin/tests/datasets/multi-threaded | 41 ++ 4 files changed, 192 insertions(+), 224 deletions(-) create mode 100644 src/spatialjoin/tests/datasets/duplicate-references create mode 100644 src/spatialjoin/tests/datasets/multi-threaded diff --git a/src/spatialjoin/tests/TestMain.cpp b/src/spatialjoin/tests/TestMain.cpp index 21e991a..0dff5b5 100644 --- a/src/spatialjoin/tests/TestMain.cpp +++ b/src/spatialjoin/tests/TestMain.cpp @@ -1,9 +1,13 @@ // Copyright 2024 // Author: Patrick Brosi +#include #include +#include #include +#include #include +#include #include "spatialjoin/BoxIds.h" #include "spatialjoin/OutputWriter.h" @@ -24,16 +28,16 @@ struct RunStats { // _____________________________________________________________________________ std::string fullRun(const std::string& file, sj::SweeperCfg cfg, - RunStats* stats) { + RunStats* stats, double dupRemovalMinSize = 0) { { - sj::OutputWriter outWriter(NUM_THREADS, "$", "$\n", ".resTmp", "."); + sj::OutputWriter outWriter(cfg.numThreads, "$", "$\n", ".resTmp", "."); cfg.writeRelCb = [&outWriter](size_t t, const char* a, size_t an, const char* b, size_t bn, const char* pred, size_t predn) { outWriter.writeRelCb(t, a, an, b, bn, pred, predn); }; Sweeper sweeper(cfg, "."); - sweeper.DUPLICATE_REMOVAL_MIN_SIZE = 0; + sweeper.DUPLICATE_REMOVAL_MIN_SIZE = dupRemovalMinSize; // very small buffer size 1 here for test purposes to force buffer overflows // during parsing @@ -75,221 +79,95 @@ std::string fullRun(const std::string& file, sj::SweeperCfg cfg, return ss.str(); } +// _____________________________________________________________________________ +std::vector sortedRels(const std::string& res) { + auto rels = util::split(res, '\n'); + std::sort(rels.begin(), rels.end()); + + return rels; +} + +// _____________________________________________________________________________ +void testNoContradictions(const std::string& res) { + std::set> coveringContains, overlapping; + + for (auto r : sortedRels(res)) { + r = util::trim(r, "$"); + auto parts = util::split(r, ' '); + + TEST(parts.size(), ==, 3); + + if (parts[1] == "covers") coveringContains.insert({parts[0], parts[2]}); + if (parts[1] == "contains") coveringContains.insert({parts[0], parts[2]}); + if (parts[1] == "overlaps") overlapping.insert({parts[0], parts[2]}); + } + + for (const auto& o : overlapping) { + TEST(!(coveringContains.count(o) || + coveringContains.count({o.second, o.first}))); + } +} + // _____________________________________________________________________________ int main(int, char**) { sj::SweeperCfg baseline{ - NUM_THREADS, - NUM_THREADS, - 1000, - 1000, - " intersects ", - " contains ", - " covers ", - " touches ", - " equals ", - " overlaps ", - " crosses ", - false, - false, - false, - false, - false, - false, - -1, - false, - false, - false, - {}, - false, - {}, - {}, - {}, - {}, - {}}; + NUM_THREADS, NUM_THREADS, 1000, 1000, " intersects ", + " contains ", " covers ", " touches ", " equals ", " overlaps ", + " crosses ", false, false, false, false, + false, false, -1, false, false, + false, {}, false, {}, {}, + {}, {}, {}}; sj::SweeperCfg all{ - NUM_THREADS, - NUM_THREADS, - 1000, - 1000, - " intersects ", - " contains ", - " covers ", - " touches ", - " equals ", - " overlaps ", - " crosses ", - true, - true, - true, - true, - true, - false, - -1, - false, - false, - false, - {}, - false, - {}, - {}, - {}, - {}, - {}}; + NUM_THREADS, NUM_THREADS, 1000, 1000, " intersects ", + " contains ", " covers ", " touches ", " equals ", " overlaps ", + " crosses ", true, true, true, true, + true, false, -1, false, false, + false, {}, false, {}, {}, + {}, {}, {}}; sj::SweeperCfg noSurfaceArea{ - NUM_THREADS, - NUM_THREADS, - 1000, - 1000, - " intersects ", - " contains ", - " covers ", - " touches ", - " equals ", - " overlaps ", - " crosses ", - true, - false, - true, - true, - true, - false, - -1, - false, - false, - false, - {}, - false, - {}, - {}, - {}, - {}, - {}}; + NUM_THREADS, NUM_THREADS, 1000, 1000, " intersects ", + " contains ", " covers ", " touches ", " equals ", " overlaps ", + " crosses ", true, false, true, true, + true, false, -1, false, false, + false, {}, false, {}, {}, + {}, {}, {}}; sj::SweeperCfg noBoxIds{ - NUM_THREADS, - NUM_THREADS, - 1000, - 1000, - " intersects ", - " contains ", - " covers ", - " touches ", - " equals ", - " overlaps ", - " crosses ", - false, - true, - true, - true, - true, - false, - -1, - false, - false, - false, - {}, - false, - {}, - {}, - {}, - {}, - {}}; + NUM_THREADS, NUM_THREADS, 1000, 1000, " intersects ", + " contains ", " covers ", " touches ", " equals ", " overlaps ", + " crosses ", false, true, true, true, + true, false, -1, false, false, + false, {}, false, {}, {}, + {}, {}, {}}; sj::SweeperCfg noObb{ - NUM_THREADS, - NUM_THREADS, - 1000, - 1000, - " intersects ", - " contains ", - " covers ", - " touches ", - " equals ", - " overlaps ", - " crosses ", - true, - true, - false, - true, - true, - false, - -1, - false, - false, - false, - {}, - false, - {}, - {}, - {}, - {}, - {}}; + NUM_THREADS, NUM_THREADS, 1000, 1000, " intersects ", + " contains ", " covers ", " touches ", " equals ", " overlaps ", + " crosses ", true, true, false, true, + true, false, -1, false, false, + false, {}, false, {}, {}, + {}, {}, {}}; sj::SweeperCfg noDiagBox{ - NUM_THREADS, - NUM_THREADS, - 1000, - 1000, - " intersects ", - " contains ", - " covers ", - " touches ", - " equals ", - " overlaps ", - " crosses ", - true, - true, - true, - false, - true, - false, - -1, - false, - false, - false, - {}, - false, - {}, - {}, - {}, - {}, - {}}; + NUM_THREADS, NUM_THREADS, 1000, 1000, " intersects ", + " contains ", " covers ", " touches ", " equals ", " overlaps ", + " crosses ", true, true, true, false, + true, false, -1, false, false, + false, {}, false, {}, {}, + {}, {}, {}}; sj::SweeperCfg noFastSweep{ - NUM_THREADS, - NUM_THREADS, - 1000, - 1000, - " intersects ", - " contains ", - " covers ", - " touches ", - " equals ", - " overlaps ", - " crosses ", - true, - true, - true, - true, - false, - false, - -1, - false, - false, - false, - {}, - false, - {}, - {}, - {}, - {}, - {}}; - - std::vector cfgs{baseline, all, noSurfaceArea, - noBoxIds, noObb, noDiagBox, - noFastSweep}; + NUM_THREADS, NUM_THREADS, 1000, 1000, " intersects ", + " contains ", " covers ", " touches ", " equals ", " overlaps ", + " crosses ", true, true, true, true, + false, false, -1, false, false, + false, {}, false, {}, {}, + {}, {}, {}}; + + std::vector cfgs{baseline, all, noSurfaceArea, noBoxIds, + noObb, noDiagBox, noFastSweep}; for (auto cfg : cfgs) { { @@ -365,10 +243,10 @@ int main(int, char**) { TEST(res.find("$freiburg1 covers Umkirch$") == std::string::npos); - TEST(res.find("$freiburg1 covers Sankt Georgen$") != std::string::npos); - TEST(res.find("$freiburg1 intersects Sankt Georgen$") != + TEST(res.find("$freiburg1 covers Sankt-Georgen$") != std::string::npos); + TEST(res.find("$freiburg1 intersects Sankt-Georgen$") != std::string::npos); - TEST(res.find("$freiburg1 contains Sankt Georgen$") != std::string::npos); + TEST(res.find("$freiburg1 contains Sankt-Georgen$") != std::string::npos); TEST(res.find("$freiburg1 covers Haslach$") != std::string::npos); @@ -417,17 +295,17 @@ int main(int, char**) { TEST(res.find("$freiburg1 covers Zähringen$") != std::string::npos); TEST(res.find("$freiburg1 covers Ebnet$") != std::string::npos); TEST(res.find("$freiburg1 covers Oberau$") != std::string::npos); - TEST(res.find("$freiburg1 covers Sankt Georgen Süd$") != + TEST(res.find("$freiburg1 covers Sankt-Georgen-Süd$") != std::string::npos); - TEST(res.find("$freiburg1 covers Sankt Georgen Nord$") != + TEST(res.find("$freiburg1 covers Sankt-Georgen-Nord$") != std::string::npos); - TEST(res.find("$Sankt Georgen covers Sankt Georgen Süd$") != + TEST(res.find("$Sankt-Georgen covers Sankt-Georgen-Süd$") != std::string::npos); - TEST(res.find("$Sankt Georgen covers Sankt Georgen Nord$") != + TEST(res.find("$Sankt-Georgen covers Sankt-Georgen-Nord$") != std::string::npos); - TEST(res.find("$Sankt Georgen Süd touches Sankt Georgen Nord$") != + TEST(res.find("$Sankt-Georgen-Süd touches Sankt-Georgen-Nord$") != std::string::npos); - TEST(res.find("$Sankt Georgen Nord touches Sankt Georgen Süd$") != + TEST(res.find("$Sankt-Georgen-Nord touches Sankt-Georgen-Süd$") != std::string::npos); TEST(res.find("$freiburg1 covers Haslach-Haid$") != std::string::npos); TEST(res.find("$freiburg1 covers Haslach-Gartenstadt$") != @@ -864,12 +742,32 @@ int main(int, char**) { size_t a = res.find("$lsa equals lsb$"); TEST(a != std::string::npos); // no second time! - TEST(res.find("$lsa\tequals\tlsb$", a+1) == std::string::npos); + TEST(res.find("$lsa\tequals\tlsb$", a + 1) == std::string::npos); size_t aa = res.find("$lsb equals lsc$"); TEST(aa != std::string::npos); // no second time! - TEST(res.find("$lsb equals lsc$", aa+1) == std::string::npos); + TEST(res.find("$lsb equals lsc$", aa + 1) == std::string::npos); + } + + for (std::string dataset : + {"duplicate-references", "multitests", "collectiontests", "freiburg", + "references", "issue-23"}) { + RunStats withDups, withoutDups; + + const auto& withDupRemoval = + fullRun(TEST_DATASET_DIR "/" + dataset, cfg, &withDups); + const auto& withoutDupRemoval = + fullRun(TEST_DATASET_DIR "/" + dataset, cfg, &withoutDups, + std::numeric_limits::max()); + + TEST(withDups.numReferences > withoutDups.numReferences); + TEST(sortedRels(withDupRemoval) == sortedRels(withoutDupRemoval)); + + // this tests for contradicting relations (two geometries contain AND + // overlap each other) + testNoContradictions(withDupRemoval); + testNoContradictions(withoutDupRemoval); } { @@ -1051,6 +949,24 @@ int main(int, char**) { } } + { + auto cfg = all; + + RunStats singleStats; + const auto& single = + fullRun(TEST_DATASET_DIR "/multi-threaded", cfg, &singleStats); + + cfg.numThreads = 4; + cfg.numCacheThreads = 4; + + for (size_t i = 0; i < 3; i++) { + RunStats multiStats; + TEST(sortedRels(single) == + sortedRels( + fullRun(TEST_DATASET_DIR "/multi-threaded", cfg, &multiStats))); + } + } + // DE9IM for (auto cfg : cfgs) { cfg.computeDE9IM = true; @@ -1077,32 +993,32 @@ int main(int, char**) { size_t a = res.find("$lsa\t1FFF0FFF2\tlsb$"); TEST(a != std::string::npos); // no second time! - TEST(res.find("$lsa\t1FFF0FFF2\tlsb$", a+1) == std::string::npos); + TEST(res.find("$lsa\t1FFF0FFF2\tlsb$", a + 1) == std::string::npos); size_t aa = res.find("$lsb\t1FFF0FFF2\tlsc$"); TEST(aa != std::string::npos); // no second time! - TEST(res.find("$lsb\t1FFF0FFF2\tlsc$", aa+1) == std::string::npos); + TEST(res.find("$lsb\t1FFF0FFF2\tlsc$", aa + 1) == std::string::npos); size_t b = res.find("$lsb\t1FFF0FFF2\tlsa$"); TEST(b != std::string::npos); // no second time! - TEST(res.find("$lsb\t1FFF0FFF2\tlsa$", b+1) == std::string::npos); + TEST(res.find("$lsb\t1FFF0FFF2\tlsa$", b + 1) == std::string::npos); size_t c = res.find("$polya\t2FFF1FFF2\tpolyb$"); TEST(c != std::string::npos); // no second time! - TEST(res.find("$polya\t2FFF1FFF2\tpolyb$", c+1) == std::string::npos); + TEST(res.find("$polya\t2FFF1FFF2\tpolyb$", c + 1) == std::string::npos); size_t d = res.find("$polyb\t2FFF1FFF2\tpolya$"); TEST(d != std::string::npos); // no second time! - TEST(res.find("$polyb\t2FFF1FFF2\tpolya$", d+1) == std::string::npos); + TEST(res.find("$polyb\t2FFF1FFF2\tpolya$", d + 1) == std::string::npos); size_t e = res.find("$polyc\t2FFF1FFF2\tpolyb$"); TEST(d != std::string::npos); // no second time! - TEST(res.find("$polyc\t2FFF1FFF2\tpolyb$", e+1) == std::string::npos); + TEST(res.find("$polyc\t2FFF1FFF2\tpolyb$", e + 1) == std::string::npos); } { RunStats stats; @@ -1173,7 +1089,8 @@ int main(int, char**) { cfg.withinDist = 100; { RunStats stats; - auto res = fullRun(TEST_DATASET_DIR "/brokenlinepointdistance", cfg, &stats); + auto res = + fullRun(TEST_DATASET_DIR "/brokenlinepointdistance", cfg, &stats); std::regex pattern1("\\$point2\\t9.4\\d*\\\tway\\$"); TEST(std::regex_search(res, pattern1)); diff --git a/src/spatialjoin/tests/datasets/duplicate-references b/src/spatialjoin/tests/datasets/duplicate-references new file mode 100644 index 0000000..076690f --- /dev/null +++ b/src/spatialjoin/tests/datasets/duplicate-references @@ -0,0 +1,10 @@ +mpoly MULTIPOLYGON(((0 0,0 0.001,0.0002 0.001,0.0002 0.0006,0.0004 0.0006,0.0004 0.001,0.0006 0.001,0.0006 0.0006,0.0008 0.0006,0.0008 0.001,0.001 0.001,0.001 0,0 0)),((0.002 0,0.002 0.001,0.003 0.001,0.003 0,0.002 0))) +mpoly2 MULTIPOLYGON(((0 0,0 0.001,0.0002 0.001,0.0002 0.0006,0.0004 0.0006,0.0004 0.001,0.0006 0.001,0.0006 0.0006,0.0008 0.0006,0.0008 0.001,0.001 0.001,0.001 0,0 0)),((-0.002 0,-0.002 0.001,-0.001 0.001,-0.001 0,-0.002 0))) +mpoly4 MULTIPOLYGON(((0 0,0 0.001,0.0002 0.001,0.0002 0.0006,0.0004 0.0006,0.0004 0.001,0.0006 0.001,0.0006 0.0006,0.0008 0.0006,0.0008 0.001,0.001 0.001,0.001 0,0 0))) +poly POLYGON((0 0,0 0.001,0.0002 0.001,0.0002 0.0006,0.0004 0.0006,0.0004 0.001,0.0006 0.001,0.0006 0.0006,0.0008 0.0006,0.0008 0.001,0.001 0.001,0.001 0,0 0)) +line LINESTRING(0.0002 0.0002,0.0008 0.0004) +xline LINESTRING(-0.0005 0.0003,0.0015 0.0003) +mpoly3 MULTIPOLYGON(((0.0001 0.0001,0.0001 0.0003,0.0003 0.0003,0.0003 0.0001,0.0001 0.0001)),((0.0021 0.0002,0.0021 0.0004,0.0023 0.0004,0.0023 0.0002,0.0021 0.0002))) +tpoly POLYGON((0 -0.001,0 0,0.001 0,0.001 -0.001,0 -0.001)) +bigA MULTIPOLYGON(((0.01 0,0.01 0.001,0.011 0.001,0.011 0,0.01 0)),((0.012 0,0.012 0.001,0.013 0.001,0.013 0,0.012 0))) +smallB MULTIPOLYGON(((0.01 0,0.01 0.001,0.011 0.001,0.011 0,0.01 0)),((0.0122 0.0002,0.0122 0.0008,0.013 0.0008,0.013 0.0002,0.0122 0.0002))) diff --git a/src/spatialjoin/tests/datasets/freiburg b/src/spatialjoin/tests/datasets/freiburg index a597c6e..552d0b3 100644 --- a/src/spatialjoin/tests/datasets/freiburg +++ b/src/spatialjoin/tests/datasets/freiburg @@ -8,7 +8,7 @@ c LINESTRING(7.8845745 48.0225505,7.8846139 48.0226988, 7.8846520 48.0228419, d LINESTRING(7.8636327 48.0345675,7.8636700 48.0346325,7.8637415 48.0347774, 7.8638784 48.0350678,7.8638825 48.0350757) grenzpunkt POINT ( 7.8373045 47.9713280 ) grenzpunkt2 POINT(7.8299752 47.9727856) -Sankt Georgen MULTIPOLYGON(((7.7551190 47.9788009,7.7567772 47.9805245,7.7568928 47.9806556,7.7572963 47.9813335,7.7581116 47.9827985,7.7585084 47.9843152,7.7620449 47.9847235,7.7633432 47.9850523,7.7635981 47.9865557,7.7638673 47.9875903,7.7637042 47.9878028,7.7629011 47.9889661,7.7627515 47.9893826,7.7629409 47.9897316,7.7631821 47.9901646,7.7637814 47.9911633,7.7632235 47.9914735,7.7627429 47.9917607,7.7623223 47.9919617,7.7621421 47.9921800,7.7616499 47.9926860,7.7626465 47.9930340,7.7625686 47.9943143,7.7622682 47.9951586,7.7620757 47.9954260,7.7616541 47.9958901,7.7612256 47.9962143,7.7610580 47.9966979,7.7609985 47.9969530,7.7607218 47.9977874,7.7603990 47.9985202,7.7606271 47.9993851,7.7607426 47.9995000,7.7608667 47.9995223,7.7626468 47.9994825,7.7638116 47.9992987,7.7640176 47.9992413,7.7641721 47.9991838,7.7643352 47.9991034,7.7644600 47.9990204,7.7657943 47.9981328,7.7659579 47.9980278,7.7664381 47.9977193,7.7666210 47.9976290,7.7669015 47.9975355,7.7672620 47.9974091,7.7677341 47.9972828,7.7686096 47.9970760,7.7688599 47.9970275,7.7704987 47.9963227,7.7712973 47.9960089,7.7724209 47.9955850,7.7736650 47.9951232,7.7744822 47.9949548,7.7750383 47.9948532,7.7753644 47.9948245,7.7759223 47.9948589,7.7779823 47.9951117,7.7789263 47.9951619,7.7790332 47.9951706,7.7814819 47.9949967,7.7876431 47.9950424,7.7883417 47.9950534,7.7884957 47.9950612,7.7885597 47.9952148,7.7887788 47.9952936,7.7890702 47.9952174,7.7891510 47.9951075,7.7938579 47.9951377,7.7976965 47.9951822,7.7978298 47.9952243,7.7986492 47.9952733,7.7989039 47.9953978,7.7990603 47.9953642,7.7992337 47.9953328,7.7993575 47.9953208,7.8002106 47.9952133,7.8002753 47.9951925,7.8003268 47.9951623,7.8003726 47.9951422,7.8004761 47.9951147,7.8002643 47.9948134,7.8001747 47.9947108,7.8000531 47.9945511,7.7992199 47.9934909,7.7985828 47.9926424,7.7981041 47.9923132,7.7977241 47.9913312,7.7969689 47.9889703,7.7967206 47.9880286,7.7961372 47.9856943,7.7997282 47.9855461,7.8004040 47.9854939,7.8013395 47.9853848,7.8030304 47.9851320,7.8034856 47.9850479,7.8036948 47.9850048,7.8043769 47.9848624,7.8078420 47.9840496,7.8083019 47.9839422,7.8092526 47.9837559,7.8101120 47.9836059,7.8110157 47.9835128,7.8118455 47.9834511,7.8128478 47.9834914,7.8138325 47.9835278,7.8159338 47.9837783,7.8187149 47.9841598,7.8193523 47.9842472,7.8195290 47.9839123,7.8196484 47.9836289,7.8197524 47.9832640,7.8198081 47.9829587,7.8199375 47.9822733,7.8202485 47.9813794,7.8207001 47.9806742,7.8216185 47.9797143,7.8227171 47.9788414,7.8236506 47.9783205,7.8232282 47.9781804,7.8222874 47.9779510,7.8218164 47.9778508,7.8215326 47.9778054,7.8203575 47.9776000,7.8188708 47.9774137,7.8184260 47.9773586,7.8164091 47.9771168,7.8162398 47.9763992,7.8163872 47.9763599,7.8167310 47.9762228,7.8174084 47.9759909,7.8177380 47.9758758,7.8180716 47.9757415,7.8182293 47.9756539,7.8183478 47.9755279,7.8184460 47.9753832,7.8186425 47.9751924,7.8186818 47.9751332,7.8189569 47.9749951,7.8192222 47.9748833,7.8194384 47.9747649,7.8196349 47.9746596,7.8197331 47.9745807,7.8199448 47.9744699,7.8201648 47.9743592,7.8202504 47.9743382,7.8206099 47.9743112,7.8208755 47.9742592,7.8212528 47.9741200,7.8216753 47.9740213,7.8220192 47.9739293,7.8223827 47.9737714,7.8227659 47.9736661,7.8230999 47.9736004,7.8234438 47.9735214,7.8237091 47.9734688,7.8240726 47.9733767,7.8243281 47.9732846,7.8246720 47.9731070,7.8247968 47.9730695,7.8253557 47.9727983,7.8254674 47.9727822,7.8253195 47.9722158,7.8250411 47.9723001,7.8249579 47.9723422,7.8249175 47.9724145,7.8248028 47.9724611,7.8243419 47.9725123,7.8236072 47.9727220,7.8233026 47.9727033,7.8231273 47.9727468,7.8224918 47.9723653,7.8225528 47.9722439,7.8225020 47.9722237,7.8223418 47.9721599,7.8218779 47.9718791,7.8212869 47.9715103,7.8210185 47.9712934,7.8205125 47.9708464,7.8202125 47.9705953,7.8200736 47.9704840,7.8186950 47.9701837,7.8179364 47.9686022,7.8165842 47.9676604,7.8133954 47.9677254,7.8130712 47.9677293,7.8120513 47.9671344,7.8115034 47.9669054,7.8105972 47.9664905,7.8092057 47.9659785,7.8090438 47.9659107,7.8076340 47.9657005,7.8073831 47.9655631,7.8070286 47.9654027,7.8067577 47.9652797,7.8065905 47.9650953,7.8062526 47.9647654,7.8061335 47.9646253,7.8052680 47.9644568,7.8044804 47.9643607,7.8021357 47.9640765,7.8011659 47.9643497,7.8004371 47.9645513,7.7992973 47.9652724,7.7975770 47.9656425,7.7956299 47.9662675,7.7921661 47.9683632,7.7906040 47.9688368,7.7887501 47.9688177,7.7880604 47.9690069,7.7877411 47.9690862,7.7874126 47.9691066,7.7872847 47.9691639,7.7870520 47.9692643,7.7869726 47.9692707,7.7868028 47.9692817,7.7867658 47.9692657,7.7866847 47.9692391,7.7865040 47.9691762,7.7864630 47.9691634,7.7859688 47.9695141,7.7856967 47.9693130,7.7856583 47.9693374,7.7851711 47.9696456,7.7849833 47.9694416,7.7849270 47.9694784,7.7844377 47.9698095,7.7844403 47.9698580,7.7844077 47.9698912,7.7842856 47.9699493,7.7839198 47.9697414,7.7835857 47.9699300,7.7834811 47.9698583,7.7834206 47.9698885,7.7829049 47.9701416,7.7827848 47.9700540,7.7821013 47.9704311,7.7820000 47.9704227,7.7819833 47.9704219,7.7816451 47.9703939,7.7813068 47.9703688,7.7812617 47.9703667,7.7811814 47.9703559,7.7811336 47.9703508,7.7806256 47.9705629,7.7806106 47.9705726,7.7803875 47.9706633,7.7803276 47.9706855,7.7802949 47.9707120,7.7802604 47.9707280,7.7799635 47.9709360,7.7800547 47.9709855,7.7783070 47.9720288,7.7782493 47.9721202,7.7782786 47.9722306,7.7783068 47.9723369,7.7769135 47.9727199,7.7764101 47.9728453,7.7760990 47.9729228,7.7759130 47.9729828,7.7758840 47.9729880,7.7759793 47.9732369,7.7761470 47.9736937,7.7760786 47.9737168,7.7750532 47.9740641,7.7743057 47.9743172,7.7722987 47.9749969,7.7726552 47.9754488,7.7725879 47.9754685,7.7725058 47.9754868,7.7723968 47.9755147,7.7723714 47.9755251,7.7722926 47.9755485,7.7722620 47.9755620,7.7722478 47.9755683,7.7721618 47.9756064,7.7720782 47.9756607,7.7718351 47.9758365,7.7710539 47.9765796,7.7709999 47.9766301,7.7699126 47.9776210,7.7680771 47.9784134,7.7680036 47.9784432,7.7679460 47.9784665,7.7679391 47.9784619,7.7673258 47.9780763,7.7657209 47.9770208,7.7633721 47.9768122,7.7624212 47.9770412,7.7600885 47.9776511,7.7576469 47.9783760,7.7563940 47.9787160,7.7559641 47.9788150,7.7551190 47.9788009))) +Sankt-Georgen MULTIPOLYGON(((7.7551190 47.9788009,7.7567772 47.9805245,7.7568928 47.9806556,7.7572963 47.9813335,7.7581116 47.9827985,7.7585084 47.9843152,7.7620449 47.9847235,7.7633432 47.9850523,7.7635981 47.9865557,7.7638673 47.9875903,7.7637042 47.9878028,7.7629011 47.9889661,7.7627515 47.9893826,7.7629409 47.9897316,7.7631821 47.9901646,7.7637814 47.9911633,7.7632235 47.9914735,7.7627429 47.9917607,7.7623223 47.9919617,7.7621421 47.9921800,7.7616499 47.9926860,7.7626465 47.9930340,7.7625686 47.9943143,7.7622682 47.9951586,7.7620757 47.9954260,7.7616541 47.9958901,7.7612256 47.9962143,7.7610580 47.9966979,7.7609985 47.9969530,7.7607218 47.9977874,7.7603990 47.9985202,7.7606271 47.9993851,7.7607426 47.9995000,7.7608667 47.9995223,7.7626468 47.9994825,7.7638116 47.9992987,7.7640176 47.9992413,7.7641721 47.9991838,7.7643352 47.9991034,7.7644600 47.9990204,7.7657943 47.9981328,7.7659579 47.9980278,7.7664381 47.9977193,7.7666210 47.9976290,7.7669015 47.9975355,7.7672620 47.9974091,7.7677341 47.9972828,7.7686096 47.9970760,7.7688599 47.9970275,7.7704987 47.9963227,7.7712973 47.9960089,7.7724209 47.9955850,7.7736650 47.9951232,7.7744822 47.9949548,7.7750383 47.9948532,7.7753644 47.9948245,7.7759223 47.9948589,7.7779823 47.9951117,7.7789263 47.9951619,7.7790332 47.9951706,7.7814819 47.9949967,7.7876431 47.9950424,7.7883417 47.9950534,7.7884957 47.9950612,7.7885597 47.9952148,7.7887788 47.9952936,7.7890702 47.9952174,7.7891510 47.9951075,7.7938579 47.9951377,7.7976965 47.9951822,7.7978298 47.9952243,7.7986492 47.9952733,7.7989039 47.9953978,7.7990603 47.9953642,7.7992337 47.9953328,7.7993575 47.9953208,7.8002106 47.9952133,7.8002753 47.9951925,7.8003268 47.9951623,7.8003726 47.9951422,7.8004761 47.9951147,7.8002643 47.9948134,7.8001747 47.9947108,7.8000531 47.9945511,7.7992199 47.9934909,7.7985828 47.9926424,7.7981041 47.9923132,7.7977241 47.9913312,7.7969689 47.9889703,7.7967206 47.9880286,7.7961372 47.9856943,7.7997282 47.9855461,7.8004040 47.9854939,7.8013395 47.9853848,7.8030304 47.9851320,7.8034856 47.9850479,7.8036948 47.9850048,7.8043769 47.9848624,7.8078420 47.9840496,7.8083019 47.9839422,7.8092526 47.9837559,7.8101120 47.9836059,7.8110157 47.9835128,7.8118455 47.9834511,7.8128478 47.9834914,7.8138325 47.9835278,7.8159338 47.9837783,7.8187149 47.9841598,7.8193523 47.9842472,7.8195290 47.9839123,7.8196484 47.9836289,7.8197524 47.9832640,7.8198081 47.9829587,7.8199375 47.9822733,7.8202485 47.9813794,7.8207001 47.9806742,7.8216185 47.9797143,7.8227171 47.9788414,7.8236506 47.9783205,7.8232282 47.9781804,7.8222874 47.9779510,7.8218164 47.9778508,7.8215326 47.9778054,7.8203575 47.9776000,7.8188708 47.9774137,7.8184260 47.9773586,7.8164091 47.9771168,7.8162398 47.9763992,7.8163872 47.9763599,7.8167310 47.9762228,7.8174084 47.9759909,7.8177380 47.9758758,7.8180716 47.9757415,7.8182293 47.9756539,7.8183478 47.9755279,7.8184460 47.9753832,7.8186425 47.9751924,7.8186818 47.9751332,7.8189569 47.9749951,7.8192222 47.9748833,7.8194384 47.9747649,7.8196349 47.9746596,7.8197331 47.9745807,7.8199448 47.9744699,7.8201648 47.9743592,7.8202504 47.9743382,7.8206099 47.9743112,7.8208755 47.9742592,7.8212528 47.9741200,7.8216753 47.9740213,7.8220192 47.9739293,7.8223827 47.9737714,7.8227659 47.9736661,7.8230999 47.9736004,7.8234438 47.9735214,7.8237091 47.9734688,7.8240726 47.9733767,7.8243281 47.9732846,7.8246720 47.9731070,7.8247968 47.9730695,7.8253557 47.9727983,7.8254674 47.9727822,7.8253195 47.9722158,7.8250411 47.9723001,7.8249579 47.9723422,7.8249175 47.9724145,7.8248028 47.9724611,7.8243419 47.9725123,7.8236072 47.9727220,7.8233026 47.9727033,7.8231273 47.9727468,7.8224918 47.9723653,7.8225528 47.9722439,7.8225020 47.9722237,7.8223418 47.9721599,7.8218779 47.9718791,7.8212869 47.9715103,7.8210185 47.9712934,7.8205125 47.9708464,7.8202125 47.9705953,7.8200736 47.9704840,7.8186950 47.9701837,7.8179364 47.9686022,7.8165842 47.9676604,7.8133954 47.9677254,7.8130712 47.9677293,7.8120513 47.9671344,7.8115034 47.9669054,7.8105972 47.9664905,7.8092057 47.9659785,7.8090438 47.9659107,7.8076340 47.9657005,7.8073831 47.9655631,7.8070286 47.9654027,7.8067577 47.9652797,7.8065905 47.9650953,7.8062526 47.9647654,7.8061335 47.9646253,7.8052680 47.9644568,7.8044804 47.9643607,7.8021357 47.9640765,7.8011659 47.9643497,7.8004371 47.9645513,7.7992973 47.9652724,7.7975770 47.9656425,7.7956299 47.9662675,7.7921661 47.9683632,7.7906040 47.9688368,7.7887501 47.9688177,7.7880604 47.9690069,7.7877411 47.9690862,7.7874126 47.9691066,7.7872847 47.9691639,7.7870520 47.9692643,7.7869726 47.9692707,7.7868028 47.9692817,7.7867658 47.9692657,7.7866847 47.9692391,7.7865040 47.9691762,7.7864630 47.9691634,7.7859688 47.9695141,7.7856967 47.9693130,7.7856583 47.9693374,7.7851711 47.9696456,7.7849833 47.9694416,7.7849270 47.9694784,7.7844377 47.9698095,7.7844403 47.9698580,7.7844077 47.9698912,7.7842856 47.9699493,7.7839198 47.9697414,7.7835857 47.9699300,7.7834811 47.9698583,7.7834206 47.9698885,7.7829049 47.9701416,7.7827848 47.9700540,7.7821013 47.9704311,7.7820000 47.9704227,7.7819833 47.9704219,7.7816451 47.9703939,7.7813068 47.9703688,7.7812617 47.9703667,7.7811814 47.9703559,7.7811336 47.9703508,7.7806256 47.9705629,7.7806106 47.9705726,7.7803875 47.9706633,7.7803276 47.9706855,7.7802949 47.9707120,7.7802604 47.9707280,7.7799635 47.9709360,7.7800547 47.9709855,7.7783070 47.9720288,7.7782493 47.9721202,7.7782786 47.9722306,7.7783068 47.9723369,7.7769135 47.9727199,7.7764101 47.9728453,7.7760990 47.9729228,7.7759130 47.9729828,7.7758840 47.9729880,7.7759793 47.9732369,7.7761470 47.9736937,7.7760786 47.9737168,7.7750532 47.9740641,7.7743057 47.9743172,7.7722987 47.9749969,7.7726552 47.9754488,7.7725879 47.9754685,7.7725058 47.9754868,7.7723968 47.9755147,7.7723714 47.9755251,7.7722926 47.9755485,7.7722620 47.9755620,7.7722478 47.9755683,7.7721618 47.9756064,7.7720782 47.9756607,7.7718351 47.9758365,7.7710539 47.9765796,7.7709999 47.9766301,7.7699126 47.9776210,7.7680771 47.9784134,7.7680036 47.9784432,7.7679460 47.9784665,7.7679391 47.9784619,7.7673258 47.9780763,7.7657209 47.9770208,7.7633721 47.9768122,7.7624212 47.9770412,7.7600885 47.9776511,7.7576469 47.9783760,7.7563940 47.9787160,7.7559641 47.9788150,7.7551190 47.9788009))) Haslach MULTIPOLYGON(((7.7961372 47.9856943,7.7967206 47.9880286,7.7969689 47.9889703,7.7977241 47.9913312,7.7981041 47.9923132,7.7985828 47.9926424,7.7992199 47.9934909,7.8000531 47.9945511,7.8001747 47.9947108,7.8002643 47.9948134,7.8004761 47.9951147,7.8007549 47.9950553,7.8010670 47.9949935,7.8015216 47.9949034,7.8022487 47.9947301,7.8034589 47.9944475,7.8034674 47.9944637,7.8037547 47.9943875,7.8038360 47.9943603,7.8040138 47.9943046,7.8042631 47.9942215,7.8043873 47.9941812,7.8045345 47.9941278,7.8050724 47.9939226,7.8052913 47.9938598,7.8057734 47.9937249,7.8062903 47.9935939,7.8067416 47.9934908,7.8072294 47.9933909,7.8076470 47.9933189,7.8086357 47.9931774,7.8090056 47.9930970,7.8094104 47.9930150,7.8094949 47.9929991,7.8101974 47.9928545,7.8103594 47.9928443,7.8105158 47.9928194,7.8109358 47.9927284,7.8113990 47.9925945,7.8123141 47.9923322,7.8128344 47.9921833,7.8129415 47.9921524,7.8132138 47.9920730,7.8133082 47.9920421,7.8133890 47.9920798,7.8163498 47.9942960,7.8167456 47.9945998,7.8195355 47.9966641,7.8214382 47.9980470,7.8291946 47.9950698,7.8327562 47.9936879,7.8349160 47.9928611,7.8354481 47.9926722,7.8364201 47.9923624,7.8353540 47.9911162,7.8348640 47.9907321,7.8335187 47.9896777,7.8329306 47.9891168,7.8322977 47.9883256,7.8309680 47.9866339,7.8304729 47.9859288,7.8302443 47.9854947,7.8299853 47.9846922,7.8299406 47.9841370,7.8299683 47.9833919,7.8301012 47.9828692,7.8301455 47.9827728,7.8296301 47.9820600,7.8293303 47.9817098,7.8289858 47.9813512,7.8288068 47.9812059,7.8279095 47.9804476,7.8267876 47.9797263,7.8257532 47.9791697,7.8256634 47.9791265,7.8249036 47.9787968,7.8242672 47.9785533,7.8238782 47.9783889,7.8236506 47.9783205,7.8227171 47.9788414,7.8216185 47.9797143,7.8207001 47.9806742,7.8202485 47.9813794,7.8199375 47.9822733,7.8198081 47.9829587,7.8197524 47.9832640,7.8196484 47.9836289,7.8195290 47.9839123,7.8193523 47.9842472,7.8187149 47.9841598,7.8159338 47.9837783,7.8138325 47.9835278,7.8128478 47.9834914,7.8118455 47.9834511,7.8110157 47.9835128,7.8101120 47.9836059,7.8092526 47.9837559,7.8083019 47.9839422,7.8078420 47.9840496,7.8043769 47.9848624,7.8036948 47.9850048,7.8034856 47.9850479,7.8030304 47.9851320,7.8013395 47.9853848,7.8004040 47.9854939,7.7997282 47.9855461,7.7961372 47.9856943))) Günterstal MULTIPOLYGON(((7.8346282 47.9666029,7.8356643 47.9681244,7.8366566 47.9694196,7.8374267 47.9711616,7.8378632 47.9711055,7.8384795 47.9714469,7.8385785 47.9715143,7.8383727 47.9716617,7.8386103 47.9717840,7.8393239 47.9722151,7.8397188 47.9724277,7.8400878 47.9725599,7.8406886 47.9727323,7.8413238 47.9728530,7.8427391 47.9729714,7.8428135 47.9728911,7.8433834 47.9726317,7.8437565 47.9728330,7.8441713 47.9735845,7.8439839 47.9742960,7.8451064 47.9749523,7.8452401 47.9750150,7.8453519 47.9750301,7.8454295 47.9750362,7.8455628 47.9750164,7.8471909 47.9747881,7.8476034 47.9747302,7.8478288 47.9747035,7.8499414 47.9746092,7.8523038 47.9752849,7.8536298 47.9755078,7.8550061 47.9757391,7.8597252 47.9743246,7.8617314 47.9744569,7.8638449 47.9742755,7.8663055 47.9735353,7.8695177 47.9721055,7.8734965 47.9723694,7.8764110 47.9707566,7.8800284 47.9691506,7.8817831 47.9685156,7.8824497 47.9671056,7.8843246 47.9655499,7.8849811 47.9651215,7.8853580 47.9648756,7.8874145 47.9635338,7.8861524 47.9629343,7.8853961 47.9622974,7.8850753 47.9603104,7.8849235 47.9593699,7.8860001 47.9560076,7.8834217 47.9544986,7.8804409 47.9530306,7.8807252 47.9522689,7.8813440 47.9515104,7.8813257 47.9507359,7.8815356 47.9499232,7.8818387 47.9487496,7.8822398 47.9479550,7.8846551 47.9469558,7.8852142 47.9458595,7.8860016 47.9450352,7.8863914 47.9447653,7.8871226 47.9442591,7.8912281 47.9431970,7.8911145 47.9422516,7.8914028 47.9412875,7.8914278 47.9401186,7.8907380 47.9379534,7.8906855 47.9372784,7.8908233 47.9355259,7.8899800 47.9342811,7.8905677 47.9318359,7.8916996 47.9289688,7.8918516 47.9281159,7.8898481 47.9248138,7.8904092 47.9236050,7.8903817 47.9229800,7.8903440 47.9221229,7.8903192 47.9215580,7.8910251 47.9198335,7.8918464 47.9189646,7.8935482 47.9175869,7.8951845 47.9161412,7.8962914 47.9144205,7.8984616 47.9119437,7.8982200 47.9116269,7.8979939 47.9113389,7.8969333 47.9107769,7.8963818 47.9106576,7.8948086 47.9103248,7.8936337 47.9101734,7.8928046 47.9099329,7.8924961 47.9082794,7.8924038 47.9077995,7.8921347 47.9073682,7.8915956 47.9068373,7.8908057 47.9062599,7.8899433 47.9058614,7.8891982 47.9055808,7.8890178 47.9054813,7.8887435 47.9053743,7.8883297 47.9051954,7.8881145 47.9051167,7.8874882 47.9048686,7.8869577 47.9046922,7.8860965 47.9044744,7.8848724 47.9040957,7.8844610 47.9039563,7.8839838 47.9040855,7.8832336 47.9042174,7.8826877 47.9042739,7.8824324 47.9042805,7.8821640 47.9042851,7.8812903 47.9041983,7.8803837 47.9040941,7.8797802 47.9040185,7.8792478 47.9039852,7.8785688 47.9039762,7.8776385 47.9038594,7.8773139 47.9038073,7.8750256 47.9036068,7.8749760 47.9035777,7.8733161 47.9039476,7.8715013 47.9045125,7.8706523 47.9057086,7.8704685 47.9059393,7.8697356 47.9075942,7.8695616 47.9078231,7.8692476 47.9080941,7.8683543 47.9087863,7.8679629 47.9092743,7.8679228 47.9094291,7.8678043 47.9097706,7.8676295 47.9100340,7.8675029 47.9102612,7.8674150 47.9104226,7.8673009 47.9105266,7.8671828 47.9106650,7.8670333 47.9108198,7.8670106 47.9109475,7.8669364 47.9110998,7.8668651 47.9112841,7.8668045 47.9114366,7.8664664 47.9115424,7.8663327 47.9115834,7.8662792 47.9117176,7.8661260 47.9119369,7.8659690 47.9121547,7.8657139 47.9123512,7.8650822 47.9126860,7.8645236 47.9129347,7.8642964 47.9130880,7.8640681 47.9131204,7.8636489 47.9131784,7.8630391 47.9132532,7.8629567 47.9134808,7.8628895 47.9138067,7.8628788 47.9140189,7.8628375 47.9142264,7.8627297 47.9143601,7.8625702 47.9145301,7.8624963 47.9146618,7.8624741 47.9149471,7.8624505 47.9152961,7.8623626 47.9156470,7.8630142 47.9158831,7.8636182 47.9161234,7.8642149 47.9163956,7.8648183 47.9166655,7.8644643 47.9168794,7.8640715 47.9171592,7.8636300 47.9175071,7.8634134 47.9178226,7.8633757 47.9180255,7.8634300 47.9182109,7.8634551 47.9185056,7.8634891 47.9186908,7.8634620 47.9188664,7.8633700 47.9190665,7.8632908 47.9192965,7.8631438 47.9195304,7.8628883 47.9197474,7.8627216 47.9199354,7.8626706 47.9201177,7.8627011 47.9203029,7.8626776 47.9204716,7.8625758 47.9206442,7.8624812 47.9208010,7.8625126 47.9209337,7.8625879 47.9210873,7.8626457 47.9212727,7.8626927 47.9214900,7.8627309 47.9218169,7.8628403 47.9221488,7.8629870 47.9224902,7.8629800 47.9226819,7.8628822 47.9228204,7.8627467 47.9229836,7.8625872 47.9231489,7.8625329 47.9233288,7.8625194 47.9235068,7.8624641 47.9237323,7.8624962 47.9238377,7.8625973 47.9238910,7.8627635 47.9239062,7.8629877 47.9239172,7.8632230 47.9238827,7.8633936 47.9238476,7.8636121 47.9237969,7.8638575 47.9237693,7.8641338 47.9237123,7.8644185 47.9237649,7.8645829 47.9238827,7.8647015 47.9240892,7.8647190 47.9243973,7.8647313 47.9245598,7.8647705 47.9245417,7.8654129 47.9242984,7.8655886 47.9241834,7.8658811 47.9241722,7.8665284 47.9239287,7.8668149 47.9237026,7.8673236 47.9235881,7.8675194 47.9234869,7.8677717 47.9234479,7.8680764 47.9238816,7.8679452 47.9243129,7.8672537 47.9249079,7.8663037 47.9255167,7.8660580 47.9260858,7.8662392 47.9269005,7.8657744 47.9277305,7.8657804 47.9282925,7.8658889 47.9284784,7.8660624 47.9286444,7.8664777 47.9287963,7.8674282 47.9285142,7.8677117 47.9293230,7.8684606 47.9296217,7.8681692 47.9302681,7.8687050 47.9308642,7.8679125 47.9310540,7.8676980 47.9314200,7.8677205 47.9321878,7.8679709 47.9329483,7.8686218 47.9337396,7.8688843 47.9338858,7.8701526 47.9335263,7.8699878 47.9330931,7.8699891 47.9330689,7.8702035 47.9328926,7.8704615 47.9327396,7.8708196 47.9325119,7.8711946 47.9322914,7.8714862 47.9321638,7.8717634 47.9320680,7.8719677 47.9320583,7.8721300 47.9321054,7.8723220 47.9321985,7.8725100 47.9322851,7.8738036 47.9311769,7.8748619 47.9312429,7.8748843 47.9312893,7.8749684 47.9313806,7.8750040 47.9314164,7.8750428 47.9314591,7.8755632 47.9320125,7.8757287 47.9326498,7.8757499 47.9327175,7.8757688 47.9327918,7.8759487 47.9334817,7.8761124 47.9337209,7.8763341 47.9340842,7.8765512 47.9343583,7.8766906 47.9346225,7.8768945 47.9348850,7.8771044 47.9351796,7.8771931 47.9352971,7.8773704 47.9359097,7.8774012 47.9360356,7.8774325 47.9361410,7.8774595 47.9362805,7.8774701 47.9364447,7.8774693 47.9364885,7.8774656 47.9365406,7.8775069 47.9368152,7.8775205 47.9369455,7.8775672 47.9371173,7.8775866 47.9372841,7.8775648 47.9374711,7.8775393 47.9376671,7.8775097 47.9377604,7.8774490 47.9378761,7.8774167 47.9379396,7.8772240 47.9382222,7.8772087 47.9382697,7.8772231 47.9383147,7.8772749 47.9384435,7.8772983 47.9384918,7.8773249 47.9385390,7.8774010 47.9386881,7.8775836 47.9392555,7.8779804 47.9400586,7.8769569 47.9400675,7.8763978 47.9402111,7.8764804 47.9402835,7.8764813 47.9403395,7.8765864 47.9404823,7.8767342 47.9406826,7.8768825 47.9408646,7.8770011 47.9410120,7.8771564 47.9412844,7.8772099 47.9414490,7.8772366 47.9416022,7.8772995 47.9417970,7.8773957 47.9420172,7.8775036 47.9421851,7.8776360 47.9423190,7.8778247 47.9425152,7.8779543 47.9426286,7.8781151 47.9427195,7.8782971 47.9427855,7.8784982 47.9428928,7.8786911 47.9430593,7.8788366 47.9432163,7.8789206 47.9433792,7.8788876 47.9435311,7.8787887 47.9436806,7.8787242 47.9438077,7.8786625 47.9439554,7.8786249 47.9440987,7.8786006 47.9442491,7.8785931 47.9444111,7.8785487 47.9445498,7.8784810 47.9447616,7.8784534 47.9448069,7.8784248 47.9448537,7.8783361 47.9450177,7.8782844 47.9451746,7.8782380 47.9453932,7.8781840 47.9456437,7.8783755 47.9458505,7.8784864 47.9459835,7.8786306 47.9461668,7.8787786 47.9463320,7.8788518 47.9464739,7.8789415 47.9466866,7.8790346 47.9468880,7.8791945 47.9472062,7.8792842 47.9474053,7.8793414 47.9475983,7.8792226 47.9477613,7.8791122 47.9479229,7.8789727 47.9482489,7.8788515 47.9484607,7.8787792 47.9485495,7.8786256 47.9486082,7.8781989 47.9487501,7.8777690 47.9489012,7.8775713 47.9489505,7.8773569 47.9489655,7.8768364 47.9489837,7.8761390 47.9490034,7.8758295 47.9490248,7.8756044 47.9490741,7.8754197 47.9491828,7.8750809 47.9493777,7.8746776 47.9495791,7.8743492 47.9497649,7.8740882 47.9499042,7.8734267 47.9502539,7.8729883 47.9504703,7.8711603 47.9512900,7.8686582 47.9510248,7.8687284 47.9508745,7.8688739 47.9506972,7.8691420 47.9505117,7.8694719 47.9502762,7.8693530 47.9498186,7.8667081 47.9497899,7.8665355 47.9501885,7.8661893 47.9501520,7.8657622 47.9501546,7.8656586 47.9501518,7.8656079 47.9501527,7.8655826 47.9501517,7.8654398 47.9501459,7.8646733 47.9501147,7.8640612 47.9501198,7.8635140 47.9500270,7.8634023 47.9500767,7.8630020 47.9500078,7.8624462 47.9498922,7.8620024 47.9497820,7.8613962 47.9496250,7.8609220 47.9495008,7.8603843 47.9493077,7.8599810 47.9492296,7.8596988 47.9492209,7.8593970 47.9491664,7.8587676 47.9489750,7.8583195 47.9489240,7.8580021 47.9489995,7.8575029 47.9491881,7.8567494 47.9495441,7.8562631 47.9497784,7.8559195 47.9500091,7.8556810 47.9500933,7.8556776 47.9502565,7.8555596 47.9504202,7.8554163 47.9506705,7.8552589 47.9509596,7.8550953 47.9512074,7.8548979 47.9514414,7.8545361 47.9519006,7.8543187 47.9521632,7.8539934 47.9525479,7.8539845 47.9526825,7.8539950 47.9528882,7.8540542 47.9532380,7.8540259 47.9535280,7.8539479 47.9539614,7.8539651 47.9541717,7.8541546 47.9546778,7.8541361 47.9547713,7.8540536 47.9548347,7.8539059 47.9549228,7.8536655 47.9550834,7.8533397 47.9552617,7.8529564 47.9554236,7.8521316 47.9557631,7.8509979 47.9562923,7.8506073 47.9564793,7.8504128 47.9565259,7.8501328 47.9565995,7.8494948 47.9567322,7.8492961 47.9568268,7.8492296 47.9569452,7.8490900 47.9571818,7.8488190 47.9577762,7.8486427 47.9581771,7.8485396 47.9584687,7.8485987 47.9588346,7.8487368 47.9595711,7.8489411 47.9604358,7.8488979 47.9608125,7.8487446 47.9612773,7.8486063 47.9616373,7.8485308 47.9616848,7.8484281 47.9617230,7.8482464 47.9618131,7.8477122 47.9620585,7.8473458 47.9622137,7.8471231 47.9623172,7.8469480 47.9624257,7.8440738 47.9637483,7.8433652 47.9639242,7.8429697 47.9641021,7.8412396 47.9640638,7.8394037 47.9638697,7.8374339 47.9656699,7.8358706 47.9662518,7.8346282 47.9666029))) Kappel MULTIPOLYGON(((7.8804409 47.9530306,7.8834217 47.9544986,7.8860001 47.9560076,7.8849235 47.9593699,7.8850753 47.9603104,7.8853961 47.9622974,7.8861524 47.9629343,7.8874145 47.9635338,7.8884052 47.9640354,7.8898825 47.9653988,7.8977801 47.9683915,7.8980694 47.9690817,7.8984860 47.9693665,7.8995511 47.9697027,7.9005192 47.9699140,7.9015120 47.9702503,7.9018667 47.9705334,7.9020701 47.9717008,7.9023384 47.9720337,7.9030787 47.9723958,7.9042993 47.9727904,7.9053022 47.9730516,7.9064738 47.9734199,7.9075951 47.9738789,7.9076143 47.9739949,7.9080249 47.9743491,7.9095269 47.9751416,7.9102808 47.9754353,7.9113835 47.9756778,7.9118995 47.9759775,7.9123468 47.9761774,7.9124848 47.9762965,7.9126460 47.9762027,7.9137021 47.9764584,7.9150305 47.9759922,7.9156370 47.9756892,7.9161316 47.9755010,7.9167414 47.9752897,7.9168834 47.9752185,7.9170167 47.9751181,7.9174684 47.9746810,7.9178295 47.9745008,7.9183252 47.9744411,7.9193710 47.9741026,7.9202440 47.9739344,7.9213322 47.9735535,7.9214323 47.9736655,7.9215947 47.9735430,7.9216748 47.9734823,7.9216477 47.9734402,7.9212308 47.9727922,7.9212014 47.9727449,7.9211323 47.9725905,7.9210974 47.9725651,7.9215891 47.9723622,7.9226848 47.9719235,7.9233228 47.9716323,7.9239281 47.9712566,7.9245159 47.9707574,7.9243968 47.9706077,7.9243809 47.9705894,7.9239173 47.9701193,7.9239003 47.9701073,7.9236947 47.9698436,7.9225770 47.9696673,7.9219781 47.9683095,7.9217911 47.9674356,7.9196994 47.9673366,7.9179776 47.9676225,7.9178336 47.9672566,7.9169868 47.9665846,7.9165099 47.9662638,7.9163822 47.9661780,7.9159209 47.9658677,7.9154910 47.9654678,7.9152370 47.9650208,7.9151957 47.9644441,7.9151220 47.9634150,7.9147311 47.9629421,7.9153360 47.9623201,7.9156820 47.9616942,7.9158939 47.9606953,7.9160779 47.9602264,7.9168008 47.9593985,7.9171448 47.9591385,7.9172228 47.9589865,7.9170128 47.9585895,7.9171588 47.9580516,7.9190962 47.9572751,7.9187416 47.9567048,7.9189485 47.9559958,7.9189375 47.9557249,7.9193461 47.9549629,7.9198004 47.9542140,7.9207343 47.9534431,7.9213012 47.9530542,7.9220201 47.9526882,7.9226090 47.9522073,7.9233080 47.9518183,7.9237309 47.9513644,7.9247428 47.9510404,7.9242948 47.9505135,7.9241378 47.9501855,7.9243628 47.9501135,7.9241758 47.9495256,7.9241658 47.9492396,7.9243538 47.9485757,7.9243528 47.9479727,7.9242498 47.9476948,7.9242638 47.9472328,7.9245838 47.9464659,7.9247548 47.9458180,7.9249168 47.9450241,7.9249198 47.9447537,7.9249218 47.9445741,7.9246508 47.9437922,7.9241849 47.9414765,7.9241979 47.9412445,7.9243439 47.9408395,7.9248698 47.9400916,7.9241689 47.9393097,7.9238361 47.9387906,7.9232305 47.9381958,7.9225744 47.9374236,7.9224871 47.9373271,7.9224213 47.9372447,7.9221218 47.9369554,7.9219941 47.9368352,7.9200155 47.9356741,7.9197145 47.9355871,7.9188106 47.9355221,7.9186177 47.9354301,7.9185127 47.9352852,7.9181897 47.9351822,7.9172649 47.9350792,7.9169239 47.9347862,7.9157981 47.9335493,7.9149402 47.9316695,7.9146442 47.9312766,7.9141103 47.9308376,7.9125955 47.9297618,7.9117996 47.9296438,7.9111567 47.9293498,7.9088571 47.9290488,7.9082221 47.9282209,7.9079873 47.9276439,7.9068764 47.9249133,7.9067394 47.9245543,7.9067004 47.9242534,7.9077792 47.9223806,7.9087521 47.9203628,7.9100939 47.9182760,7.9099790 47.9171202,7.9097630 47.9171462,7.9095044 47.9154484,7.9084115 47.9143185,7.9048773 47.9134895,7.9046091 47.9130757,7.9035342 47.9126238,7.9028028 47.9123252,7.9017541 47.9121457,7.9007443 47.9120117,7.9000910 47.9119195,7.8984616 47.9119437,7.8962914 47.9144205,7.8951845 47.9161412,7.8935482 47.9175869,7.8918464 47.9189646,7.8910251 47.9198335,7.8903192 47.9215580,7.8903440 47.9221229,7.8903817 47.9229800,7.8904092 47.9236050,7.8898481 47.9248138,7.8918516 47.9281159,7.8916996 47.9289688,7.8905677 47.9318359,7.8899800 47.9342811,7.8908233 47.9355259,7.8906855 47.9372784,7.8907380 47.9379534,7.8914278 47.9401186,7.8914028 47.9412875,7.8911145 47.9422516,7.8912281 47.9431970,7.8871226 47.9442591,7.8863914 47.9447653,7.8860016 47.9450352,7.8852142 47.9458595,7.8846551 47.9469558,7.8822398 47.9479550,7.8818387 47.9487496,7.8815356 47.9499232,7.8813257 47.9507359,7.8813440 47.9515104,7.8807252 47.9522689,7.8804409 47.9530306))) @@ -37,8 +37,8 @@ Herdern MULTIPOLYGON(((7.8481961 48.0054432,7.8484049 48.0056950,7.8505071 48.00 Zähringen MULTIPOLYGON(((7.8525637 48.0210291,7.8545434 48.0225065,7.8564503 48.0238959,7.8565660 48.0248821,7.8567301 48.0254477,7.8569568 48.0259464,7.8571591 48.0263390,7.8574069 48.0267434,7.8584589 48.0283286,7.8598092 48.0304384,7.8600303 48.0308120,7.8601864 48.0310766,7.8605384 48.0317543,7.8607151 48.0321708,7.8608532 48.0326153,7.8609989 48.0331279,7.8610910 48.0336570,7.8611412 48.0343918,7.8610932 48.0350771,7.8611490 48.0350899,7.8612990 48.0351243,7.8616627 48.0352117,7.8624568 48.0352211,7.8633473 48.0351396,7.8635089 48.0351258,7.8636464 48.0351095,7.8637746 48.0350886,7.8638784 48.0350678,7.8639021 48.0350664,7.8639722 48.0350510,7.8643686 48.0349611,7.8647131 48.0348773,7.8651536 48.0347362,7.8656567 48.0345486,7.8662248 48.0343754,7.8663782 48.0343237,7.8666812 48.0341983,7.8668931 48.0341091,7.8669865 48.0340708,7.8672132 48.0339173,7.8673625 48.0337213,7.8675052 48.0336134,7.8676982 48.0334572,7.8679367 48.0332640,7.8680783 48.0332006,7.8681658 48.0331614,7.8684240 48.0330476,7.8690277 48.0327823,7.8694227 48.0326088,7.8697138 48.0324786,7.8700846 48.0322653,7.8703041 48.0321310,7.8705670 48.0317831,7.8708688 48.0311803,7.8708982 48.0311216,7.8707125 48.0310967,7.8706252 48.0310636,7.8708083 48.0308062,7.8709212 48.0306358,7.8710327 48.0298805,7.8718007 48.0297255,7.8720823 48.0297443,7.8722435 48.0298096,7.8725696 48.0298141,7.8728829 48.0296136,7.8730607 48.0295859,7.8732828 48.0300315,7.8734419 48.0301957,7.8737845 48.0304303,7.8740199 48.0305923,7.8747307 48.0309932,7.8754690 48.0313410,7.8757590 48.0311802,7.8761341 48.0306100,7.8767043 48.0297776,7.8777879 48.0284447,7.8780699 48.0279597,7.8784449 48.0270028,7.8785209 48.0268648,7.8796037 48.0260449,7.8801916 48.0254800,7.8807446 48.0249500,7.8811765 48.0240152,7.8812568 48.0239113,7.8813255 48.0237412,7.8814051 48.0236203,7.8815334 48.0234542,7.8816248 48.0233550,7.8816847 48.0232408,7.8818131 48.0230554,7.8820604 48.0227417,7.8822507 48.0225003,7.8823550 48.0224685,7.8828751 48.0224245,7.8831279 48.0224192,7.8836678 48.0221917,7.8839095 48.0222447,7.8842893 48.0223948,7.8844839 48.0226220,7.8846139 48.0226988,7.8848134 48.0228166,7.8849856 48.0229183,7.8859902 48.0226601,7.8863575 48.0221936,7.8866605 48.0216511,7.8867752 48.0215598,7.8874631 48.0210951,7.8880158 48.0208098,7.8887906 48.0203146,7.8896365 48.0201286,7.8902507 48.0197499,7.8909172 48.0192850,7.8923590 48.0192847,7.8930262 48.0192980,7.8934076 48.0192790,7.8939376 48.0190653,7.8942547 48.0188571,7.8949466 48.0184918,7.8955572 48.0181448,7.8963597 48.0175458,7.8970521 48.0168950,7.8971693 48.0167100,7.8978254 48.0157464,7.8979965 48.0155423,7.8978323 48.0154771,7.8975741 48.0153737,7.8970579 48.0154430,7.8964478 48.0154904,7.8957055 48.0157981,7.8950516 48.0162710,7.8946787 48.0164470,7.8941197 48.0165840,7.8930419 48.0166570,7.8921110 48.0168820,7.8895464 48.0165270,7.8894026 48.0164963,7.8890244 48.0165736,7.8885059 48.0168507,7.8884610 48.0172257,7.8882603 48.0173431,7.8877746 48.0176339,7.8872687 48.0180338,7.8865608 48.0184188,7.8863828 48.0185678,7.8862048 48.0188767,7.8863508 48.0193077,7.8863218 48.0195937,7.8859478 48.0200176,7.8852299 48.0205825,7.8848380 48.0207695,7.8844748 48.0212708,7.8843701 48.0213905,7.8830902 48.0207305,7.8813265 48.0199946,7.8804916 48.0195447,7.8798738 48.0189385,7.8791538 48.0193427,7.8790608 48.0195297,7.8786129 48.0197656,7.8784629 48.0199756,7.8782219 48.0200136,7.8780349 48.0201126,7.8777930 48.0201626,7.8778110 48.0202996,7.8774010 48.0205745,7.8770461 48.0206085,7.8767111 48.0208075,7.8760592 48.0210555,7.8756503 48.0210935,7.8744196 48.0203838,7.8738216 48.0203007,7.8731184 48.0198714,7.8728516 48.0196162,7.8725312 48.0190924,7.8723612 48.0175079,7.8723570 48.0171823,7.8724520 48.0166434,7.8681674 48.0165662,7.8659494 48.0168533,7.8658834 48.0167956,7.8657272 48.0168336,7.8656203 48.0168628,7.8652614 48.0169646,7.8652236 48.0169085,7.8651202 48.0166414,7.8649806 48.0161827,7.8645577 48.0162295,7.8640174 48.0163011,7.8636411 48.0163152,7.8634100 48.0163239,7.8632410 48.0163638,7.8630434 48.0164849,7.8627634 48.0163838,7.8626483 48.0163573,7.8624397 48.0163603,7.8618774 48.0164253,7.8616845 48.0164476,7.8615413 48.0164642,7.8602863 48.0165964,7.8600738 48.0166149,7.8599434 48.0166322,7.8593579 48.0166698,7.8592454 48.0166380,7.8591311 48.0166802,7.8589597 48.0167414,7.8580194 48.0157580,7.8577265 48.0154441,7.8575094 48.0155274,7.8574787 48.0155444,7.8573541 48.0156627,7.8563930 48.0159737,7.8557447 48.0161835,7.8559801 48.0167353,7.8562971 48.0175788,7.8564235 48.0178620,7.8569560 48.0190388,7.8569964 48.0191456,7.8551464 48.0195176,7.8529178 48.0208343,7.8527133 48.0209480,7.8525637 48.0210291))) Ebnet MULTIPOLYGON(((7.8932853 47.9897267,7.8943097 47.9900041,7.8946295 47.9902312,7.8971076 47.9903704,7.8991322 47.9909581,7.9019724 47.9909583,7.9039164 47.9919833,7.9061404 47.9935470,7.9078765 47.9951084,7.9085278 47.9963516,7.9056108 47.9977895,7.9054369 47.9990384,7.9053973 47.9999327,7.9062737 48.0015187,7.9048000 48.0038941,7.9047097 48.0046331,7.9038139 48.0049063,7.9031585 48.0055414,7.9021042 48.0069210,7.9018505 48.0070022,7.9010452 48.0083658,7.9012199 48.0088824,7.9012724 48.0092247,7.9016968 48.0100052,7.9021029 48.0104517,7.9031557 48.0111856,7.9035071 48.0115301,7.9036310 48.0119181,7.9040195 48.0123736,7.9049506 48.0128079,7.9058128 48.0128301,7.9062381 48.0129269,7.9065139 48.0129593,7.9072153 48.0132462,7.9077651 48.0131860,7.9082110 48.0131405,7.9094675 48.0128951,7.9102049 48.0129012,7.9103812 48.0129671,7.9107275 48.0130194,7.9114833 48.0127315,7.9118687 48.0125034,7.9123689 48.0122419,7.9129417 48.0118684,7.9141979 48.0121314,7.9142559 48.0120716,7.9146795 48.0123959,7.9149648 48.0126984,7.9156298 48.0129605,7.9165997 48.0136884,7.9166953 48.0137294,7.9177289 48.0140487,7.9191179 48.0145534,7.9200029 48.0149592,7.9218818 48.0156302,7.9224028 48.0152983,7.9229804 48.0150843,7.9234433 48.0147568,7.9238793 48.0143433,7.9245452 48.0140620,7.9254626 48.0138989,7.9262681 48.0138124,7.9266402 48.0131285,7.9269862 48.0128385,7.9273341 48.0124225,7.9277892 48.0111624,7.9282009 48.0108503,7.9283880 48.0088179,7.9286270 48.0085470,7.9286290 48.0082340,7.9278471 48.0059753,7.9280271 48.0048504,7.9281511 48.0026036,7.9277671 48.0019967,7.9272102 48.0013448,7.9271692 48.0011008,7.9272802 48.0006659,7.9275212 48.0001929,7.9279131 47.9997160,7.9280231 47.9994140,7.9279981 47.9986481,7.9293269 47.9975412,7.9291169 47.9971902,7.9290590 47.9967133,7.9296679 47.9962254,7.9301968 47.9953895,7.9302008 47.9950695,7.9299498 47.9944476,7.9299608 47.9936356,7.9305943 47.9924659,7.9306688 47.9922658,7.9305216 47.9918892,7.9305468 47.9916859,7.9308444 47.9911327,7.9308031 47.9909891,7.9303904 47.9905671,7.9303046 47.9901009,7.9301891 47.9898486,7.9292846 47.9886151,7.9276558 47.9892333,7.9275290 47.9886749,7.9271566 47.9881842,7.9268695 47.9877378,7.9268514 47.9876895,7.9268748 47.9876669,7.9268856 47.9876094,7.9268188 47.9875079,7.9266880 47.9873363,7.9266852 47.9872641,7.9266788 47.9872474,7.9268284 47.9870992,7.9274964 47.9866525,7.9278276 47.9863837,7.9280604 47.9861354,7.9283062 47.9858339,7.9277143 47.9857000,7.9276399 47.9857340,7.9251883 47.9855278,7.9252308 47.9852655,7.9252361 47.9851543,7.9253174 47.9830222,7.9252640 47.9825114,7.9252121 47.9819305,7.9252174 47.9816550,7.9250688 47.9811734,7.9248921 47.9808717,7.9244099 47.9808371,7.9159867 47.9795350,7.9149476 47.9794137,7.9139845 47.9794096,7.9137352 47.9796045,7.9126261 47.9798325,7.9113835 47.9801812,7.9058093 47.9821518,7.8987467 47.9864471,7.8983959 47.9866725,7.8982915 47.9867375,7.8978673 47.9869325,7.8977784 47.9869892,7.8977142 47.9870465,7.8976770 47.9870877,7.8976303 47.9871292,7.8975746 47.9871866,7.8974619 47.9871708,7.8973907 47.9872866,7.8964997 47.9878691,7.8932853 47.9897267))) Oberau MULTIPOLYGON(((7.8534164 47.9918072,7.8534422 47.9918963,7.8535167 47.9920447,7.8538476 47.9924057,7.8539046 47.9924410,7.8540129 47.9925080,7.8542647 47.9924285,7.8542906 47.9924200,7.8543592 47.9923924,7.8546602 47.9922712,7.8547784 47.9923319,7.8551839 47.9925401,7.8552623 47.9924933,7.8557987 47.9926357,7.8570363 47.9931742,7.8580169 47.9932316,7.8585605 47.9933238,7.8587049 47.9935998,7.8586024 47.9938147,7.8590221 47.9941557,7.8591817 47.9942059,7.8597251 47.9941191,7.8599515 47.9941772,7.8602460 47.9943214,7.8602671 47.9945066,7.8603974 47.9945431,7.8606950 47.9945234,7.8612673 47.9947727,7.8625554 47.9951881,7.8655214 47.9956033,7.8664613 47.9962181,7.8667164 47.9968052,7.8675069 47.9974201,7.8692170 47.9973470,7.8711393 47.9967589,7.8723184 47.9964557,7.8741644 47.9962939,7.8749322 47.9964138,7.8753515 47.9965262,7.8756806 47.9967108,7.8757984 47.9967852,7.8771748 47.9972474,7.8773788 47.9972673,7.8779413 47.9945244,7.8776579 47.9936897,7.8777356 47.9931958,7.8783551 47.9928425,7.8786365 47.9926455,7.8789581 47.9925973,7.8797380 47.9918936,7.8798155 47.9917921,7.8794742 47.9917544,7.8779977 47.9911622,7.8778812 47.9909999,7.8772046 47.9908441,7.8766110 47.9908060,7.8752326 47.9908008,7.8745511 47.9908046,7.8747565 47.9898894,7.8746391 47.9895590,7.8740528 47.9880460,7.8740314 47.9878932,7.8739392 47.9879011,7.8736711 47.9879240,7.8729672 47.9880101,7.8728009 47.9880297,7.8726672 47.9880554,7.8724520 47.9880968,7.8722026 47.9881381,7.8717444 47.9882078,7.8716155 47.9882393,7.8700566 47.9884519,7.8687444 47.9885835,7.8684792 47.9886059,7.8681539 47.9886112,7.8676496 47.9885993,7.8668203 47.9885568,7.8655297 47.9884891,7.8653166 47.9884668,7.8651079 47.9884350,7.8644587 47.9883431,7.8642468 47.9883145,7.8640645 47.9883071,7.8638898 47.9883017,7.8636719 47.9883129,7.8634894 47.9883388,7.8632757 47.9883899,7.8629082 47.9884862,7.8626411 47.9885306,7.8618529 47.9886714,7.8614073 47.9887470,7.8606878 47.9888364,7.8603727 47.9888824,7.8599485 47.9889707,7.8596626 47.9890333,7.8591845 47.9891482,7.8579986 47.9894717,7.8576935 47.9895807,7.8574112 47.9897353,7.8570760 47.9899360,7.8568190 47.9900616,7.8566000 47.9901376,7.8560828 47.9902679,7.8551601 47.9904967,7.8548080 47.9905733,7.8547029 47.9906036,7.8543889 47.9906611,7.8540603 47.9908971,7.8540125 47.9909496,7.8540111 47.9909511,7.8538650 47.9911094,7.8534912 47.9915564,7.8534364 47.9916464,7.8534201 47.9917325,7.8534164 47.9918072))) -Sankt Georgen Süd MULTIPOLYGON(((7.7816451 47.9703939,7.7819826 47.9706695,7.7821231 47.9707843,7.7831953 47.9715657,7.7839752 47.9720322,7.7845332 47.9723209,7.7855548 47.9727539,7.7865062 47.9730933,7.7874378 47.9733676,7.7886643 47.9736571,7.7902250 47.9739345,7.7922077 47.9742103,7.7935715 47.9743693,7.7973833 47.9748136,7.8019581 47.9753653,7.8028421 47.9755205,7.8043699 47.9756985,7.8131762 47.9767041,7.8164091 47.9771168,7.8162398 47.9763992,7.8163872 47.9763599,7.8167310 47.9762228,7.8174084 47.9759909,7.8177380 47.9758758,7.8180716 47.9757415,7.8182293 47.9756539,7.8183478 47.9755279,7.8184460 47.9753832,7.8186425 47.9751924,7.8186818 47.9751332,7.8189569 47.9749951,7.8192222 47.9748833,7.8194384 47.9747649,7.8196349 47.9746596,7.8197331 47.9745807,7.8199448 47.9744699,7.8201648 47.9743592,7.8202504 47.9743382,7.8206099 47.9743112,7.8208755 47.9742592,7.8212528 47.9741200,7.8216753 47.9740213,7.8220192 47.9739293,7.8223827 47.9737714,7.8227659 47.9736661,7.8230999 47.9736004,7.8234438 47.9735214,7.8237091 47.9734688,7.8240726 47.9733767,7.8243281 47.9732846,7.8246720 47.9731070,7.8247968 47.9730695,7.8253557 47.9727983,7.8254674 47.9727822,7.8253195 47.9722158,7.8250411 47.9723001,7.8249579 47.9723422,7.8249175 47.9724145,7.8248028 47.9724611,7.8243419 47.9725123,7.8236072 47.9727220,7.8233026 47.9727033,7.8231273 47.9727468,7.8224918 47.9723653,7.8225528 47.9722439,7.8225020 47.9722237,7.8223418 47.9721599,7.8218779 47.9718791,7.8212869 47.9715103,7.8210185 47.9712934,7.8205125 47.9708464,7.8202125 47.9705953,7.8200736 47.9704840,7.8186950 47.9701837,7.8179364 47.9686022,7.8165842 47.9676604,7.8133954 47.9677254,7.8130712 47.9677293,7.8120513 47.9671344,7.8115034 47.9669054,7.8105972 47.9664905,7.8092057 47.9659785,7.8090438 47.9659107,7.8076340 47.9657005,7.8073831 47.9655631,7.8070286 47.9654027,7.8067577 47.9652797,7.8065905 47.9650953,7.8062526 47.9647654,7.8061335 47.9646253,7.8052680 47.9644568,7.8044804 47.9643607,7.8021357 47.9640765,7.8011659 47.9643497,7.8004371 47.9645513,7.7992973 47.9652724,7.7975770 47.9656425,7.7956299 47.9662675,7.7921661 47.9683632,7.7906040 47.9688368,7.7887501 47.9688177,7.7880604 47.9690069,7.7877411 47.9690862,7.7874126 47.9691066,7.7872847 47.9691639,7.7870520 47.9692643,7.7869726 47.9692707,7.7868028 47.9692817,7.7867658 47.9692657,7.7866847 47.9692391,7.7865040 47.9691762,7.7864630 47.9691634,7.7859688 47.9695141,7.7856967 47.9693130,7.7856583 47.9693374,7.7851711 47.9696456,7.7849833 47.9694416,7.7849270 47.9694784,7.7844377 47.9698095,7.7844403 47.9698580,7.7844077 47.9698912,7.7842856 47.9699493,7.7839198 47.9697414,7.7835857 47.9699300,7.7834811 47.9698583,7.7834206 47.9698885,7.7829049 47.9701416,7.7827848 47.9700540,7.7821013 47.9704311,7.7820000 47.9704227,7.7819833 47.9704219,7.7816451 47.9703939))) -Sankt Georgen Nord MULTIPOLYGON(((7.7551190 47.9788009,7.7567772 47.9805245,7.7568928 47.9806556,7.7572963 47.9813335,7.7581116 47.9827985,7.7585084 47.9843152,7.7620449 47.9847235,7.7633432 47.9850523,7.7635981 47.9865557,7.7638673 47.9875903,7.7637042 47.9878028,7.7629011 47.9889661,7.7627515 47.9893826,7.7629409 47.9897316,7.7631821 47.9901646,7.7637814 47.9911633,7.7632235 47.9914735,7.7627429 47.9917607,7.7623223 47.9919617,7.7621421 47.9921800,7.7616499 47.9926860,7.7626465 47.9930340,7.7625686 47.9943143,7.7622682 47.9951586,7.7620757 47.9954260,7.7616541 47.9958901,7.7612256 47.9962143,7.7610580 47.9966979,7.7609985 47.9969530,7.7607218 47.9977874,7.7603990 47.9985202,7.7606271 47.9993851,7.7607426 47.9995000,7.7608667 47.9995223,7.7626468 47.9994825,7.7638116 47.9992987,7.7640176 47.9992413,7.7641721 47.9991838,7.7643352 47.9991034,7.7644600 47.9990204,7.7657943 47.9981328,7.7659579 47.9980278,7.7664381 47.9977193,7.7666210 47.9976290,7.7669015 47.9975355,7.7672620 47.9974091,7.7677341 47.9972828,7.7686096 47.9970760,7.7688599 47.9970275,7.7704987 47.9963227,7.7712973 47.9960089,7.7724209 47.9955850,7.7736650 47.9951232,7.7744822 47.9949548,7.7750383 47.9948532,7.7753644 47.9948245,7.7759223 47.9948589,7.7779823 47.9951117,7.7789263 47.9951619,7.7790332 47.9951706,7.7814819 47.9949967,7.7876431 47.9950424,7.7883417 47.9950534,7.7884957 47.9950612,7.7885597 47.9952148,7.7887788 47.9952936,7.7890702 47.9952174,7.7891510 47.9951075,7.7938579 47.9951377,7.7976965 47.9951822,7.7978298 47.9952243,7.7986492 47.9952733,7.7989039 47.9953978,7.7990603 47.9953642,7.7992337 47.9953328,7.7993575 47.9953208,7.8002106 47.9952133,7.8002753 47.9951925,7.8003268 47.9951623,7.8003726 47.9951422,7.8004761 47.9951147,7.8002643 47.9948134,7.8001747 47.9947108,7.8000531 47.9945511,7.7992199 47.9934909,7.7985828 47.9926424,7.7981041 47.9923132,7.7977241 47.9913312,7.7969689 47.9889703,7.7967206 47.9880286,7.7961372 47.9856943,7.7997282 47.9855461,7.8004040 47.9854939,7.8013395 47.9853848,7.8030304 47.9851320,7.8034856 47.9850479,7.8036948 47.9850048,7.8043769 47.9848624,7.8078420 47.9840496,7.8083019 47.9839422,7.8092526 47.9837559,7.8101120 47.9836059,7.8110157 47.9835128,7.8118455 47.9834511,7.8128478 47.9834914,7.8138325 47.9835278,7.8159338 47.9837783,7.8187149 47.9841598,7.8193523 47.9842472,7.8195290 47.9839123,7.8196484 47.9836289,7.8197524 47.9832640,7.8198081 47.9829587,7.8199375 47.9822733,7.8202485 47.9813794,7.8207001 47.9806742,7.8216185 47.9797143,7.8227171 47.9788414,7.8236506 47.9783205,7.8232282 47.9781804,7.8222874 47.9779510,7.8218164 47.9778508,7.8215326 47.9778054,7.8203575 47.9776000,7.8188708 47.9774137,7.8184260 47.9773586,7.8164091 47.9771168,7.8131762 47.9767041,7.8043699 47.9756985,7.8028421 47.9755205,7.8019581 47.9753653,7.7973833 47.9748136,7.7935715 47.9743693,7.7922077 47.9742103,7.7902250 47.9739345,7.7886643 47.9736571,7.7874378 47.9733676,7.7865062 47.9730933,7.7855548 47.9727539,7.7845332 47.9723209,7.7839752 47.9720322,7.7831953 47.9715657,7.7821231 47.9707843,7.7819826 47.9706695,7.7816451 47.9703939,7.7813068 47.9703688,7.7812617 47.9703667,7.7811814 47.9703559,7.7811336 47.9703508,7.7806256 47.9705629,7.7806106 47.9705726,7.7803875 47.9706633,7.7803276 47.9706855,7.7802949 47.9707120,7.7802604 47.9707280,7.7799635 47.9709360,7.7800547 47.9709855,7.7783070 47.9720288,7.7782493 47.9721202,7.7782786 47.9722306,7.7783068 47.9723369,7.7769135 47.9727199,7.7764101 47.9728453,7.7760990 47.9729228,7.7759130 47.9729828,7.7758840 47.9729880,7.7759793 47.9732369,7.7761470 47.9736937,7.7760786 47.9737168,7.7750532 47.9740641,7.7743057 47.9743172,7.7722987 47.9749969,7.7726552 47.9754488,7.7725879 47.9754685,7.7725058 47.9754868,7.7723968 47.9755147,7.7723714 47.9755251,7.7722926 47.9755485,7.7722620 47.9755620,7.7722478 47.9755683,7.7721618 47.9756064,7.7720782 47.9756607,7.7718351 47.9758365,7.7710539 47.9765796,7.7709999 47.9766301,7.7699126 47.9776210,7.7680771 47.9784134,7.7680036 47.9784432,7.7679460 47.9784665,7.7679391 47.9784619,7.7673258 47.9780763,7.7657209 47.9770208,7.7633721 47.9768122,7.7624212 47.9770412,7.7600885 47.9776511,7.7576469 47.9783760,7.7563940 47.9787160,7.7559641 47.9788150,7.7551190 47.9788009))) +Sankt-Georgen-Süd MULTIPOLYGON(((7.7816451 47.9703939,7.7819826 47.9706695,7.7821231 47.9707843,7.7831953 47.9715657,7.7839752 47.9720322,7.7845332 47.9723209,7.7855548 47.9727539,7.7865062 47.9730933,7.7874378 47.9733676,7.7886643 47.9736571,7.7902250 47.9739345,7.7922077 47.9742103,7.7935715 47.9743693,7.7973833 47.9748136,7.8019581 47.9753653,7.8028421 47.9755205,7.8043699 47.9756985,7.8131762 47.9767041,7.8164091 47.9771168,7.8162398 47.9763992,7.8163872 47.9763599,7.8167310 47.9762228,7.8174084 47.9759909,7.8177380 47.9758758,7.8180716 47.9757415,7.8182293 47.9756539,7.8183478 47.9755279,7.8184460 47.9753832,7.8186425 47.9751924,7.8186818 47.9751332,7.8189569 47.9749951,7.8192222 47.9748833,7.8194384 47.9747649,7.8196349 47.9746596,7.8197331 47.9745807,7.8199448 47.9744699,7.8201648 47.9743592,7.8202504 47.9743382,7.8206099 47.9743112,7.8208755 47.9742592,7.8212528 47.9741200,7.8216753 47.9740213,7.8220192 47.9739293,7.8223827 47.9737714,7.8227659 47.9736661,7.8230999 47.9736004,7.8234438 47.9735214,7.8237091 47.9734688,7.8240726 47.9733767,7.8243281 47.9732846,7.8246720 47.9731070,7.8247968 47.9730695,7.8253557 47.9727983,7.8254674 47.9727822,7.8253195 47.9722158,7.8250411 47.9723001,7.8249579 47.9723422,7.8249175 47.9724145,7.8248028 47.9724611,7.8243419 47.9725123,7.8236072 47.9727220,7.8233026 47.9727033,7.8231273 47.9727468,7.8224918 47.9723653,7.8225528 47.9722439,7.8225020 47.9722237,7.8223418 47.9721599,7.8218779 47.9718791,7.8212869 47.9715103,7.8210185 47.9712934,7.8205125 47.9708464,7.8202125 47.9705953,7.8200736 47.9704840,7.8186950 47.9701837,7.8179364 47.9686022,7.8165842 47.9676604,7.8133954 47.9677254,7.8130712 47.9677293,7.8120513 47.9671344,7.8115034 47.9669054,7.8105972 47.9664905,7.8092057 47.9659785,7.8090438 47.9659107,7.8076340 47.9657005,7.8073831 47.9655631,7.8070286 47.9654027,7.8067577 47.9652797,7.8065905 47.9650953,7.8062526 47.9647654,7.8061335 47.9646253,7.8052680 47.9644568,7.8044804 47.9643607,7.8021357 47.9640765,7.8011659 47.9643497,7.8004371 47.9645513,7.7992973 47.9652724,7.7975770 47.9656425,7.7956299 47.9662675,7.7921661 47.9683632,7.7906040 47.9688368,7.7887501 47.9688177,7.7880604 47.9690069,7.7877411 47.9690862,7.7874126 47.9691066,7.7872847 47.9691639,7.7870520 47.9692643,7.7869726 47.9692707,7.7868028 47.9692817,7.7867658 47.9692657,7.7866847 47.9692391,7.7865040 47.9691762,7.7864630 47.9691634,7.7859688 47.9695141,7.7856967 47.9693130,7.7856583 47.9693374,7.7851711 47.9696456,7.7849833 47.9694416,7.7849270 47.9694784,7.7844377 47.9698095,7.7844403 47.9698580,7.7844077 47.9698912,7.7842856 47.9699493,7.7839198 47.9697414,7.7835857 47.9699300,7.7834811 47.9698583,7.7834206 47.9698885,7.7829049 47.9701416,7.7827848 47.9700540,7.7821013 47.9704311,7.7820000 47.9704227,7.7819833 47.9704219,7.7816451 47.9703939))) +Sankt-Georgen-Nord MULTIPOLYGON(((7.7551190 47.9788009,7.7567772 47.9805245,7.7568928 47.9806556,7.7572963 47.9813335,7.7581116 47.9827985,7.7585084 47.9843152,7.7620449 47.9847235,7.7633432 47.9850523,7.7635981 47.9865557,7.7638673 47.9875903,7.7637042 47.9878028,7.7629011 47.9889661,7.7627515 47.9893826,7.7629409 47.9897316,7.7631821 47.9901646,7.7637814 47.9911633,7.7632235 47.9914735,7.7627429 47.9917607,7.7623223 47.9919617,7.7621421 47.9921800,7.7616499 47.9926860,7.7626465 47.9930340,7.7625686 47.9943143,7.7622682 47.9951586,7.7620757 47.9954260,7.7616541 47.9958901,7.7612256 47.9962143,7.7610580 47.9966979,7.7609985 47.9969530,7.7607218 47.9977874,7.7603990 47.9985202,7.7606271 47.9993851,7.7607426 47.9995000,7.7608667 47.9995223,7.7626468 47.9994825,7.7638116 47.9992987,7.7640176 47.9992413,7.7641721 47.9991838,7.7643352 47.9991034,7.7644600 47.9990204,7.7657943 47.9981328,7.7659579 47.9980278,7.7664381 47.9977193,7.7666210 47.9976290,7.7669015 47.9975355,7.7672620 47.9974091,7.7677341 47.9972828,7.7686096 47.9970760,7.7688599 47.9970275,7.7704987 47.9963227,7.7712973 47.9960089,7.7724209 47.9955850,7.7736650 47.9951232,7.7744822 47.9949548,7.7750383 47.9948532,7.7753644 47.9948245,7.7759223 47.9948589,7.7779823 47.9951117,7.7789263 47.9951619,7.7790332 47.9951706,7.7814819 47.9949967,7.7876431 47.9950424,7.7883417 47.9950534,7.7884957 47.9950612,7.7885597 47.9952148,7.7887788 47.9952936,7.7890702 47.9952174,7.7891510 47.9951075,7.7938579 47.9951377,7.7976965 47.9951822,7.7978298 47.9952243,7.7986492 47.9952733,7.7989039 47.9953978,7.7990603 47.9953642,7.7992337 47.9953328,7.7993575 47.9953208,7.8002106 47.9952133,7.8002753 47.9951925,7.8003268 47.9951623,7.8003726 47.9951422,7.8004761 47.9951147,7.8002643 47.9948134,7.8001747 47.9947108,7.8000531 47.9945511,7.7992199 47.9934909,7.7985828 47.9926424,7.7981041 47.9923132,7.7977241 47.9913312,7.7969689 47.9889703,7.7967206 47.9880286,7.7961372 47.9856943,7.7997282 47.9855461,7.8004040 47.9854939,7.8013395 47.9853848,7.8030304 47.9851320,7.8034856 47.9850479,7.8036948 47.9850048,7.8043769 47.9848624,7.8078420 47.9840496,7.8083019 47.9839422,7.8092526 47.9837559,7.8101120 47.9836059,7.8110157 47.9835128,7.8118455 47.9834511,7.8128478 47.9834914,7.8138325 47.9835278,7.8159338 47.9837783,7.8187149 47.9841598,7.8193523 47.9842472,7.8195290 47.9839123,7.8196484 47.9836289,7.8197524 47.9832640,7.8198081 47.9829587,7.8199375 47.9822733,7.8202485 47.9813794,7.8207001 47.9806742,7.8216185 47.9797143,7.8227171 47.9788414,7.8236506 47.9783205,7.8232282 47.9781804,7.8222874 47.9779510,7.8218164 47.9778508,7.8215326 47.9778054,7.8203575 47.9776000,7.8188708 47.9774137,7.8184260 47.9773586,7.8164091 47.9771168,7.8131762 47.9767041,7.8043699 47.9756985,7.8028421 47.9755205,7.8019581 47.9753653,7.7973833 47.9748136,7.7935715 47.9743693,7.7922077 47.9742103,7.7902250 47.9739345,7.7886643 47.9736571,7.7874378 47.9733676,7.7865062 47.9730933,7.7855548 47.9727539,7.7845332 47.9723209,7.7839752 47.9720322,7.7831953 47.9715657,7.7821231 47.9707843,7.7819826 47.9706695,7.7816451 47.9703939,7.7813068 47.9703688,7.7812617 47.9703667,7.7811814 47.9703559,7.7811336 47.9703508,7.7806256 47.9705629,7.7806106 47.9705726,7.7803875 47.9706633,7.7803276 47.9706855,7.7802949 47.9707120,7.7802604 47.9707280,7.7799635 47.9709360,7.7800547 47.9709855,7.7783070 47.9720288,7.7782493 47.9721202,7.7782786 47.9722306,7.7783068 47.9723369,7.7769135 47.9727199,7.7764101 47.9728453,7.7760990 47.9729228,7.7759130 47.9729828,7.7758840 47.9729880,7.7759793 47.9732369,7.7761470 47.9736937,7.7760786 47.9737168,7.7750532 47.9740641,7.7743057 47.9743172,7.7722987 47.9749969,7.7726552 47.9754488,7.7725879 47.9754685,7.7725058 47.9754868,7.7723968 47.9755147,7.7723714 47.9755251,7.7722926 47.9755485,7.7722620 47.9755620,7.7722478 47.9755683,7.7721618 47.9756064,7.7720782 47.9756607,7.7718351 47.9758365,7.7710539 47.9765796,7.7709999 47.9766301,7.7699126 47.9776210,7.7680771 47.9784134,7.7680036 47.9784432,7.7679460 47.9784665,7.7679391 47.9784619,7.7673258 47.9780763,7.7657209 47.9770208,7.7633721 47.9768122,7.7624212 47.9770412,7.7600885 47.9776511,7.7576469 47.9783760,7.7563940 47.9787160,7.7559641 47.9788150,7.7551190 47.9788009))) Haslach-Haid MULTIPOLYGON(((7.7961372 47.9856943,7.7967206 47.9880286,7.7969689 47.9889703,7.7977241 47.9913312,7.7981041 47.9923132,7.7985828 47.9926424,7.7992199 47.9934909,7.8000531 47.9945511,7.8001747 47.9947108,7.8002643 47.9948134,7.8004761 47.9951147,7.8007549 47.9950553,7.8010670 47.9949935,7.8015216 47.9949034,7.8022487 47.9947301,7.8034589 47.9944475,7.8034674 47.9944637,7.8037547 47.9943875,7.8038360 47.9943603,7.8040138 47.9943046,7.8042631 47.9942215,7.8043873 47.9941812,7.8045345 47.9941278,7.8050724 47.9939226,7.8052913 47.9938598,7.8057734 47.9937249,7.8062903 47.9935939,7.8067416 47.9934908,7.8072294 47.9933909,7.8076470 47.9933189,7.8086357 47.9931774,7.8090056 47.9930970,7.8094104 47.9930150,7.8094949 47.9929991,7.8101974 47.9928545,7.8103594 47.9928443,7.8105158 47.9928194,7.8109358 47.9927284,7.8113990 47.9925945,7.8123141 47.9923322,7.8128344 47.9921833,7.8129415 47.9921524,7.8132138 47.9920730,7.8133082 47.9920421,7.8074106 47.9876686,7.8036948 47.9850048,7.8034856 47.9850479,7.8030304 47.9851320,7.8013395 47.9853848,7.8004040 47.9854939,7.7997282 47.9855461,7.7961372 47.9856943))) Haslach-Gartenstadt MULTIPOLYGON(((7.8036948 47.9850048,7.8074106 47.9876686,7.8133082 47.9920421,7.8134042 47.9920121,7.8145979 47.9916763,7.8150730 47.9915549,7.8153306 47.9915017,7.8154995 47.9914563,7.8155379 47.9914790,7.8158442 47.9913078,7.8160362 47.9912277,7.8165829 47.9910922,7.8180508 47.9908052,7.8191769 47.9906045,7.8200458 47.9904512,7.8203546 47.9904112,7.8206596 47.9903574,7.8207207 47.9903467,7.8215147 47.9901221,7.8226746 47.9897771,7.8230887 47.9896213,7.8237598 47.9893725,7.8247374 47.9890017,7.8256958 47.9886244,7.8269604 47.9881450,7.8277116 47.9878488,7.8280226 47.9877265,7.8282259 47.9875937,7.8284299 47.9874366,7.8286460 47.9872348,7.8287974 47.9871174,7.8291258 47.9866683,7.8294411 47.9862155,7.8294708 47.9861595,7.8297076 47.9857507,7.8298960 47.9855261,7.8296379 47.9855273,7.8283177 47.9854930,7.8280385 47.9854890,7.8272149 47.9854836,7.8248500 47.9852588,7.8223781 47.9849542,7.8214642 47.9847540,7.8199107 47.9843231,7.8196589 47.9842856,7.8193523 47.9842472,7.8187149 47.9841598,7.8159338 47.9837783,7.8138325 47.9835278,7.8128478 47.9834914,7.8118455 47.9834511,7.8110157 47.9835128,7.8101120 47.9836059,7.8092526 47.9837559,7.8083019 47.9839422,7.8078420 47.9840496,7.8043769 47.9848624,7.8036948 47.9850048))) Haslach-Schildacker MULTIPOLYGON(((7.8193523 47.9842472,7.8196589 47.9842856,7.8199107 47.9843231,7.8214642 47.9847540,7.8223781 47.9849542,7.8248500 47.9852588,7.8272149 47.9854836,7.8280385 47.9854890,7.8283177 47.9854930,7.8296379 47.9855273,7.8298960 47.9855261,7.8302443 47.9854947,7.8299853 47.9846922,7.8299406 47.9841370,7.8299683 47.9833919,7.8301012 47.9828692,7.8301455 47.9827728,7.8296301 47.9820600,7.8293303 47.9817098,7.8289858 47.9813512,7.8288068 47.9812059,7.8279095 47.9804476,7.8267876 47.9797263,7.8257532 47.9791697,7.8256634 47.9791265,7.8249036 47.9787968,7.8242672 47.9785533,7.8238782 47.9783889,7.8236506 47.9783205,7.8227171 47.9788414,7.8216185 47.9797143,7.8207001 47.9806742,7.8202485 47.9813794,7.8199375 47.9822733,7.8198081 47.9829587,7.8197524 47.9832640,7.8196484 47.9836289,7.8195290 47.9839123,7.8193523 47.9842472))) diff --git a/src/spatialjoin/tests/datasets/multi-threaded b/src/spatialjoin/tests/datasets/multi-threaded new file mode 100644 index 0000000..7f976fd --- /dev/null +++ b/src/spatialjoin/tests/datasets/multi-threaded @@ -0,0 +1,41 @@ +a0 MULTIPOLYGON(((-0.01 0,-0.01 0.00003,-0.00997 0.00003,-0.00997 0,-0.01 0)),((0.01 0,0.01 0.00003,0.01003 0.00003,0.01003 0,0.01 0))) +b0 MULTIPOLYGON(((-0.009985 0,-0.009985 0.00003,-0.009955 0.00003,-0.009955 0,-0.009985 0)),((0.01003 0,0.01003 0.00003,0.01006 0.00003,0.01006 0,0.01003 0))) +a1 MULTIPOLYGON(((-0.00995 0.00005,-0.00995 0.00008,-0.00992 0.00008,-0.00992 0.00005,-0.00995 0.00005)),((0.01005 0.00005,0.01005 0.00008,0.01008 0.00008,0.01008 0.00005,0.01005 0.00005))) +b1 MULTIPOLYGON(((-0.009935 0.00005,-0.009935 0.00008,-0.009905 0.00008,-0.009905 0.00005,-0.009935 0.00005)),((0.01008 0.00005,0.01008 0.00008,0.01011 0.00008,0.01011 0.00005,0.01008 0.00005))) +a2 MULTIPOLYGON(((-0.0099 0.0001,-0.0099 0.00013,-0.00987 0.00013,-0.00987 0.0001,-0.0099 0.0001)),((0.0101 0.0001,0.0101 0.00013,0.01013 0.00013,0.01013 0.0001,0.0101 0.0001))) +b2 MULTIPOLYGON(((-0.009885 0.0001,-0.009885 0.00013,-0.009855 0.00013,-0.009855 0.0001,-0.009885 0.0001)),((0.01013 0.0001,0.01013 0.00013,0.01016 0.00013,0.01016 0.0001,0.01013 0.0001))) +a3 MULTIPOLYGON(((-0.00985 0.00015,-0.00985 0.00018,-0.00982 0.00018,-0.00982 0.00015,-0.00985 0.00015)),((0.01015 0.00015,0.01015 0.00018,0.01018 0.00018,0.01018 0.00015,0.01015 0.00015))) +b3 MULTIPOLYGON(((-0.009835 0.00015,-0.009835 0.00018,-0.009805 0.00018,-0.009805 0.00015,-0.009835 0.00015)),((0.01018 0.00015,0.01018 0.00018,0.01021 0.00018,0.01021 0.00015,0.01018 0.00015))) +a4 MULTIPOLYGON(((-0.0098 0.0002,-0.0098 0.00023,-0.00977 0.00023,-0.00977 0.0002,-0.0098 0.0002)),((0.0102 0.0002,0.0102 0.00023,0.01023 0.00023,0.01023 0.0002,0.0102 0.0002))) +b4 MULTIPOLYGON(((-0.009785 0.0002,-0.009785 0.00023,-0.009755 0.00023,-0.009755 0.0002,-0.009785 0.0002)),((0.01023 0.0002,0.01023 0.00023,0.01026 0.00023,0.01026 0.0002,0.01023 0.0002))) +a5 MULTIPOLYGON(((-0.00975 0.00025,-0.00975 0.00028,-0.00972 0.00028,-0.00972 0.00025,-0.00975 0.00025)),((0.01025 0.00025,0.01025 0.00028,0.01028 0.00028,0.01028 0.00025,0.01025 0.00025))) +b5 MULTIPOLYGON(((-0.009735 0.00025,-0.009735 0.00028,-0.009705 0.00028,-0.009705 0.00025,-0.009735 0.00025)),((0.01028 0.00025,0.01028 0.00028,0.01031 0.00028,0.01031 0.00025,0.01028 0.00025))) +a6 MULTIPOLYGON(((-0.0097 0.0003,-0.0097 0.00033,-0.00967 0.00033,-0.00967 0.0003,-0.0097 0.0003)),((0.0103 0.0003,0.0103 0.00033,0.01033 0.00033,0.01033 0.0003,0.0103 0.0003))) +b6 MULTIPOLYGON(((-0.009685 0.0003,-0.009685 0.00033,-0.009655 0.00033,-0.009655 0.0003,-0.009685 0.0003)),((0.01033 0.0003,0.01033 0.00033,0.01036 0.00033,0.01036 0.0003,0.01033 0.0003))) +a7 MULTIPOLYGON(((-0.00965 0.00035,-0.00965 0.00038,-0.00962 0.00038,-0.00962 0.00035,-0.00965 0.00035)),((0.01035 0.00035,0.01035 0.00038,0.01038 0.00038,0.01038 0.00035,0.01035 0.00035))) +b7 MULTIPOLYGON(((-0.009635 0.00035,-0.009635 0.00038,-0.009605 0.00038,-0.009605 0.00035,-0.009635 0.00035)),((0.01038 0.00035,0.01038 0.00038,0.01041 0.00038,0.01041 0.00035,0.01038 0.00035))) +a8 MULTIPOLYGON(((-0.0096 0.0004,-0.0096 0.00043,-0.00957 0.00043,-0.00957 0.0004,-0.0096 0.0004)),((0.0104 0.0004,0.0104 0.00043,0.01043 0.00043,0.01043 0.0004,0.0104 0.0004))) +b8 MULTIPOLYGON(((-0.009585 0.0004,-0.009585 0.00043,-0.009555 0.00043,-0.009555 0.0004,-0.009585 0.0004)),((0.01043 0.0004,0.01043 0.00043,0.01046 0.00043,0.01046 0.0004,0.01043 0.0004))) +a9 MULTIPOLYGON(((-0.00955 0.00045,-0.00955 0.00048,-0.00952 0.00048,-0.00952 0.00045,-0.00955 0.00045)),((0.01045 0.00045,0.01045 0.00048,0.01048 0.00048,0.01048 0.00045,0.01045 0.00045))) +b9 MULTIPOLYGON(((-0.009535 0.00045,-0.009535 0.00048,-0.009505 0.00048,-0.009505 0.00045,-0.009535 0.00045)),((0.01048 0.00045,0.01048 0.00048,0.01051 0.00048,0.01051 0.00045,0.01048 0.00045))) +a10 MULTIPOLYGON(((-0.0095 0.0005,-0.0095 0.00053,-0.00947 0.00053,-0.00947 0.0005,-0.0095 0.0005)),((0.0105 0.0005,0.0105 0.00053,0.01053 0.00053,0.01053 0.0005,0.0105 0.0005))) +b10 MULTIPOLYGON(((-0.009485 0.0005,-0.009485 0.00053,-0.009455 0.00053,-0.009455 0.0005,-0.009485 0.0005)),((0.01053 0.0005,0.01053 0.00053,0.01056 0.00053,0.01056 0.0005,0.01053 0.0005))) +a11 MULTIPOLYGON(((-0.00945 0.00055,-0.00945 0.00058,-0.00942 0.00058,-0.00942 0.00055,-0.00945 0.00055)),((0.01055 0.00055,0.01055 0.00058,0.01058 0.00058,0.01058 0.00055,0.01055 0.00055))) +b11 MULTIPOLYGON(((-0.009435 0.00055,-0.009435 0.00058,-0.009405 0.00058,-0.009405 0.00055,-0.009435 0.00055)),((0.01058 0.00055,0.01058 0.00058,0.01061 0.00058,0.01061 0.00055,0.01058 0.00055))) +a12 MULTIPOLYGON(((-0.0094 0.0006,-0.0094 0.00063,-0.00937 0.00063,-0.00937 0.0006,-0.0094 0.0006)),((0.0106 0.0006,0.0106 0.00063,0.01063 0.00063,0.01063 0.0006,0.0106 0.0006))) +b12 MULTIPOLYGON(((-0.009385 0.0006,-0.009385 0.00063,-0.009355 0.00063,-0.009355 0.0006,-0.009385 0.0006)),((0.01063 0.0006,0.01063 0.00063,0.01066 0.00063,0.01066 0.0006,0.01063 0.0006))) +a13 MULTIPOLYGON(((-0.00935 0.00065,-0.00935 0.00068,-0.00932 0.00068,-0.00932 0.00065,-0.00935 0.00065)),((0.01065 0.00065,0.01065 0.00068,0.01068 0.00068,0.01068 0.00065,0.01065 0.00065))) +b13 MULTIPOLYGON(((-0.009335 0.00065,-0.009335 0.00068,-0.009305 0.00068,-0.009305 0.00065,-0.009335 0.00065)),((0.01068 0.00065,0.01068 0.00068,0.01071 0.00068,0.01071 0.00065,0.01068 0.00065))) +a14 MULTIPOLYGON(((-0.0093 0.0007,-0.0093 0.00073,-0.00927 0.00073,-0.00927 0.0007,-0.0093 0.0007)),((0.0107 0.0007,0.0107 0.00073,0.01073 0.00073,0.01073 0.0007,0.0107 0.0007))) +b14 MULTIPOLYGON(((-0.009285 0.0007,-0.009285 0.00073,-0.009255 0.00073,-0.009255 0.0007,-0.009285 0.0007)),((0.01073 0.0007,0.01073 0.00073,0.01076 0.00073,0.01076 0.0007,0.01073 0.0007))) +a15 MULTIPOLYGON(((-0.00925 0.00075,-0.00925 0.00078,-0.00922 0.00078,-0.00922 0.00075,-0.00925 0.00075)),((0.01075 0.00075,0.01075 0.00078,0.01078 0.00078,0.01078 0.00075,0.01075 0.00075))) +b15 MULTIPOLYGON(((-0.009235 0.00075,-0.009235 0.00078,-0.009205 0.00078,-0.009205 0.00075,-0.009235 0.00075)),((0.01078 0.00075,0.01078 0.00078,0.01081 0.00078,0.01081 0.00075,0.01078 0.00075))) +a16 MULTIPOLYGON(((-0.0092 0.0008,-0.0092 0.00083,-0.00917 0.00083,-0.00917 0.0008,-0.0092 0.0008)),((0.0108 0.0008,0.0108 0.00083,0.01083 0.00083,0.01083 0.0008,0.0108 0.0008))) +b16 MULTIPOLYGON(((-0.009185 0.0008,-0.009185 0.00083,-0.009155 0.00083,-0.009155 0.0008,-0.009185 0.0008)),((0.01083 0.0008,0.01083 0.00083,0.01086 0.00083,0.01086 0.0008,0.01083 0.0008))) +a17 MULTIPOLYGON(((-0.00915 0.00085,-0.00915 0.00088,-0.00912 0.00088,-0.00912 0.00085,-0.00915 0.00085)),((0.01085 0.00085,0.01085 0.00088,0.01088 0.00088,0.01088 0.00085,0.01085 0.00085))) +b17 MULTIPOLYGON(((-0.009135 0.00085,-0.009135 0.00088,-0.009105 0.00088,-0.009105 0.00085,-0.009135 0.00085)),((0.01088 0.00085,0.01088 0.00088,0.01091 0.00088,0.01091 0.00085,0.01088 0.00085))) +a18 MULTIPOLYGON(((-0.0091 0.0009,-0.0091 0.00093,-0.00907 0.00093,-0.00907 0.0009,-0.0091 0.0009)),((0.0109 0.0009,0.0109 0.00093,0.01093 0.00093,0.01093 0.0009,0.0109 0.0009))) +b18 MULTIPOLYGON(((-0.009085 0.0009,-0.009085 0.00093,-0.009055 0.00093,-0.009055 0.0009,-0.009085 0.0009)),((0.01093 0.0009,0.01093 0.00093,0.01096 0.00093,0.01096 0.0009,0.01093 0.0009))) +a19 MULTIPOLYGON(((-0.00905 0.00095,-0.00905 0.00098,-0.00902 0.00098,-0.00902 0.00095,-0.00905 0.00095)),((0.01095 0.00095,0.01095 0.00098,0.01098 0.00098,0.01098 0.00095,0.01095 0.00095))) +b19 MULTIPOLYGON(((-0.009035 0.00095,-0.009035 0.00098,-0.009005 0.00098,-0.009005 0.00095,-0.009035 0.00095)),((0.01098 0.00095,0.01098 0.00098,0.01101 0.00098,0.01101 0.00095,0.01098 0.00095))) +filler MULTIPOLYGON(((-0.001 -0.001,-0.001 0.001,0.001 0.001,0.001 -0.001,-0.001 -0.001)),((-0.001001 -0.001001,-0.001001 0.001001,0.001001 0.001001,0.001001 -0.001001,-0.001001 -0.001001)),((-0.001002 -0.001002,-0.001002 0.001002,0.001002 0.001002,0.001002 -0.001002,-0.001002 -0.001002)),((-0.001003 -0.001003,-0.001003 0.001003,0.001003 0.001003,0.001003 -0.001003,-0.001003 -0.001003)),((-0.001004 -0.001004,-0.001004 0.001004,0.001004 0.001004,0.001004 -0.001004,-0.001004 -0.001004)),((-0.001005 -0.001005,-0.001005 0.001005,0.001005 0.001005,0.001005 -0.001005,-0.001005 -0.001005)),((-0.001006 -0.001006,-0.001006 0.001006,0.001006 0.001006,0.001006 -0.001006,-0.001006 -0.001006)),((-0.001007 -0.001007,-0.001007 0.001007,0.001007 0.001007,0.001007 -0.001007,-0.001007 -0.001007)),((-0.001008 -0.001008,-0.001008 0.001008,0.001008 0.001008,0.001008 -0.001008,-0.001008 -0.001008)),((-0.001009 -0.001009,-0.001009 0.001009,0.001009 0.001009,0.001009 -0.001009,-0.001009 -0.001009)),((-0.00101 -0.00101,-0.00101 0.00101,0.00101 0.00101,0.00101 -0.00101,-0.00101 -0.00101)),((-0.001011 -0.001011,-0.001011 0.001011,0.001011 0.001011,0.001011 -0.001011,-0.001011 -0.001011)),((-0.001012 -0.001012,-0.001012 0.001012,0.001012 0.001012,0.001012 -0.001012,-0.001012 -0.001012)),((-0.001013 -0.001013,-0.001013 0.001013,0.001013 0.001013,0.001013 -0.001013,-0.001013 -0.001013)),((-0.001014 -0.001014,-0.001014 0.001014,0.001014 0.001014,0.001014 -0.001014,-0.001014 -0.001014)),((-0.001015 -0.001015,-0.001015 0.001015,0.001015 0.001015,0.001015 -0.001015,-0.001015 -0.001015)),((-0.001016 -0.001016,-0.001016 0.001016,0.001016 0.001016,0.001016 -0.001016,-0.001016 -0.001016)),((-0.001017 -0.001017,-0.001017 0.001017,0.001017 0.001017,0.001017 -0.001017,-0.001017 -0.001017)),((-0.001018 -0.001018,-0.001018 0.001018,0.001018 0.001018,0.001018 -0.001018,-0.001018 -0.001018)),((-0.001019 -0.001019,-0.001019 0.001019,0.001019 0.001019,0.001019 -0.001019,-0.001019 -0.001019)),((-0.00102 -0.00102,-0.00102 0.00102,0.00102 0.00102,0.00102 -0.00102,-0.00102 -0.00102)),((-0.001021 -0.001021,-0.001021 0.001021,0.001021 0.001021,0.001021 -0.001021,-0.001021 -0.001021)),((-0.001022 -0.001022,-0.001022 0.001022,0.001022 0.001022,0.001022 -0.001022,-0.001022 -0.001022)),((-0.001023 -0.001023,-0.001023 0.001023,0.001023 0.001023,0.001023 -0.001023,-0.001023 -0.001023)),((-0.001024 -0.001024,-0.001024 0.001024,0.001024 0.001024,0.001024 -0.001024,-0.001024 -0.001024)),((-0.001025 -0.001025,-0.001025 0.001025,0.001025 0.001025,0.001025 -0.001025,-0.001025 -0.001025)),((-0.001026 -0.001026,-0.001026 0.001026,0.001026 0.001026,0.001026 -0.001026,-0.001026 -0.001026)),((-0.001027 -0.001027,-0.001027 0.001027,0.001027 0.001027,0.001027 -0.001027,-0.001027 -0.001027)),((-0.001028 -0.001028,-0.001028 0.001028,0.001028 0.001028,0.001028 -0.001028,-0.001028 -0.001028)),((-0.001029 -0.001029,-0.001029 0.001029,0.001029 0.001029,0.001029 -0.001029,-0.001029 -0.001029)),((-0.00103 -0.00103,-0.00103 0.00103,0.00103 0.00103,0.00103 -0.00103,-0.00103 -0.00103)),((-0.001031 -0.001031,-0.001031 0.001031,0.001031 0.001031,0.001031 -0.001031,-0.001031 -0.001031)),((-0.001032 -0.001032,-0.001032 0.001032,0.001032 0.001032,0.001032 -0.001032,-0.001032 -0.001032)),((-0.001033 -0.001033,-0.001033 0.001033,0.001033 0.001033,0.001033 -0.001033,-0.001033 -0.001033)),((-0.001034 -0.001034,-0.001034 0.001034,0.001034 0.001034,0.001034 -0.001034,-0.001034 -0.001034)),((-0.001035 -0.001035,-0.001035 0.001035,0.001035 0.001035,0.001035 -0.001035,-0.001035 -0.001035)),((-0.001036 -0.001036,-0.001036 0.001036,0.001036 0.001036,0.001036 -0.001036,-0.001036 -0.001036)),((-0.001037 -0.001037,-0.001037 0.001037,0.001037 0.001037,0.001037 -0.001037,-0.001037 -0.001037)),((-0.001038 -0.001038,-0.001038 0.001038,0.001038 0.001038,0.001038 -0.001038,-0.001038 -0.001038)),((-0.001039 -0.001039,-0.001039 0.001039,0.001039 0.001039,0.001039 -0.001039,-0.001039 -0.001039)),((-0.00104 -0.00104,-0.00104 0.00104,0.00104 0.00104,0.00104 -0.00104,-0.00104 -0.00104)),((-0.001041 -0.001041,-0.001041 0.001041,0.001041 0.001041,0.001041 -0.001041,-0.001041 -0.001041)),((-0.001042 -0.001042,-0.001042 0.001042,0.001042 0.001042,0.001042 -0.001042,-0.001042 -0.001042)),((-0.001043 -0.001043,-0.001043 0.001043,0.001043 0.001043,0.001043 -0.001043,-0.001043 -0.001043)),((-0.001044 -0.001044,-0.001044 0.001044,0.001044 0.001044,0.001044 -0.001044,-0.001044 -0.001044)),((-0.001045 -0.001045,-0.001045 0.001045,0.001045 0.001045,0.001045 -0.001045,-0.001045 -0.001045)),((-0.001046 -0.001046,-0.001046 0.001046,0.001046 0.001046,0.001046 -0.001046,-0.001046 -0.001046)),((-0.001047 -0.001047,-0.001047 0.001047,0.001047 0.001047,0.001047 -0.001047,-0.001047 -0.001047)),((-0.001048 -0.001048,-0.001048 0.001048,0.001048 0.001048,0.001048 -0.001048,-0.001048 -0.001048)),((-0.001049 -0.001049,-0.001049 0.001049,0.001049 0.001049,0.001049 -0.001049,-0.001049 -0.001049)),((-0.00105 -0.00105,-0.00105 0.00105,0.00105 0.00105,0.00105 -0.00105,-0.00105 -0.00105)),((-0.001051 -0.001051,-0.001051 0.001051,0.001051 0.001051,0.001051 -0.001051,-0.001051 -0.001051)),((-0.001052 -0.001052,-0.001052 0.001052,0.001052 0.001052,0.001052 -0.001052,-0.001052 -0.001052)),((-0.001053 -0.001053,-0.001053 0.001053,0.001053 0.001053,0.001053 -0.001053,-0.001053 -0.001053)),((-0.001054 -0.001054,-0.001054 0.001054,0.001054 0.001054,0.001054 -0.001054,-0.001054 -0.001054)),((-0.001055 -0.001055,-0.001055 0.001055,0.001055 0.001055,0.001055 -0.001055,-0.001055 -0.001055)),((-0.001056 -0.001056,-0.001056 0.001056,0.001056 0.001056,0.001056 -0.001056,-0.001056 -0.001056)),((-0.001057 -0.001057,-0.001057 0.001057,0.001057 0.001057,0.001057 -0.001057,-0.001057 -0.001057)),((-0.001058 -0.001058,-0.001058 0.001058,0.001058 0.001058,0.001058 -0.001058,-0.001058 -0.001058)),((-0.001059 -0.001059,-0.001059 0.001059,0.001059 0.001059,0.001059 -0.001059,-0.001059 -0.001059)),((-0.00106 -0.00106,-0.00106 0.00106,0.00106 0.00106,0.00106 -0.00106,-0.00106 -0.00106)),((-0.001061 -0.001061,-0.001061 0.001061,0.001061 0.001061,0.001061 -0.001061,-0.001061 -0.001061)),((-0.001062 -0.001062,-0.001062 0.001062,0.001062 0.001062,0.001062 -0.001062,-0.001062 -0.001062)),((-0.001063 -0.001063,-0.001063 0.001063,0.001063 0.001063,0.001063 -0.001063,-0.001063 -0.001063)),((-0.001064 -0.001064,-0.001064 0.001064,0.001064 0.001064,0.001064 -0.001064,-0.001064 -0.001064)),((-0.001065 -0.001065,-0.001065 0.001065,0.001065 0.001065,0.001065 -0.001065,-0.001065 -0.001065)),((-0.001066 -0.001066,-0.001066 0.001066,0.001066 0.001066,0.001066 -0.001066,-0.001066 -0.001066)),((-0.001067 -0.001067,-0.001067 0.001067,0.001067 0.001067,0.001067 -0.001067,-0.001067 -0.001067)),((-0.001068 -0.001068,-0.001068 0.001068,0.001068 0.001068,0.001068 -0.001068,-0.001068 -0.001068)),((-0.001069 -0.001069,-0.001069 0.001069,0.001069 0.001069,0.001069 -0.001069,-0.001069 -0.001069)),((-0.00107 -0.00107,-0.00107 0.00107,0.00107 0.00107,0.00107 -0.00107,-0.00107 -0.00107)),((-0.001071 -0.001071,-0.001071 0.001071,0.001071 0.001071,0.001071 -0.001071,-0.001071 -0.001071)),((-0.001072 -0.001072,-0.001072 0.001072,0.001072 0.001072,0.001072 -0.001072,-0.001072 -0.001072)),((-0.001073 -0.001073,-0.001073 0.001073,0.001073 0.001073,0.001073 -0.001073,-0.001073 -0.001073)),((-0.001074 -0.001074,-0.001074 0.001074,0.001074 0.001074,0.001074 -0.001074,-0.001074 -0.001074)),((-0.001075 -0.001075,-0.001075 0.001075,0.001075 0.001075,0.001075 -0.001075,-0.001075 -0.001075)),((-0.001076 -0.001076,-0.001076 0.001076,0.001076 0.001076,0.001076 -0.001076,-0.001076 -0.001076)),((-0.001077 -0.001077,-0.001077 0.001077,0.001077 0.001077,0.001077 -0.001077,-0.001077 -0.001077)),((-0.001078 -0.001078,-0.001078 0.001078,0.001078 0.001078,0.001078 -0.001078,-0.001078 -0.001078)),((-0.001079 -0.001079,-0.001079 0.001079,0.001079 0.001079,0.001079 -0.001079,-0.001079 -0.001079)),((-0.00108 -0.00108,-0.00108 0.00108,0.00108 0.00108,0.00108 -0.00108,-0.00108 -0.00108)),((-0.001081 -0.001081,-0.001081 0.001081,0.001081 0.001081,0.001081 -0.001081,-0.001081 -0.001081)),((-0.001082 -0.001082,-0.001082 0.001082,0.001082 0.001082,0.001082 -0.001082,-0.001082 -0.001082)),((-0.001083 -0.001083,-0.001083 0.001083,0.001083 0.001083,0.001083 -0.001083,-0.001083 -0.001083)),((-0.001084 -0.001084,-0.001084 0.001084,0.001084 0.001084,0.001084 -0.001084,-0.001084 -0.001084)),((-0.001085 -0.001085,-0.001085 0.001085,0.001085 0.001085,0.001085 -0.001085,-0.001085 -0.001085)),((-0.001086 -0.001086,-0.001086 0.001086,0.001086 0.001086,0.001086 -0.001086,-0.001086 -0.001086)),((-0.001087 -0.001087,-0.001087 0.001087,0.001087 0.001087,0.001087 -0.001087,-0.001087 -0.001087)),((-0.001088 -0.001088,-0.001088 0.001088,0.001088 0.001088,0.001088 -0.001088,-0.001088 -0.001088)),((-0.001089 -0.001089,-0.001089 0.001089,0.001089 0.001089,0.001089 -0.001089,-0.001089 -0.001089)),((-0.00109 -0.00109,-0.00109 0.00109,0.00109 0.00109,0.00109 -0.00109,-0.00109 -0.00109)),((-0.001091 -0.001091,-0.001091 0.001091,0.001091 0.001091,0.001091 -0.001091,-0.001091 -0.001091)),((-0.001092 -0.001092,-0.001092 0.001092,0.001092 0.001092,0.001092 -0.001092,-0.001092 -0.001092)),((-0.001093 -0.001093,-0.001093 0.001093,0.001093 0.001093,0.001093 -0.001093,-0.001093 -0.001093)),((-0.001094 -0.001094,-0.001094 0.001094,0.001094 0.001094,0.001094 -0.001094,-0.001094 -0.001094)),((-0.001095 -0.001095,-0.001095 0.001095,0.001095 0.001095,0.001095 -0.001095,-0.001095 -0.001095)),((-0.001096 -0.001096,-0.001096 0.001096,0.001096 0.001096,0.001096 -0.001096,-0.001096 -0.001096)),((-0.001097 -0.001097,-0.001097 0.001097,0.001097 0.001097,0.001097 -0.001097,-0.001097 -0.001097)),((-0.001098 -0.001098,-0.001098 0.001098,0.001098 0.001098,0.001098 -0.001098,-0.001098 -0.001098)),((-0.001099 -0.001099,-0.001099 0.001099,0.001099 0.001099,0.001099 -0.001099,-0.001099 -0.001099)),((-0.0011 -0.0011,-0.0011 0.0011,0.0011 0.0011,0.0011 -0.0011,-0.0011 -0.0011)),((-0.001101 -0.001101,-0.001101 0.001101,0.001101 0.001101,0.001101 -0.001101,-0.001101 -0.001101)),((-0.001102 -0.001102,-0.001102 0.001102,0.001102 0.001102,0.001102 -0.001102,-0.001102 -0.001102)),((-0.001103 -0.001103,-0.001103 0.001103,0.001103 0.001103,0.001103 -0.001103,-0.001103 -0.001103)),((-0.001104 -0.001104,-0.001104 0.001104,0.001104 0.001104,0.001104 -0.001104,-0.001104 -0.001104)),((-0.001105 -0.001105,-0.001105 0.001105,0.001105 0.001105,0.001105 -0.001105,-0.001105 -0.001105)),((-0.001106 -0.001106,-0.001106 0.001106,0.001106 0.001106,0.001106 -0.001106,-0.001106 -0.001106)),((-0.001107 -0.001107,-0.001107 0.001107,0.001107 0.001107,0.001107 -0.001107,-0.001107 -0.001107)),((-0.001108 -0.001108,-0.001108 0.001108,0.001108 0.001108,0.001108 -0.001108,-0.001108 -0.001108)),((-0.001109 -0.001109,-0.001109 0.001109,0.001109 0.001109,0.001109 -0.001109,-0.001109 -0.001109)),((-0.00111 -0.00111,-0.00111 0.00111,0.00111 0.00111,0.00111 -0.00111,-0.00111 -0.00111)),((-0.001111 -0.001111,-0.001111 0.001111,0.001111 0.001111,0.001111 -0.001111,-0.001111 -0.001111)),((-0.001112 -0.001112,-0.001112 0.001112,0.001112 0.001112,0.001112 -0.001112,-0.001112 -0.001112)),((-0.001113 -0.001113,-0.001113 0.001113,0.001113 0.001113,0.001113 -0.001113,-0.001113 -0.001113)),((-0.001114 -0.001114,-0.001114 0.001114,0.001114 0.001114,0.001114 -0.001114,-0.001114 -0.001114)),((-0.001115 -0.001115,-0.001115 0.001115,0.001115 0.001115,0.001115 -0.001115,-0.001115 -0.001115)),((-0.001116 -0.001116,-0.001116 0.001116,0.001116 0.001116,0.001116 -0.001116,-0.001116 -0.001116)),((-0.001117 -0.001117,-0.001117 0.001117,0.001117 0.001117,0.001117 -0.001117,-0.001117 -0.001117)),((-0.001118 -0.001118,-0.001118 0.001118,0.001118 0.001118,0.001118 -0.001118,-0.001118 -0.001118)),((-0.001119 -0.001119,-0.001119 0.001119,0.001119 0.001119,0.001119 -0.001119,-0.001119 -0.001119)),((-0.00112 -0.00112,-0.00112 0.00112,0.00112 0.00112,0.00112 -0.00112,-0.00112 -0.00112)),((-0.001121 -0.001121,-0.001121 0.001121,0.001121 0.001121,0.001121 -0.001121,-0.001121 -0.001121)),((-0.001122 -0.001122,-0.001122 0.001122,0.001122 0.001122,0.001122 -0.001122,-0.001122 -0.001122)),((-0.001123 -0.001123,-0.001123 0.001123,0.001123 0.001123,0.001123 -0.001123,-0.001123 -0.001123)),((-0.001124 -0.001124,-0.001124 0.001124,0.001124 0.001124,0.001124 -0.001124,-0.001124 -0.001124)),((-0.001125 -0.001125,-0.001125 0.001125,0.001125 0.001125,0.001125 -0.001125,-0.001125 -0.001125)),((-0.001126 -0.001126,-0.001126 0.001126,0.001126 0.001126,0.001126 -0.001126,-0.001126 -0.001126)),((-0.001127 -0.001127,-0.001127 0.001127,0.001127 0.001127,0.001127 -0.001127,-0.001127 -0.001127)),((-0.001128 -0.001128,-0.001128 0.001128,0.001128 0.001128,0.001128 -0.001128,-0.001128 -0.001128)),((-0.001129 -0.001129,-0.001129 0.001129,0.001129 0.001129,0.001129 -0.001129,-0.001129 -0.001129)),((-0.00113 -0.00113,-0.00113 0.00113,0.00113 0.00113,0.00113 -0.00113,-0.00113 -0.00113)),((-0.001131 -0.001131,-0.001131 0.001131,0.001131 0.001131,0.001131 -0.001131,-0.001131 -0.001131)),((-0.001132 -0.001132,-0.001132 0.001132,0.001132 0.001132,0.001132 -0.001132,-0.001132 -0.001132)),((-0.001133 -0.001133,-0.001133 0.001133,0.001133 0.001133,0.001133 -0.001133,-0.001133 -0.001133)),((-0.001134 -0.001134,-0.001134 0.001134,0.001134 0.001134,0.001134 -0.001134,-0.001134 -0.001134)),((-0.001135 -0.001135,-0.001135 0.001135,0.001135 0.001135,0.001135 -0.001135,-0.001135 -0.001135)),((-0.001136 -0.001136,-0.001136 0.001136,0.001136 0.001136,0.001136 -0.001136,-0.001136 -0.001136)),((-0.001137 -0.001137,-0.001137 0.001137,0.001137 0.001137,0.001137 -0.001137,-0.001137 -0.001137)),((-0.001138 -0.001138,-0.001138 0.001138,0.001138 0.001138,0.001138 -0.001138,-0.001138 -0.001138)),((-0.001139 -0.001139,-0.001139 0.001139,0.001139 0.001139,0.001139 -0.001139,-0.001139 -0.001139)),((-0.00114 -0.00114,-0.00114 0.00114,0.00114 0.00114,0.00114 -0.00114,-0.00114 -0.00114)),((-0.001141 -0.001141,-0.001141 0.001141,0.001141 0.001141,0.001141 -0.001141,-0.001141 -0.001141)),((-0.001142 -0.001142,-0.001142 0.001142,0.001142 0.001142,0.001142 -0.001142,-0.001142 -0.001142)),((-0.001143 -0.001143,-0.001143 0.001143,0.001143 0.001143,0.001143 -0.001143,-0.001143 -0.001143)),((-0.001144 -0.001144,-0.001144 0.001144,0.001144 0.001144,0.001144 -0.001144,-0.001144 -0.001144)),((-0.001145 -0.001145,-0.001145 0.001145,0.001145 0.001145,0.001145 -0.001145,-0.001145 -0.001145)),((-0.001146 -0.001146,-0.001146 0.001146,0.001146 0.001146,0.001146 -0.001146,-0.001146 -0.001146)),((-0.001147 -0.001147,-0.001147 0.001147,0.001147 0.001147,0.001147 -0.001147,-0.001147 -0.001147)),((-0.001148 -0.001148,-0.001148 0.001148,0.001148 0.001148,0.001148 -0.001148,-0.001148 -0.001148)),((-0.001149 -0.001149,-0.001149 0.001149,0.001149 0.001149,0.001149 -0.001149,-0.001149 -0.001149)),((-0.00115 -0.00115,-0.00115 0.00115,0.00115 0.00115,0.00115 -0.00115,-0.00115 -0.00115)),((-0.001151 -0.001151,-0.001151 0.001151,0.001151 0.001151,0.001151 -0.001151,-0.001151 -0.001151)),((-0.001152 -0.001152,-0.001152 0.001152,0.001152 0.001152,0.001152 -0.001152,-0.001152 -0.001152)),((-0.001153 -0.001153,-0.001153 0.001153,0.001153 0.001153,0.001153 -0.001153,-0.001153 -0.001153)),((-0.001154 -0.001154,-0.001154 0.001154,0.001154 0.001154,0.001154 -0.001154,-0.001154 -0.001154)),((-0.001155 -0.001155,-0.001155 0.001155,0.001155 0.001155,0.001155 -0.001155,-0.001155 -0.001155)),((-0.001156 -0.001156,-0.001156 0.001156,0.001156 0.001156,0.001156 -0.001156,-0.001156 -0.001156)),((-0.001157 -0.001157,-0.001157 0.001157,0.001157 0.001157,0.001157 -0.001157,-0.001157 -0.001157)),((-0.001158 -0.001158,-0.001158 0.001158,0.001158 0.001158,0.001158 -0.001158,-0.001158 -0.001158)),((-0.001159 -0.001159,-0.001159 0.001159,0.001159 0.001159,0.001159 -0.001159,-0.001159 -0.001159)),((-0.00116 -0.00116,-0.00116 0.00116,0.00116 0.00116,0.00116 -0.00116,-0.00116 -0.00116)),((-0.001161 -0.001161,-0.001161 0.001161,0.001161 0.001161,0.001161 -0.001161,-0.001161 -0.001161)),((-0.001162 -0.001162,-0.001162 0.001162,0.001162 0.001162,0.001162 -0.001162,-0.001162 -0.001162)),((-0.001163 -0.001163,-0.001163 0.001163,0.001163 0.001163,0.001163 -0.001163,-0.001163 -0.001163)),((-0.001164 -0.001164,-0.001164 0.001164,0.001164 0.001164,0.001164 -0.001164,-0.001164 -0.001164)),((-0.001165 -0.001165,-0.001165 0.001165,0.001165 0.001165,0.001165 -0.001165,-0.001165 -0.001165)),((-0.001166 -0.001166,-0.001166 0.001166,0.001166 0.001166,0.001166 -0.001166,-0.001166 -0.001166)),((-0.001167 -0.001167,-0.001167 0.001167,0.001167 0.001167,0.001167 -0.001167,-0.001167 -0.001167)),((-0.001168 -0.001168,-0.001168 0.001168,0.001168 0.001168,0.001168 -0.001168,-0.001168 -0.001168)),((-0.001169 -0.001169,-0.001169 0.001169,0.001169 0.001169,0.001169 -0.001169,-0.001169 -0.001169)),((-0.00117 -0.00117,-0.00117 0.00117,0.00117 0.00117,0.00117 -0.00117,-0.00117 -0.00117)),((-0.001171 -0.001171,-0.001171 0.001171,0.001171 0.001171,0.001171 -0.001171,-0.001171 -0.001171)),((-0.001172 -0.001172,-0.001172 0.001172,0.001172 0.001172,0.001172 -0.001172,-0.001172 -0.001172)),((-0.001173 -0.001173,-0.001173 0.001173,0.001173 0.001173,0.001173 -0.001173,-0.001173 -0.001173)),((-0.001174 -0.001174,-0.001174 0.001174,0.001174 0.001174,0.001174 -0.001174,-0.001174 -0.001174)),((-0.001175 -0.001175,-0.001175 0.001175,0.001175 0.001175,0.001175 -0.001175,-0.001175 -0.001175)),((-0.001176 -0.001176,-0.001176 0.001176,0.001176 0.001176,0.001176 -0.001176,-0.001176 -0.001176)),((-0.001177 -0.001177,-0.001177 0.001177,0.001177 0.001177,0.001177 -0.001177,-0.001177 -0.001177)),((-0.001178 -0.001178,-0.001178 0.001178,0.001178 0.001178,0.001178 -0.001178,-0.001178 -0.001178)),((-0.001179 -0.001179,-0.001179 0.001179,0.001179 0.001179,0.001179 -0.001179,-0.001179 -0.001179)),((-0.00118 -0.00118,-0.00118 0.00118,0.00118 0.00118,0.00118 -0.00118,-0.00118 -0.00118)),((-0.001181 -0.001181,-0.001181 0.001181,0.001181 0.001181,0.001181 -0.001181,-0.001181 -0.001181)),((-0.001182 -0.001182,-0.001182 0.001182,0.001182 0.001182,0.001182 -0.001182,-0.001182 -0.001182)),((-0.001183 -0.001183,-0.001183 0.001183,0.001183 0.001183,0.001183 -0.001183,-0.001183 -0.001183)),((-0.001184 -0.001184,-0.001184 0.001184,0.001184 0.001184,0.001184 -0.001184,-0.001184 -0.001184)),((-0.001185 -0.001185,-0.001185 0.001185,0.001185 0.001185,0.001185 -0.001185,-0.001185 -0.001185)),((-0.001186 -0.001186,-0.001186 0.001186,0.001186 0.001186,0.001186 -0.001186,-0.001186 -0.001186)),((-0.001187 -0.001187,-0.001187 0.001187,0.001187 0.001187,0.001187 -0.001187,-0.001187 -0.001187)),((-0.001188 -0.001188,-0.001188 0.001188,0.001188 0.001188,0.001188 -0.001188,-0.001188 -0.001188)),((-0.001189 -0.001189,-0.001189 0.001189,0.001189 0.001189,0.001189 -0.001189,-0.001189 -0.001189)),((-0.00119 -0.00119,-0.00119 0.00119,0.00119 0.00119,0.00119 -0.00119,-0.00119 -0.00119)),((-0.001191 -0.001191,-0.001191 0.001191,0.001191 0.001191,0.001191 -0.001191,-0.001191 -0.001191)),((-0.001192 -0.001192,-0.001192 0.001192,0.001192 0.001192,0.001192 -0.001192,-0.001192 -0.001192)),((-0.001193 -0.001193,-0.001193 0.001193,0.001193 0.001193,0.001193 -0.001193,-0.001193 -0.001193)),((-0.001194 -0.001194,-0.001194 0.001194,0.001194 0.001194,0.001194 -0.001194,-0.001194 -0.001194)),((-0.001195 -0.001195,-0.001195 0.001195,0.001195 0.001195,0.001195 -0.001195,-0.001195 -0.001195)),((-0.001196 -0.001196,-0.001196 0.001196,0.001196 0.001196,0.001196 -0.001196,-0.001196 -0.001196)),((-0.001197 -0.001197,-0.001197 0.001197,0.001197 0.001197,0.001197 -0.001197,-0.001197 -0.001197)),((-0.001198 -0.001198,-0.001198 0.001198,0.001198 0.001198,0.001198 -0.001198,-0.001198 -0.001198)),((-0.001199 -0.001199,-0.001199 0.001199,0.001199 0.001199,0.001199 -0.001199,-0.001199 -0.001199)),((-0.0012 -0.0012,-0.0012 0.0012,0.0012 0.0012,0.0012 -0.0012,-0.0012 -0.0012)),((-0.001201 -0.001201,-0.001201 0.001201,0.001201 0.001201,0.001201 -0.001201,-0.001201 -0.001201)),((-0.001202 -0.001202,-0.001202 0.001202,0.001202 0.001202,0.001202 -0.001202,-0.001202 -0.001202)),((-0.001203 -0.001203,-0.001203 0.001203,0.001203 0.001203,0.001203 -0.001203,-0.001203 -0.001203)),((-0.001204 -0.001204,-0.001204 0.001204,0.001204 0.001204,0.001204 -0.001204,-0.001204 -0.001204)),((-0.001205 -0.001205,-0.001205 0.001205,0.001205 0.001205,0.001205 -0.001205,-0.001205 -0.001205)),((-0.001206 -0.001206,-0.001206 0.001206,0.001206 0.001206,0.001206 -0.001206,-0.001206 -0.001206)),((-0.001207 -0.001207,-0.001207 0.001207,0.001207 0.001207,0.001207 -0.001207,-0.001207 -0.001207)),((-0.001208 -0.001208,-0.001208 0.001208,0.001208 0.001208,0.001208 -0.001208,-0.001208 -0.001208)),((-0.001209 -0.001209,-0.001209 0.001209,0.001209 0.001209,0.001209 -0.001209,-0.001209 -0.001209)),((-0.00121 -0.00121,-0.00121 0.00121,0.00121 0.00121,0.00121 -0.00121,-0.00121 -0.00121)),((-0.001211 -0.001211,-0.001211 0.001211,0.001211 0.001211,0.001211 -0.001211,-0.001211 -0.001211)),((-0.001212 -0.001212,-0.001212 0.001212,0.001212 0.001212,0.001212 -0.001212,-0.001212 -0.001212)),((-0.001213 -0.001213,-0.001213 0.001213,0.001213 0.001213,0.001213 -0.001213,-0.001213 -0.001213)),((-0.001214 -0.001214,-0.001214 0.001214,0.001214 0.001214,0.001214 -0.001214,-0.001214 -0.001214)),((-0.001215 -0.001215,-0.001215 0.001215,0.001215 0.001215,0.001215 -0.001215,-0.001215 -0.001215)),((-0.001216 -0.001216,-0.001216 0.001216,0.001216 0.001216,0.001216 -0.001216,-0.001216 -0.001216)),((-0.001217 -0.001217,-0.001217 0.001217,0.001217 0.001217,0.001217 -0.001217,-0.001217 -0.001217)),((-0.001218 -0.001218,-0.001218 0.001218,0.001218 0.001218,0.001218 -0.001218,-0.001218 -0.001218)),((-0.001219 -0.001219,-0.001219 0.001219,0.001219 0.001219,0.001219 -0.001219,-0.001219 -0.001219)),((-0.00122 -0.00122,-0.00122 0.00122,0.00122 0.00122,0.00122 -0.00122,-0.00122 -0.00122)),((-0.001221 -0.001221,-0.001221 0.001221,0.001221 0.001221,0.001221 -0.001221,-0.001221 -0.001221)),((-0.001222 -0.001222,-0.001222 0.001222,0.001222 0.001222,0.001222 -0.001222,-0.001222 -0.001222)),((-0.001223 -0.001223,-0.001223 0.001223,0.001223 0.001223,0.001223 -0.001223,-0.001223 -0.001223)),((-0.001224 -0.001224,-0.001224 0.001224,0.001224 0.001224,0.001224 -0.001224,-0.001224 -0.001224)),((-0.001225 -0.001225,-0.001225 0.001225,0.001225 0.001225,0.001225 -0.001225,-0.001225 -0.001225)),((-0.001226 -0.001226,-0.001226 0.001226,0.001226 0.001226,0.001226 -0.001226,-0.001226 -0.001226)),((-0.001227 -0.001227,-0.001227 0.001227,0.001227 0.001227,0.001227 -0.001227,-0.001227 -0.001227)),((-0.001228 -0.001228,-0.001228 0.001228,0.001228 0.001228,0.001228 -0.001228,-0.001228 -0.001228)),((-0.001229 -0.001229,-0.001229 0.001229,0.001229 0.001229,0.001229 -0.001229,-0.001229 -0.001229)),((-0.00123 -0.00123,-0.00123 0.00123,0.00123 0.00123,0.00123 -0.00123,-0.00123 -0.00123)),((-0.001231 -0.001231,-0.001231 0.001231,0.001231 0.001231,0.001231 -0.001231,-0.001231 -0.001231)),((-0.001232 -0.001232,-0.001232 0.001232,0.001232 0.001232,0.001232 -0.001232,-0.001232 -0.001232)),((-0.001233 -0.001233,-0.001233 0.001233,0.001233 0.001233,0.001233 -0.001233,-0.001233 -0.001233)),((-0.001234 -0.001234,-0.001234 0.001234,0.001234 0.001234,0.001234 -0.001234,-0.001234 -0.001234)),((-0.001235 -0.001235,-0.001235 0.001235,0.001235 0.001235,0.001235 -0.001235,-0.001235 -0.001235)),((-0.001236 -0.001236,-0.001236 0.001236,0.001236 0.001236,0.001236 -0.001236,-0.001236 -0.001236)),((-0.001237 -0.001237,-0.001237 0.001237,0.001237 0.001237,0.001237 -0.001237,-0.001237 -0.001237)),((-0.001238 -0.001238,-0.001238 0.001238,0.001238 0.001238,0.001238 -0.001238,-0.001238 -0.001238)),((-0.001239 -0.001239,-0.001239 0.001239,0.001239 0.001239,0.001239 -0.001239,-0.001239 -0.001239)),((-0.00124 -0.00124,-0.00124 0.00124,0.00124 0.00124,0.00124 -0.00124,-0.00124 -0.00124)),((-0.001241 -0.001241,-0.001241 0.001241,0.001241 0.001241,0.001241 -0.001241,-0.001241 -0.001241)),((-0.001242 -0.001242,-0.001242 0.001242,0.001242 0.001242,0.001242 -0.001242,-0.001242 -0.001242)),((-0.001243 -0.001243,-0.001243 0.001243,0.001243 0.001243,0.001243 -0.001243,-0.001243 -0.001243)),((-0.001244 -0.001244,-0.001244 0.001244,0.001244 0.001244,0.001244 -0.001244,-0.001244 -0.001244)),((-0.001245 -0.001245,-0.001245 0.001245,0.001245 0.001245,0.001245 -0.001245,-0.001245 -0.001245)),((-0.001246 -0.001246,-0.001246 0.001246,0.001246 0.001246,0.001246 -0.001246,-0.001246 -0.001246)),((-0.001247 -0.001247,-0.001247 0.001247,0.001247 0.001247,0.001247 -0.001247,-0.001247 -0.001247)),((-0.001248 -0.001248,-0.001248 0.001248,0.001248 0.001248,0.001248 -0.001248,-0.001248 -0.001248)),((-0.001249 -0.001249,-0.001249 0.001249,0.001249 0.001249,0.001249 -0.001249,-0.001249 -0.001249)),((-0.00125 -0.00125,-0.00125 0.00125,0.00125 0.00125,0.00125 -0.00125,-0.00125 -0.00125)),((-0.001251 -0.001251,-0.001251 0.001251,0.001251 0.001251,0.001251 -0.001251,-0.001251 -0.001251)),((-0.001252 -0.001252,-0.001252 0.001252,0.001252 0.001252,0.001252 -0.001252,-0.001252 -0.001252)),((-0.001253 -0.001253,-0.001253 0.001253,0.001253 0.001253,0.001253 -0.001253,-0.001253 -0.001253)),((-0.001254 -0.001254,-0.001254 0.001254,0.001254 0.001254,0.001254 -0.001254,-0.001254 -0.001254)),((-0.001255 -0.001255,-0.001255 0.001255,0.001255 0.001255,0.001255 -0.001255,-0.001255 -0.001255)),((-0.001256 -0.001256,-0.001256 0.001256,0.001256 0.001256,0.001256 -0.001256,-0.001256 -0.001256)),((-0.001257 -0.001257,-0.001257 0.001257,0.001257 0.001257,0.001257 -0.001257,-0.001257 -0.001257)),((-0.001258 -0.001258,-0.001258 0.001258,0.001258 0.001258,0.001258 -0.001258,-0.001258 -0.001258)),((-0.001259 -0.001259,-0.001259 0.001259,0.001259 0.001259,0.001259 -0.001259,-0.001259 -0.001259)),((-0.00126 -0.00126,-0.00126 0.00126,0.00126 0.00126,0.00126 -0.00126,-0.00126 -0.00126)),((-0.001261 -0.001261,-0.001261 0.001261,0.001261 0.001261,0.001261 -0.001261,-0.001261 -0.001261)),((-0.001262 -0.001262,-0.001262 0.001262,0.001262 0.001262,0.001262 -0.001262,-0.001262 -0.001262)),((-0.001263 -0.001263,-0.001263 0.001263,0.001263 0.001263,0.001263 -0.001263,-0.001263 -0.001263)),((-0.001264 -0.001264,-0.001264 0.001264,0.001264 0.001264,0.001264 -0.001264,-0.001264 -0.001264)),((-0.001265 -0.001265,-0.001265 0.001265,0.001265 0.001265,0.001265 -0.001265,-0.001265 -0.001265)),((-0.001266 -0.001266,-0.001266 0.001266,0.001266 0.001266,0.001266 -0.001266,-0.001266 -0.001266)),((-0.001267 -0.001267,-0.001267 0.001267,0.001267 0.001267,0.001267 -0.001267,-0.001267 -0.001267)),((-0.001268 -0.001268,-0.001268 0.001268,0.001268 0.001268,0.001268 -0.001268,-0.001268 -0.001268)),((-0.001269 -0.001269,-0.001269 0.001269,0.001269 0.001269,0.001269 -0.001269,-0.001269 -0.001269)),((-0.00127 -0.00127,-0.00127 0.00127,0.00127 0.00127,0.00127 -0.00127,-0.00127 -0.00127)),((-0.001271 -0.001271,-0.001271 0.001271,0.001271 0.001271,0.001271 -0.001271,-0.001271 -0.001271)),((-0.001272 -0.001272,-0.001272 0.001272,0.001272 0.001272,0.001272 -0.001272,-0.001272 -0.001272)),((-0.001273 -0.001273,-0.001273 0.001273,0.001273 0.001273,0.001273 -0.001273,-0.001273 -0.001273)),((-0.001274 -0.001274,-0.001274 0.001274,0.001274 0.001274,0.001274 -0.001274,-0.001274 -0.001274)),((-0.001275 -0.001275,-0.001275 0.001275,0.001275 0.001275,0.001275 -0.001275,-0.001275 -0.001275)),((-0.001276 -0.001276,-0.001276 0.001276,0.001276 0.001276,0.001276 -0.001276,-0.001276 -0.001276)),((-0.001277 -0.001277,-0.001277 0.001277,0.001277 0.001277,0.001277 -0.001277,-0.001277 -0.001277)),((-0.001278 -0.001278,-0.001278 0.001278,0.001278 0.001278,0.001278 -0.001278,-0.001278 -0.001278)),((-0.001279 -0.001279,-0.001279 0.001279,0.001279 0.001279,0.001279 -0.001279,-0.001279 -0.001279)),((-0.00128 -0.00128,-0.00128 0.00128,0.00128 0.00128,0.00128 -0.00128,-0.00128 -0.00128)),((-0.001281 -0.001281,-0.001281 0.001281,0.001281 0.001281,0.001281 -0.001281,-0.001281 -0.001281)),((-0.001282 -0.001282,-0.001282 0.001282,0.001282 0.001282,0.001282 -0.001282,-0.001282 -0.001282)),((-0.001283 -0.001283,-0.001283 0.001283,0.001283 0.001283,0.001283 -0.001283,-0.001283 -0.001283)),((-0.001284 -0.001284,-0.001284 0.001284,0.001284 0.001284,0.001284 -0.001284,-0.001284 -0.001284)),((-0.001285 -0.001285,-0.001285 0.001285,0.001285 0.001285,0.001285 -0.001285,-0.001285 -0.001285)),((-0.001286 -0.001286,-0.001286 0.001286,0.001286 0.001286,0.001286 -0.001286,-0.001286 -0.001286)),((-0.001287 -0.001287,-0.001287 0.001287,0.001287 0.001287,0.001287 -0.001287,-0.001287 -0.001287)),((-0.001288 -0.001288,-0.001288 0.001288,0.001288 0.001288,0.001288 -0.001288,-0.001288 -0.001288)),((-0.001289 -0.001289,-0.001289 0.001289,0.001289 0.001289,0.001289 -0.001289,-0.001289 -0.001289)),((-0.00129 -0.00129,-0.00129 0.00129,0.00129 0.00129,0.00129 -0.00129,-0.00129 -0.00129)),((-0.001291 -0.001291,-0.001291 0.001291,0.001291 0.001291,0.001291 -0.001291,-0.001291 -0.001291)),((-0.001292 -0.001292,-0.001292 0.001292,0.001292 0.001292,0.001292 -0.001292,-0.001292 -0.001292)),((-0.001293 -0.001293,-0.001293 0.001293,0.001293 0.001293,0.001293 -0.001293,-0.001293 -0.001293)),((-0.001294 -0.001294,-0.001294 0.001294,0.001294 0.001294,0.001294 -0.001294,-0.001294 -0.001294)),((-0.001295 -0.001295,-0.001295 0.001295,0.001295 0.001295,0.001295 -0.001295,-0.001295 -0.001295)),((-0.001296 -0.001296,-0.001296 0.001296,0.001296 0.001296,0.001296 -0.001296,-0.001296 -0.001296)),((-0.001297 -0.001297,-0.001297 0.001297,0.001297 0.001297,0.001297 -0.001297,-0.001297 -0.001297)),((-0.001298 -0.001298,-0.001298 0.001298,0.001298 0.001298,0.001298 -0.001298,-0.001298 -0.001298)),((-0.001299 -0.001299,-0.001299 0.001299,0.001299 0.001299,0.001299 -0.001299,-0.001299 -0.001299)),((-0.0013 -0.0013,-0.0013 0.0013,0.0013 0.0013,0.0013 -0.0013,-0.0013 -0.0013)),((-0.001301 -0.001301,-0.001301 0.001301,0.001301 0.001301,0.001301 -0.001301,-0.001301 -0.001301)),((-0.001302 -0.001302,-0.001302 0.001302,0.001302 0.001302,0.001302 -0.001302,-0.001302 -0.001302)),((-0.001303 -0.001303,-0.001303 0.001303,0.001303 0.001303,0.001303 -0.001303,-0.001303 -0.001303)),((-0.001304 -0.001304,-0.001304 0.001304,0.001304 0.001304,0.001304 -0.001304,-0.001304 -0.001304)),((-0.001305 -0.001305,-0.001305 0.001305,0.001305 0.001305,0.001305 -0.001305,-0.001305 -0.001305)),((-0.001306 -0.001306,-0.001306 0.001306,0.001306 0.001306,0.001306 -0.001306,-0.001306 -0.001306)),((-0.001307 -0.001307,-0.001307 0.001307,0.001307 0.001307,0.001307 -0.001307,-0.001307 -0.001307)),((-0.001308 -0.001308,-0.001308 0.001308,0.001308 0.001308,0.001308 -0.001308,-0.001308 -0.001308)),((-0.001309 -0.001309,-0.001309 0.001309,0.001309 0.001309,0.001309 -0.001309,-0.001309 -0.001309)),((-0.00131 -0.00131,-0.00131 0.00131,0.00131 0.00131,0.00131 -0.00131,-0.00131 -0.00131)),((-0.001311 -0.001311,-0.001311 0.001311,0.001311 0.001311,0.001311 -0.001311,-0.001311 -0.001311)),((-0.001312 -0.001312,-0.001312 0.001312,0.001312 0.001312,0.001312 -0.001312,-0.001312 -0.001312)),((-0.001313 -0.001313,-0.001313 0.001313,0.001313 0.001313,0.001313 -0.001313,-0.001313 -0.001313)),((-0.001314 -0.001314,-0.001314 0.001314,0.001314 0.001314,0.001314 -0.001314,-0.001314 -0.001314)),((-0.001315 -0.001315,-0.001315 0.001315,0.001315 0.001315,0.001315 -0.001315,-0.001315 -0.001315)),((-0.001316 -0.001316,-0.001316 0.001316,0.001316 0.001316,0.001316 -0.001316,-0.001316 -0.001316)),((-0.001317 -0.001317,-0.001317 0.001317,0.001317 0.001317,0.001317 -0.001317,-0.001317 -0.001317)),((-0.001318 -0.001318,-0.001318 0.001318,0.001318 0.001318,0.001318 -0.001318,-0.001318 -0.001318)),((-0.001319 -0.001319,-0.001319 0.001319,0.001319 0.001319,0.001319 -0.001319,-0.001319 -0.001319)),((-0.00132 -0.00132,-0.00132 0.00132,0.00132 0.00132,0.00132 -0.00132,-0.00132 -0.00132)),((-0.001321 -0.001321,-0.001321 0.001321,0.001321 0.001321,0.001321 -0.001321,-0.001321 -0.001321)),((-0.001322 -0.001322,-0.001322 0.001322,0.001322 0.001322,0.001322 -0.001322,-0.001322 -0.001322)),((-0.001323 -0.001323,-0.001323 0.001323,0.001323 0.001323,0.001323 -0.001323,-0.001323 -0.001323)),((-0.001324 -0.001324,-0.001324 0.001324,0.001324 0.001324,0.001324 -0.001324,-0.001324 -0.001324)),((-0.001325 -0.001325,-0.001325 0.001325,0.001325 0.001325,0.001325 -0.001325,-0.001325 -0.001325)),((-0.001326 -0.001326,-0.001326 0.001326,0.001326 0.001326,0.001326 -0.001326,-0.001326 -0.001326)),((-0.001327 -0.001327,-0.001327 0.001327,0.001327 0.001327,0.001327 -0.001327,-0.001327 -0.001327)),((-0.001328 -0.001328,-0.001328 0.001328,0.001328 0.001328,0.001328 -0.001328,-0.001328 -0.001328)),((-0.001329 -0.001329,-0.001329 0.001329,0.001329 0.001329,0.001329 -0.001329,-0.001329 -0.001329)),((-0.00133 -0.00133,-0.00133 0.00133,0.00133 0.00133,0.00133 -0.00133,-0.00133 -0.00133)),((-0.001331 -0.001331,-0.001331 0.001331,0.001331 0.001331,0.001331 -0.001331,-0.001331 -0.001331)),((-0.001332 -0.001332,-0.001332 0.001332,0.001332 0.001332,0.001332 -0.001332,-0.001332 -0.001332)),((-0.001333 -0.001333,-0.001333 0.001333,0.001333 0.001333,0.001333 -0.001333,-0.001333 -0.001333)),((-0.001334 -0.001334,-0.001334 0.001334,0.001334 0.001334,0.001334 -0.001334,-0.001334 -0.001334)),((-0.001335 -0.001335,-0.001335 0.001335,0.001335 0.001335,0.001335 -0.001335,-0.001335 -0.001335)),((-0.001336 -0.001336,-0.001336 0.001336,0.001336 0.001336,0.001336 -0.001336,-0.001336 -0.001336)),((-0.001337 -0.001337,-0.001337 0.001337,0.001337 0.001337,0.001337 -0.001337,-0.001337 -0.001337)),((-0.001338 -0.001338,-0.001338 0.001338,0.001338 0.001338,0.001338 -0.001338,-0.001338 -0.001338)),((-0.001339 -0.001339,-0.001339 0.001339,0.001339 0.001339,0.001339 -0.001339,-0.001339 -0.001339)),((-0.00134 -0.00134,-0.00134 0.00134,0.00134 0.00134,0.00134 -0.00134,-0.00134 -0.00134)),((-0.001341 -0.001341,-0.001341 0.001341,0.001341 0.001341,0.001341 -0.001341,-0.001341 -0.001341)),((-0.001342 -0.001342,-0.001342 0.001342,0.001342 0.001342,0.001342 -0.001342,-0.001342 -0.001342)),((-0.001343 -0.001343,-0.001343 0.001343,0.001343 0.001343,0.001343 -0.001343,-0.001343 -0.001343)),((-0.001344 -0.001344,-0.001344 0.001344,0.001344 0.001344,0.001344 -0.001344,-0.001344 -0.001344)),((-0.001345 -0.001345,-0.001345 0.001345,0.001345 0.001345,0.001345 -0.001345,-0.001345 -0.001345)),((-0.001346 -0.001346,-0.001346 0.001346,0.001346 0.001346,0.001346 -0.001346,-0.001346 -0.001346)),((-0.001347 -0.001347,-0.001347 0.001347,0.001347 0.001347,0.001347 -0.001347,-0.001347 -0.001347)),((-0.001348 -0.001348,-0.001348 0.001348,0.001348 0.001348,0.001348 -0.001348,-0.001348 -0.001348)),((-0.001349 -0.001349,-0.001349 0.001349,0.001349 0.001349,0.001349 -0.001349,-0.001349 -0.001349)),((-0.00135 -0.00135,-0.00135 0.00135,0.00135 0.00135,0.00135 -0.00135,-0.00135 -0.00135)),((-0.001351 -0.001351,-0.001351 0.001351,0.001351 0.001351,0.001351 -0.001351,-0.001351 -0.001351)),((-0.001352 -0.001352,-0.001352 0.001352,0.001352 0.001352,0.001352 -0.001352,-0.001352 -0.001352)),((-0.001353 -0.001353,-0.001353 0.001353,0.001353 0.001353,0.001353 -0.001353,-0.001353 -0.001353)),((-0.001354 -0.001354,-0.001354 0.001354,0.001354 0.001354,0.001354 -0.001354,-0.001354 -0.001354)),((-0.001355 -0.001355,-0.001355 0.001355,0.001355 0.001355,0.001355 -0.001355,-0.001355 -0.001355)),((-0.001356 -0.001356,-0.001356 0.001356,0.001356 0.001356,0.001356 -0.001356,-0.001356 -0.001356)),((-0.001357 -0.001357,-0.001357 0.001357,0.001357 0.001357,0.001357 -0.001357,-0.001357 -0.001357)),((-0.001358 -0.001358,-0.001358 0.001358,0.001358 0.001358,0.001358 -0.001358,-0.001358 -0.001358)),((-0.001359 -0.001359,-0.001359 0.001359,0.001359 0.001359,0.001359 -0.001359,-0.001359 -0.001359)),((-0.00136 -0.00136,-0.00136 0.00136,0.00136 0.00136,0.00136 -0.00136,-0.00136 -0.00136)),((-0.001361 -0.001361,-0.001361 0.001361,0.001361 0.001361,0.001361 -0.001361,-0.001361 -0.001361)),((-0.001362 -0.001362,-0.001362 0.001362,0.001362 0.001362,0.001362 -0.001362,-0.001362 -0.001362)),((-0.001363 -0.001363,-0.001363 0.001363,0.001363 0.001363,0.001363 -0.001363,-0.001363 -0.001363)),((-0.001364 -0.001364,-0.001364 0.001364,0.001364 0.001364,0.001364 -0.001364,-0.001364 -0.001364)),((-0.001365 -0.001365,-0.001365 0.001365,0.001365 0.001365,0.001365 -0.001365,-0.001365 -0.001365)),((-0.001366 -0.001366,-0.001366 0.001366,0.001366 0.001366,0.001366 -0.001366,-0.001366 -0.001366)),((-0.001367 -0.001367,-0.001367 0.001367,0.001367 0.001367,0.001367 -0.001367,-0.001367 -0.001367)),((-0.001368 -0.001368,-0.001368 0.001368,0.001368 0.001368,0.001368 -0.001368,-0.001368 -0.001368)),((-0.001369 -0.001369,-0.001369 0.001369,0.001369 0.001369,0.001369 -0.001369,-0.001369 -0.001369)),((-0.00137 -0.00137,-0.00137 0.00137,0.00137 0.00137,0.00137 -0.00137,-0.00137 -0.00137)),((-0.001371 -0.001371,-0.001371 0.001371,0.001371 0.001371,0.001371 -0.001371,-0.001371 -0.001371)),((-0.001372 -0.001372,-0.001372 0.001372,0.001372 0.001372,0.001372 -0.001372,-0.001372 -0.001372)),((-0.001373 -0.001373,-0.001373 0.001373,0.001373 0.001373,0.001373 -0.001373,-0.001373 -0.001373)),((-0.001374 -0.001374,-0.001374 0.001374,0.001374 0.001374,0.001374 -0.001374,-0.001374 -0.001374)),((-0.001375 -0.001375,-0.001375 0.001375,0.001375 0.001375,0.001375 -0.001375,-0.001375 -0.001375)),((-0.001376 -0.001376,-0.001376 0.001376,0.001376 0.001376,0.001376 -0.001376,-0.001376 -0.001376)),((-0.001377 -0.001377,-0.001377 0.001377,0.001377 0.001377,0.001377 -0.001377,-0.001377 -0.001377)),((-0.001378 -0.001378,-0.001378 0.001378,0.001378 0.001378,0.001378 -0.001378,-0.001378 -0.001378)),((-0.001379 -0.001379,-0.001379 0.001379,0.001379 0.001379,0.001379 -0.001379,-0.001379 -0.001379)),((-0.00138 -0.00138,-0.00138 0.00138,0.00138 0.00138,0.00138 -0.00138,-0.00138 -0.00138)),((-0.001381 -0.001381,-0.001381 0.001381,0.001381 0.001381,0.001381 -0.001381,-0.001381 -0.001381)),((-0.001382 -0.001382,-0.001382 0.001382,0.001382 0.001382,0.001382 -0.001382,-0.001382 -0.001382)),((-0.001383 -0.001383,-0.001383 0.001383,0.001383 0.001383,0.001383 -0.001383,-0.001383 -0.001383)),((-0.001384 -0.001384,-0.001384 0.001384,0.001384 0.001384,0.001384 -0.001384,-0.001384 -0.001384)),((-0.001385 -0.001385,-0.001385 0.001385,0.001385 0.001385,0.001385 -0.001385,-0.001385 -0.001385)),((-0.001386 -0.001386,-0.001386 0.001386,0.001386 0.001386,0.001386 -0.001386,-0.001386 -0.001386)),((-0.001387 -0.001387,-0.001387 0.001387,0.001387 0.001387,0.001387 -0.001387,-0.001387 -0.001387)),((-0.001388 -0.001388,-0.001388 0.001388,0.001388 0.001388,0.001388 -0.001388,-0.001388 -0.001388)),((-0.001389 -0.001389,-0.001389 0.001389,0.001389 0.001389,0.001389 -0.001389,-0.001389 -0.001389)),((-0.00139 -0.00139,-0.00139 0.00139,0.00139 0.00139,0.00139 -0.00139,-0.00139 -0.00139)),((-0.001391 -0.001391,-0.001391 0.001391,0.001391 0.001391,0.001391 -0.001391,-0.001391 -0.001391)),((-0.001392 -0.001392,-0.001392 0.001392,0.001392 0.001392,0.001392 -0.001392,-0.001392 -0.001392)),((-0.001393 -0.001393,-0.001393 0.001393,0.001393 0.001393,0.001393 -0.001393,-0.001393 -0.001393)),((-0.001394 -0.001394,-0.001394 0.001394,0.001394 0.001394,0.001394 -0.001394,-0.001394 -0.001394)),((-0.001395 -0.001395,-0.001395 0.001395,0.001395 0.001395,0.001395 -0.001395,-0.001395 -0.001395)),((-0.001396 -0.001396,-0.001396 0.001396,0.001396 0.001396,0.001396 -0.001396,-0.001396 -0.001396)),((-0.001397 -0.001397,-0.001397 0.001397,0.001397 0.001397,0.001397 -0.001397,-0.001397 -0.001397)),((-0.001398 -0.001398,-0.001398 0.001398,0.001398 0.001398,0.001398 -0.001398,-0.001398 -0.001398)),((-0.001399 -0.001399,-0.001399 0.001399,0.001399 0.001399,0.001399 -0.001399,-0.001399 -0.001399)),((-0.0014 -0.0014,-0.0014 0.0014,0.0014 0.0014,0.0014 -0.0014,-0.0014 -0.0014)),((-0.001401 -0.001401,-0.001401 0.001401,0.001401 0.001401,0.001401 -0.001401,-0.001401 -0.001401)),((-0.001402 -0.001402,-0.001402 0.001402,0.001402 0.001402,0.001402 -0.001402,-0.001402 -0.001402)),((-0.001403 -0.001403,-0.001403 0.001403,0.001403 0.001403,0.001403 -0.001403,-0.001403 -0.001403)),((-0.001404 -0.001404,-0.001404 0.001404,0.001404 0.001404,0.001404 -0.001404,-0.001404 -0.001404)),((-0.001405 -0.001405,-0.001405 0.001405,0.001405 0.001405,0.001405 -0.001405,-0.001405 -0.001405)),((-0.001406 -0.001406,-0.001406 0.001406,0.001406 0.001406,0.001406 -0.001406,-0.001406 -0.001406)),((-0.001407 -0.001407,-0.001407 0.001407,0.001407 0.001407,0.001407 -0.001407,-0.001407 -0.001407)),((-0.001408 -0.001408,-0.001408 0.001408,0.001408 0.001408,0.001408 -0.001408,-0.001408 -0.001408)),((-0.001409 -0.001409,-0.001409 0.001409,0.001409 0.001409,0.001409 -0.001409,-0.001409 -0.001409)),((-0.00141 -0.00141,-0.00141 0.00141,0.00141 0.00141,0.00141 -0.00141,-0.00141 -0.00141)),((-0.001411 -0.001411,-0.001411 0.001411,0.001411 0.001411,0.001411 -0.001411,-0.001411 -0.001411)),((-0.001412 -0.001412,-0.001412 0.001412,0.001412 0.001412,0.001412 -0.001412,-0.001412 -0.001412)),((-0.001413 -0.001413,-0.001413 0.001413,0.001413 0.001413,0.001413 -0.001413,-0.001413 -0.001413)),((-0.001414 -0.001414,-0.001414 0.001414,0.001414 0.001414,0.001414 -0.001414,-0.001414 -0.001414)),((-0.001415 -0.001415,-0.001415 0.001415,0.001415 0.001415,0.001415 -0.001415,-0.001415 -0.001415)),((-0.001416 -0.001416,-0.001416 0.001416,0.001416 0.001416,0.001416 -0.001416,-0.001416 -0.001416)),((-0.001417 -0.001417,-0.001417 0.001417,0.001417 0.001417,0.001417 -0.001417,-0.001417 -0.001417)),((-0.001418 -0.001418,-0.001418 0.001418,0.001418 0.001418,0.001418 -0.001418,-0.001418 -0.001418)),((-0.001419 -0.001419,-0.001419 0.001419,0.001419 0.001419,0.001419 -0.001419,-0.001419 -0.001419)),((-0.00142 -0.00142,-0.00142 0.00142,0.00142 0.00142,0.00142 -0.00142,-0.00142 -0.00142)),((-0.001421 -0.001421,-0.001421 0.001421,0.001421 0.001421,0.001421 -0.001421,-0.001421 -0.001421)),((-0.001422 -0.001422,-0.001422 0.001422,0.001422 0.001422,0.001422 -0.001422,-0.001422 -0.001422)),((-0.001423 -0.001423,-0.001423 0.001423,0.001423 0.001423,0.001423 -0.001423,-0.001423 -0.001423)),((-0.001424 -0.001424,-0.001424 0.001424,0.001424 0.001424,0.001424 -0.001424,-0.001424 -0.001424)),((-0.001425 -0.001425,-0.001425 0.001425,0.001425 0.001425,0.001425 -0.001425,-0.001425 -0.001425)),((-0.001426 -0.001426,-0.001426 0.001426,0.001426 0.001426,0.001426 -0.001426,-0.001426 -0.001426)),((-0.001427 -0.001427,-0.001427 0.001427,0.001427 0.001427,0.001427 -0.001427,-0.001427 -0.001427)),((-0.001428 -0.001428,-0.001428 0.001428,0.001428 0.001428,0.001428 -0.001428,-0.001428 -0.001428)),((-0.001429 -0.001429,-0.001429 0.001429,0.001429 0.001429,0.001429 -0.001429,-0.001429 -0.001429)),((-0.00143 -0.00143,-0.00143 0.00143,0.00143 0.00143,0.00143 -0.00143,-0.00143 -0.00143)),((-0.001431 -0.001431,-0.001431 0.001431,0.001431 0.001431,0.001431 -0.001431,-0.001431 -0.001431)),((-0.001432 -0.001432,-0.001432 0.001432,0.001432 0.001432,0.001432 -0.001432,-0.001432 -0.001432)),((-0.001433 -0.001433,-0.001433 0.001433,0.001433 0.001433,0.001433 -0.001433,-0.001433 -0.001433)),((-0.001434 -0.001434,-0.001434 0.001434,0.001434 0.001434,0.001434 -0.001434,-0.001434 -0.001434)),((-0.001435 -0.001435,-0.001435 0.001435,0.001435 0.001435,0.001435 -0.001435,-0.001435 -0.001435)),((-0.001436 -0.001436,-0.001436 0.001436,0.001436 0.001436,0.001436 -0.001436,-0.001436 -0.001436)),((-0.001437 -0.001437,-0.001437 0.001437,0.001437 0.001437,0.001437 -0.001437,-0.001437 -0.001437)),((-0.001438 -0.001438,-0.001438 0.001438,0.001438 0.001438,0.001438 -0.001438,-0.001438 -0.001438)),((-0.001439 -0.001439,-0.001439 0.001439,0.001439 0.001439,0.001439 -0.001439,-0.001439 -0.001439)),((-0.00144 -0.00144,-0.00144 0.00144,0.00144 0.00144,0.00144 -0.00144,-0.00144 -0.00144)),((-0.001441 -0.001441,-0.001441 0.001441,0.001441 0.001441,0.001441 -0.001441,-0.001441 -0.001441)),((-0.001442 -0.001442,-0.001442 0.001442,0.001442 0.001442,0.001442 -0.001442,-0.001442 -0.001442)),((-0.001443 -0.001443,-0.001443 0.001443,0.001443 0.001443,0.001443 -0.001443,-0.001443 -0.001443)),((-0.001444 -0.001444,-0.001444 0.001444,0.001444 0.001444,0.001444 -0.001444,-0.001444 -0.001444)),((-0.001445 -0.001445,-0.001445 0.001445,0.001445 0.001445,0.001445 -0.001445,-0.001445 -0.001445)),((-0.001446 -0.001446,-0.001446 0.001446,0.001446 0.001446,0.001446 -0.001446,-0.001446 -0.001446)),((-0.001447 -0.001447,-0.001447 0.001447,0.001447 0.001447,0.001447 -0.001447,-0.001447 -0.001447)),((-0.001448 -0.001448,-0.001448 0.001448,0.001448 0.001448,0.001448 -0.001448,-0.001448 -0.001448)),((-0.001449 -0.001449,-0.001449 0.001449,0.001449 0.001449,0.001449 -0.001449,-0.001449 -0.001449)),((-0.00145 -0.00145,-0.00145 0.00145,0.00145 0.00145,0.00145 -0.00145,-0.00145 -0.00145)),((-0.001451 -0.001451,-0.001451 0.001451,0.001451 0.001451,0.001451 -0.001451,-0.001451 -0.001451)),((-0.001452 -0.001452,-0.001452 0.001452,0.001452 0.001452,0.001452 -0.001452,-0.001452 -0.001452)),((-0.001453 -0.001453,-0.001453 0.001453,0.001453 0.001453,0.001453 -0.001453,-0.001453 -0.001453)),((-0.001454 -0.001454,-0.001454 0.001454,0.001454 0.001454,0.001454 -0.001454,-0.001454 -0.001454)),((-0.001455 -0.001455,-0.001455 0.001455,0.001455 0.001455,0.001455 -0.001455,-0.001455 -0.001455)),((-0.001456 -0.001456,-0.001456 0.001456,0.001456 0.001456,0.001456 -0.001456,-0.001456 -0.001456)),((-0.001457 -0.001457,-0.001457 0.001457,0.001457 0.001457,0.001457 -0.001457,-0.001457 -0.001457)),((-0.001458 -0.001458,-0.001458 0.001458,0.001458 0.001458,0.001458 -0.001458,-0.001458 -0.001458)),((-0.001459 -0.001459,-0.001459 0.001459,0.001459 0.001459,0.001459 -0.001459,-0.001459 -0.001459)),((-0.00146 -0.00146,-0.00146 0.00146,0.00146 0.00146,0.00146 -0.00146,-0.00146 -0.00146)),((-0.001461 -0.001461,-0.001461 0.001461,0.001461 0.001461,0.001461 -0.001461,-0.001461 -0.001461)),((-0.001462 -0.001462,-0.001462 0.001462,0.001462 0.001462,0.001462 -0.001462,-0.001462 -0.001462)),((-0.001463 -0.001463,-0.001463 0.001463,0.001463 0.001463,0.001463 -0.001463,-0.001463 -0.001463)),((-0.001464 -0.001464,-0.001464 0.001464,0.001464 0.001464,0.001464 -0.001464,-0.001464 -0.001464)),((-0.001465 -0.001465,-0.001465 0.001465,0.001465 0.001465,0.001465 -0.001465,-0.001465 -0.001465)),((-0.001466 -0.001466,-0.001466 0.001466,0.001466 0.001466,0.001466 -0.001466,-0.001466 -0.001466)),((-0.001467 -0.001467,-0.001467 0.001467,0.001467 0.001467,0.001467 -0.001467,-0.001467 -0.001467)),((-0.001468 -0.001468,-0.001468 0.001468,0.001468 0.001468,0.001468 -0.001468,-0.001468 -0.001468)),((-0.001469 -0.001469,-0.001469 0.001469,0.001469 0.001469,0.001469 -0.001469,-0.001469 -0.001469)),((-0.00147 -0.00147,-0.00147 0.00147,0.00147 0.00147,0.00147 -0.00147,-0.00147 -0.00147)),((-0.001471 -0.001471,-0.001471 0.001471,0.001471 0.001471,0.001471 -0.001471,-0.001471 -0.001471)),((-0.001472 -0.001472,-0.001472 0.001472,0.001472 0.001472,0.001472 -0.001472,-0.001472 -0.001472)),((-0.001473 -0.001473,-0.001473 0.001473,0.001473 0.001473,0.001473 -0.001473,-0.001473 -0.001473)),((-0.001474 -0.001474,-0.001474 0.001474,0.001474 0.001474,0.001474 -0.001474,-0.001474 -0.001474)),((-0.001475 -0.001475,-0.001475 0.001475,0.001475 0.001475,0.001475 -0.001475,-0.001475 -0.001475)),((-0.001476 -0.001476,-0.001476 0.001476,0.001476 0.001476,0.001476 -0.001476,-0.001476 -0.001476)),((-0.001477 -0.001477,-0.001477 0.001477,0.001477 0.001477,0.001477 -0.001477,-0.001477 -0.001477)),((-0.001478 -0.001478,-0.001478 0.001478,0.001478 0.001478,0.001478 -0.001478,-0.001478 -0.001478)),((-0.001479 -0.001479,-0.001479 0.001479,0.001479 0.001479,0.001479 -0.001479,-0.001479 -0.001479)),((-0.00148 -0.00148,-0.00148 0.00148,0.00148 0.00148,0.00148 -0.00148,-0.00148 -0.00148)),((-0.001481 -0.001481,-0.001481 0.001481,0.001481 0.001481,0.001481 -0.001481,-0.001481 -0.001481)),((-0.001482 -0.001482,-0.001482 0.001482,0.001482 0.001482,0.001482 -0.001482,-0.001482 -0.001482)),((-0.001483 -0.001483,-0.001483 0.001483,0.001483 0.001483,0.001483 -0.001483,-0.001483 -0.001483)),((-0.001484 -0.001484,-0.001484 0.001484,0.001484 0.001484,0.001484 -0.001484,-0.001484 -0.001484)),((-0.001485 -0.001485,-0.001485 0.001485,0.001485 0.001485,0.001485 -0.001485,-0.001485 -0.001485)),((-0.001486 -0.001486,-0.001486 0.001486,0.001486 0.001486,0.001486 -0.001486,-0.001486 -0.001486)),((-0.001487 -0.001487,-0.001487 0.001487,0.001487 0.001487,0.001487 -0.001487,-0.001487 -0.001487)),((-0.001488 -0.001488,-0.001488 0.001488,0.001488 0.001488,0.001488 -0.001488,-0.001488 -0.001488)),((-0.001489 -0.001489,-0.001489 0.001489,0.001489 0.001489,0.001489 -0.001489,-0.001489 -0.001489)),((-0.00149 -0.00149,-0.00149 0.00149,0.00149 0.00149,0.00149 -0.00149,-0.00149 -0.00149)),((-0.001491 -0.001491,-0.001491 0.001491,0.001491 0.001491,0.001491 -0.001491,-0.001491 -0.001491)),((-0.001492 -0.001492,-0.001492 0.001492,0.001492 0.001492,0.001492 -0.001492,-0.001492 -0.001492)),((-0.001493 -0.001493,-0.001493 0.001493,0.001493 0.001493,0.001493 -0.001493,-0.001493 -0.001493)),((-0.001494 -0.001494,-0.001494 0.001494,0.001494 0.001494,0.001494 -0.001494,-0.001494 -0.001494)),((-0.001495 -0.001495,-0.001495 0.001495,0.001495 0.001495,0.001495 -0.001495,-0.001495 -0.001495)),((-0.001496 -0.001496,-0.001496 0.001496,0.001496 0.001496,0.001496 -0.001496,-0.001496 -0.001496)),((-0.001497 -0.001497,-0.001497 0.001497,0.001497 0.001497,0.001497 -0.001497,-0.001497 -0.001497)),((-0.001498 -0.001498,-0.001498 0.001498,0.001498 0.001498,0.001498 -0.001498,-0.001498 -0.001498)),((-0.001499 -0.001499,-0.001499 0.001499,0.001499 0.001499,0.001499 -0.001499,-0.001499 -0.001499)),((-0.0015 -0.0015,-0.0015 0.0015,0.0015 0.0015,0.0015 -0.0015,-0.0015 -0.0015)),((-0.001501 -0.001501,-0.001501 0.001501,0.001501 0.001501,0.001501 -0.001501,-0.001501 -0.001501)),((-0.001502 -0.001502,-0.001502 0.001502,0.001502 0.001502,0.001502 -0.001502,-0.001502 -0.001502)),((-0.001503 -0.001503,-0.001503 0.001503,0.001503 0.001503,0.001503 -0.001503,-0.001503 -0.001503)),((-0.001504 -0.001504,-0.001504 0.001504,0.001504 0.001504,0.001504 -0.001504,-0.001504 -0.001504)),((-0.001505 -0.001505,-0.001505 0.001505,0.001505 0.001505,0.001505 -0.001505,-0.001505 -0.001505)),((-0.001506 -0.001506,-0.001506 0.001506,0.001506 0.001506,0.001506 -0.001506,-0.001506 -0.001506)),((-0.001507 -0.001507,-0.001507 0.001507,0.001507 0.001507,0.001507 -0.001507,-0.001507 -0.001507)),((-0.001508 -0.001508,-0.001508 0.001508,0.001508 0.001508,0.001508 -0.001508,-0.001508 -0.001508)),((-0.001509 -0.001509,-0.001509 0.001509,0.001509 0.001509,0.001509 -0.001509,-0.001509 -0.001509)),((-0.00151 -0.00151,-0.00151 0.00151,0.00151 0.00151,0.00151 -0.00151,-0.00151 -0.00151)),((-0.001511 -0.001511,-0.001511 0.001511,0.001511 0.001511,0.001511 -0.001511,-0.001511 -0.001511)),((-0.001512 -0.001512,-0.001512 0.001512,0.001512 0.001512,0.001512 -0.001512,-0.001512 -0.001512)),((-0.001513 -0.001513,-0.001513 0.001513,0.001513 0.001513,0.001513 -0.001513,-0.001513 -0.001513)),((-0.001514 -0.001514,-0.001514 0.001514,0.001514 0.001514,0.001514 -0.001514,-0.001514 -0.001514)),((-0.001515 -0.001515,-0.001515 0.001515,0.001515 0.001515,0.001515 -0.001515,-0.001515 -0.001515)),((-0.001516 -0.001516,-0.001516 0.001516,0.001516 0.001516,0.001516 -0.001516,-0.001516 -0.001516)),((-0.001517 -0.001517,-0.001517 0.001517,0.001517 0.001517,0.001517 -0.001517,-0.001517 -0.001517)),((-0.001518 -0.001518,-0.001518 0.001518,0.001518 0.001518,0.001518 -0.001518,-0.001518 -0.001518)),((-0.001519 -0.001519,-0.001519 0.001519,0.001519 0.001519,0.001519 -0.001519,-0.001519 -0.001519)),((-0.00152 -0.00152,-0.00152 0.00152,0.00152 0.00152,0.00152 -0.00152,-0.00152 -0.00152)),((-0.001521 -0.001521,-0.001521 0.001521,0.001521 0.001521,0.001521 -0.001521,-0.001521 -0.001521)),((-0.001522 -0.001522,-0.001522 0.001522,0.001522 0.001522,0.001522 -0.001522,-0.001522 -0.001522)),((-0.001523 -0.001523,-0.001523 0.001523,0.001523 0.001523,0.001523 -0.001523,-0.001523 -0.001523)),((-0.001524 -0.001524,-0.001524 0.001524,0.001524 0.001524,0.001524 -0.001524,-0.001524 -0.001524)),((-0.001525 -0.001525,-0.001525 0.001525,0.001525 0.001525,0.001525 -0.001525,-0.001525 -0.001525)),((-0.001526 -0.001526,-0.001526 0.001526,0.001526 0.001526,0.001526 -0.001526,-0.001526 -0.001526)),((-0.001527 -0.001527,-0.001527 0.001527,0.001527 0.001527,0.001527 -0.001527,-0.001527 -0.001527)),((-0.001528 -0.001528,-0.001528 0.001528,0.001528 0.001528,0.001528 -0.001528,-0.001528 -0.001528)),((-0.001529 -0.001529,-0.001529 0.001529,0.001529 0.001529,0.001529 -0.001529,-0.001529 -0.001529)),((-0.00153 -0.00153,-0.00153 0.00153,0.00153 0.00153,0.00153 -0.00153,-0.00153 -0.00153)),((-0.001531 -0.001531,-0.001531 0.001531,0.001531 0.001531,0.001531 -0.001531,-0.001531 -0.001531)),((-0.001532 -0.001532,-0.001532 0.001532,0.001532 0.001532,0.001532 -0.001532,-0.001532 -0.001532)),((-0.001533 -0.001533,-0.001533 0.001533,0.001533 0.001533,0.001533 -0.001533,-0.001533 -0.001533)),((-0.001534 -0.001534,-0.001534 0.001534,0.001534 0.001534,0.001534 -0.001534,-0.001534 -0.001534)),((-0.001535 -0.001535,-0.001535 0.001535,0.001535 0.001535,0.001535 -0.001535,-0.001535 -0.001535)),((-0.001536 -0.001536,-0.001536 0.001536,0.001536 0.001536,0.001536 -0.001536,-0.001536 -0.001536)),((-0.001537 -0.001537,-0.001537 0.001537,0.001537 0.001537,0.001537 -0.001537,-0.001537 -0.001537)),((-0.001538 -0.001538,-0.001538 0.001538,0.001538 0.001538,0.001538 -0.001538,-0.001538 -0.001538)),((-0.001539 -0.001539,-0.001539 0.001539,0.001539 0.001539,0.001539 -0.001539,-0.001539 -0.001539)),((-0.00154 -0.00154,-0.00154 0.00154,0.00154 0.00154,0.00154 -0.00154,-0.00154 -0.00154)),((-0.001541 -0.001541,-0.001541 0.001541,0.001541 0.001541,0.001541 -0.001541,-0.001541 -0.001541)),((-0.001542 -0.001542,-0.001542 0.001542,0.001542 0.001542,0.001542 -0.001542,-0.001542 -0.001542)),((-0.001543 -0.001543,-0.001543 0.001543,0.001543 0.001543,0.001543 -0.001543,-0.001543 -0.001543)),((-0.001544 -0.001544,-0.001544 0.001544,0.001544 0.001544,0.001544 -0.001544,-0.001544 -0.001544)),((-0.001545 -0.001545,-0.001545 0.001545,0.001545 0.001545,0.001545 -0.001545,-0.001545 -0.001545)),((-0.001546 -0.001546,-0.001546 0.001546,0.001546 0.001546,0.001546 -0.001546,-0.001546 -0.001546)),((-0.001547 -0.001547,-0.001547 0.001547,0.001547 0.001547,0.001547 -0.001547,-0.001547 -0.001547)),((-0.001548 -0.001548,-0.001548 0.001548,0.001548 0.001548,0.001548 -0.001548,-0.001548 -0.001548)),((-0.001549 -0.001549,-0.001549 0.001549,0.001549 0.001549,0.001549 -0.001549,-0.001549 -0.001549)),((-0.00155 -0.00155,-0.00155 0.00155,0.00155 0.00155,0.00155 -0.00155,-0.00155 -0.00155)),((-0.001551 -0.001551,-0.001551 0.001551,0.001551 0.001551,0.001551 -0.001551,-0.001551 -0.001551)),((-0.001552 -0.001552,-0.001552 0.001552,0.001552 0.001552,0.001552 -0.001552,-0.001552 -0.001552)),((-0.001553 -0.001553,-0.001553 0.001553,0.001553 0.001553,0.001553 -0.001553,-0.001553 -0.001553)),((-0.001554 -0.001554,-0.001554 0.001554,0.001554 0.001554,0.001554 -0.001554,-0.001554 -0.001554)),((-0.001555 -0.001555,-0.001555 0.001555,0.001555 0.001555,0.001555 -0.001555,-0.001555 -0.001555)),((-0.001556 -0.001556,-0.001556 0.001556,0.001556 0.001556,0.001556 -0.001556,-0.001556 -0.001556)),((-0.001557 -0.001557,-0.001557 0.001557,0.001557 0.001557,0.001557 -0.001557,-0.001557 -0.001557)),((-0.001558 -0.001558,-0.001558 0.001558,0.001558 0.001558,0.001558 -0.001558,-0.001558 -0.001558)),((-0.001559 -0.001559,-0.001559 0.001559,0.001559 0.001559,0.001559 -0.001559,-0.001559 -0.001559)),((-0.00156 -0.00156,-0.00156 0.00156,0.00156 0.00156,0.00156 -0.00156,-0.00156 -0.00156)),((-0.001561 -0.001561,-0.001561 0.001561,0.001561 0.001561,0.001561 -0.001561,-0.001561 -0.001561)),((-0.001562 -0.001562,-0.001562 0.001562,0.001562 0.001562,0.001562 -0.001562,-0.001562 -0.001562)),((-0.001563 -0.001563,-0.001563 0.001563,0.001563 0.001563,0.001563 -0.001563,-0.001563 -0.001563)),((-0.001564 -0.001564,-0.001564 0.001564,0.001564 0.001564,0.001564 -0.001564,-0.001564 -0.001564)),((-0.001565 -0.001565,-0.001565 0.001565,0.001565 0.001565,0.001565 -0.001565,-0.001565 -0.001565)),((-0.001566 -0.001566,-0.001566 0.001566,0.001566 0.001566,0.001566 -0.001566,-0.001566 -0.001566)),((-0.001567 -0.001567,-0.001567 0.001567,0.001567 0.001567,0.001567 -0.001567,-0.001567 -0.001567)),((-0.001568 -0.001568,-0.001568 0.001568,0.001568 0.001568,0.001568 -0.001568,-0.001568 -0.001568)),((-0.001569 -0.001569,-0.001569 0.001569,0.001569 0.001569,0.001569 -0.001569,-0.001569 -0.001569)),((-0.00157 -0.00157,-0.00157 0.00157,0.00157 0.00157,0.00157 -0.00157,-0.00157 -0.00157)),((-0.001571 -0.001571,-0.001571 0.001571,0.001571 0.001571,0.001571 -0.001571,-0.001571 -0.001571)),((-0.001572 -0.001572,-0.001572 0.001572,0.001572 0.001572,0.001572 -0.001572,-0.001572 -0.001572)),((-0.001573 -0.001573,-0.001573 0.001573,0.001573 0.001573,0.001573 -0.001573,-0.001573 -0.001573)),((-0.001574 -0.001574,-0.001574 0.001574,0.001574 0.001574,0.001574 -0.001574,-0.001574 -0.001574)),((-0.001575 -0.001575,-0.001575 0.001575,0.001575 0.001575,0.001575 -0.001575,-0.001575 -0.001575)),((-0.001576 -0.001576,-0.001576 0.001576,0.001576 0.001576,0.001576 -0.001576,-0.001576 -0.001576)),((-0.001577 -0.001577,-0.001577 0.001577,0.001577 0.001577,0.001577 -0.001577,-0.001577 -0.001577)),((-0.001578 -0.001578,-0.001578 0.001578,0.001578 0.001578,0.001578 -0.001578,-0.001578 -0.001578)),((-0.001579 -0.001579,-0.001579 0.001579,0.001579 0.001579,0.001579 -0.001579,-0.001579 -0.001579)),((-0.00158 -0.00158,-0.00158 0.00158,0.00158 0.00158,0.00158 -0.00158,-0.00158 -0.00158)),((-0.001581 -0.001581,-0.001581 0.001581,0.001581 0.001581,0.001581 -0.001581,-0.001581 -0.001581)),((-0.001582 -0.001582,-0.001582 0.001582,0.001582 0.001582,0.001582 -0.001582,-0.001582 -0.001582)),((-0.001583 -0.001583,-0.001583 0.001583,0.001583 0.001583,0.001583 -0.001583,-0.001583 -0.001583)),((-0.001584 -0.001584,-0.001584 0.001584,0.001584 0.001584,0.001584 -0.001584,-0.001584 -0.001584)),((-0.001585 -0.001585,-0.001585 0.001585,0.001585 0.001585,0.001585 -0.001585,-0.001585 -0.001585)),((-0.001586 -0.001586,-0.001586 0.001586,0.001586 0.001586,0.001586 -0.001586,-0.001586 -0.001586)),((-0.001587 -0.001587,-0.001587 0.001587,0.001587 0.001587,0.001587 -0.001587,-0.001587 -0.001587)),((-0.001588 -0.001588,-0.001588 0.001588,0.001588 0.001588,0.001588 -0.001588,-0.001588 -0.001588)),((-0.001589 -0.001589,-0.001589 0.001589,0.001589 0.001589,0.001589 -0.001589,-0.001589 -0.001589)),((-0.00159 -0.00159,-0.00159 0.00159,0.00159 0.00159,0.00159 -0.00159,-0.00159 -0.00159)),((-0.001591 -0.001591,-0.001591 0.001591,0.001591 0.001591,0.001591 -0.001591,-0.001591 -0.001591)),((-0.001592 -0.001592,-0.001592 0.001592,0.001592 0.001592,0.001592 -0.001592,-0.001592 -0.001592)),((-0.001593 -0.001593,-0.001593 0.001593,0.001593 0.001593,0.001593 -0.001593,-0.001593 -0.001593)),((-0.001594 -0.001594,-0.001594 0.001594,0.001594 0.001594,0.001594 -0.001594,-0.001594 -0.001594)),((-0.001595 -0.001595,-0.001595 0.001595,0.001595 0.001595,0.001595 -0.001595,-0.001595 -0.001595)),((-0.001596 -0.001596,-0.001596 0.001596,0.001596 0.001596,0.001596 -0.001596,-0.001596 -0.001596)),((-0.001597 -0.001597,-0.001597 0.001597,0.001597 0.001597,0.001597 -0.001597,-0.001597 -0.001597)),((-0.001598 -0.001598,-0.001598 0.001598,0.001598 0.001598,0.001598 -0.001598,-0.001598 -0.001598)),((-0.001599 -0.001599,-0.001599 0.001599,0.001599 0.001599,0.001599 -0.001599,-0.001599 -0.001599)),((-0.0016 -0.0016,-0.0016 0.0016,0.0016 0.0016,0.0016 -0.0016,-0.0016 -0.0016)),((-0.001601 -0.001601,-0.001601 0.001601,0.001601 0.001601,0.001601 -0.001601,-0.001601 -0.001601)),((-0.001602 -0.001602,-0.001602 0.001602,0.001602 0.001602,0.001602 -0.001602,-0.001602 -0.001602)),((-0.001603 -0.001603,-0.001603 0.001603,0.001603 0.001603,0.001603 -0.001603,-0.001603 -0.001603)),((-0.001604 -0.001604,-0.001604 0.001604,0.001604 0.001604,0.001604 -0.001604,-0.001604 -0.001604)),((-0.001605 -0.001605,-0.001605 0.001605,0.001605 0.001605,0.001605 -0.001605,-0.001605 -0.001605)),((-0.001606 -0.001606,-0.001606 0.001606,0.001606 0.001606,0.001606 -0.001606,-0.001606 -0.001606)),((-0.001607 -0.001607,-0.001607 0.001607,0.001607 0.001607,0.001607 -0.001607,-0.001607 -0.001607)),((-0.001608 -0.001608,-0.001608 0.001608,0.001608 0.001608,0.001608 -0.001608,-0.001608 -0.001608)),((-0.001609 -0.001609,-0.001609 0.001609,0.001609 0.001609,0.001609 -0.001609,-0.001609 -0.001609)),((-0.00161 -0.00161,-0.00161 0.00161,0.00161 0.00161,0.00161 -0.00161,-0.00161 -0.00161)),((-0.001611 -0.001611,-0.001611 0.001611,0.001611 0.001611,0.001611 -0.001611,-0.001611 -0.001611)),((-0.001612 -0.001612,-0.001612 0.001612,0.001612 0.001612,0.001612 -0.001612,-0.001612 -0.001612)),((-0.001613 -0.001613,-0.001613 0.001613,0.001613 0.001613,0.001613 -0.001613,-0.001613 -0.001613)),((-0.001614 -0.001614,-0.001614 0.001614,0.001614 0.001614,0.001614 -0.001614,-0.001614 -0.001614)),((-0.001615 -0.001615,-0.001615 0.001615,0.001615 0.001615,0.001615 -0.001615,-0.001615 -0.001615)),((-0.001616 -0.001616,-0.001616 0.001616,0.001616 0.001616,0.001616 -0.001616,-0.001616 -0.001616)),((-0.001617 -0.001617,-0.001617 0.001617,0.001617 0.001617,0.001617 -0.001617,-0.001617 -0.001617)),((-0.001618 -0.001618,-0.001618 0.001618,0.001618 0.001618,0.001618 -0.001618,-0.001618 -0.001618)),((-0.001619 -0.001619,-0.001619 0.001619,0.001619 0.001619,0.001619 -0.001619,-0.001619 -0.001619)),((-0.00162 -0.00162,-0.00162 0.00162,0.00162 0.00162,0.00162 -0.00162,-0.00162 -0.00162)),((-0.001621 -0.001621,-0.001621 0.001621,0.001621 0.001621,0.001621 -0.001621,-0.001621 -0.001621)),((-0.001622 -0.001622,-0.001622 0.001622,0.001622 0.001622,0.001622 -0.001622,-0.001622 -0.001622)),((-0.001623 -0.001623,-0.001623 0.001623,0.001623 0.001623,0.001623 -0.001623,-0.001623 -0.001623)),((-0.001624 -0.001624,-0.001624 0.001624,0.001624 0.001624,0.001624 -0.001624,-0.001624 -0.001624)),((-0.001625 -0.001625,-0.001625 0.001625,0.001625 0.001625,0.001625 -0.001625,-0.001625 -0.001625)),((-0.001626 -0.001626,-0.001626 0.001626,0.001626 0.001626,0.001626 -0.001626,-0.001626 -0.001626)),((-0.001627 -0.001627,-0.001627 0.001627,0.001627 0.001627,0.001627 -0.001627,-0.001627 -0.001627)),((-0.001628 -0.001628,-0.001628 0.001628,0.001628 0.001628,0.001628 -0.001628,-0.001628 -0.001628)),((-0.001629 -0.001629,-0.001629 0.001629,0.001629 0.001629,0.001629 -0.001629,-0.001629 -0.001629)),((-0.00163 -0.00163,-0.00163 0.00163,0.00163 0.00163,0.00163 -0.00163,-0.00163 -0.00163)),((-0.001631 -0.001631,-0.001631 0.001631,0.001631 0.001631,0.001631 -0.001631,-0.001631 -0.001631)),((-0.001632 -0.001632,-0.001632 0.001632,0.001632 0.001632,0.001632 -0.001632,-0.001632 -0.001632)),((-0.001633 -0.001633,-0.001633 0.001633,0.001633 0.001633,0.001633 -0.001633,-0.001633 -0.001633)),((-0.001634 -0.001634,-0.001634 0.001634,0.001634 0.001634,0.001634 -0.001634,-0.001634 -0.001634)),((-0.001635 -0.001635,-0.001635 0.001635,0.001635 0.001635,0.001635 -0.001635,-0.001635 -0.001635)),((-0.001636 -0.001636,-0.001636 0.001636,0.001636 0.001636,0.001636 -0.001636,-0.001636 -0.001636)),((-0.001637 -0.001637,-0.001637 0.001637,0.001637 0.001637,0.001637 -0.001637,-0.001637 -0.001637)),((-0.001638 -0.001638,-0.001638 0.001638,0.001638 0.001638,0.001638 -0.001638,-0.001638 -0.001638)),((-0.001639 -0.001639,-0.001639 0.001639,0.001639 0.001639,0.001639 -0.001639,-0.001639 -0.001639)),((-0.00164 -0.00164,-0.00164 0.00164,0.00164 0.00164,0.00164 -0.00164,-0.00164 -0.00164)),((-0.001641 -0.001641,-0.001641 0.001641,0.001641 0.001641,0.001641 -0.001641,-0.001641 -0.001641)),((-0.001642 -0.001642,-0.001642 0.001642,0.001642 0.001642,0.001642 -0.001642,-0.001642 -0.001642)),((-0.001643 -0.001643,-0.001643 0.001643,0.001643 0.001643,0.001643 -0.001643,-0.001643 -0.001643)),((-0.001644 -0.001644,-0.001644 0.001644,0.001644 0.001644,0.001644 -0.001644,-0.001644 -0.001644)),((-0.001645 -0.001645,-0.001645 0.001645,0.001645 0.001645,0.001645 -0.001645,-0.001645 -0.001645)),((-0.001646 -0.001646,-0.001646 0.001646,0.001646 0.001646,0.001646 -0.001646,-0.001646 -0.001646)),((-0.001647 -0.001647,-0.001647 0.001647,0.001647 0.001647,0.001647 -0.001647,-0.001647 -0.001647)),((-0.001648 -0.001648,-0.001648 0.001648,0.001648 0.001648,0.001648 -0.001648,-0.001648 -0.001648)),((-0.001649 -0.001649,-0.001649 0.001649,0.001649 0.001649,0.001649 -0.001649,-0.001649 -0.001649)),((-0.00165 -0.00165,-0.00165 0.00165,0.00165 0.00165,0.00165 -0.00165,-0.00165 -0.00165)),((-0.001651 -0.001651,-0.001651 0.001651,0.001651 0.001651,0.001651 -0.001651,-0.001651 -0.001651)),((-0.001652 -0.001652,-0.001652 0.001652,0.001652 0.001652,0.001652 -0.001652,-0.001652 -0.001652)),((-0.001653 -0.001653,-0.001653 0.001653,0.001653 0.001653,0.001653 -0.001653,-0.001653 -0.001653)),((-0.001654 -0.001654,-0.001654 0.001654,0.001654 0.001654,0.001654 -0.001654,-0.001654 -0.001654)),((-0.001655 -0.001655,-0.001655 0.001655,0.001655 0.001655,0.001655 -0.001655,-0.001655 -0.001655)),((-0.001656 -0.001656,-0.001656 0.001656,0.001656 0.001656,0.001656 -0.001656,-0.001656 -0.001656)),((-0.001657 -0.001657,-0.001657 0.001657,0.001657 0.001657,0.001657 -0.001657,-0.001657 -0.001657)),((-0.001658 -0.001658,-0.001658 0.001658,0.001658 0.001658,0.001658 -0.001658,-0.001658 -0.001658)),((-0.001659 -0.001659,-0.001659 0.001659,0.001659 0.001659,0.001659 -0.001659,-0.001659 -0.001659)),((-0.00166 -0.00166,-0.00166 0.00166,0.00166 0.00166,0.00166 -0.00166,-0.00166 -0.00166)),((-0.001661 -0.001661,-0.001661 0.001661,0.001661 0.001661,0.001661 -0.001661,-0.001661 -0.001661)),((-0.001662 -0.001662,-0.001662 0.001662,0.001662 0.001662,0.001662 -0.001662,-0.001662 -0.001662)),((-0.001663 -0.001663,-0.001663 0.001663,0.001663 0.001663,0.001663 -0.001663,-0.001663 -0.001663)),((-0.001664 -0.001664,-0.001664 0.001664,0.001664 0.001664,0.001664 -0.001664,-0.001664 -0.001664)),((-0.001665 -0.001665,-0.001665 0.001665,0.001665 0.001665,0.001665 -0.001665,-0.001665 -0.001665)),((-0.001666 -0.001666,-0.001666 0.001666,0.001666 0.001666,0.001666 -0.001666,-0.001666 -0.001666)),((-0.001667 -0.001667,-0.001667 0.001667,0.001667 0.001667,0.001667 -0.001667,-0.001667 -0.001667)),((-0.001668 -0.001668,-0.001668 0.001668,0.001668 0.001668,0.001668 -0.001668,-0.001668 -0.001668)),((-0.001669 -0.001669,-0.001669 0.001669,0.001669 0.001669,0.001669 -0.001669,-0.001669 -0.001669)),((-0.00167 -0.00167,-0.00167 0.00167,0.00167 0.00167,0.00167 -0.00167,-0.00167 -0.00167)),((-0.001671 -0.001671,-0.001671 0.001671,0.001671 0.001671,0.001671 -0.001671,-0.001671 -0.001671)),((-0.001672 -0.001672,-0.001672 0.001672,0.001672 0.001672,0.001672 -0.001672,-0.001672 -0.001672)),((-0.001673 -0.001673,-0.001673 0.001673,0.001673 0.001673,0.001673 -0.001673,-0.001673 -0.001673)),((-0.001674 -0.001674,-0.001674 0.001674,0.001674 0.001674,0.001674 -0.001674,-0.001674 -0.001674)),((-0.001675 -0.001675,-0.001675 0.001675,0.001675 0.001675,0.001675 -0.001675,-0.001675 -0.001675)),((-0.001676 -0.001676,-0.001676 0.001676,0.001676 0.001676,0.001676 -0.001676,-0.001676 -0.001676)),((-0.001677 -0.001677,-0.001677 0.001677,0.001677 0.001677,0.001677 -0.001677,-0.001677 -0.001677)),((-0.001678 -0.001678,-0.001678 0.001678,0.001678 0.001678,0.001678 -0.001678,-0.001678 -0.001678)),((-0.001679 -0.001679,-0.001679 0.001679,0.001679 0.001679,0.001679 -0.001679,-0.001679 -0.001679)),((-0.00168 -0.00168,-0.00168 0.00168,0.00168 0.00168,0.00168 -0.00168,-0.00168 -0.00168)),((-0.001681 -0.001681,-0.001681 0.001681,0.001681 0.001681,0.001681 -0.001681,-0.001681 -0.001681)),((-0.001682 -0.001682,-0.001682 0.001682,0.001682 0.001682,0.001682 -0.001682,-0.001682 -0.001682)),((-0.001683 -0.001683,-0.001683 0.001683,0.001683 0.001683,0.001683 -0.001683,-0.001683 -0.001683)),((-0.001684 -0.001684,-0.001684 0.001684,0.001684 0.001684,0.001684 -0.001684,-0.001684 -0.001684)),((-0.001685 -0.001685,-0.001685 0.001685,0.001685 0.001685,0.001685 -0.001685,-0.001685 -0.001685)),((-0.001686 -0.001686,-0.001686 0.001686,0.001686 0.001686,0.001686 -0.001686,-0.001686 -0.001686)),((-0.001687 -0.001687,-0.001687 0.001687,0.001687 0.001687,0.001687 -0.001687,-0.001687 -0.001687)),((-0.001688 -0.001688,-0.001688 0.001688,0.001688 0.001688,0.001688 -0.001688,-0.001688 -0.001688)),((-0.001689 -0.001689,-0.001689 0.001689,0.001689 0.001689,0.001689 -0.001689,-0.001689 -0.001689)),((-0.00169 -0.00169,-0.00169 0.00169,0.00169 0.00169,0.00169 -0.00169,-0.00169 -0.00169)),((-0.001691 -0.001691,-0.001691 0.001691,0.001691 0.001691,0.001691 -0.001691,-0.001691 -0.001691)),((-0.001692 -0.001692,-0.001692 0.001692,0.001692 0.001692,0.001692 -0.001692,-0.001692 -0.001692)),((-0.001693 -0.001693,-0.001693 0.001693,0.001693 0.001693,0.001693 -0.001693,-0.001693 -0.001693)),((-0.001694 -0.001694,-0.001694 0.001694,0.001694 0.001694,0.001694 -0.001694,-0.001694 -0.001694)),((-0.001695 -0.001695,-0.001695 0.001695,0.001695 0.001695,0.001695 -0.001695,-0.001695 -0.001695)),((-0.001696 -0.001696,-0.001696 0.001696,0.001696 0.001696,0.001696 -0.001696,-0.001696 -0.001696)),((-0.001697 -0.001697,-0.001697 0.001697,0.001697 0.001697,0.001697 -0.001697,-0.001697 -0.001697)),((-0.001698 -0.001698,-0.001698 0.001698,0.001698 0.001698,0.001698 -0.001698,-0.001698 -0.001698)),((-0.001699 -0.001699,-0.001699 0.001699,0.001699 0.001699,0.001699 -0.001699,-0.001699 -0.001699)))