diff --git a/benchmarks/3d/buildings_prismmesh.geo b/benchmarks/3d/buildings_prismmesh.geo
new file mode 100644
index 0000000000000000000000000000000000000000..7ba4eb7f83c65d78cce7e77b75b4a280c9660cb6
--- /dev/null
+++ b/benchmarks/3d/buildings_prismmesh.geo
@@ -0,0 +1,1305 @@
+height=100;
+Point(1) = {75.90000000000001, 298.7, height,5};
+Point(2) = {59.4, 293.3, height,5};
+Point(3) = {32.3, 285.3, height,5};
+Point(4) = {27.8, 303.1, height,5};
+Point(5) = {23.4, 320.5, height,5};
+Point(6) = {18.9, 338.7, height,5};
+Point(7) = {47, 345.4, height,5};
+Point(8) = {128, 363.7, height,5};
+Point(9) = {188.1, 377, height,5};
+Point(10) = {191.2, 363.7, height,5};
+Point(11) = {150.7, 354.3, height,5};
+Point(12) = {151.6, 350.3, height,5};
+Point(13) = {132.4, 346.3, height,5};
+Point(14) = {131.1, 350.7, height,5};
+Point(15) = {50.5, 332.1, height,5};
+Point(16) = {52.3, 324.5, height,5};
+Point(17) = {46.1, 323.2, height,5};
+Point(18) = {39, 323.6, height,5};
+Point(19) = {43, 308, height,5};
+Point(20) = {44.3, 304, height,5};
+Point(21) = {56.8, 307.1, height,5};
+Point(22) = {71.5, 311.6, height,5};
+Point(23) = {88.8, 328, height,5};
+Point(24) = {103.1, 331.6, height,5};
+Point(25) = {108.8, 307.6, height,5};
+Point(26) = {95, 304.5, height,5};
+Point(27) = {126.6, 328.9, height,5};
+Point(28) = {140.4, 331.6, height,5};
+Point(29) = {145.3, 314.7, height,5};
+Point(30) = {131.1, 312, height,5};
+Point(31) = {164.5, 335.6, height,5};
+Point(32) = {178.3, 339.2, height,5};
+Point(33) = {183.2, 323.2, height,5};
+Point(34) = {169.4, 319.6, height,5};
+Point(35) = {37.2, 265.1, height,5};
+Point(36) = {51.9, 268.6, height,5};
+Point(37) = {62.1, 228.1, height,5};
+Point(38) = {83.5, 233.5, height,5};
+Point(39) = {82.59999999999999, 237, height,5};
+Point(40) = {121.3, 245.5, height,5};
+Point(41) = {134.2, 248.6, height,5};
+Point(42) = {188.1, 262, height,5};
+Point(43) = {201, 265.5, height,5};
+Point(44) = {194.3, 289.1, height,5};
+Point(45) = {206.8, 292.2, height,5};
+Point(46) = {215.2, 259.7, height,5};
+Point(47) = {217.9, 260.2, height,5};
+Point(48) = {220.6, 253.5, height,5};
+Point(49) = {192.1, 246.4, height,5};
+Point(50) = {138.2, 233.9, height,5};
+Point(51) = {124.9, 230.8, height,5};
+Point(52) = {86.09999999999999, 222.3, height,5};
+Point(53) = {87.5, 217.4, height,5};
+Point(54) = {65.7, 212.6, height,5};
+Point(55) = {64.8, 216.1, height,5};
+Point(56) = {50.1, 213, height,5};
+Point(57) = {197.9, 255.3, height,5};
+Point(58) = {203.2, 257.1, height,5};
+Point(59) = {159.1, 295.8, height,5};
+Point(60) = {174.7, 298.4, height,5};
+Point(61) = {178.7, 281.5, height,5};
+Point(62) = {164, 278.4, height,5};
+Point(63) = {120, 287.3, height,5};
+Point(64) = {134.2, 290.9, height,5};
+Point(65) = {138.7, 274.9, height,5};
+Point(66) = {124.4, 271.3, height,5};
+Point(67) = {85.7, 262.4, height,5};
+Point(68) = {99.90000000000001, 266, height,5};
+Point(69) = {95.5, 282, height,5};
+Point(70) = {82.09999999999999, 278.4, height,5};
+Point(71) = {79.5, 185.2, height,5};
+Point(72) = {127.1, 196.8, height,5};
+Point(73) = {131.1, 185.2, height,5};
+Point(74) = {127.5, 183.8, height,5};
+Point(75) = {133.3, 162.9, height,5};
+Point(76) = {127.1, 161.1, height,5};
+Point(77) = {120.9, 181.6, height,5};
+Point(78) = {88.8, 174.1, height,5};
+Point(79) = {92.8, 157.6, height,5};
+Point(80) = {74.09999999999999, 152.7, height,5};
+Point(81) = {69.2, 170.5, height,5};
+Point(82) = {76.8, 172.3, height,5};
+Point(83) = {80.8, 178.9, height,5};
+Point(84) = {81.3, 154, height,5};
+Point(85) = {84.40000000000001, 141.6, height,5};
+Point(86) = {125.3, 150.9, height,5};
+Point(87) = {121.8, 163.8, height,5};
+Point(88) = {143.6, 195.9, height,5};
+Point(89) = {172, 202.5, height,5};
+Point(90) = {174.3, 194.5, height,5};
+Point(91) = {145.8, 187.9, height,5};
+Point(92) = {186.7, 206.5, height,5};
+Point(93) = {266, 224.8, height,5};
+Point(94) = {270.9, 210.1, height,5};
+Point(95) = {294, 215, height,5};
+Point(96) = {298.9, 199.9, height,5};
+Point(97) = {263.7, 191.9, height,5};
+Point(98) = {260.2, 207, height,5};
+Point(99) = {264.2, 208.3, height,5};
+Point(100) = {262.4, 214.1, height,5};
+Point(101) = {189, 197.6, height,5};
+Point(102) = {200.5, 189.6, height,5};
+Point(103) = {223.7, 194.5, height,5};
+Point(104) = {222.8, 198.5, height,5};
+Point(105) = {245.5, 203.9, height,5};
+Point(106) = {247.7, 195.4, height,5};
+Point(108) = {225.5, 186.5, height,5};
+Point(110) = {310.5, 169.2, height,5};
+Point(111) = {323.4, 172.3, height,5};
+Point(112) = {325.6, 163.8, height,5};
+Point(113) = {344.7, 158.5, height,5};
+Point(114) = {341.2, 143.8, height,5};
+Point(115) = {334.5, 145.6, height,5};
+Point(116) = {335.8, 150, height,5};
+Point(117) = {328.7, 152.2, height,5};
+Point(118) = {324.7, 148.2, height,5};
+Point(119) = {318.5, 150, height,5};
+Point(120) = {309.1, 147.8, height,5};
+Point(121) = {306.9, 155.4, height,5};
+Point(122) = {314.5, 157.1, height,5};
+Point(123) = {264.2, 180.3, height,5};
+Point(124) = {274.9, 187.4, height,5};
+Point(125) = {282.9, 175.4, height,5};
+Point(126) = {288.2, 178.1, height,5};
+Point(127) = {292.7, 170, height,5};
+Point(128) = {271.3, 157.6, height,5};
+Point(129) = {266.4, 165.6, height,5};
+Point(130) = {271.3, 168.7, height,5};
+Point(131) = {236.6, 166.9, height,5};
+Point(132) = {246.8, 172.3, height,5};
+Point(133) = {253.5, 160.7, height,5};
+Point(134) = {257.9, 162.5, height,5};
+Point(135) = {262.4, 155.4, height,5};
+Point(136) = {241, 146, height,5};
+Point(137) = {237.5, 152.7, height,5};
+Point(138) = {242.4, 155.8, height,5};
+Point(139) = {289.1, 240.8, height,5};
+Point(140) = {329.2, 250.6, height,5};
+Point(141) = {350.1, 254.6, height,5};
+Point(142) = {371, 260, height,5};
+Point(143) = {391.9, 264.4, height,5};
+Point(144) = {412.4, 269.3, height,5};
+Point(145) = {441.3, 276, height,5};
+Point(146) = {448.9, 248.8, height,5};
+Point(147) = {456.4, 221.2, height,5};
+Point(148) = {427.1, 214.6, height,5};
+Point(149) = {406.2, 209.7, height,5};
+Point(150) = {385.7, 205.2, height,5};
+Point(151) = {364.8, 199.9, height,5};
+Point(152) = {343.8, 195, height,5};
+Point(153) = {323.4, 190.1, height,5};
+Point(154) = {320.3, 203.9, height,5};
+Point(155) = {340.7, 208.8, height,5};
+Point(156) = {355.4, 211.4, height,5};
+Point(157) = {351.4, 225.2, height,5};
+Point(158) = {346.5, 224.3, height,5};
+Point(159) = {344.7, 227.9, height,5};
+Point(160) = {350.1, 229.7, height,5};
+Point(161) = {347.8, 239.9, height,5};
+Point(162) = {332.7, 236.8, height,5};
+Point(163) = {312.2, 231.9, height,5};
+Point(164) = {312.7, 227.9, height,5};
+Point(165) = {304.7, 226.6, height,5};
+Point(166) = {303.3, 229.2, height,5};
+Point(167) = {293.1, 227, height,5};
+Point(168) = {359.9, 242.1, height,5};
+Point(169) = {367, 215.9, height,5};
+Point(170) = {395.9, 223, height,5};
+Point(171) = {387.9, 248.8, height,5};
+Point(172) = {401.3, 251, height,5};
+Point(173) = {430.6, 258.2, height,5};
+Point(174) = {437.3, 232.8, height,5};
+Point(175) = {408.8, 225.7, height,5};
+Point(176) = {405.3, 238.1, height,5};
+Point(177) = {415.9, 254.6, height,5};
+Point(178) = {434.6, 244.8, height,5};
+Point(179) = {423.5, 229.2, height,5};
+Point(180) = {392.8, 235.5, height,5};
+Point(181) = {374.6, 245.7, height,5};
+Point(182) = {382.1, 219, height,5};
+Point(183) = {363.9, 228.4, height,5};
+Point(184) = {234.8, 280.6, height,5};
+Point(185) = {240.1, 284.2, height,5};
+Point(186) = {261.5, 257.1, height,5};
+Point(187) = {249.5, 253.9, height,5};
+Point(188) = {243.7, 254.8, height,5};
+Point(189) = {242.8, 257.9, height,5};
+Point(190) = {249.9, 260.2, height,5};
+Point(191) = {243.3, 269.1, height,5};
+Point(192) = {239.3, 266.4, height,5};
+Point(193) = {237.9, 271.3, height,5};
+Point(194) = {240.6, 273.5, height,5};
+Point(195) = {241, 298.9, height,5};
+Point(196) = {252.2, 303.8, height,5};
+Point(197) = {264.2, 305.6, height,5};
+Point(198) = {265.5, 297.6, height,5};
+Point(199) = {255.7, 295.8, height,5};
+Point(200) = {260.2, 289.1, height,5};
+Point(201) = {263.3, 291.3, height,5};
+Point(202) = {266.4, 287.3, height,5};
+Point(203) = {263.3, 285.1, height,5};
+Point(204) = {271.7, 274, height,5};
+Point(205) = {268.6, 271.7, height,5};
+Point(206) = {266, 274.9, height,5};
+Point(207) = {262.4, 272.6, height,5};
+Point(208) = {272.6, 265.5, height,5};
+Point(209) = {283.8, 268.2, height,5};
+Point(210) = {285.5, 263.3, height,5};
+Point(211) = {273.5, 260.2, height,5};
+Point(212) = {278.4, 309.6, height,5};
+Point(213) = {315.8, 318.5, height,5};
+Point(214) = {371.4, 330.9, height,5};
+Point(215) = {394.1, 336.7, height,5};
+Point(216) = {423.5, 343, height,5};
+Point(217) = {429.7, 321.1, height,5};
+Point(218) = {435.5, 298.4, height,5};
+Point(219) = {405.7, 291.3, height,5};
+Point(220) = {383.5, 286, height,5};
+Point(221) = {326.9, 272.6, height,5};
+Point(222) = {289.1, 263.7, height,5};
+Point(223) = {286.4, 274.9, height,5};
+Point(224) = {323.8, 283.8, height,5};
+Point(225) = {365.2, 294, height,5};
+Point(226) = {364.8, 297.6, height,5};
+Point(227) = {374.1, 300.2, height,5};
+Point(228) = {375.4, 296.7, height,5};
+Point(229) = {383.9, 298.4, height,5};
+Point(230) = {383, 306, height,5};
+Point(231) = {391, 307.4, height,5};
+Point(232) = {393.2, 301.1, height,5};
+Point(233) = {379.9, 297.6, height,5};
+Point(234) = {402.6, 302.9, height,5};
+Point(235) = {418.2, 306.9, height,5};
+Point(236) = {415.5, 318, height,5};
+Point(237) = {410.6, 317.1, height,5};
+Point(238) = {409.7, 321.6, height,5};
+Point(239) = {416.8, 323.4, height,5};
+Point(240) = {415.1, 329.6, height,5};
+Point(241) = {396.8, 325.2, height,5};
+Point(242) = {387.5, 322.9, height,5};
+Point(243) = {388.8, 315.8, height,5};
+Point(244) = {380.3, 314, height,5};
+Point(245) = {379, 319.4, height,5};
+Point(246) = {374.6, 318.5, height,5};
+Point(247) = {318.9, 305.1, height,5};
+Point(248) = {281.1, 296.7, height,5};
+Point(249) = {428.8, 340.3, height,5};
+Point(250) = {432.4, 341.2, height,5};
+Point(251) = {435.5, 330, height,5};
+Point(252) = {431.5, 329.2, height,5};
+Point(253) = {207.4, 381.5, height,5};
+Point(254) = {240.8, 389.5, height,5};
+Point(255) = {258.2, 393.5, height,5};
+Point(256) = {275.1, 397, height,5};
+Point(257) = {293.8, 401.5, height,5};
+Point(258) = {309.8, 405, height,5};
+Point(259) = {325.8, 409, height,5};
+Point(260) = {344.5, 412.6, height,5};
+Point(261) = {361, 417.1, height,5};
+Point(262) = {377.9, 420.6, height,5};
+Point(263) = {401, 425.5, height,5};
+Point(264) = {408.2, 401.5, height,5};
+Point(265) = {412.6, 384.1, height,5};
+Point(266) = {419.3, 360.5, height,5};
+Point(267) = {394.4, 354.3, height,5};
+Point(268) = {377.4, 350.3, height,5};
+Point(269) = {345, 342.3, height,5};
+Point(270) = {326.7, 338.7, height,5};
+Point(271) = {309.8, 334.3, height,5};
+Point(272) = {279.1, 327.2, height,5};
+Point(273) = {268.8, 366.3, height,5};
+Point(274) = {280.9, 369, height,5};
+Point(275) = {288, 341.8, height,5};
+Point(276) = {307.1, 345.8, height,5};
+Point(277) = {324, 349.4, height,5};
+Point(278) = {340.9, 355.2, height,5};
+Point(279) = {374.8, 362.3, height,5};
+Point(280) = {391.7, 366.3, height,5};
+Point(281) = {403.3, 369, height,5};
+Point(282) = {399.7, 381, height,5};
+Point(283) = {395.2, 398.4, height,5};
+Point(284) = {391.7, 410.8, height,5};
+Point(285) = {381, 408.2, height,5};
+Point(286) = {363.6, 404.6, height,5};
+Point(287) = {347.2, 400.6, height,5};
+Point(288) = {329.4, 396.6, height,5};
+Point(289) = {312.9, 392.6, height,5};
+Point(290) = {296.9, 389, height,5};
+Point(291) = {284.4, 385.9, height,5};
+Point(292) = {287.1, 376.1, height,5};
+Point(293) = {280.9, 374.3, height,5};
+Point(294) = {276.4, 373, height,5};
+Point(295) = {272.9, 385, height,5};
+Point(296) = {261.3, 382.3, height,5};
+Point(297) = {249.3, 380.1, height,5};
+Point(298) = {251.9, 368.1, height,5};
+Point(299) = {246.6, 367.2, height,5};
+Point(300) = {241.3, 365.9, height,5};
+Point(301) = {238.6, 377, height,5};
+Point(302) = {223, 373.9, height,5};
+Point(303) = {226.6, 361.9, height,5};
+Point(304) = {213.7, 358.8, height,5};
+Point(305) = {317.8, 374.8, height,5};
+Point(306) = {334.7, 378.8, height,5};
+Point(307) = {369, 385.5, height,5};
+Point(308) = {384.6, 390.4, height,5};
+Point(309) = {388.6, 377.9, height,5};
+Point(310) = {371.7, 374.3, height,5};
+Point(311) = {337.8, 365.9, height,5};
+Point(312) = {320.9, 362.3, height,5};
+Point(313) = {219.4, 335.6, height,5};
+Point(314) = {236.4, 340.1, height,5};
+Point(315) = {238.1, 334.3, height,5};
+Point(316) = {220.8, 329.8, height,5};
+Point(317) = {240.4, 341.8, height,5};
+Point(318) = {252.8, 344.5, height,5};
+Point(319) = {259.5, 316, height,5};
+Point(320) = {243.5, 312.9, height,5};
+Point(321) = {226.6, 309.4, height,5};
+Point(322) = {225.7, 315.1, height,5};
+Point(323) = {242.6, 319.1, height,5};
+Point(324) = {243.5, 316, height,5};
+Point(325) = {254.2, 318.3, height,5};
+Point(326) = {253.7, 321.4, height,5};
+Point(327) = {245.7, 320.5, height,5};
+Point(328) = {242.6, 333.4, height,5};
+Point(329) = {250.6, 334.7, height,5};
+Point(330) = {249.7, 339.2, height,5};
+Point(331) = {241.7, 336.9, height,5};
+Point(332) = {423.5, 462.5, height,5};
+Point(333) = {431.5, 463.3, height,5};
+Point(334) = {438.6, 435.3, height,5};
+Point(335) = {431.1, 433.5, height,5};
+Point(337) = {427.1, 432.6, height,5};
+Point(338) = {424, 432.2, height,5};
+Point(339) = {416.4, 436.2, height,5};
+Point(340) = {414.6, 442.9, height,5};
+Point(341) = {404.8, 440.6, height,5};
+Point(342) = {399.5, 459.3, height,5};
+Point(343) = {418.2, 461.6, height,5};
+Point(344) = {421.3, 451.8, height,5};
+Point(345) = {412.4, 450.4, height,5};
+Point(346) = {411.9, 453.1, height,5};
+Point(347) = {405.3, 453.6, height,5};
+Point(348) = {407, 445.5, height,5};
+Point(349) = {415.9, 448.2, height,5};
+Point(350) = {418.6, 445.5, height,5};
+Point(351) = {419.5, 438.4, height,5};
+Point(352) = {424, 436.2, height,5};
+Point(353) = {426.6, 436.6, height,5};
+Point(354) = {452.4, 415.7, height,5};
+Point(355) = {468.9, 419.3, height,5};
+Point(356) = {472.5, 406.8, height,5};
+Point(357) = {468.9, 405.9, height,5};
+Point(358) = {473.4, 387.7, height,5};
+Point(359) = {549, 404.6, height,5};
+Point(360) = {552.6, 392.1, height,5};
+Point(361) = {464, 372.1, height,5};
+Point(362) = {468.7, 355.6, height,5};
+Point(363) = {548.3, 373.9, height,5};
+Point(364) = {565.3, 377.4, height,5};
+Point(365) = {586.2000000000001, 381.9, height,5};
+Point(366) = {607.5, 387.2, height,5};
+Point(367) = {634.2000000000001, 393.5, height,5};
+Point(368) = {650.3, 397, height,5};
+Point(369) = {669.4, 401.5, height,5};
+Point(370) = {686.8, 405, height,5};
+Point(371) = {697.9, 360.5, height,5};
+Point(372) = {680.5, 356.5, height,5};
+Point(373) = {661, 352.1, height,5};
+Point(374) = {645.4, 348.5, height,5};
+Point(375) = {642.7000000000001, 359.6, height,5};
+Point(376) = {658.3, 363.7, height,5};
+Point(377) = {663.2000000000001, 365, height,5};
+Point(378) = {662.3, 369, height,5};
+Point(379) = {671.6, 371.7, height,5};
+Point(380) = {673, 367.7, height,5};
+Point(381) = {677.4, 367.7, height,5};
+Point(382) = {671.6, 389.5, height,5};
+Point(383) = {667.6, 389, height,5};
+Point(384) = {669.4, 381.9, height,5};
+Point(385) = {659.6, 380.1, height,5};
+Point(386) = {657.8, 387.7, height,5};
+Point(387) = {652.9, 386.8, height,5};
+Point(388) = {636.9, 383.2, height,5};
+Point(389) = {610.2000000000001, 377.4, height,5};
+Point(390) = {611.1, 373.4, height,5};
+Point(391) = {589.7000000000001, 368.1, height,5};
+Point(392) = {568.8, 363.7, height,5};
+Point(393) = {567.9, 367.7, height,5};
+Point(394) = {551, 362.8, height,5};
+Point(395) = {482, 348.5, height,5};
+Point(396) = {487.8, 323.6, height,5};
+Point(397) = {498.9, 325.8, height,5};
+Point(398) = {503.4, 327.2, height,5};
+Point(399) = {503, 332.1, height,5};
+Point(401) = {514.5, 329.8, height,5};
+Point(402) = {519.4, 330.3, height,5};
+Point(403) = {531.4, 334.3, height,5};
+Point(404) = {528.3, 345.8, height,5};
+Point(405) = {541.7000000000001, 349, height,5};
+Point(406) = {545.2000000000001, 337.4, height,5};
+Point(407) = {557.3, 339.6, height,5};
+Point(408) = {574.2000000000001, 343.6, height,5};
+Point(409) = {573.3, 347.6, height,5};
+Point(410) = {594.2000000000001, 352.5, height,5};
+Point(411) = {614.7000000000001, 357, height,5};
+Point(412) = {618.7000000000001, 342.3, height,5};
+Point(413) = {597.8, 336.9, height,5};
+Point(414) = {576.8, 332.1, height,5};
+Point(415) = {559.9, 328, height,5};
+Point(416) = {522.1, 319.6, height,5};
+Point(417) = {502.1, 315.1, height,5};
+Point(418) = {480.7, 309.8, height,5};
+Point(419) = {486.5, 287.3, height,5};
+Point(420) = {508.7, 292.7, height,5};
+Point(421) = {526.1, 296.2, height,5};
+Point(422) = {554.6, 302.9, height,5};
+Point(423) = {576.4, 308.2, height,5};
+Point(424) = {597.3, 313.6, height,5};
+Point(425) = {611.1, 316.3, height,5};
+Point(426) = {624.9, 320.3, height,5};
+Point(427) = {644.9, 324.7, height,5};
+Point(428) = {662.7000000000001, 328.7, height,5};
+Point(429) = {680.1, 332.7, height,5};
+Point(430) = {706.8, 338.9, height,5};
+Point(431) = {721.5, 283.8, height,5};
+Point(432) = {657.8, 269.5, height,5};
+Point(433) = {638.7000000000001, 265.1, height,5};
+Point(434) = {624.5, 262, height,5};
+Point(435) = {611.1, 258.8, height,5};
+Point(436) = {575.5, 250.4, height,5};
+Point(437) = {540.8, 241.5, height,5};
+Point(438) = {537.2000000000001, 253.9, height,5};
+Point(439) = {572.4, 262.8, height,5};
+Point(440) = {608.4, 270.9, height,5};
+Point(441) = {621.8, 274.9, height,5};
+Point(442) = {635.1, 277.1, height,5};
+Point(443) = {640.9, 278.9, height,5};
+Point(444) = {638.7000000000001, 288.2, height,5};
+Point(445) = {647.2000000000001, 289.5, height,5};
+Point(446) = {649.8, 282.4, height,5};
+Point(447) = {655.2000000000001, 282.4, height,5};
+Point(448) = {704.1, 295.8, height,5};
+Point(449) = {701, 306.9, height,5};
+Point(450) = {691.2000000000001, 304.2, height,5};
+Point(451) = {690.8, 309.6, height,5};
+Point(452) = {701.5, 312.7, height,5};
+Point(453) = {697.9, 323.4, height,5};
+Point(454) = {683.2000000000001, 318.9, height,5};
+Point(455) = {678.8, 318, height,5};
+Point(456) = {680.5, 310.5, height,5};
+Point(457) = {672.1, 309.1, height,5};
+Point(458) = {669.9, 316.3, height,5};
+Point(459) = {665.4, 315.8, height,5};
+Point(460) = {660.1, 314.5, height,5};
+Point(461) = {662.7000000000001, 307.4, height,5};
+Point(462) = {653.4, 305.1, height,5};
+Point(463) = {651.6, 312.2, height,5};
+Point(464) = {647.6, 312.2, height,5};
+Point(465) = {640.9, 309.6, height,5};
+Point(466) = {644, 300.7, height,5};
+Point(467) = {635.1, 298.4, height,5};
+Point(468) = {632.9, 307.4, height,5};
+Point(469) = {628, 306, height,5};
+Point(470) = {614.2000000000001, 303.3, height,5};
+Point(471) = {600.9, 299.3, height,5};
+Point(472) = {600, 302.9, height,5};
+Point(473) = {578.6, 298.9, height,5};
+Point(474) = {556.8, 292.7, height,5};
+Point(475) = {561.7000000000001, 276.2, height,5};
+Point(476) = {555.5, 275.3, height,5};
+Point(477) = {551, 290, height,5};
+Point(478) = {535, 286, height,5};
+Point(479) = {539, 270.9, height,5};
+Point(480) = {524.3, 266.4, height,5};
+Point(481) = {515.4, 264.6, height,5};
+Point(482) = {514.5, 270.9, height,5};
+Point(483) = {531.4, 275.3, height,5};
+Point(484) = {528.3, 285.5, height,5};
+Point(485) = {510.5, 281.1, height,5};
+Point(486) = {504.7, 279.8, height,5};
+Point(487) = {508.3, 262.8, height,5};
+Point(488) = {511.9, 247.7, height,5};
+Point(489) = {519.9, 249.5, height,5};
+Point(490) = {523.4, 237.9, height,5};
+Point(491) = {501.2, 232.6, height,5};
+Point(492) = {494.1, 259.7, height,5};
+Point(493) = {507.8, 207.4, height,5};
+Point(494) = {548.8, 216.8, height,5};
+Point(495) = {553.2000000000001, 199.9, height,5};
+Point(496) = {512.3, 190.1, height,5};
+Point(497) = {513.6, 185.6, height,5};
+Point(498) = {530.5, 190.1, height,5};
+Point(499) = {533.2000000000001, 180.7, height,5};
+Point(500) = {527, 178.9, height,5};
+Point(501) = {533.2000000000001, 154, height,5};
+Point(502) = {540.8, 155.8, height,5};
+Point(503) = {542.6, 152.2, height,5};
+Point(504) = {523.4, 147.3, height,5};
+Point(505) = {558.1, 219, height,5};
+Point(506) = {599.1, 228.8, height,5};
+Point(507) = {596.9, 237.7, height,5};
+Point(508) = {638.3, 247, height,5};
+Point(509) = {649.4, 206.1, height,5};
+Point(510) = {620, 199.4, height,5};
+Point(511) = {616.9, 211, height,5};
+Point(512) = {633.8, 215, height,5};
+Point(513) = {628.9, 231.5, height,5};
+Point(514) = {600.4, 225.2, height,5};
+Point(515) = {602.2000000000001, 216.8, height,5};
+Point(516) = {572.8, 210.1, height,5};
+Point(517) = {578.6, 190.5, height,5};
+Point(518) = {599.1, 195, height,5};
+Point(519) = {602.6, 183, height,5};
+Point(520) = {568.8, 175.4, height,5};
+Point(521) = {337.2, 98.8, height,5};
+Point(522) = {340.3, 108.6, height,5};
+Point(523) = {344.7, 107.3, height,5};
+Point(524) = {380.3, 134.4, height,5};
+Point(525) = {385.7, 128.7, height,5};
+Point(526) = {355.9, 104.6, height,5};
+Point(527) = {359.4, 103.3, height,5};
+Point(528) = {356.3, 93.09999999999999, height,5};
+Point(529) = {333.2, 95.7, height,5};
+Point(530) = {399.9, 75.2, height,5};
+Point(531) = {395, 59.2, height,5};
+Point(532) = {400.8, 57.4, height,5};
+Point(533) = {399.5, 50.8, height,5};
+Point(534) = {393.7, 52.6, height,5};
+Point(535) = {390.1, 45, height,5};
+Point(536) = {331.4, 62.3, height,5};
+Point(537) = {333.2, 67.2, height,5};
+Point(538) = {328.7, 68.59999999999999, height,5};
+Point(539) = {334, 83.7, height,5};
+Point(540) = {329.6, 85, height,5};
+Point(541) = {302.5, 135.3, height,5};
+Point(542) = {326.9, 128.2, height,5};
+Point(543) = {316.2, 98.40000000000001, height,5};
+Point(544) = {285.1, 107.3, height,5};
+Point(545) = {286.9, 113.1, height,5};
+Point(546) = {291.8, 111.7, height,5};
+Point(547) = {293.1, 115.3, height,5};
+Point(548) = {310.5, 110.9, height,5};
+Point(549) = {315.4, 122.4, height,5};
+Point(550) = {305.6, 125.5, height,5};
+Point(551) = {306.9, 129.1, height,5};
+Point(552) = {300.7, 130.9, height,5};
+Point(553) = {528.1, 130.9, height,5};
+Point(554) = {542.3, 134.4, height,5};
+Point(555) = {550.4, 103.7, height,5};
+Point(556) = {536.6, 100.6, height,5};
+Point(557) = {450.2, 38.8, height,5};
+Point(558) = {488.5, 47.7, height,5};
+Point(559) = {490.3, 43.2, height,5};
+Point(560) = {496.1, 44.5, height,5};
+Point(561) = {496.9, 39.6, height,5};
+Point(562) = {452.4, 29, height,5};
+Point(563) = {251.9, 137.1, height,5};
+Point(564) = {281.3, 136.7, height,5};
+Point(565) = {281.3, 129.5, height,5};
+Point(566) = {251.9, 129.5, height,5};
+Point(568) = {223.7, 194.5, height,5};
+Point(569) = {222.8, 198.5, height,5};
+Point(572) = {225, 190.1, height,5};
+Point(573) = {225.5, 186.5, height,5};
+Point(574) = {202.8, 181.2, height,5};
+Point(575) = {209.9, 161.1, height,5};
+Point(576) = {221.9, 162.5, height,5};
+Point(577) = {223.7, 150.5, height,5};
+Point(578) = {229, 150.5, height,5};
+Point(579) = {230.8, 141.6, height,5};
+Point(580) = {207.2, 138.4, height,5};
+Point(581) = {205.9, 147.8, height,5};
+Point(582) = {211.7, 149.1, height,5};
+Point(583) = {181.4, 162.5, height,5};
+Point(584) = {193.4, 160.3, height,5};
+Point(585) = {192.1, 146.9, height,5};
+Point(586) = {197.9, 145.6, height,5};
+Point(587) = {196.5, 135.8, height,5};
+Point(588) = {170.7, 138.4, height,5};
+Point(589) = {172, 148.7, height,5};
+Point(590) = {179.6, 147.8, height,5};
+Point(591) = {138.7, 153.6, height,5};
+Point(592) = {167.6, 150, height,5};
+Point(593) = {165.8, 142, height,5};
+Point(594) = {137.8, 146, height,5};
+Point(596) = {-200, -200, height,50};
+Point(597) = {900, -200, height,50};
+Point(598) = {-200, 700, height,50};
+Point(599) = {900, 700, height,50};
+Point(600) = {196, 263, height,5};
+Point(601) = {513.2000000000001, 334.2, height,5};
+Line (1) = {81, 82};
+Line (2) = {83, 71};
+Line (3) = {82, 83};
+Line (4) = {71, 72};
+Line (5) = {72, 73};
+Line (6) = {73, 74};
+Line (7) = {74, 75};
+Line (8) = {75, 76};
+Line (9) = {76, 77};
+Line (10) = {77, 78};
+Line (11) = {78, 79};
+Line (12) = {79, 87};
+Line (13) = {86, 87};
+Line (14) = {86, 85};
+Line (15) = {85, 84};
+Line (16) = {84, 80};
+Line (17) = {80, 81};
+Line (18) = {88, 89};
+Line (19) = {89, 90};
+Line (20) = {90, 91};
+Line (21) = {91, 88};
+Line (22) = {591, 592};
+Line (23) = {592, 593};
+Line (24) = {593, 594};
+Line (25) = {594, 591};
+Line (26) = {589, 590};
+Line (27) = {590, 583};
+Line (28) = {583, 584};
+Line (29) = {584, 585};
+Line (30) = {585, 586};
+Line (31) = {586, 587};
+Line (32) = {587, 588};
+Line (33) = {588, 589};
+Line (34) = {599, 598};
+Line (35) = {598, 596};
+Line (36) = {596, 597};
+Line (37) = {597, 599};
+Line (40) = {92, 101};
+Line (42) = {569, 568};
+Line (44) = {106, 105};
+Line (46) = {573, 572};
+Line (48) = {574, 102};
+Line (49) = {123, 124};
+Line (50) = {124, 125};
+Line (51) = {125, 126};
+Line (52) = {126, 127};
+Line (53) = {127, 128};
+Line (54) = {128, 129};
+Line (55) = {129, 130};
+Line (56) = {130, 123};
+Line (59) = {131, 132};
+Line (60) = {132, 133};
+Line (61) = {133, 134};
+Line (62) = {134, 135};
+Line (63) = {135, 136};
+Line (64) = {136, 137};
+Line (65) = {137, 138};
+Line (66) = {138, 131};
+Line (68) = {577, 576};
+Line (69) = {577, 578};
+Line (70) = {578, 579};
+Line (71) = {579, 580};
+Line (72) = {580, 581};
+Line (73) = {581, 582};
+Line (74) = {582, 575};
+Line (75) = {575, 576};
+Line (76) = {98, 97};
+Line (77) = {98, 99};
+Line (78) = {99, 100};
+Line (79) = {100, 101};
+Line (80) = {93, 94};
+Line (81) = {94, 95};
+Line (82) = {93, 92};
+Line (83) = {97, 96};
+Line (84) = {96, 95};
+Line (85) = {563, 564};
+Line (86) = {564, 565};
+Line (87) = {565, 566};
+Line (88) = {566, 563};
+Line (89) = {105, 569};
+Line (90) = {568, 102};
+Line (91) = {574, 573};
+Line (92) = {572, 106};
+Line (93) = {139, 140};
+Line (94) = {140, 141};
+Line (95) = {141, 142};
+Line (96) = {142, 143};
+Line (97) = {143, 144};
+Line (98) = {144, 145};
+Line (99) = {145, 146};
+Line (100) = {146, 147};
+Line (101) = {147, 148};
+Line (102) = {148, 149};
+Line (103) = {149, 150};
+Line (104) = {150, 151};
+Line (105) = {151, 152};
+Line (106) = {152, 153};
+Line (107) = {153, 154};
+Line (108) = {154, 155};
+Line (109) = {155, 156};
+Line (111) = {169, 182};
+Line (112) = {182, 170};
+Line (113) = {180, 170};
+Line (114) = {180, 171};
+Line (115) = {171, 181};
+Line (116) = {181, 168};
+Line (117) = {168, 183};
+Line (118) = {183, 169};
+Line (119) = {156, 157};
+Line (120) = {157, 158};
+Line (121) = {158, 159};
+Line (122) = {159, 160};
+Line (123) = {160, 161};
+Line (124) = {161, 162};
+Line (125) = {162, 163};
+Line (126) = {163, 164};
+Line (127) = {164, 165};
+Line (128) = {165, 166};
+Line (129) = {166, 167};
+Line (130) = {167, 139};
+Line (131) = {175, 179};
+Line (132) = {179, 174};
+Line (133) = {174, 178};
+Line (134) = {178, 173};
+Line (135) = {173, 177};
+Line (136) = {177, 172};
+Line (137) = {172, 176};
+Line (138) = {176, 175};
+Line (139) = {110, 111};
+Line (140) = {111, 112};
+Line (141) = {112, 113};
+Line (142) = {113, 114};
+Line (143) = {114, 115};
+Line (144) = {115, 116};
+Line (145) = {116, 117};
+Line (146) = {117, 118};
+Line (147) = {118, 119};
+Line (148) = {119, 120};
+Line (149) = {120, 121};
+Line (150) = {121, 122};
+Line (151) = {122, 110};
+Line (152) = {524, 525};
+Line (153) = {525, 526};
+Line (154) = {526, 527};
+Line (155) = {527, 528};
+Line (156) = {528, 521};
+Line (157) = {521, 522};
+Line (158) = {522, 523};
+Line (159) = {523, 524};
+Line (160) = {544, 543};
+Line (161) = {543, 542};
+Line (162) = {542, 541};
+Line (163) = {541, 552};
+Line (164) = {552, 551};
+Line (165) = {551, 550};
+Line (166) = {550, 549};
+Line (167) = {549, 548};
+Line (168) = {548, 547};
+Line (169) = {547, 546};
+Line (170) = {546, 545};
+Line (171) = {545, 544};
+Line (172) = {557, 558};
+Line (173) = {558, 559};
+Line (174) = {559, 560};
+Line (175) = {560, 561};
+Line (176) = {561, 562};
+Line (177) = {562, 557};
+Line (178) = {529, 530};
+Line (179) = {530, 531};
+Line (180) = {531, 532};
+Line (181) = {532, 533};
+Line (182) = {533, 534};
+Line (183) = {534, 535};
+Line (184) = {535, 536};
+Line (185) = {536, 537};
+Line (186) = {537, 538};
+Line (187) = {538, 539};
+Line (188) = {539, 540};
+Line (189) = {540, 529};
+Line (190) = {35, 36};
+Line (191) = {36, 37};
+Line (192) = {37, 38};
+Line (193) = {38, 39};
+Line (194) = {39, 40};
+Line (195) = {40, 41};
+Line (196) = {41, 42};
+Line (197) = {44, 45};
+Line (198) = {35, 56};
+Line (199) = {56, 55};
+Line (200) = {55, 54};
+Line (201) = {54, 53};
+Line (202) = {53, 52};
+Line (203) = {52, 51};
+Line (204) = {51, 50};
+Line (205) = {50, 49};
+Line (206) = {49, 48};
+Line (207) = {48, 47};
+Line (208) = {47, 46};
+Line (209) = {46, 45};
+Line (210) = {43, 58};
+Line (211) = {43, 44};
+Line (212) = {58, 57};
+Line (213) = {70, 69};
+Line (214) = {69, 68};
+Line (215) = {68, 67};
+Line (216) = {67, 70};
+Line (217) = {63, 64};
+Line (218) = {64, 65};
+Line (219) = {65, 66};
+Line (220) = {66, 63};
+Line (221) = {59, 60};
+Line (222) = {60, 61};
+Line (223) = {61, 62};
+Line (224) = {62, 59};
+Line (226) = {600, 42};
+Line (227) = {600, 57};
+Line (228) = {31, 32};
+Line (229) = {32, 33};
+Line (230) = {33, 34};
+Line (231) = {34, 31};
+Line (232) = {27, 28};
+Line (233) = {28, 29};
+Line (234) = {29, 30};
+Line (235) = {30, 27};
+Line (236) = {25, 24};
+Line (237) = {24, 23};
+Line (238) = {23, 26};
+Line (239) = {26, 25};
+Line (240) = {6, 7};
+Line (241) = {7, 8};
+Line (242) = {8, 9};
+Line (244) = {10, 11};
+Line (245) = {11, 12};
+Line (246) = {12, 13};
+Line (247) = {13, 14};
+Line (248) = {14, 15};
+Line (249) = {18, 19};
+Line (250) = {20, 19};
+Line (251) = {20, 21};
+Line (252) = {21, 22};
+Line (253) = {22, 1};
+Line (254) = {1, 2};
+Line (256) = {3, 4};
+Line (257) = {4, 5};
+Line (258) = {5, 6};
+Line (259) = {15, 16};
+Line (260) = {16, 17};
+Line (261) = {17, 18};
+Line (265) = {252, 251};
+Line (266) = {251, 250};
+Line (267) = {250, 249};
+Line (268) = {249, 252};
+Line (269) = {218, 219};
+Line (270) = {219, 220};
+Line (271) = {220, 221};
+Line (272) = {221, 222};
+Line (273) = {222, 223};
+Line (274) = {223, 224};
+Line (275) = {224, 225};
+Line (276) = {225, 226};
+Line (277) = {226, 227};
+Line (278) = {227, 228};
+Line (279) = {228, 233};
+Line (280) = {233, 229};
+Line (281) = {229, 230};
+Line (282) = {230, 231};
+Line (283) = {231, 232};
+Line (284) = {232, 234};
+Line (285) = {234, 235};
+Line (286) = {212, 213};
+Line (287) = {213, 214};
+Line (288) = {214, 215};
+Line (289) = {215, 216};
+Line (290) = {248, 212};
+Line (291) = {248, 247};
+Line (292) = {247, 246};
+Line (293) = {246, 245};
+Line (294) = {245, 244};
+Line (295) = {244, 243};
+Line (296) = {243, 242};
+Line (297) = {242, 241};
+Line (298) = {241, 240};
+Line (299) = {240, 239};
+Line (300) = {239, 238};
+Line (305) = {237, 238};
+Line (306) = {208, 209};
+Line (307) = {209, 210};
+Line (308) = {210, 211};
+Line (309) = {211, 208};
+Line (310) = {186, 187};
+Line (311) = {187, 188};
+Line (312) = {188, 189};
+Line (313) = {189, 190};
+Line (314) = {190, 191};
+Line (315) = {191, 192};
+Line (316) = {192, 193};
+Line (317) = {193, 194};
+Line (318) = {194, 184};
+Line (319) = {184, 185};
+Line (320) = {185, 186};
+Line (321) = {207, 195};
+Line (322) = {207, 206};
+Line (323) = {206, 205};
+Line (324) = {205, 204};
+Line (325) = {204, 203};
+Line (326) = {203, 202};
+Line (327) = {202, 201};
+Line (328) = {201, 200};
+Line (329) = {200, 199};
+Line (330) = {199, 198};
+Line (331) = {198, 197};
+Line (332) = {197, 196};
+Line (333) = {196, 195};
+Line (334) = {313, 314};
+Line (335) = {314, 315};
+Line (336) = {315, 316};
+Line (337) = {316, 313};
+Line (338) = {317, 318};
+Line (339) = {318, 319};
+Line (340) = {317, 331};
+Line (341) = {331, 330};
+Line (342) = {330, 329};
+Line (343) = {329, 328};
+Line (344) = {327, 328};
+Line (345) = {327, 326};
+Line (346) = {326, 325};
+Line (347) = {325, 324};
+Line (348) = {324, 323};
+Line (349) = {323, 322};
+Line (350) = {322, 321};
+Line (351) = {321, 320};
+Line (352) = {320, 319};
+Line (353) = {253, 254};
+Line (354) = {254, 255};
+Line (355) = {255, 256};
+Line (356) = {257, 256};
+Line (357) = {257, 258};
+Line (358) = {258, 259};
+Line (359) = {259, 260};
+Line (360) = {260, 261};
+Line (361) = {261, 262};
+Line (362) = {262, 263};
+Line (363) = {263, 264};
+Line (364) = {264, 265};
+Line (366) = {265, 266};
+Line (367) = {266, 267};
+Line (368) = {267, 268};
+Line (369) = {268, 269};
+Line (370) = {269, 270};
+Line (371) = {270, 271};
+Line (372) = {271, 272};
+Line (373) = {272, 273};
+Line (374) = {273, 274};
+Line (375) = {274, 275};
+Line (376) = {275, 276};
+Line (377) = {276, 277};
+Line (378) = {277, 278};
+Line (379) = {278, 279};
+Line (380) = {279, 280};
+Line (381) = {280, 281};
+Line (382) = {281, 282};
+Line (383) = {282, 283};
+Line (384) = {283, 284};
+Line (385) = {284, 285};
+Line (386) = {285, 286};
+Line (387) = {286, 287};
+Line (388) = {287, 288};
+Line (389) = {288, 289};
+Line (390) = {289, 290};
+Line (391) = {290, 291};
+Line (392) = {291, 292};
+Line (393) = {292, 293};
+Line (394) = {293, 294};
+Line (395) = {294, 295};
+Line (396) = {295, 296};
+Line (397) = {296, 297};
+Line (398) = {297, 298};
+Line (399) = {298, 299};
+Line (400) = {299, 300};
+Line (401) = {300, 301};
+Line (402) = {301, 302};
+Line (403) = {302, 303};
+Line (404) = {303, 304};
+Line (405) = {253, 304};
+Line (406) = {305, 306};
+Line (407) = {306, 307};
+Line (408) = {307, 308};
+Line (409) = {308, 309};
+Line (410) = {309, 310};
+Line (411) = {310, 311};
+Line (412) = {311, 312};
+Line (413) = {312, 305};
+Line (414) = {556, 555};
+Line (415) = {555, 554};
+Line (416) = {554, 553};
+Line (417) = {553, 556};
+Line (418) = {503, 504};
+Line (419) = {504, 497};
+Line (420) = {497, 498};
+Line (421) = {498, 499};
+Line (422) = {499, 500};
+Line (423) = {500, 501};
+Line (424) = {501, 502};
+Line (425) = {502, 503};
+Line (426) = {493, 494};
+Line (427) = {494, 495};
+Line (428) = {495, 496};
+Line (429) = {496, 493};
+Line (430) = {518, 519};
+Line (435) = {518, 517};
+Line (436) = {517, 516};
+Line (438) = {506, 507};
+Line (439) = {507, 508};
+Line (440) = {508, 509};
+Line (441) = {509, 510};
+Line (442) = {510, 511};
+Line (443) = {511, 512};
+Line (444) = {512, 513};
+Line (445) = {513, 514};
+Line (446) = {514, 515};
+Line (447) = {515, 516};
+Line (448) = {489, 490};
+Line (449) = {490, 491};
+Line (450) = {491, 492};
+Line (451) = {492, 419};
+Line (452) = {419, 420};
+Line (453) = {420, 421};
+Line (454) = {421, 422};
+Line (455) = {422, 423};
+Line (456) = {423, 424};
+Line (457) = {424, 425};
+Line (458) = {425, 426};
+Line (459) = {426, 427};
+Line (460) = {427, 428};
+Line (461) = {428, 429};
+Line (462) = {429, 430};
+Line (463) = {430, 431};
+Line (464) = {431, 432};
+Line (465) = {432, 433};
+Line (466) = {433, 434};
+Line (467) = {434, 435};
+Line (468) = {435, 436};
+Line (469) = {436, 437};
+Line (470) = {437, 438};
+Line (471) = {438, 439};
+Line (472) = {439, 440};
+Line (473) = {440, 441};
+Line (474) = {441, 442};
+Line (475) = {442, 443};
+Line (476) = {443, 444};
+Line (477) = {444, 445};
+Line (478) = {445, 446};
+Line (479) = {446, 447};
+Line (480) = {447, 448};
+Line (481) = {448, 449};
+Line (482) = {449, 450};
+Line (483) = {450, 451};
+Line (484) = {451, 452};
+Line (485) = {452, 453};
+Line (486) = {453, 454};
+Line (487) = {454, 455};
+Line (488) = {455, 456};
+Line (489) = {456, 457};
+Line (490) = {457, 458};
+Line (491) = {458, 459};
+Line (492) = {459, 460};
+Line (493) = {460, 461};
+Line (494) = {461, 462};
+Line (495) = {462, 463};
+Line (496) = {463, 464};
+Line (497) = {465, 464};
+Line (498) = {465, 466};
+Line (499) = {466, 467};
+Line (500) = {467, 468};
+Line (501) = {468, 469};
+Line (502) = {469, 470};
+Line (503) = {470, 471};
+Line (504) = {471, 472};
+Line (505) = {472, 473};
+Line (506) = {473, 474};
+Line (507) = {474, 475};
+Line (508) = {475, 476};
+Line (509) = {476, 477};
+Line (510) = {477, 478};
+Line (511) = {478, 479};
+Line (512) = {484, 483};
+Line (513) = {489, 488};
+Line (514) = {488, 487};
+Line (515) = {487, 486};
+Line (516) = {486, 485};
+Line (517) = {485, 484};
+Line (518) = {483, 482};
+Line (519) = {482, 481};
+Line (520) = {481, 480};
+Line (521) = {480, 479};
+Line (522) = {362, 363};
+Line (523) = {363, 364};
+Line (524) = {364, 365};
+Line (525) = {365, 366};
+Line (526) = {366, 367};
+Line (527) = {367, 368};
+Line (528) = {368, 369};
+Line (529) = {369, 370};
+Line (530) = {370, 371};
+Line (531) = {371, 372};
+Line (532) = {372, 373};
+Line (533) = {373, 374};
+Line (534) = {374, 375};
+Line (535) = {375, 376};
+Line (536) = {376, 377};
+Line (537) = {377, 378};
+Line (538) = {378, 379};
+Line (539) = {379, 380};
+Line (540) = {380, 381};
+Line (541) = {381, 382};
+Line (542) = {382, 383};
+Line (543) = {383, 384};
+Line (544) = {384, 385};
+Line (545) = {385, 386};
+Line (546) = {386, 387};
+Line (547) = {387, 388};
+Line (548) = {388, 389};
+Line (549) = {389, 390};
+Line (550) = {390, 391};
+Line (551) = {391, 392};
+Line (552) = {392, 393};
+Line (553) = {393, 394};
+Line (554) = {394, 395};
+Line (555) = {395, 396};
+Line (556) = {396, 397};
+Line (557) = {397, 398};
+Line (565) = {403, 404};
+Line (566) = {404, 405};
+Line (567) = {405, 406};
+Line (568) = {406, 407};
+Line (569) = {407, 408};
+Line (570) = {408, 409};
+Line (571) = {409, 410};
+Line (572) = {410, 411};
+Line (573) = {411, 412};
+Line (574) = {413, 412};
+Line (575) = {413, 414};
+Line (576) = {414, 415};
+Line (577) = {415, 416};
+Line (578) = {416, 417};
+Line (579) = {417, 418};
+Line (580) = {418, 362};
+Line (581) = {354, 355};
+Line (582) = {355, 356};
+Line (583) = {356, 357};
+Line (584) = {357, 358};
+Line (585) = {358, 359};
+Line (586) = {359, 360};
+Line (587) = {360, 361};
+Line (588) = {361, 354};
+Line (589) = {342, 341};
+Line (590) = {341, 340};
+Line (591) = {340, 339};
+Line (592) = {342, 343};
+Line (593) = {343, 344};
+Line (594) = {344, 345};
+Line (595) = {345, 346};
+Line (596) = {346, 347};
+Line (597) = {347, 348};
+Line (598) = {348, 349};
+Line (599) = {349, 350};
+Line (600) = {350, 351};
+Line (601) = {351, 352};
+Line (602) = {339, 338};
+Line (603) = {338, 337};
+Line (604) = {352, 353};
+Line (605) = {353, 337};
+Line (606) = {332, 333};
+Line (607) = {333, 334};
+Line (608) = {334, 335};
+Line (609) = {335, 332};
+Line (685) = {398, 399};
+Line (689) = {402, 403};
+Line (691) = {401, 402};
+Line (693) = {399, 601};
+Line (694) = {401, 601};
+Line (707) = {216, 217};
+Line (708) = {217, 218};
+Line (709) = {237, 236};
+Line (710) = {236, 235};
+Line (713) = {519, 520};
+Line (714) = {520, 505};
+Line (715) = {505, 506};
+Line (759) = {3, 2};
+Line (769) = {9, 10};
+Line Loop(770) = {242,769,244,245,246,247,248,259,260,261,249,-250,251,252,253,254,-759,256,257,258,240,241};
+Plane Surface(771) = {770};
+Line Loop(772) = {237,238,239,236};
+Plane Surface(773) = {772};
+Line Loop(774) = {232,233,234,235};
+Plane Surface(775) = {774};
+Line Loop(776) = {228,229,230,231};
+Plane Surface(777) = {776};
+Line Loop(778) = {221,222,223,224};
+Plane Surface(779) = {778};
+Line Loop(780) = {217,218,219,220};
+Plane Surface(781) = {780};
+Line Loop(782) = {213,214,215,216};
+Plane Surface(783) = {782};
+Line Loop(784) = {191,192,193,194,195,196,-226,227,-212,-210,211,197,-209,-208,-207,-206,-205,-204,-203,-202,-201,-200,-199,-198,190};
+Plane Surface(785) = {784};
+Line Loop(786) = {4,5,6,7,8,9,10,11,12,-13,14,15,16,17,1,3,2};
+Plane Surface(787) = {786};
+Line Loop(788) = {18,19,20,21};
+Plane Surface(789) = {788};
+Line Loop(790) = {82,40,-79,-78,-77,76,83,84,-81,-80};
+Plane Surface(791) = {790};
+Line Loop(792) = {90,-48,91,46,92,44,89,42};
+Plane Surface(793) = {792};
+Line Loop(794) = {22,23,24,25};
+Plane Surface(795) = {794};
+Line Loop(796) = {28,29,30,31,32,33,26,27};
+Plane Surface(797) = {796};
+Line Loop(798) = {75,-68,69,70,71,72,73,74};
+Plane Surface(799) = {798};
+Line Loop(800) = {59,60,61,62,63,64,65,66};
+Plane Surface(801) = {800};
+Line Loop(802) = {56,49,50,51,52,53,54,55};
+Plane Surface(803) = {802};
+Line Loop(804) = {85,86,87,88};
+Plane Surface(805) = {804};
+Line Loop(806) = {148,149,150,151,139,140,141,142,143,144,145,146,147};
+Plane Surface(807) = {806};
+Line Loop(808) = {162,163,164,165,166,167,168,169,170,171,160,161};
+Plane Surface(809) = {808};
+Line Loop(810) = {153,154,155,156,157,158,159,152};
+Plane Surface(811) = {810};
+Line Loop(812) = {178,179,180,181,182,183,184,185,186,187,188,189};
+Plane Surface(813) = {812};
+Line Loop(814) = {172,173,174,175,176,177};
+Line Loop(815) = {103,104,105,106,107,108,109,119,120,121,122,123,124,125,126,127,128,129,130,93,94,95,96,97,98,99,100,101,102};
+Line Loop(816) = {112,-113,114,115,116,117,118,111};
+Line Loop(817) = {131,132,133,134,135,136,137,138};
+Plane Surface(818) = {815,816,817};
+Plane Surface(819) = {816};
+Plane Surface(820) = {817};
+Plane Surface(821) = {814};
+Line Loop(822) = {269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,-710,-709,305,-300,-299,-298,-297,-296,-295,-294,-293,-292,-291,290,286,287,288,289,707,708};
+Plane Surface(823) = {822};
+Line Loop(824) = {265,266,267,268};
+Plane Surface(825) = {824};
+Line Loop(826) = {367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,-405,353,354,355,-356,357,358,359,360,361,362,363,364,366};
+Plane Surface(827) = {826};
+Line Loop(828) = {410,411,412,413,406,407,408,409};
+Plane Surface(829) = {828};
+Line Loop(830) = {306,307,308,309};
+Plane Surface(831) = {830};
+Line Loop(832) = {324,325,326,327,328,329,330,331,332,333,-321,322,323};
+Plane Surface(833) = {832};
+Line Loop(834) = {320,310,311,312,313,314,315,316,317,318,319};
+Plane Surface(835) = {834};
+Line Loop(836) = {351,352,-339,-338,340,341,342,343,-344,345,346,347,348,349,350};
+Plane Surface(837) = {836};
+Line Loop(838) = {336,337,334,335};
+Plane Surface(839) = {838};
+Line Loop(840) = {590,591,602,603,-605,-604,-601,-600,-599,-598,-597,-596,-595,-594,-593,-592,589};
+Plane Surface(841) = {840};
+Line Loop(842) = {609,606,607,608};
+Plane Surface(843) = {842};
+Line Loop(844) = {587,588,581,582,583,584,585,586};
+Plane Surface(845) = {844};
+Line Loop(846) = {522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,685,693,-694,691,689,565,566,567,568,569,570,571,572,573,-574,575,576,577,578,579,580};
+Plane Surface(847) = {846};
+Line Loop(848) = {455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,-497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,-521,-520,-519,-518,-512,-517,-516,-515,-514,-513,448,449,450,451,452,453,454};
+Plane Surface(849) = {848};
+Line Loop(850) = {715,438,439,440,441,442,443,444,445,446,447,-436,-435,430,713,714};
+Plane Surface(851) = {850};
+Line Loop(852) = {426,427,428,429};
+Plane Surface(853) = {852};
+Line Loop(854) = {423,424,425,418,419,420,421,422};
+Plane Surface(855) = {854};
+Line Loop(856) = {414,415,416,417};
+Plane Surface(857) = {856};
+Line Loop(858) = {34,35,36,37};
+Plane Surface(859) = {858,770,772,774,776,778,780,782,784,786,788,790,792,794,796,798,800,802,804,806,808,810,812,814,815,834,830,832,836,838,822,824,826,828,840,842,844,846,848,850,852,854,856};
+
+
+
+Geometry.AutoCoherence=0; // to speed things up
+
+// should make one list for each group of buildings with same height
+s[] = {819,820,821,823,825,827,829,831,833,835,837,839,841,843,845,847,
+       849,851,853,855,857,859,771,773,775,777,779,781,783,785,787,789,
+       791,793,795,797,799,801,803,805,807,809,811,813,818};
+p[] = {};
+
+For i In {0:#s[]-1}
+  // need as many extrusions as you have different building heights...
+  e1[] = Extrude {0,0,30} { Surface{s[i]}; Layers{5}; Recombine; };
+  e2[] = Extrude {0,0,15} { Surface{e1[0]}; Layers{3}; Recombine; };
+  e3[] = Extrude {0,0,20} { Surface{e2[0]}; Layers{4}; Recombine; };
+  e4[] = Extrude {0,0,30} { Surface{e3[0]}; Layers{5}; Recombine; };
+
+  If(s[i] == 819 || s[i] == 820 || s[i] == 859) // no buildings here
+    p[] += {e1[1], e2[1], e3[1]};
+  EndIf
+
+  p[] += e4[1]; // volume above all buildings
+
+  // add other bits in p[] depending on height of each building
+EndFor
+
+Geometry.AutoCoherence=1;
+Coherence; // remove duplicates
+
+Physical Volume(1) = p[];
diff --git a/benchmarks/3d/tetmesh.geo b/benchmarks/3d/buildings_tetmesh.geo
similarity index 100%
rename from benchmarks/3d/tetmesh.geo
rename to benchmarks/3d/buildings_tetmesh.geo