Ticket #12139: builder.cpp

File builder.cpp, 54.0 KB (added by Piotr Wieczorek <pwiecz@…>, 7 years ago)

Crashing source

Line 
1#include <boost/polygon/voronoi.hpp>
2#include <iostream>
3
4void build_diagram(boost::polygon::voronoi_diagram<double> &diagram);
5
6int main() {
7 boost::polygon::voronoi_diagram<double> diagram;
8 build_diagram(diagram);
9 for (const auto& edge : diagram.edges()) {
10 if (edge.is_finite()) {
11 auto v0 = edge.vertex0(), v1 = edge.vertex1();
12 if ((v0->x() != 0 && !std::isnormal(v0->x())) ||
13 (v0->y() != 0 && !std::isnormal(v0->y()))) {
14 std::cout << "V0 not normal:" << v0 << "\n";
15 abort();
16 }
17 if ((v1->x() != 0 && !std::isnormal(v1->x())) ||
18 (v1->y() != 0 && !std::isnormal(v1->y()))) {
19 std::cout << "V1 not normal:" << v1 << "\n";
20 abort();
21 }
22 }
23 }
24 std::cout << "All OK\n";
25}
26
27void build_diagram(boost::polygon::voronoi_diagram<double> &diagram) {
28 boost::polygon::voronoi_builder<int> builder;
29 builder.insert_segment(260500,1564400,261040,1562960);
30 builder.insert_segment(261040,1562960,260840,1561780);
31 builder.insert_segment(260840,1561780,262620,1561480);
32 builder.insert_segment(262620,1561480,263160,1561220);
33 builder.insert_segment(263160,1561220,264100,1563259);
34 builder.insert_segment(264100,1563259,262380,1566980);
35 builder.insert_segment(262380,1566980,260500,1564400);
36 builder.insert_segment(137520,1851640,132160,1851100);
37 builder.insert_segment(132160,1851100,126460,1848779);
38 builder.insert_segment(126460,1848779,123960,1847320);
39 builder.insert_segment(123960,1847320,120960,1844559);
40 builder.insert_segment(120960,1844559,119640,1843040);
41 builder.insert_segment(119640,1843040,118320,1840900);
42 builder.insert_segment(118320,1840900,117920,1838120);
43 builder.insert_segment(117920,1838120,118219,1833340);
44 builder.insert_segment(118219,1833340,116180,1835000);
45 builder.insert_segment(116180,1835000,115999,1834820);
46 builder.insert_segment(115999,1834820,114240,1836340);
47 builder.insert_segment(114240,1836340,112719,1837260);
48 builder.insert_segment(112719,1837260,109460,1838239);
49 builder.insert_segment(109460,1838239,103639,1837480);
50 builder.insert_segment(103639,1837480,99819,1835460);
51 builder.insert_segment(99819,1835460,96320,1834260);
52 builder.insert_segment(96320,1834260,95339,1834260);
53 builder.insert_segment(95339,1834260,93660,1833720);
54 builder.insert_segment(93660,1833720,90719,1833300);
55 builder.insert_segment(90719,1833300,87860,1831660);
56 builder.insert_segment(87860,1831660,84580,1830499);
57 builder.insert_segment(84580,1830499,79780,1827419);
58 builder.insert_segment(79780,1827419,76020,1824280);
59 builder.insert_segment(76020,1824280,73680,1821180);
60 builder.insert_segment(73680,1821180,72560,1818960);
61 builder.insert_segment(72560,1818960,71699,1817719);
62 builder.insert_segment(71699,1817719,70280,1814260);
63 builder.insert_segment(70280,1814260,69460,1811060);
64 builder.insert_segment(69460,1811060,69659,1807320);
65 builder.insert_segment(69659,1807320,69640,1803300);
66 builder.insert_segment(69640,1803300,69360,1799780);
67 builder.insert_segment(69360,1799780,69320,1796720);
68 builder.insert_segment(69320,1796720,69640,1793980);
69 builder.insert_segment(69640,1793980,70160,1791780);
70 builder.insert_segment(70160,1791780,72460,1784879);
71 builder.insert_segment(72460,1784879,74420,1780780);
72 builder.insert_segment(74420,1780780,76500,1772899);
73 builder.insert_segment(76500,1772899,76760,1769359);
74 builder.insert_segment(76760,1769359,76480,1766259);
75 builder.insert_segment(76480,1766259,76839,1760360);
76 builder.insert_segment(76839,1760360,77539,1756680);
77 builder.insert_segment(77539,1756680,80540,1748140);
78 builder.insert_segment(80540,1748140,84200,1742619);
79 builder.insert_segment(84200,1742619,90900,1735220);
80 builder.insert_segment(90900,1735220,94159,1732679);
81 builder.insert_segment(94159,1732679,101259,1729559);
82 builder.insert_segment(101259,1729559,107299,1727939);
83 builder.insert_segment(107299,1727939,110979,1727919);
84 builder.insert_segment(110979,1727919,113499,1727240);
85 builder.insert_segment(113499,1727240,113619,1727359);
86 builder.insert_segment(113619,1727359,114280,1727280);
87 builder.insert_segment(114280,1727280,131440,1732560);
88 builder.insert_segment(131440,1732560,118140,1727119);
89 builder.insert_segment(118140,1727119,117120,1723759);
90 builder.insert_segment(117120,1723759,113840,1720660);
91 builder.insert_segment(113840,1720660,111399,1716760);
92 builder.insert_segment(111399,1716760,109700,1712979);
93 builder.insert_segment(109700,1712979,108879,1708400);
94 builder.insert_segment(108879,1708400,108060,1696360);
95 builder.insert_segment(108060,1696360,110040,1687760);
96 builder.insert_segment(110040,1687760,112140,1682480);
97 builder.insert_segment(112140,1682480,112540,1681780);
98 builder.insert_segment(112540,1681780,115260,1678320);
99 builder.insert_segment(115260,1678320,118720,1675320);
100 builder.insert_segment(118720,1675320,126100,1670980);
101 builder.insert_segment(126100,1670980,132400,1668080);
102 builder.insert_segment(132400,1668080,136700,1667440);
103 builder.insert_segment(136700,1667440,142440,1667159);
104 builder.insert_segment(142440,1667159,143340,1666720);
105 builder.insert_segment(143340,1666720,138679,1661319);
106 builder.insert_segment(138679,1661319,137240,1657480);
107 builder.insert_segment(137240,1657480,136760,1650739);
108 builder.insert_segment(136760,1650739,136780,1647339);
109 builder.insert_segment(136780,1647339,135940,1644280);
110 builder.insert_segment(135940,1644280,136000,1640820);
111 builder.insert_segment(136000,1640820,135480,1638020);
112 builder.insert_segment(135480,1638020,137060,1634220);
113 builder.insert_segment(137060,1634220,136320,1631340);
114 builder.insert_segment(136320,1631340,134620,1629700);
115 builder.insert_segment(134620,1629700,132460,1628199);
116 builder.insert_segment(132460,1628199,132299,1627860);
117 builder.insert_segment(132299,1627860,138360,1618020);
118 builder.insert_segment(138360,1618020,142440,1611859);
119 builder.insert_segment(142440,1611859,143180,1611299);
120 builder.insert_segment(143180,1611299,144000,1611259);
121 builder.insert_segment(144000,1611259,145960,1612540);
122 builder.insert_segment(145960,1612540,146720,1613700);
123 builder.insert_segment(146720,1613700,147700,1613539);
124 builder.insert_segment(147700,1613539,148520,1614039);
125 builder.insert_segment(148520,1614039,149840,1613740);
126 builder.insert_segment(149840,1613740,150620,1614079);
127 builder.insert_segment(150620,1614079,154760,1612740);
128 builder.insert_segment(154760,1612740,159000,1608420);
129 builder.insert_segment(159000,1608420,161120,1606780);
130 builder.insert_segment(161120,1606780,164060,1605139);
131 builder.insert_segment(164060,1605139,168079,1603620);
132 builder.insert_segment(168079,1603620,170240,1603400);
133 builder.insert_segment(170240,1603400,172400,1603499);
134 builder.insert_segment(172400,1603499,194440,1613740);
135 builder.insert_segment(194440,1613740,195880,1616460);
136 builder.insert_segment(195880,1616460,197060,1618140);
137 builder.insert_segment(197060,1618140,198039,1617860);
138 builder.insert_segment(198039,1617860,198739,1618900);
139 builder.insert_segment(198739,1618900,200259,1619200);
140 builder.insert_segment(200259,1619200,201940,1618920);
141 builder.insert_segment(201940,1618920,201700,1617139);
142 builder.insert_segment(201700,1617139,203860,1618179);
143 builder.insert_segment(203860,1618179,203500,1617540);
144 builder.insert_segment(203500,1617540,205000,1616579);
145 builder.insert_segment(205000,1616579,206780,1615020);
146 builder.insert_segment(206780,1615020,210159,1614059);
147 builder.insert_segment(210159,1614059,217080,1611080);
148 builder.insert_segment(217080,1611080,219200,1611579);
149 builder.insert_segment(219200,1611579,223219,1610980);
150 builder.insert_segment(223219,1610980,224580,1610540);
151 builder.insert_segment(224580,1610540,227460,1611440);
152 builder.insert_segment(227460,1611440,229359,1611859);
153 builder.insert_segment(229359,1611859,230620,1612580);
154 builder.insert_segment(230620,1612580,232340,1614460);
155 builder.insert_segment(232340,1614460,232419,1617040);
156 builder.insert_segment(232419,1617040,231740,1619480);
157 builder.insert_segment(231740,1619480,231880,1624899);
158 builder.insert_segment(231880,1624899,231540,1625820);
159 builder.insert_segment(231540,1625820,231700,1627079);
160 builder.insert_segment(231700,1627079,231320,1628239);
161 builder.insert_segment(231320,1628239,231420,1636080);
162 builder.insert_segment(231420,1636080,231099,1637200);
163 builder.insert_segment(231099,1637200,228660,1643280);
164 builder.insert_segment(228660,1643280,227699,1644960);
165 builder.insert_segment(227699,1644960,226080,1651140);
166 builder.insert_segment(226080,1651140,225259,1653420);
167 builder.insert_segment(225259,1653420,225159,1655399);
168 builder.insert_segment(225159,1655399,223760,1659260);
169 builder.insert_segment(223760,1659260,219860,1666360);
170 builder.insert_segment(219860,1666360,219180,1667220);
171 builder.insert_segment(219180,1667220,212580,1673680);
172 builder.insert_segment(212580,1673680,207880,1676460);
173 builder.insert_segment(207880,1676460,205560,1677560);
174 builder.insert_segment(205560,1677560,199700,1678920);
175 builder.insert_segment(199700,1678920,195280,1679420);
176 builder.insert_segment(195280,1679420,193939,1679879);
177 builder.insert_segment(193939,1679879,188780,1679440);
178 builder.insert_segment(188780,1679440,188100,1679639);
179 builder.insert_segment(188100,1679639,186680,1679339);
180 builder.insert_segment(186680,1679339,184760,1679619);
181 builder.insert_segment(184760,1679619,183520,1681440);
182 builder.insert_segment(183520,1681440,183860,1682200);
183 builder.insert_segment(183860,1682200,186620,1686120);
184 builder.insert_segment(186620,1686120,190380,1688380);
185 builder.insert_segment(190380,1688380,192780,1690739);
186 builder.insert_segment(192780,1690739,195860,1694839);
187 builder.insert_segment(195860,1694839,196620,1696539);
188 builder.insert_segment(196620,1696539,197540,1701819);
189 builder.insert_segment(197540,1701819,198939,1705699);
190 builder.insert_segment(198939,1705699,198979,1711819);
191 builder.insert_segment(198979,1711819,198240,1716900);
192 builder.insert_segment(198240,1716900,197440,1720139);
193 builder.insert_segment(197440,1720139,195340,1724639);
194 builder.insert_segment(195340,1724639,194040,1726140);
195 builder.insert_segment(194040,1726140,192559,1728239);
196 builder.insert_segment(192559,1728239,187780,1732339);
197 builder.insert_segment(187780,1732339,182519,1735520);
198 builder.insert_segment(182519,1735520,181239,1736140);
199 builder.insert_segment(181239,1736140,177340,1737619);
200 builder.insert_segment(177340,1737619,175439,1738140);
201 builder.insert_segment(175439,1738140,171380,1738880);
202 builder.insert_segment(171380,1738880,167860,1739059);
203 builder.insert_segment(167860,1739059,166040,1738920);
204 builder.insert_segment(166040,1738920,163680,1738539);
205 builder.insert_segment(163680,1738539,157660,1736859);
206 builder.insert_segment(157660,1736859,154900,1735460);
207 builder.insert_segment(154900,1735460,151420,1735159);
208 builder.insert_segment(151420,1735159,142100,1736160);
209 builder.insert_segment(142100,1736160,140880,1735920);
210 builder.insert_segment(140880,1735920,142820,1736859);
211 builder.insert_segment(142820,1736859,144080,1737240);
212 builder.insert_segment(144080,1737240,144280,1737460);
213 builder.insert_segment(144280,1737460,144239,1738120);
214 builder.insert_segment(144239,1738120,144980,1739420);
215 builder.insert_segment(144980,1739420,146340,1741039);
216 builder.insert_segment(146340,1741039,147160,1741720);
217 builder.insert_segment(147160,1741720,154260,1745800);
218 builder.insert_segment(154260,1745800,156560,1746879);
219 builder.insert_segment(156560,1746879,165180,1752679);
220 builder.insert_segment(165180,1752679,168240,1755860);
221 builder.insert_segment(168240,1755860,170940,1759260);
222 builder.insert_segment(170940,1759260,173440,1762079);
223 builder.insert_segment(173440,1762079,174540,1764079);
224 builder.insert_segment(174540,1764079,176479,1766640);
225 builder.insert_segment(176479,1766640,178900,1768960);
226 builder.insert_segment(178900,1768960,180819,1772780);
227 builder.insert_segment(180819,1772780,181479,1776859);
228 builder.insert_segment(181479,1776859,181660,1788499);
229 builder.insert_segment(181660,1788499,181460,1791740);
230 builder.insert_segment(181460,1791740,181160,1792840);
231 builder.insert_segment(181160,1792840,179580,1797180);
232 builder.insert_segment(179580,1797180,174620,1808960);
233 builder.insert_segment(174620,1808960,174100,1809839);
234 builder.insert_segment(174100,1809839,171660,1812419);
235 builder.insert_segment(171660,1812419,169639,1813840);
236 builder.insert_segment(169639,1813840,168880,1814720);
237 builder.insert_segment(168880,1814720,168960,1815980);
238 builder.insert_segment(168960,1815980,169979,1819160);
239 builder.insert_segment(169979,1819160,170080,1820159);
240 builder.insert_segment(170080,1820159,168280,1830540);
241 builder.insert_segment(168280,1830540,167580,1832200);
242 builder.insert_segment(167580,1832200,165679,1835720);
243 builder.insert_segment(165679,1835720,164720,1836819);
244 builder.insert_segment(164720,1836819,161840,1841740);
245 builder.insert_segment(161840,1841740,159880,1843519);
246 builder.insert_segment(159880,1843519,158959,1844120);
247 builder.insert_segment(158959,1844120,154960,1847500);
248 builder.insert_segment(154960,1847500,152140,1848580);
249 builder.insert_segment(152140,1848580,150440,1849520);
250 builder.insert_segment(150440,1849520,144940,1850980);
251 builder.insert_segment(144940,1850980,138340,1851700);
252 builder.insert_segment(138340,1851700,137520,1851640);
253 builder.insert_segment(606940,1873860,602860,1872460);
254 builder.insert_segment(602860,1872460,600680,1871539);
255 builder.insert_segment(600680,1871539,599300,1870640);
256 builder.insert_segment(599300,1870640,598120,1869579);
257 builder.insert_segment(598120,1869579,594680,1867180);
258 builder.insert_segment(594680,1867180,589680,1861460);
259 builder.insert_segment(589680,1861460,586300,1855020);
260 builder.insert_segment(586300,1855020,584700,1848060);
261 builder.insert_segment(584700,1848060,585199,1843499);
262 builder.insert_segment(585199,1843499,584000,1842079);
263 builder.insert_segment(584000,1842079,582900,1841480);
264 builder.insert_segment(582900,1841480,581020,1839899);
265 builder.insert_segment(581020,1839899,579440,1838040);
266 builder.insert_segment(579440,1838040,577840,1834299);
267 builder.insert_segment(577840,1834299,576160,1831859);
268 builder.insert_segment(576160,1831859,574540,1828499);
269 builder.insert_segment(574540,1828499,572140,1822860);
270 builder.insert_segment(572140,1822860,570180,1815219);
271 builder.insert_segment(570180,1815219,570080,1812280);
272 builder.insert_segment(570080,1812280,570340,1808300);
273 builder.insert_segment(570340,1808300,570160,1807119);
274 builder.insert_segment(570160,1807119,570140,1804039);
275 builder.insert_segment(570140,1804039,571640,1796660);
276 builder.insert_segment(571640,1796660,571740,1794680);
277 builder.insert_segment(571740,1794680,572279,1794039);
278 builder.insert_segment(572279,1794039,575480,1788300);
279 builder.insert_segment(575480,1788300,576379,1787419);
280 builder.insert_segment(576379,1787419,577020,1786120);
281 builder.insert_segment(577020,1786120,578000,1785100);
282 builder.insert_segment(578000,1785100,579960,1783720);
283 builder.insert_segment(579960,1783720,581420,1782079);
284 builder.insert_segment(581420,1782079,585480,1778440);
285 builder.insert_segment(585480,1778440,586680,1777079);
286 builder.insert_segment(586680,1777079,590520,1774639);
287 builder.insert_segment(590520,1774639,592440,1773199);
288 builder.insert_segment(592440,1773199,595160,1772260);
289 builder.insert_segment(595160,1772260,598079,1770920);
290 builder.insert_segment(598079,1770920,601420,1769019);
291 builder.insert_segment(601420,1769019,606400,1767280);
292 builder.insert_segment(606400,1767280,607320,1766620);
293 builder.insert_segment(607320,1766620,605760,1766460);
294 builder.insert_segment(605760,1766460,604420,1766780);
295 builder.insert_segment(604420,1766780,601660,1766579);
296 builder.insert_segment(601660,1766579,597160,1766980);
297 builder.insert_segment(597160,1766980,591420,1766720);
298 builder.insert_segment(591420,1766720,585360,1765460);
299 builder.insert_segment(585360,1765460,578540,1763680);
300 builder.insert_segment(578540,1763680,574020,1761599);
301 builder.insert_segment(574020,1761599,572520,1760560);
302 builder.insert_segment(572520,1760560,570959,1759000);
303 builder.insert_segment(570959,1759000,566580,1755620);
304 builder.insert_segment(566580,1755620,563820,1752000);
305 builder.insert_segment(563820,1752000,563140,1751380);
306 builder.insert_segment(563140,1751380,560800,1747899);
307 builder.insert_segment(560800,1747899,558640,1742280);
308 builder.insert_segment(558640,1742280,557860,1741620);
309 builder.insert_segment(557860,1741620,555820,1739099);
310 builder.insert_segment(555820,1739099,553920,1737540);
311 builder.insert_segment(553920,1737540,551900,1735179);
312 builder.insert_segment(551900,1735179,551180,1733880);
313 builder.insert_segment(551180,1733880,549540,1729559);
314 builder.insert_segment(549540,1729559,548860,1720720);
315 builder.insert_segment(548860,1720720,549080,1719099);
316 builder.insert_segment(549080,1719099,548200,1714700);
317 builder.insert_segment(548200,1714700,547560,1713860);
318 builder.insert_segment(547560,1713860,544500,1711259);
319 builder.insert_segment(544500,1711259,543939,1709780);
320 builder.insert_segment(543939,1709780,544520,1705439);
321 builder.insert_segment(544520,1705439,543520,1701519);
322 builder.insert_segment(543520,1701519,543920,1699319);
323 builder.insert_segment(543920,1699319,546360,1697440);
324 builder.insert_segment(546360,1697440,546680,1695419);
325 builder.insert_segment(546680,1695419,545600,1694180);
326 builder.insert_segment(545600,1694180,543220,1692000);
327 builder.insert_segment(543220,1692000,538260,1685139);
328 builder.insert_segment(538260,1685139,537540,1683000);
329 builder.insert_segment(537540,1683000,537020,1682220);
330 builder.insert_segment(537020,1682220,535560,1675940);
331 builder.insert_segment(535560,1675940,535940,1671220);
332 builder.insert_segment(535940,1671220,536320,1669379);
333 builder.insert_segment(536320,1669379,535420,1666400);
334 builder.insert_segment(535420,1666400,533540,1664460);
335 builder.insert_segment(533540,1664460,530720,1662860);
336 builder.insert_segment(530720,1662860,529240,1662260);
337 builder.insert_segment(529240,1662260,528780,1659160);
338 builder.insert_segment(528780,1659160,528820,1653560);
339 builder.insert_segment(528820,1653560,529779,1650900);
340 builder.insert_segment(529779,1650900,536760,1640840);
341 builder.insert_segment(536760,1640840,540360,1636120);
342 builder.insert_segment(540360,1636120,541160,1635380);
343 builder.insert_segment(541160,1635380,544719,1629480);
344 builder.insert_segment(544719,1629480,545319,1626140);
345 builder.insert_segment(545319,1626140,543560,1623740);
346 builder.insert_segment(543560,1623740,539880,1620739);
347 builder.insert_segment(539880,1620739,533400,1617300);
348 builder.insert_segment(533400,1617300,527840,1613020);
349 builder.insert_segment(527840,1613020,525200,1611579);
350 builder.insert_segment(525200,1611579,524360,1610800);
351 builder.insert_segment(524360,1610800,517320,1605739);
352 builder.insert_segment(517320,1605739,516240,1604240);
353 builder.insert_segment(516240,1604240,515220,1602000);
354 builder.insert_segment(515220,1602000,514079,1594240);
355 builder.insert_segment(514079,1594240,513740,1581460);
356 builder.insert_segment(513740,1581460,514660,1577359);
357 builder.insert_segment(514660,1577359,514660,1576380);
358 builder.insert_segment(514660,1576380,514199,1575380);
359 builder.insert_segment(514199,1575380,514680,1572860);
360 builder.insert_segment(514680,1572860,513440,1573940);
361 builder.insert_segment(513440,1573940,512399,1575580);
362 builder.insert_segment(512399,1575580,511620,1576220);
363 builder.insert_segment(511620,1576220,507840,1581880);
364 builder.insert_segment(507840,1581880,504600,1584579);
365 builder.insert_segment(504600,1584579,502440,1584599);
366 builder.insert_segment(502440,1584599,499060,1584059);
367 builder.insert_segment(499060,1584059,498019,1581960);
368 builder.insert_segment(498019,1581960,497819,1581240);
369 builder.insert_segment(497819,1581240,498019,1576039);
370 builder.insert_segment(498019,1576039,497539,1574740);
371 builder.insert_segment(497539,1574740,495459,1574460);
372 builder.insert_segment(495459,1574460,492320,1575600);
373 builder.insert_segment(492320,1575600,491040,1576360);
374 builder.insert_segment(491040,1576360,490080,1575640);
375 builder.insert_segment(490080,1575640,490020,1575040);
376 builder.insert_segment(490020,1575040,490220,1574400);
377 builder.insert_segment(490220,1574400,490819,1573440);
378 builder.insert_segment(490819,1573440,492680,1568259);
379 builder.insert_segment(492680,1568259,492920,1566799);
380 builder.insert_segment(492920,1566799,495760,1563660);
381 builder.insert_segment(495760,1563660,496100,1562139);
382 builder.insert_segment(496100,1562139,497879,1560240);
383 builder.insert_segment(497879,1560240,497059,1558020);
384 builder.insert_segment(497059,1558020,495620,1557399);
385 builder.insert_segment(495620,1557399,494800,1556839);
386 builder.insert_segment(494800,1556839,493500,1555479);
387 builder.insert_segment(493500,1555479,491860,1554100);
388 builder.insert_segment(491860,1554100,487840,1552139);
389 builder.insert_segment(487840,1552139,485900,1551720);
390 builder.insert_segment(485900,1551720,483639,1555439);
391 builder.insert_segment(483639,1555439,482080,1556480);
392 builder.insert_segment(482080,1556480,480200,1556259);
393 builder.insert_segment(480200,1556259,478519,1556259);
394 builder.insert_segment(478519,1556259,474020,1554019);
395 builder.insert_segment(474020,1554019,472660,1551539);
396 builder.insert_segment(472660,1551539,471260,1549899);
397 builder.insert_segment(471260,1549899,470459,1548020);
398 builder.insert_segment(470459,1548020,469920,1545479);
399 builder.insert_segment(469920,1545479,469079,1542939);
400 builder.insert_segment(469079,1542939,469120,1541799);
401 builder.insert_segment(469120,1541799,465840,1537139);
402 builder.insert_segment(465840,1537139,463360,1539059);
403 builder.insert_segment(463360,1539059,459680,1546900);
404 builder.insert_segment(459680,1546900,458439,1547160);
405 builder.insert_segment(458439,1547160,456480,1549319);
406 builder.insert_segment(456480,1549319,454160,1551400);
407 builder.insert_segment(454160,1551400,452819,1550820);
408 builder.insert_segment(452819,1550820,451699,1549839);
409 builder.insert_segment(451699,1549839,449620,1548440);
410 builder.insert_segment(449620,1548440,449419,1548080);
411 builder.insert_segment(449419,1548080,447879,1547720);
412 builder.insert_segment(447879,1547720,446540,1546819);
413 builder.insert_segment(446540,1546819,445720,1545640);
414 builder.insert_segment(445720,1545640,444800,1545100);
415 builder.insert_segment(444800,1545100,443500,1542899);
416 builder.insert_segment(443500,1542899,443320,1541799);
417 builder.insert_segment(443320,1541799,443519,1540220);
418 builder.insert_segment(443519,1540220,445060,1537099);
419 builder.insert_segment(445060,1537099,445840,1533040);
420 builder.insert_segment(445840,1533040,442720,1529079);
421 builder.insert_segment(442720,1529079,442479,1528360);
422 builder.insert_segment(442479,1528360,436820,1529240);
423 builder.insert_segment(436820,1529240,436279,1529200);
424 builder.insert_segment(436279,1529200,433280,1529859);
425 builder.insert_segment(433280,1529859,420220,1529899);
426 builder.insert_segment(420220,1529899,414740,1528539);
427 builder.insert_segment(414740,1528539,411340,1527960);
428 builder.insert_segment(411340,1527960,406860,1524660);
429 builder.insert_segment(406860,1524660,405379,1523080);
430 builder.insert_segment(405379,1523080,403639,1520320);
431 builder.insert_segment(403639,1520320,402040,1517220);
432 builder.insert_segment(402040,1517220,400519,1517059);
433 builder.insert_segment(400519,1517059,399180,1516720);
434 builder.insert_segment(399180,1516720,395300,1515179);
435 builder.insert_segment(395300,1515179,394780,1515080);
436 builder.insert_segment(394780,1515080,394759,1515900);
437 builder.insert_segment(394759,1515900,394339,1516579);
438 builder.insert_segment(394339,1516579,393200,1516640);
439 builder.insert_segment(393200,1516640,392599,1521799);
440 builder.insert_segment(392599,1521799,391699,1525200);
441 builder.insert_segment(391699,1525200,391040,1525600);
442 builder.insert_segment(391040,1525600,390540,1526500);
443 builder.insert_segment(390540,1526500,388999,1527939);
444 builder.insert_segment(388999,1527939,387059,1531100);
445 builder.insert_segment(387059,1531100,386540,1531440);
446 builder.insert_segment(386540,1531440,382140,1531839);
447 builder.insert_segment(382140,1531839,377360,1532619);
448 builder.insert_segment(377360,1532619,375640,1532220);
449 builder.insert_segment(375640,1532220,372580,1531019);
450 builder.insert_segment(372580,1531019,371079,1529019);
451 builder.insert_segment(371079,1529019,367280,1526039);
452 builder.insert_segment(367280,1526039,366460,1521900);
453 builder.insert_segment(366460,1521900,364320,1516400);
454 builder.insert_segment(364320,1516400,363779,1515780);
455 builder.insert_segment(363779,1515780,362220,1515320);
456 builder.insert_segment(362220,1515320,361979,1515060);
457 builder.insert_segment(361979,1515060,360820,1515739);
458 builder.insert_segment(360820,1515739,353360,1518620);
459 builder.insert_segment(353360,1518620,347840,1520080);
460 builder.insert_segment(347840,1520080,342399,1521140);
461 builder.insert_segment(342399,1521140,334899,1523380);
462 builder.insert_segment(334899,1523380,333220,1523400);
463 builder.insert_segment(333220,1523400,332599,1522919);
464 builder.insert_segment(332599,1522919,329780,1521640);
465 builder.insert_segment(329780,1521640,325360,1521220);
466 builder.insert_segment(325360,1521220,319000,1520999);
467 builder.insert_segment(319000,1520999,316180,1520240);
468 builder.insert_segment(316180,1520240,312700,1518960);
469 builder.insert_segment(312700,1518960,310520,1517679);
470 builder.insert_segment(310520,1517679,309280,1517260);
471 builder.insert_segment(309280,1517260,306440,1515040);
472 builder.insert_segment(306440,1515040,304140,1512780);
473 builder.insert_segment(304140,1512780,301640,1509720);
474 builder.insert_segment(301640,1509720,301500,1509879);
475 builder.insert_segment(301500,1509879,300320,1509059);
476 builder.insert_segment(300320,1509059,299140,1507339);
477 builder.insert_segment(299140,1507339,297340,1502659);
478 builder.insert_segment(297340,1502659,298960,1508280);
479 builder.insert_segment(298960,1508280,299120,1509299);
480 builder.insert_segment(299120,1509299,298720,1510100);
481 builder.insert_segment(298720,1510100,298420,1512240);
482 builder.insert_segment(298420,1512240,297420,1514540);
483 builder.insert_segment(297420,1514540,296900,1515340);
484 builder.insert_segment(296900,1515340,294780,1517500);
485 builder.insert_segment(294780,1517500,293040,1518380);
486 builder.insert_segment(293040,1518380,289140,1521360);
487 builder.insert_segment(289140,1521360,283600,1523300);
488 builder.insert_segment(283600,1523300,280140,1525220);
489 builder.insert_segment(280140,1525220,279620,1525679);
490 builder.insert_segment(279620,1525679,274960,1527379);
491 builder.insert_segment(274960,1527379,273440,1528819);
492 builder.insert_segment(273440,1528819,269840,1532840);
493 builder.insert_segment(269840,1532840,264800,1536240);
494 builder.insert_segment(264800,1536240,261199,1540419);
495 builder.insert_segment(261199,1540419,257359,1541400);
496 builder.insert_segment(257359,1541400,250460,1539299);
497 builder.insert_segment(250460,1539299,250240,1539400);
498 builder.insert_segment(250240,1539400,249840,1540460);
499 builder.insert_segment(249840,1540460,249779,1541140);
500 builder.insert_segment(249779,1541140,248482,1539783);
501 builder.insert_segment(248482,1539783,251320,1544120);
502 builder.insert_segment(251320,1544120,252500,1548320);
503 builder.insert_segment(252500,1548320,252519,1549740);
504 builder.insert_segment(252519,1549740,253000,1553140);
505 builder.insert_segment(253000,1553140,252920,1556539);
506 builder.insert_segment(252920,1556539,253160,1556700);
507 builder.insert_segment(253160,1556700,254019,1558220);
508 builder.insert_segment(254019,1558220,253039,1559339);
509 builder.insert_segment(253039,1559339,252300,1561920);
510 builder.insert_segment(252300,1561920,251080,1565260);
511 builder.insert_segment(251080,1565260,251120,1566160);
512 builder.insert_segment(251120,1566160,249979,1570240);
513 builder.insert_segment(249979,1570240,248799,1575380);
514 builder.insert_segment(248799,1575380,247180,1579520);
515 builder.insert_segment(247180,1579520,243380,1588440);
516 builder.insert_segment(243380,1588440,241700,1591780);
517 builder.insert_segment(241700,1591780,240280,1593080);
518 builder.insert_segment(240280,1593080,231859,1598380);
519 builder.insert_segment(231859,1598380,228840,1600060);
520 builder.insert_segment(228840,1600060,226420,1601080);
521 builder.insert_segment(226420,1601080,223620,1601940);
522 builder.insert_segment(223620,1601940,220919,1603819);
523 builder.insert_segment(220919,1603819,219599,1604420);
524 builder.insert_segment(219599,1604420,218380,1605200);
525 builder.insert_segment(218380,1605200,213219,1607260);
526 builder.insert_segment(213219,1607260,210040,1607740);
527 builder.insert_segment(210040,1607740,186439,1596440);
528 builder.insert_segment(186439,1596440,185159,1594559);
529 builder.insert_segment(185159,1594559,182239,1588300);
530 builder.insert_segment(182239,1588300,181040,1585380);
531 builder.insert_segment(181040,1585380,180380,1578580);
532 builder.insert_segment(180380,1578580,180679,1573220);
533 builder.insert_segment(180679,1573220,181220,1568539);
534 builder.insert_segment(181220,1568539,181859,1565020);
535 builder.insert_segment(181859,1565020,184499,1555500);
536 builder.insert_segment(184499,1555500,183480,1558160);
537 builder.insert_segment(183480,1558160,182600,1561700);
538 builder.insert_segment(182600,1561700,171700,1554359);
539 builder.insert_segment(171700,1554359,176880,1545920);
540 builder.insert_segment(176880,1545920,189940,1529000);
541 builder.insert_segment(189940,1529000,200040,1535759);
542 builder.insert_segment(200040,1535759,207559,1531660);
543 builder.insert_segment(207559,1531660,218039,1527520);
544 builder.insert_segment(218039,1527520,222360,1526640);
545 builder.insert_segment(222360,1526640,225439,1526440);
546 builder.insert_segment(225439,1526440,231160,1527079);
547 builder.insert_segment(231160,1527079,232300,1527399);
548 builder.insert_segment(232300,1527399,236579,1529140);
549 builder.insert_segment(236579,1529140,238139,1529120);
550 builder.insert_segment(238139,1529120,238799,1529319);
551 builder.insert_segment(238799,1529319,240999,1531780);
552 builder.insert_segment(240999,1531780,238280,1528799);
553 builder.insert_segment(238280,1528799,236900,1523840);
554 builder.insert_segment(236900,1523840,236800,1522700);
555 builder.insert_segment(236800,1522700,235919,1518880);
556 builder.insert_segment(235919,1518880,236080,1514299);
557 builder.insert_segment(236080,1514299,238260,1508380);
558 builder.insert_segment(238260,1508380,240119,1505159);
559 builder.insert_segment(240119,1505159,233319,1496360);
560 builder.insert_segment(233319,1496360,239140,1490759);
561 builder.insert_segment(239140,1490759,258760,1478080);
562 builder.insert_segment(258760,1478080,263940,1484760);
563 builder.insert_segment(263940,1484760,263460,1485159);
564 builder.insert_segment(263460,1485159,265960,1483519);
565 builder.insert_segment(265960,1483519,270380,1482020);
566 builder.insert_segment(270380,1482020,272880,1481420);
567 builder.insert_segment(272880,1481420,275700,1481400);
568 builder.insert_segment(275700,1481400,278380,1481740);
569 builder.insert_segment(278380,1481740,281220,1482979);
570 builder.insert_segment(281220,1482979,284680,1484859);
571 builder.insert_segment(284680,1484859,285979,1486140);
572 builder.insert_segment(285979,1486140,290220,1489100);
573 builder.insert_segment(290220,1489100,292680,1489520);
574 builder.insert_segment(292680,1489520,293280,1490240);
575 builder.insert_segment(293280,1490240,293140,1489160);
576 builder.insert_segment(293140,1489160,293280,1488580);
577 builder.insert_segment(293280,1488580,294100,1486980);
578 builder.insert_segment(294100,1486980,294580,1484960);
579 builder.insert_segment(294580,1484960,295680,1481660);
580 builder.insert_segment(295680,1481660,297840,1477339);
581 builder.insert_segment(297840,1477339,302240,1472280);
582 builder.insert_segment(302240,1472280,307120,1469000);
583 builder.insert_segment(307120,1469000,314500,1466340);
584 builder.insert_segment(314500,1466340,324979,1464740);
585 builder.insert_segment(324979,1464740,338999,1462059);
586 builder.insert_segment(338999,1462059,345599,1461579);
587 builder.insert_segment(345599,1461579,349020,1461620);
588 builder.insert_segment(349020,1461620,353420,1461160);
589 builder.insert_segment(353420,1461160,357000,1461500);
590 builder.insert_segment(357000,1461500,359860,1461579);
591 builder.insert_segment(359860,1461579,364520,1462740);
592 builder.insert_segment(364520,1462740,367280,1464000);
593 builder.insert_segment(367280,1464000,372020,1467560);
594 builder.insert_segment(372020,1467560,373999,1469980);
595 builder.insert_segment(373999,1469980,375580,1472240);
596 builder.insert_segment(375580,1472240,376680,1474460);
597 builder.insert_segment(376680,1474460,377259,1478620);
598 builder.insert_segment(377259,1478620,379279,1480880);
599 builder.insert_segment(379279,1480880,379260,1481600);
600 builder.insert_segment(379260,1481600,378760,1482000);
601 builder.insert_segment(378760,1482000,379300,1482040);
602 builder.insert_segment(379300,1482040,380220,1482460);
603 builder.insert_segment(380220,1482460,380840,1483020);
604 builder.insert_segment(380840,1483020,385519,1482600);
605 builder.insert_segment(385519,1482600,386019,1482320);
606 builder.insert_segment(386019,1482320,386499,1481600);
607 builder.insert_segment(386499,1481600,386540,1480139);
608 builder.insert_segment(386540,1480139,387500,1478220);
609 builder.insert_segment(387500,1478220,388280,1476100);
610 builder.insert_segment(388280,1476100,390060,1473000);
611 builder.insert_segment(390060,1473000,393659,1469460);
612 builder.insert_segment(393659,1469460,396540,1467860);
613 builder.insert_segment(396540,1467860,401260,1466040);
614 builder.insert_segment(401260,1466040,406200,1465100);
615 builder.insert_segment(406200,1465100,410920,1465439);
616 builder.insert_segment(410920,1465439,420659,1467399);
617 builder.insert_segment(420659,1467399,433500,1471480);
618 builder.insert_segment(433500,1471480,441340,1473540);
619 builder.insert_segment(441340,1473540,448620,1475139);
620 builder.insert_segment(448620,1475139,450720,1475880);
621 builder.insert_segment(450720,1475880,453299,1477059);
622 builder.insert_segment(453299,1477059,456620,1478940);
623 builder.insert_segment(456620,1478940,458480,1480399);
624 builder.insert_segment(458480,1480399,461100,1482780);
625 builder.insert_segment(461100,1482780,463820,1486519);
626 builder.insert_segment(463820,1486519,464780,1488199);
627 builder.insert_segment(464780,1488199,466579,1493960);
628 builder.insert_segment(466579,1493960,467120,1497700);
629 builder.insert_segment(467120,1497700,466999,1500280);
630 builder.insert_segment(466999,1500280,467300,1502580);
631 builder.insert_segment(467300,1502580,467399,1505280);
632 builder.insert_segment(467399,1505280,466979,1506920);
633 builder.insert_segment(466979,1506920,467920,1504780);
634 builder.insert_segment(467920,1504780,468159,1505040);
635 builder.insert_segment(468159,1505040,469400,1504859);
636 builder.insert_segment(469400,1504859,470300,1505540);
637 builder.insert_segment(470300,1505540,471240,1505200);
638 builder.insert_segment(471240,1505200,471579,1504280);
639 builder.insert_segment(471579,1504280,473939,1502379);
640 builder.insert_segment(473939,1502379,476860,1500200);
641 builder.insert_segment(476860,1500200,479800,1498620);
642 builder.insert_segment(479800,1498620,480840,1498120);
643 builder.insert_segment(480840,1498120,485220,1497480);
644 builder.insert_segment(485220,1497480,489979,1497460);
645 builder.insert_segment(489979,1497460,494899,1498700);
646 builder.insert_segment(494899,1498700,500099,1501320);
647 builder.insert_segment(500099,1501320,501439,1501839);
648 builder.insert_segment(501439,1501839,503400,1502939);
649 builder.insert_segment(503400,1502939,510760,1508340);
650 builder.insert_segment(510760,1508340,513640,1510920);
651 builder.insert_segment(513640,1510920,518579,1514599);
652 builder.insert_segment(518579,1514599,519020,1515260);
653 builder.insert_segment(519020,1515260,520700,1516480);
654 builder.insert_segment(520700,1516480,524960,1521480);
655 builder.insert_segment(524960,1521480,526820,1524820);
656 builder.insert_segment(526820,1524820,528280,1527820);
657 builder.insert_segment(528280,1527820,529120,1533120);
658 builder.insert_segment(529120,1533120,528820,1537139);
659 builder.insert_segment(528820,1537139,527020,1543920);
660 builder.insert_segment(527020,1543920,526959,1546780);
661 builder.insert_segment(526959,1546780,526420,1548060);
662 builder.insert_segment(526420,1548060,527020,1547919);
663 builder.insert_segment(527020,1547919,527620,1548160);
664 builder.insert_segment(527620,1548160,528980,1548020);
665 builder.insert_segment(528980,1548020,535180,1544980);
666 builder.insert_segment(535180,1544980,540860,1542979);
667 builder.insert_segment(540860,1542979,546480,1542720);
668 builder.insert_segment(546480,1542720,547420,1542860);
669 builder.insert_segment(547420,1542860,551800,1544140);
670 builder.insert_segment(551800,1544140,558740,1547939);
671 builder.insert_segment(558740,1547939,569920,1556259);
672 builder.insert_segment(569920,1556259,573660,1560220);
673 builder.insert_segment(573660,1560220,573040,1559500);
674 builder.insert_segment(573040,1559500,574740,1559220);
675 builder.insert_segment(574740,1559220,588480,1562899);
676 builder.insert_segment(588480,1562899,585180,1576019);
677 builder.insert_segment(585180,1576019,583440,1577979);
678 builder.insert_segment(583440,1577979,584280,1582399);
679 builder.insert_segment(584280,1582399,584520,1588960);
680 builder.insert_segment(584520,1588960,583420,1601620);
681 builder.insert_segment(583420,1601620,582840,1603880);
682 builder.insert_segment(582840,1603880,579860,1611400);
683 builder.insert_segment(579860,1611400,577980,1614579);
684 builder.insert_segment(577980,1614579,577380,1616080);
685 builder.insert_segment(577380,1616080,563800,1621579);
686 builder.insert_segment(563800,1621579,561320,1622320);
687 builder.insert_segment(561320,1622320,565080,1621960);
688 builder.insert_segment(565080,1621960,571680,1620780);
689 builder.insert_segment(571680,1620780,583260,1628340);
690 builder.insert_segment(583260,1628340,583100,1630399);
691 builder.insert_segment(583100,1630399,582200,1632160);
692 builder.insert_segment(582200,1632160,595380,1627020);
693 builder.insert_segment(595380,1627020,597400,1627320);
694 builder.insert_segment(597400,1627320,602240,1628459);
695 builder.insert_segment(602240,1628459,605660,1630260);
696 builder.insert_segment(605660,1630260,610319,1634140);
697 builder.insert_segment(610319,1634140,612340,1636319);
698 builder.insert_segment(612340,1636319,614820,1638020);
699 builder.insert_segment(614820,1638020,616460,1638740);
700 builder.insert_segment(616460,1638740,620420,1639500);
701 builder.insert_segment(620420,1639500,623000,1639280);
702 builder.insert_segment(623000,1639280,624459,1639359);
703 builder.insert_segment(624459,1639359,626180,1640159);
704 builder.insert_segment(626180,1640159,627279,1640940);
705 builder.insert_segment(627279,1640940,629980,1643759);
706 builder.insert_segment(629980,1643759,632380,1648000);
707 builder.insert_segment(632380,1648000,635020,1654800);
708 builder.insert_segment(635020,1654800,636320,1659140);
709 builder.insert_segment(636320,1659140,636680,1663620);
710 builder.insert_segment(636680,1663620,636180,1665780);
711 builder.insert_segment(636180,1665780,630620,1669720);
712 builder.insert_segment(630620,1669720,628760,1672979);
713 builder.insert_segment(628760,1672979,627540,1676859);
714 builder.insert_segment(627540,1676859,627040,1680699);
715 builder.insert_segment(627040,1680699,624700,1686500);
716 builder.insert_segment(624700,1686500,623260,1688799);
717 builder.insert_segment(623260,1688799,619620,1693799);
718 builder.insert_segment(619620,1693799,621720,1694859);
719 builder.insert_segment(621720,1694859,624940,1694379);
720 builder.insert_segment(624940,1694379,627120,1695600);
721 builder.insert_segment(627120,1695600,627740,1696120);
722 builder.insert_segment(627740,1696120,631120,1697460);
723 builder.insert_segment(631120,1697460,633980,1698340);
724 builder.insert_segment(633980,1698340,638380,1700460);
725 builder.insert_segment(638380,1700460,642660,1703300);
726 builder.insert_segment(642660,1703300,643620,1704140);
727 builder.insert_segment(643620,1704140,646300,1707000);
728 builder.insert_segment(646300,1707000,649060,1710880);
729 builder.insert_segment(649060,1710880,651160,1714879);
730 builder.insert_segment(651160,1714879,651740,1716559);
731 builder.insert_segment(651740,1716559,653139,1722619);
732 builder.insert_segment(653139,1722619,653020,1728320);
733 builder.insert_segment(653020,1728320,652719,1731420);
734 builder.insert_segment(652719,1731420,651619,1736360);
735 builder.insert_segment(651619,1736360,649819,1743160);
736 builder.insert_segment(649819,1743160,646440,1749059);
737 builder.insert_segment(646440,1749059,645219,1750399);
738 builder.insert_segment(645219,1750399,643959,1752679);
739 builder.insert_segment(643959,1752679,643959,1753740);
740 builder.insert_segment(643959,1753740,642140,1754240);
741 builder.insert_segment(642140,1754240,643760,1754099);
742 builder.insert_segment(643760,1754099,644320,1754280);
743 builder.insert_segment(644320,1754280,645000,1754879);
744 builder.insert_segment(645000,1754879,646940,1755620);
745 builder.insert_segment(646940,1755620,654779,1757820);
746 builder.insert_segment(654779,1757820,661100,1761559);
747 builder.insert_segment(661100,1761559,664099,1763980);
748 builder.insert_segment(664099,1763980,668220,1768480);
749 builder.insert_segment(668220,1768480,671920,1773640);
750 builder.insert_segment(671920,1773640,674939,1779540);
751 builder.insert_segment(674939,1779540,677760,1782440);
752 builder.insert_segment(677760,1782440,679080,1785739);
753 builder.insert_segment(679080,1785739,678780,1788100);
754 builder.insert_segment(678780,1788100,678020,1791500);
755 builder.insert_segment(678020,1791500,677120,1793600);
756 builder.insert_segment(677120,1793600,676860,1795800);
757 builder.insert_segment(676860,1795800,676440,1797320);
758 builder.insert_segment(676440,1797320,676459,1798519);
759 builder.insert_segment(676459,1798519,675620,1800159);
760 builder.insert_segment(675620,1800159,675520,1801019);
761 builder.insert_segment(675520,1801019,673360,1804899);
762 builder.insert_segment(673360,1804899,672740,1807079);
763 builder.insert_segment(672740,1807079,673300,1809260);
764 builder.insert_segment(673300,1809260,674539,1811019);
765 builder.insert_segment(674539,1811019,675499,1812020);
766 builder.insert_segment(675499,1812020,677660,1817240);
767 builder.insert_segment(677660,1817240,679659,1824280);
768 builder.insert_segment(679659,1824280,680380,1828779);
769 builder.insert_segment(680380,1828779,679519,1837999);
770 builder.insert_segment(679519,1837999,677940,1844379);
771 builder.insert_segment(677940,1844379,676940,1846900);
772 builder.insert_segment(676940,1846900,675479,1849379);
773 builder.insert_segment(675479,1849379,674000,1851200);
774 builder.insert_segment(674000,1851200,671380,1853480);
775 builder.insert_segment(671380,1853480,667019,1855240);
776 builder.insert_segment(667019,1855240,662540,1856060);
777 builder.insert_segment(662540,1856060,660960,1856599);
778 builder.insert_segment(660960,1856599,656240,1857020);
779 builder.insert_segment(656240,1857020,655600,1856960);
780 builder.insert_segment(655600,1856960,652839,1855880);
781 builder.insert_segment(652839,1855880,652019,1855840);
782 builder.insert_segment(652019,1855840,651459,1855060);
783 builder.insert_segment(651459,1855060,652179,1854359);
784 builder.insert_segment(652179,1854359,652019,1849919);
785 builder.insert_segment(652019,1849919,650620,1846920);
786 builder.insert_segment(650620,1846920,647299,1844540);
787 builder.insert_segment(647299,1844540,644500,1843819);
788 builder.insert_segment(644500,1843819,641860,1844859);
789 builder.insert_segment(641860,1844859,641059,1845340);
790 builder.insert_segment(641059,1845340,638860,1845820);
791 builder.insert_segment(638860,1845820,638000,1845820);
792 builder.insert_segment(638000,1845820,636340,1845479);
793 builder.insert_segment(636340,1845479,634980,1844800);
794 builder.insert_segment(634980,1844800,632660,1842979);
795 builder.insert_segment(632660,1842979,631140,1841120);
796 builder.insert_segment(631140,1841120,629140,1839520);
797 builder.insert_segment(629140,1839520,626640,1839540);
798 builder.insert_segment(626640,1839540,624159,1840739);
799 builder.insert_segment(624159,1840739,623820,1841380);
800 builder.insert_segment(623820,1841380,622440,1842719);
801 builder.insert_segment(622440,1842719,622100,1843680);
802 builder.insert_segment(622100,1843680,623780,1846100);
803 builder.insert_segment(623780,1846100,624580,1846920);
804 builder.insert_segment(624580,1846920,626120,1856720);
805 builder.insert_segment(626120,1856720,627440,1860000);
806 builder.insert_segment(627440,1860000,628000,1864299);
807 builder.insert_segment(628000,1864299,627380,1865999);
808 builder.insert_segment(627380,1865999,626260,1867580);
809 builder.insert_segment(626260,1867580,623660,1869520);
810 builder.insert_segment(623660,1869520,618680,1872780);
811 builder.insert_segment(618680,1872780,617699,1873140);
812 builder.insert_segment(617699,1873140,612000,1874160);
813 builder.insert_segment(612000,1874160,609840,1874220);
814 builder.insert_segment(609840,1874220,606940,1873860);
815 builder.insert_segment(136680,1926960,135500,1926360);
816 builder.insert_segment(135500,1926360,137360,1923060);
817 builder.insert_segment(137360,1923060,139500,1918559);
818 builder.insert_segment(139500,1918559,140780,1913239);
819 builder.insert_segment(140780,1913239,139600,1913020);
820 builder.insert_segment(139600,1913020,127380,1923600);
821 builder.insert_segment(127380,1923600,122800,1926059);
822 builder.insert_segment(122800,1926059,118879,1927719);
823 builder.insert_segment(118879,1927719,114420,1928300);
824 builder.insert_segment(114420,1928300,111480,1927020);
825 builder.insert_segment(111480,1927020,110619,1925399);
826 builder.insert_segment(110619,1925399,109620,1924200);
827 builder.insert_segment(109620,1924200,108860,1922780);
828 builder.insert_segment(108860,1922780,108479,1920999);
829 builder.insert_segment(108479,1920999,106600,1918080);
830 builder.insert_segment(106600,1918080,106220,1917740);
831 builder.insert_segment(106220,1917740,105199,1916960);
832 builder.insert_segment(105199,1916960,101460,1914859);
833 builder.insert_segment(101460,1914859,99480,1914379);
834 builder.insert_segment(99480,1914379,97179,1913499);
835 builder.insert_segment(97179,1913499,94900,1911100);
836 builder.insert_segment(94900,1911100,94100,1909639);
837 builder.insert_segment(94100,1909639,93379,1907740);
838 builder.insert_segment(93379,1907740,93960,1898259);
839 builder.insert_segment(93960,1898259,93739,1896460);
840 builder.insert_segment(93739,1896460,94299,1893080);
841 builder.insert_segment(94299,1893080,97240,1883440);
842 builder.insert_segment(97240,1883440,99799,1879780);
843 builder.insert_segment(99799,1879780,100400,1878120);
844 builder.insert_segment(100400,1878120,100199,1877200);
845 builder.insert_segment(100199,1877200,98940,1877460);
846 builder.insert_segment(98940,1877460,96320,1878480);
847 builder.insert_segment(96320,1878480,86020,1881039);
848 builder.insert_segment(86020,1881039,84340,1881080);
849 builder.insert_segment(84340,1881080,76780,1882600);
850 builder.insert_segment(76780,1882600,74380,1883580);
851 builder.insert_segment(74380,1883580,72679,1884019);
852 builder.insert_segment(72679,1884019,70900,1885940);
853 builder.insert_segment(70900,1885940,71240,1888340);
854 builder.insert_segment(71240,1888340,72720,1889940);
855 builder.insert_segment(72720,1889940,74640,1891360);
856 builder.insert_segment(74640,1891360,75620,1893179);
857 builder.insert_segment(75620,1893179,77140,1895340);
858 builder.insert_segment(77140,1895340,81040,1899500);
859 builder.insert_segment(81040,1899500,82760,1900380);
860 builder.insert_segment(82760,1900380,83720,1902300);
861 builder.insert_segment(83720,1902300,85459,1903700);
862 builder.insert_segment(85459,1903700,86960,1905940);
863 builder.insert_segment(86960,1905940,88280,1913020);
864 builder.insert_segment(88280,1913020,88160,1913539);
865 builder.insert_segment(88160,1913539,88020,1913860);
866 builder.insert_segment(88020,1913860,86080,1915200);
867 builder.insert_segment(86080,1915200,85660,1916740);
868 builder.insert_segment(85660,1916740,83899,1918799);
869 builder.insert_segment(83899,1918799,79360,1921160);
870 builder.insert_segment(79360,1921160,76400,1923140);
871 builder.insert_segment(76400,1923140,70800,1926180);
872 builder.insert_segment(70800,1926180,64460,1927659);
873 builder.insert_segment(64460,1927659,60880,1927820);
874 builder.insert_segment(60880,1927820,55780,1925580);
875 builder.insert_segment(55780,1925580,54940,1925040);
876 builder.insert_segment(54940,1925040,52199,1921700);
877 builder.insert_segment(52199,1921700,49680,1916579);
878 builder.insert_segment(49680,1916579,48719,1914180);
879 builder.insert_segment(48719,1914180,48620,1913080);
880 builder.insert_segment(48620,1913080,47640,1909120);
881 builder.insert_segment(47640,1909120,48280,1899319);
882 builder.insert_segment(48280,1899319,49140,1895600);
883 builder.insert_segment(49140,1895600,50320,1892899);
884 builder.insert_segment(50320,1892899,51559,1890640);
885 builder.insert_segment(51559,1890640,52140,1889960);
886 builder.insert_segment(52140,1889960,54640,1887999);
887 builder.insert_segment(54640,1887999,55639,1886500);
888 builder.insert_segment(55639,1886500,55720,1885080);
889 builder.insert_segment(55720,1885080,55439,1883220);
890 builder.insert_segment(55439,1883220,54640,1882159);
891 builder.insert_segment(54640,1882159,54100,1880300);
892 builder.insert_segment(54100,1880300,52479,1874079);
893 builder.insert_segment(52479,1874079,51700,1869000);
894 builder.insert_segment(51700,1869000,51600,1865419);
895 builder.insert_segment(51600,1865419,51720,1859820);
896 builder.insert_segment(51720,1859820,52160,1857260);
897 builder.insert_segment(52160,1857260,52539,1856120);
898 builder.insert_segment(52539,1856120,57240,1845720);
899 builder.insert_segment(57240,1845720,58280,1844400);
900 builder.insert_segment(58280,1844400,60639,1840820);
901 builder.insert_segment(60639,1840820,65580,1835540);
902 builder.insert_segment(65580,1835540,68340,1833340);
903 builder.insert_segment(68340,1833340,71660,1831480);
904 builder.insert_segment(71660,1831480,73460,1829960);
905 builder.insert_segment(73460,1829960,75200,1829319);
906 builder.insert_segment(75200,1829319,77200,1828960);
907 builder.insert_segment(77200,1828960,78640,1828920);
908 builder.insert_segment(78640,1828920,111780,1842700);
909 builder.insert_segment(111780,1842700,112800,1843480);
910 builder.insert_segment(112800,1843480,113879,1844879);
911 builder.insert_segment(113879,1844879,116379,1847379);
912 builder.insert_segment(116379,1847379,116360,1847580);
913 builder.insert_segment(116360,1847580,117100,1848799);
914 builder.insert_segment(117100,1848799,120160,1851799);
915 builder.insert_segment(120160,1851799,121860,1852320);
916 builder.insert_segment(121860,1852320,124280,1852679);
917 builder.insert_segment(124280,1852679,128920,1854659);
918 builder.insert_segment(128920,1854659,130840,1856360);
919 builder.insert_segment(130840,1856360,133520,1859460);
920 builder.insert_segment(133520,1859460,135079,1860860);
921 builder.insert_segment(135079,1860860,137280,1864440);
922 builder.insert_segment(137280,1864440,142980,1872899);
923 builder.insert_segment(142980,1872899,144600,1875840);
924 builder.insert_segment(144600,1875840,147240,1883480);
925 builder.insert_segment(147240,1883480,147460,1886539);
926 builder.insert_segment(147460,1886539,147660,1886920);
927 builder.insert_segment(147660,1886920,148399,1891720);
928 builder.insert_segment(148399,1891720,148820,1896799);
929 builder.insert_segment(148820,1896799,148399,1898880);
930 builder.insert_segment(148399,1898880,148799,1899420);
931 builder.insert_segment(148799,1899420,150520,1898539);
932 builder.insert_segment(150520,1898539,154760,1892760);
933 builder.insert_segment(154760,1892760,156580,1889240);
934 builder.insert_segment(156580,1889240,156940,1888900);
935 builder.insert_segment(156940,1888900,157540,1889540);
936 builder.insert_segment(157540,1889540,156860,1896819);
937 builder.insert_segment(156860,1896819,155639,1903940);
938 builder.insert_segment(155639,1903940,153679,1908100);
939 builder.insert_segment(153679,1908100,152859,1909039);
940 builder.insert_segment(152859,1909039,149660,1915580);
941 builder.insert_segment(149660,1915580,148000,1918600);
942 builder.insert_segment(148000,1918600,141640,1926980);
943 builder.insert_segment(141640,1926980,140060,1927899);
944 builder.insert_segment(140060,1927899,136960,1929019);
945 builder.insert_segment(136960,1929019,136680,1926960);
946 builder.insert_segment(627100,1941519,625120,1940060);
947 builder.insert_segment(625120,1940060,614580,1934680);
948 builder.insert_segment(614580,1934680,608780,1929319);
949 builder.insert_segment(608780,1929319,607400,1927679);
950 builder.insert_segment(607400,1927679,606160,1925920);
951 builder.insert_segment(606160,1925920,604480,1922240);
952 builder.insert_segment(604480,1922240,602420,1916819);
953 builder.insert_segment(602420,1916819,602279,1915260);
954 builder.insert_segment(602279,1915260,602880,1907960);
955 builder.insert_segment(602880,1907960,604140,1902719);
956 builder.insert_segment(604140,1902719,605880,1898539);
957 builder.insert_segment(605880,1898539,606640,1897399);
958 builder.insert_segment(606640,1897399,609680,1894420);
959 builder.insert_segment(609680,1894420,611099,1893640);
960 builder.insert_segment(611099,1893640,616099,1890340);
961 builder.insert_segment(616099,1890340,617520,1889160);
962 builder.insert_segment(617520,1889160,620220,1885540);
963 builder.insert_segment(620220,1885540,624480,1882260);
964 builder.insert_segment(624480,1882260,628660,1880280);
965 builder.insert_segment(628660,1880280,632520,1879659);
966 builder.insert_segment(632520,1879659,637760,1879859);
967 builder.insert_segment(637760,1879859,640899,1881500);
968 builder.insert_segment(640899,1881500,644220,1883980);
969 builder.insert_segment(644220,1883980,643900,1890860);
970 builder.insert_segment(643900,1890860,643060,1894160);
971 builder.insert_segment(643060,1894160,642459,1900320);
972 builder.insert_segment(642459,1900320,642400,1903120);
973 builder.insert_segment(642400,1903120,643819,1908519);
974 builder.insert_segment(643819,1908519,644700,1912560);
975 builder.insert_segment(644700,1912560,644640,1916380);
976 builder.insert_segment(644640,1916380,644959,1918600);
977 builder.insert_segment(644959,1918600,642540,1925620);
978 builder.insert_segment(642540,1925620,642439,1926640);
979 builder.insert_segment(642439,1926640,641860,1928300);
980 builder.insert_segment(641860,1928300,638700,1932939);
981 builder.insert_segment(638700,1932939,634820,1934200);
982 builder.insert_segment(634820,1934200,631980,1936539);
983 builder.insert_segment(631980,1936539,630160,1940600);
984 builder.insert_segment(630160,1940600,627740,1941640);
985 builder.insert_segment(627740,1941640,627400,1941660);
986 builder.insert_segment(627400,1941660,627100,1941519);
987 builder.construct(&diagram);
988};