• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Boost.Geometry
2 // Unit Test
3 
4 // Copyright (c) 2017-2018, Oracle and/or its affiliates.
5 // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
6 
7 // Use, modification and distribution is subject to the Boost Software License,
8 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
9 // http://www.boost.org/LICENSE_1_0.txt)
10 
11 // This file contains test cases converted from PROJ4, http://trac.osgeo.org/proj
12 // PROJ4 is originally written by Gerald Evenden (then of the USGS)
13 // PROJ4 is maintained by Frank Warmerdam
14 // Test cases was converted to Boost.Geometry by Adam Wulkiewicz
15 
16 // Original copyright notice:
17 
18 // Copyright (c) 1995, Gerald Evenden
19 
20 // Permission is hereby granted, free of charge, to any person obtaining a
21 // copy of this software and associated documentation files (the "Software"),
22 // to deal in the Software without restriction, including without limitation
23 // the rights to use, copy, modify, merge, publish, distribute, sublicense,
24 // and/or sell copies of the Software, and to permit persons to whom the
25 // Software is furnished to do so, subject to the following conditions:
26 
27 // The above copyright notice and this permission notice shall be included
28 // in all copies or substantial portions of the Software.
29 
30 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
31 // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
32 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
33 // THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
34 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
35 // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
36 // DEALINGS IN THE SOFTWARE.
37 
38 #ifndef BOOST_GEOMETRY_TEST_SRS_PROJECTION_SELFTEST_CASES_HPP
39 #define BOOST_GEOMETRY_TEST_SRS_PROJECTION_SELFTEST_CASES_HPP
40 
41 
42 #include <geometry_test_common.hpp>
43 
44 #include <boost/geometry.hpp>
45 #include <boost/geometry/geometries/register/point.hpp>
46 
47 
48 struct XY { double x, y; };
49 struct LL { double lon, lat; };
50 
51 BOOST_GEOMETRY_REGISTER_POINT_2D(XY, double, bg::cs::cartesian, x, y)
52 BOOST_GEOMETRY_REGISTER_POINT_2D(LL, double, bg::cs::geographic<bg::degree>, lon, lat)
53 
54 struct projection_case
55 {
56     std::string id;
57     std::string args;
58     LL fwd_in[4];
59     XY fwd_expect[4];
60     XY inv_in[4];
61     LL inv_expect[4];
62 };
63 
64 static const projection_case projection_cases[] = {
65     {
66         "aea_e",
67         "+proj=aea   +ellps=GRS80  +lat_1=0 +lat_2=2",
68         {
69             { 2, 1},
70             { 2,-1},
71             {-2, 1},
72             {-2,-1}
73         },{
74             {222571.60875710563,  110653.32674302977},
75             {222706.30650839131,  -110484.26714439997},
76             {-222571.60875710563,  110653.32674302977},
77             {-222706.30650839131,  -110484.26714439997}
78         },{
79             { 200, 100},
80             { 200,-100},
81             {-200, 100},
82             {-200,-100}
83         },{
84             {0.0017966310597749514,  0.00090436885862202158},
85             {0.0017966300767030448,  -0.00090437009538581453},
86             {-0.0017966310597749514,  0.00090436885862202158},
87             {-0.0017966300767030448,  -0.00090437009538581453}
88         }
89     },{
90         "aea_s",
91         "+proj=aea   +R=6400000    +lat_1=0 +lat_2=2",
92         {
93             { 2, 1},
94             { 2,-1},
95             {-2, 1},
96             {-2,-1}
97         },{
98             {223334.08517088494,  111780.43188447191},
99             {223470.15499168713,  -111610.33943099028},
100             {-223334.08517088494,  111780.43188447191},
101             {-223470.15499168713,  -111610.33943099028}
102         },{
103             { 200, 100},
104             { 200,-100},
105             {-200, 100},
106             {-200,-100}
107         },{
108             {0.0017904935979658752,  0.00089524594491375306},
109             {0.0017904926216016812,  -0.00089524716502493225},
110             {-0.0017904935979658752,  0.00089524594491375306},
111             {-0.0017904926216016812,  -0.00089524716502493225}
112         }
113     },{
114         "leac_e",
115         "+proj=leac   +ellps=GRS80  +lat_1=0 +lat_2=2",
116         {
117             { 2, 1},
118             { 2,-1},
119             {-2, 1},
120             {-2,-1}
121         },{
122             {220685.14054297868,  112983.50088939646},
123             {224553.31227982609,  -108128.63674487274},
124             {-220685.14054297868,  112983.50088939646},
125             {-224553.31227982609,  -108128.63674487274}
126         },{
127             { 200, 100},
128             { 200,-100},
129             {-200, 100},
130             {-200,-100}
131         },{
132             {0.0017966446840328458,  0.00090435171340223211},
133             {0.0017966164523713021,  -0.00090438724081843625},
134             {-0.0017966446840328458,  0.00090435171340223211},
135             {-0.0017966164523713021,  -0.00090438724081843625}
136         }
137     },{
138         "leac_s",
139         "+proj=leac   +R=6400000    +lat_1=0 +lat_2=2",
140         {
141             { 2, 1},
142             { 2,-1},
143             {-2, 1},
144             {-2,-1}
145         },{
146             {221432.86859285168,  114119.45452653214},
147             {225331.72412711097,  -109245.82943505641},
148             {-221432.86859285168,  114119.45452653214},
149             {-225331.72412711097,  -109245.82943505641}
150         },{
151             { 200, 100},
152             { 200,-100},
153             {-200, 100},
154             {-200,-100}
155         },{
156             {0.0017905070979748127,  0.00089522906964877795},
157             {0.001790479121519977,  -0.00089526404022281043},
158             {-0.0017905070979748127,  0.00089522906964877795},
159             {-0.001790479121519977,  -0.00089526404022281043}
160         }
161     },{
162         "aeqd_e",
163         "+proj=aeqd   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
164         {
165             { 2, 1},
166             { 2,-1},
167             {-2, 1},
168             {-2,-1}
169         },{
170             { 222616.522190051648,  110596.996549550197},
171             { 222616.522190051648, -110596.996549550211},
172             {-222616.522190051648,  110596.996549550197},
173             {-222616.522190051648, -110596.996549550211}
174         },{
175             { 200, 100},
176             { 200,-100},
177             {-200, 100},
178             {-200,-100}
179         },{
180             { 0.00179663056838724787,  0.000904369476930248902},
181             { 0.00179663056838724787, -0.000904369476930248469},
182             {-0.00179663056838724787,  0.000904369476930248902},
183             {-0.00179663056838724787, -0.000904369476930248469}
184         }
185     },{
186         "aeqd_s",
187         "+proj=aeqd   +R=6400000    +lat_1=0.5 +lat_2=2",
188         {
189             { 2, 1},
190             { 2,-1},
191             {-2, 1},
192             {-2,-1}
193         },{
194             { 223379.456047271,  111723.757570854126},
195             { 223379.456047271, -111723.757570854126},
196             {-223379.456047271,  111723.757570854126},
197             {-223379.456047271, -111723.757570854126}
198         },{
199             { 200, 100},
200             { 200,-100},
201             {-200, 100},
202             {-200,-100}
203         },{
204             { 0.00179049310992953335,  0.000895246554746200623},
205             { 0.00179049310992953335, -0.000895246554746200623},
206             {-0.00179049310992953335,  0.000895246554746200623},
207             {-0.00179049310992953335, -0.000895246554746200623}
208         }
209     },{
210         "airy",
211         "+proj=airy   +a=6400000    +lat_1=0 +lat_2=2",
212         {
213             { 2, 1},
214             { 2,-1},
215             {-2, 1},
216             {-2,-1}
217         },{
218             { 189109.88690862127,   94583.752387504152},
219             { 189109.88690862127,  -94583.752387504152},
220             {-189109.88690862127,   94583.752387504152},
221             {-189109.88690862127,  -94583.752387504152}
222         },
223         {},{{HUGE_VAL, HUGE_VAL}}
224     },{
225         "aitoff",
226         "+proj=aitoff   +R=6400000    +lat_1=0 +lat_2=2",
227         {
228             { 2, 1},
229             { 2,-1},
230             {-2, 1},
231             {-2,-1}
232         },{
233             {223379.45881169615,  111706.74288385305},
234             {223379.45881169615,  -111706.74288385305},
235             {-223379.45881169615,  111706.74288385305},
236             {-223379.45881169615,  -111706.74288385305}
237         },{
238             { 200, 100},
239             { 200,-100},
240             {-200, 100},
241             {-200,-100}
242         },{
243             {0.0017904931100388164,  0.00089524655491012516},
244             {0.0017904931100388164,  -0.00089524655491012516},
245             {-0.0017904931100388164,  0.00089524655491012516},
246             {-0.0017904931100388164,  -0.00089524655491012516}
247         }
248     },{
249         "wintri",
250         "+proj=wintri   +a=6400000    +lat_1=0 +lat_2=2",
251         {
252             { 2, 1},
253             { 2,-1},
254             {-2, 1},
255             {-2,-1}
256         },{
257             {223390.80153348515,  111703.90750574505},
258             {223390.80153348515,  -111703.90750574505},
259             {-223390.80153348515,  111703.90750574505},
260             {-223390.80153348515,  -111703.90750574505}
261         },{
262             { 200, 100},
263             { 200,-100},
264             {-200, 100},
265             {-200,-100}
266         },{
267             {0.0017904931099113196,  0.00089524655490101819},
268             {0.0017904931099113196,  -0.00089524655490101819},
269             {-0.0017904931099113196,  0.00089524655490101819},
270             {-0.0017904931099113196,  -0.00089524655490101819}
271         }
272     },{
273         "august",
274         "+proj=august   +a=6400000    +lat_1=0 +lat_2=2",
275         {
276             { 2, 1},
277             { 2,-1},
278             {-2, 1},
279             {-2,-1}
280         },{
281             {223404.97818097242,  111722.34028976287},
282             {223404.97818097242,  -111722.34028976287},
283             {-223404.97818097242,  111722.34028976287},
284             {-223404.97818097242,  -111722.34028976287}
285         },
286         {},{{HUGE_VAL, HUGE_VAL}}
287     },{
288         "bacon",
289         "+proj=bacon   +a=6400000    +lat_1=0 +lat_2=2",
290         {
291             { 2, 1},
292             { 2,-1},
293             {-2, 1},
294             {-2,-1}
295         },{
296             {223334.13255596498,  175450.72592266591},
297             {223334.13255596498,  -175450.72592266591},
298             {-223334.13255596498,  175450.72592266591},
299             {-223334.13255596498,  -175450.72592266591}
300         },
301         {},{{HUGE_VAL, HUGE_VAL}}
302     },{
303         "apian",
304         "+proj=apian   +a=6400000    +lat_1=0 +lat_2=2",
305         {
306             { 2, 1},
307             { 2,-1},
308             {-2, 1},
309             {-2,-1}
310         },{
311             { 223374.57735525275,   111701.07212763709},
312             { 223374.57735525275,  -111701.07212763709},
313             {-223374.57735525275,   111701.07212763709},
314             {-223374.57735525275,  -111701.07212763709}
315         },
316         {},{{HUGE_VAL, HUGE_VAL}}
317     },{
318         "ortel",
319         "+proj=ortel   +a=6400000    +lat_1=0 +lat_2=2",
320         {
321             { 2, 1},
322             { 2,-1},
323             {-2, 1},
324             {-2,-1}
325         },{
326             { 223374.57735525275,   111701.07212763709},
327             { 223374.57735525275,  -111701.07212763709},
328             {-223374.57735525275,   111701.07212763709},
329             {-223374.57735525275,  -111701.07212763709}
330         },
331         {},{{HUGE_VAL, HUGE_VAL}}
332     },{
333         "bipc_e",
334         "+proj=bipc   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
335         {
336             { 2, 1},
337             { 2,-1},
338             {-2, 1},
339             {-2,-1}
340         },{
341             {2452160.2177257561,  -14548450.759654747},
342             {2447915.213725341,  -14763427.21279873},
343             {2021695.5229349085,  -14540413.695283702},
344             {2018090.5030046992,  -14755620.651414108}
345         },{
346             { 200, 100},
347             { 200,-100},
348             {-200, 100},
349             {-200,-100}
350         },{
351             {-73.038700284978702,  17.248118466239116},
352             {-73.03730373933017,  17.249414978178777},
353             {-73.03589317304332,  17.245536403008771},
354             {-73.034496627213585,  17.246832895573739}
355         }
356     },{
357         "bipc_s",
358         "+proj=bipc   +a=6400000    +lat_1=0.5 +lat_2=2",
359         {
360             { 2, 1},
361             { 2,-1},
362             {-2, 1},
363             {-2,-1}
364         },{
365             {2460565.7409749646,  -14598319.9893308},
366             {2456306.1859352002,  -14814033.339502094},
367             {2028625.4978190989,  -14590255.375482792},
368             {2025008.1205891429,  -14806200.018759441}
369         },{
370             { 200, 100},
371             { 200,-100},
372             {-200, 100},
373             {-200,-100}
374         },{
375             {-73.038693104942126,  17.248116270440242},
376             {-73.037301330021322,  17.24940835333777},
377             {-73.035895582251086,  17.245543027866539},
378             {-73.034503807150301,  17.246835091521532}
379         }
380     },{
381         "boggs",
382         "+proj=boggs   +a=6400000    +lat_1=0 +lat_2=2",
383         {
384             { 2, 1},
385             { 2,-1},
386             {-2, 1},
387             {-2,-1}
388         },{
389             { 211949.70080818201,   117720.99830541089},
390             { 211949.70080818201,  -117720.99830541089},
391             {-211949.70080818201,   117720.99830541089},
392             {-211949.70080818201,  -117720.99830541089},
393         },
394         {},{{HUGE_VAL, HUGE_VAL}}
395     },{
396         "bonne_e",
397         "+proj=bonne   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
398         {
399             { 2, 1},
400             { 2,-1},
401             {-2, 1},
402             {-2,-1}
403         },{
404             { 222605.29609715697,   55321.139565494814},
405             { 222605.29609923941,  -165827.64779905154},
406             {-222605.29609715697,   55321.139565494814},
407             {-222605.29609923941,  -165827.64779905154}
408         },{
409             { 200, 100},
410             { 200,-100},
411             {-200, 100},
412             {-200,-100}
413         },{
414             { 0.0017966987691132891,  0.50090436853737497},
415             { 0.0017966982774478867,  0.4990956309655612},
416             {-0.0017966987691132891,  0.50090436853737497},
417             {-0.0017966982774478867,  0.4990956309655612}
418         }
419     },{
420         "bonne_s",
421         "+proj=bonne   +R=6400000    +lat_1=0.5 +lat_2=2",
422         {
423             { 2, 1},
424             { 2,-1},
425             {-2, 1},
426             {-2,-1}
427         },{
428             { 223368.11557252839,   55884.555246393575},
429             { 223368.11557463196,  -167517.59936969393},
430             {-223368.11557252839,   55884.555246393575},
431             {-223368.11557463196,  -167517.59936969393}
432         },{
433             { 200, 100},
434             { 200,-100},
435             {-200, 100},
436             {-200,-100}
437         },{
438             { 0.0017905615332457991,  0.50089524631087834},
439             { 0.0017905610449335603,  0.49910475320072978},
440             {-0.0017905615332457991,  0.50089524631087834},
441             {-0.0017905610449335603,  0.49910475320072978}
442         }
443     },
444     // NOT IMPLEMENTED IN Boost.Geometry
445     /*
446     {
447         "calcofi_e",
448         "+proj=calcofi   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +no_defs",
449         {
450             { 2, 1},
451             { 2,-1},
452             {-2, 1},
453             {-2,-1}
454         },{
455             {508.44487214981905,  -1171.7648604175156},
456             {514.99916815188112,  -1145.8219814677668},
457             {500.68538412539851,  -1131.4453779204598},
458             {507.36971913666355,  -1106.1782014834275}
459         },{
460             { 200, 100},
461             { 200,-100},
462             {-200, 100},
463             {-200,-100}
464         },{
465             {-110.36330792469906,  12.032056975840137},
466             {-98.455008863288782,  18.698723642506803},
467             {-207.4470245036909,  81.314089278595247},
468             {-62.486322854481287,  87.980755945261919}
469         }
470     },{
471         "calcofi_s",
472         "+proj=calcofi   +R=6400000    +lat_1=0.5 +lat_2=2 +no_defs",
473         {
474             { 2, 1},
475             { 2,-1},
476             {-2, 1},
477             {-2,-1}
478         },{
479             {507.09050748781806,  -1164.7273751978314},
480             {513.68613637462886,  -1138.9992682173072},
481             {499.33626147591531,  -1124.4351309968195},
482             {506.0605703929898,  -1099.3756650673038}
483         },{
484             { 200, 100},
485             { 200,-100},
486             {-200, 100},
487             {-200,-100}
488         },{
489             {-110.30519040955151,  12.032056975840137},
490             {-98.322360950234085,  18.698723642506803},
491             {-207.54490681381429,  81.314089278595247},
492             {-62.576950371885275,  87.980755945261919}
493         }
494     },*/
495     // NOTE: cart projection test cases are implemented differently in Proj4
496     {
497         "cass_e",
498         "+proj=cass   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
499         {
500             { 2, 1},
501             { 2,-1},
502             {-2, 1},
503             {-2,-1}
504         },{
505             { 222605.28577699114,   110642.22925399939},
506             { 222605.28577699114,  -110642.22925399939},
507             {-222605.28577699114,   110642.22925399939},
508             {-222605.28577699114,  -110642.22925399939}
509         },{
510             { 200, 100},
511             { 200,-100},
512             {-200, 100},
513             {-200,-100}
514         },{
515             { 0.0017966305684613522,   0.00090436947663183841},
516             { 0.0017966305684613522,  -0.00090436947663183841},
517             {-0.0017966305684613522,   0.00090436947663183841},
518             {-0.0017966305684613522,  -0.00090436947663183841}
519         }
520     },{
521         "cass_s",
522         "+proj=cass   +R=6400000    +lat_1=0.5 +lat_2=2",
523         {
524             { 2, 1},
525             { 2,-1},
526             {-2, 1},
527             {-2,-1}
528         },{
529             { 223368.10520348375,  111769.14504058579},
530             { 223368.10520348375, -111769.14504058579},
531             {-223368.10520348375,  111769.14504058579},
532             {-223368.10520348375, -111769.14504058579}
533         },{
534             { 200, 100},
535             { 200,-100},
536             {-200, 100},
537             {-200,-100}
538         },{
539             { 0.0017904931100023887,   0.00089524655445477922},
540             { 0.0017904931100023887,  -0.00089524655445477922},
541             {-0.0017904931100023887,   0.00089524655445477922},
542             {-0.0017904931100023887,  -0.00089524655445477922}
543         }
544     },{
545         "cc",
546         "+proj=cc   +a=6400000    +lat_1=0.5 +lat_2=2",
547         {
548             { 2, 1},
549             { 2,-1},
550             {-2, 1},
551             {-2,-1}
552         },{
553             {223402.14425527418,  111712.41554059254},
554             {223402.14425527418,  -111712.41554059254},
555             {-223402.14425527418,  111712.41554059254},
556             {-223402.14425527418,  -111712.41554059254}
557         },{
558             { 200, 100},
559             { 200,-100},
560             {-200, 100},
561             {-200,-100}
562         },{
563             {0.0017904931097838226,  0.00089524655481905597},
564             {0.0017904931097838226,  -0.00089524655481905597},
565             {-0.0017904931097838226,  0.00089524655481905597},
566             {-0.0017904931097838226,  -0.00089524655481905597}
567         }
568     },{
569         "cea_e",
570         "+proj=cea   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
571         {
572             { 2, 1},
573             { 2,-1},
574             {-2, 1},
575             {-2,-1}
576         },{
577             { 222638.981586547132,  110568.812396267356},
578             { 222638.981586547132, -110568.812396265886},
579             {-222638.981586547132,  110568.812396267356},
580             {-222638.981586547132, -110568.812396265886}
581         },{
582             { 200, 100},
583             { 200,-100},
584             {-200, 100},
585             {-200,-100}
586         },{
587             { 0.00179663056823904264,  0.000904369476105564289},
588             { 0.00179663056823904264, -0.000904369476105564289},
589             {-0.00179663056823904264,  0.000904369476105564289},
590             {-0.00179663056823904264, -0.000904369476105564289}
591         }
592     },{
593         "cea_s",
594         "+proj=cea   +R=6400000    +lat_1=0.5 +lat_2=2",
595         {
596             { 2, 1},
597             { 2,-1},
598             {-2, 1},
599             {-2,-1}
600         },{
601             { 223402.144255274179,  111695.401198614476},
602             { 223402.144255274179, -111695.401198614476},
603             {-223402.144255274179,  111695.401198614476},
604             {-223402.144255274179, -111695.401198614476}
605         },{
606             { 200, 100},
607             { 200,-100},
608             {-200, 100},
609             {-200,-100}
610         },{
611             { 0.00179049310978382265,  0.000895246554928338998},
612             { 0.00179049310978382265, -0.000895246554928338998},
613             {-0.00179049310978382265,  0.000895246554928338998},
614             {-0.00179049310978382265, -0.000895246554928338998}
615         }
616     },{
617         "chamb",
618         "+proj=chamb   +a=6400000    +lat_1=0.5 +lat_2=2",
619         {
620             { 2, 1},
621             { 2,-1},
622             {-2, 1},
623             {-2,-1}
624         },{
625             {-27864.7795868005815,  -223364.324593274243},
626             {-251312.283053493476,  -223402.145526208304},
627             {-27864.7856491046077,  223364.327328827145},
628             {-251312.289116443484,  223402.142197287147}
629         },
630         {},{{HUGE_VAL, HUGE_VAL}}
631     },{
632         "collg",
633         "+proj=collg   +a=6400000    +lat_1=0.5 +lat_2=2",
634         {
635             { 2, 1},
636             { 2,-1},
637             {-2, 1},
638             {-2,-1}
639         },{
640             {249872.921577929839,  99423.1747884602082},
641             {254272.532301245432,  -98559.3077607425657},
642             {-249872.921577929839,  99423.1747884602082},
643             {-254272.532301245432,  -98559.3077607425657}
644         },{
645             { 200, 100},
646             { 200,-100},
647             {-200, 100},
648             {-200,-100}
649         },{
650             {0.00158679719207879865,  0.00101017310941749921},
651             {0.001586769215623956,  -0.00101018201458258111},
652             {-0.00158679719207879865,  0.00101017310941749921},
653             {-0.001586769215623956,  -0.00101018201458258111}
654         }
655     },
656     // NOT IMPLEMENTED IN Boost.Geometry
657     /*{
658         "comill",
659         "+proj=comill   +a=6400000    +lat_1=0.5 +lat_2=2",
660         {
661             { 2, 1},
662             { 2,-1},
663             {-2, 1},
664             {-2,-1}
665         },{
666             {223402.144255274179,  110611.859089458536},
667             {223402.144255274179,  -110611.859089458536},
668             {-223402.144255274179,  110611.859089458536},
669             {-223402.144255274179,  -110611.859089458536}
670         },{
671             { 200, 100},
672             { 200,-100},
673             {-200, 100},
674             {-200,-100}
675         },{
676             {0.00179049310978382265,  0.000904106801510605831},
677             {0.00179049310978382265,  -0.000904106801510605831},
678             {-0.00179049310978382265,  0.000904106801510605831},
679             {-0.00179049310978382265,  -0.000904106801510605831}
680         }
681     },*/{
682         "crast",
683         "+proj=crast   +a=6400000    +lat_1=0.5 +lat_2=2",
684         {
685             { 2, 1},
686             { 2,-1},
687             {-2, 1},
688             {-2,-1}
689         },{
690             {218280.142056780722,  114306.045604279774},
691             {218280.142056780722,  -114306.045604279774},
692             {-218280.142056780722,  114306.045604279774},
693             {-218280.142056780722,  -114306.045604279774}
694         },{
695             { 200, 100},
696             { 200,-100},
697             {-200, 100},
698             {-200,-100}
699         },{
700             {0.00183225941982580187,  0.00087483943098902331},
701             {0.00183225941982580187,  -0.00087483943098902331},
702             {-0.00183225941982580187,  0.00087483943098902331},
703             {-0.00183225941982580187,  -0.00087483943098902331}
704         }
705     },{
706         "denoy",
707         "+proj=denoy   +a=6400000    +lat_1=0.5 +lat_2=2",
708         {
709             { 2, 1},
710             { 2,-1},
711             {-2, 1},
712             {-2,-1}
713         },{
714             { 223377.422876954137,  111701.07212763709},
715             { 223377.422876954137, -111701.07212763709},
716             {-223377.422876954137,  111701.07212763709},
717             {-223377.422876954137, -111701.07212763709}
718         },
719         {},{{HUGE_VAL, HUGE_VAL}}
720     },{
721         "eck1",
722         "+proj=eck1   +a=6400000    +lat_1=0.5 +lat_2=2",
723         {
724             { 2, 1},
725             { 2,-1},
726             {-2, 1},
727             {-2,-1}
728         },{
729             { 204680.88820295094,  102912.17842606473},
730             { 204680.88820295094, -102912.17842606473},
731             {-204680.88820295094,  102912.17842606473},
732             {-204680.88820295094, -102912.17842606473}
733         },{
734             { 200, 100},
735             { 200,-100},
736             {-200, 100},
737             {-200,-100}
738         },{
739             { 0.0019434150820034624,  0.00097170229538813102},
740             { 0.0019434150820034624, -0.00097170229538813102},
741             {-0.0019434150820034624,  0.00097170229538813102},
742             {-0.0019434150820034624, -0.00097170229538813102}
743         }
744     },{
745         "eck2",
746         "+proj=eck2   +a=6400000    +lat_1=0.5 +lat_2=2",
747         {
748             { 2, 1},
749             { 2,-1},
750             {-2, 1},
751             {-2,-1}
752         },{
753             { 204472.87090796008,  121633.73497524235},
754             { 204472.87090796008, -121633.73497524235},
755             {-204472.87090796008,  121633.73497524235},
756             {-204472.87090796008, -121633.73497524235}
757         },{
758             { 200, 100},
759             { 200,-100},
760             {-200, 100},
761             {-200,-100}
762         },{
763             { 0.0019434150820034624,  0.00082480429919795412},
764             { 0.0019434150820034624, -0.00082480429919795412},
765             {-0.0019434150820034624,  0.00082480429919795412},
766             {-0.0019434150820034624, -0.00082480429919795412}
767         }
768     },{
769         "eck3",
770         "+proj=eck3   +a=6400000    +lat_1=0.5 +lat_2=2",
771         {
772             { 2, 1},
773             { 2,-1},
774             {-2, 1},
775             {-2,-1}
776         },{
777             { 188652.01572153764,  94328.919337031271},
778             { 188652.01572153764, -94328.919337031271},
779             {-188652.01572153764,  94328.919337031271},
780             {-188652.01572153764, -94328.919337031271}
781         },{
782             { 200, 100},
783             { 200,-100},
784             {-200, 100},
785             {-200,-100}
786         },{
787             { 0.0021202405520236059,  0.0010601202759750307},
788             { 0.0021202405520236059, -0.0010601202759750307},
789             {-0.0021202405520236059,  0.0010601202759750307},
790             {-0.0021202405520236059, -0.0010601202759750307}
791         }
792     },{
793         "eck4",
794         "+proj=eck4   +a=6400000    +lat_1=0.5 +lat_2=2",
795         {
796             { 2, 1},
797             { 2,-1},
798             {-2, 1},
799             {-2,-1}
800         },{
801             { 188646.38935641639,  132268.54017406539},
802             { 188646.38935641639, -132268.54017406539},
803             {-188646.38935641639,  132268.54017406539},
804             {-188646.38935641639, -132268.54017406539}
805         },{
806             { 200, 100},
807             { 200,-100},
808             {-200, 100},
809             {-200,-100}
810         },{
811             { 0.0021202405520236059, 0.00075601458836610643},
812             { 0.0021202405520236059, -0.00075601458836610643},
813             {-0.0021202405520236059, 0.00075601458836610643},
814             {-0.0021202405520236059, -0.00075601458836610643}
815         }
816     },{
817         "eck5",
818         "+proj=eck5   +a=6400000    +lat_1=0.5 +lat_2=2",
819         {
820             { 2, 1},
821             { 2,-1},
822             {-2, 1},
823             {-2,-1}
824         },{
825             { 197031.39213406085,  98523.198847226551},
826             { 197031.39213406085, -98523.198847226551},
827             {-197031.39213406085,  98523.198847226551},
828             {-197031.39213406085, -98523.198847226551}
829         },{
830             { 200, 100},
831             { 200,-100},
832             {-200, 100},
833             {-200,-100}
834         },{
835             {0.002029978749734037,  0.001014989374787388},
836             {0.002029978749734037,  -0.001014989374787388},
837             {-0.002029978749734037,  0.001014989374787388},
838             {-0.002029978749734037,  -0.001014989374787388}
839         }
840     },{
841         "eqc",
842         "+proj=eqc   +a=6400000    +lat_1=0.5 +lat_2=2",
843         {
844             { 2, 1},
845             { 2,-1},
846             {-2, 1},
847             {-2,-1}
848         },{
849             { 223402.144255274179,  111701.07212763709},
850             { 223402.144255274179, -111701.07212763709},
851             {-223402.144255274179,  111701.07212763709},
852             {-223402.144255274179, -111701.07212763709}
853         },{
854             { 200, 100},
855             { 200,-100},
856             {-200, 100},
857             {-200,-100}
858         },{
859             { 0.00179049310978382265,  0.000895246554891911323},
860             { 0.00179049310978382265, -0.000895246554891911323},
861             {-0.00179049310978382265,  0.000895246554891911323},
862             {-0.00179049310978382265, -0.000895246554891911323}
863         }
864     },{
865         "eqdc_e",
866         "+proj=eqdc   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
867         {
868             { 2, 1},
869             { 2,-1},
870             {-2, 1},
871             {-2,-1}
872         },{
873             { 222588.440269285755,  110659.134907347048},
874             { 222756.836702042434, -110489.578087220681},
875             {-222588.440269285755,  110659.134907347048},
876             {-222756.836702042434, -110489.578087220681}
877         },{
878             { 200, 100},
879             { 200,-100},
880             {-200, 100},
881             {-200,-100}
882         },{
883             { 0.00179635944879094839,  0.000904368858588402644},
884             { 0.00179635822020772734, -0.000904370095529954975},
885             {-0.00179635944879094839,  0.000904368858588402644},
886             {-0.00179635822020772734, -0.000904370095529954975}
887         }
888     },{
889         "eqdc_s",
890         "+proj=eqdc   +R=6400000    +lat_1=0.5 +lat_2=2",
891         {
892             { 2, 1},
893             { 2,-1},
894             {-2, 1},
895             {-2,-1}
896         },{
897             { 223351.088175113517,  111786.108747173785},
898             { 223521.200266735133, -111615.970741240744},
899             {-223351.088175113517,  111786.108747173785},
900             {-223521.200266735133, -111615.970741240744}
901         },{
902             { 200, 100},
903             { 200,-100},
904             {-200, 100},
905             {-200,-100}
906         },{
907             { 0.0017902210900486641,   0.000895245944814909169},
908             { 0.00179021986984890255, -0.000895247165333684842},
909             {-0.0017902210900486641,   0.000895245944814909169},
910             {-0.00179021986984890255, -0.000895247165333684842}
911         }
912     },{
913         "fahey",
914         "+proj=fahey   +a=6400000    +lat_1=0.5 +lat_2=2",
915         {
916             { 2, 1},
917             { 2,-1},
918             {-2, 1},
919             {-2,-1}
920         },{
921             { 182993.34464912376,  101603.19356988439},
922             { 182993.34464912376, -101603.19356988439},
923             {-182993.34464912376,  101603.19356988439},
924             {-182993.34464912376, -101603.19356988439}
925         },{
926             { 200, 100},
927             { 200,-100},
928             {-200, 100},
929             {-200,-100}
930         },{
931             {0.0021857886080359551,  0.00098424601668238403},
932             {0.0021857886080359551,  -0.00098424601668238403},
933             {-0.0021857886080359551,  0.00098424601668238403},
934             {-0.0021857886080359551,  -0.00098424601668238403}
935         }
936     },{
937         "fouc_s",
938         "+proj=fouc_s   +a=6400000    +lat_1=0.5 +lat_2=2",
939         {
940             { 2, 1},
941             { 2,-1},
942             {-2, 1},
943             {-2,-1}
944         },{
945             { 223402.14425527424,  111695.40119861449},
946             { 223402.14425527424, -111695.40119861449},
947             {-223402.14425527424,  111695.40119861449},
948             {-223402.14425527424, -111695.40119861449}
949         },{
950             { 200, 100},
951             { 200,-100},
952             {-200, 100},
953             {-200,-100}
954         },{
955             { 0.0017904931097838226,  0.000895246554928339},
956             { 0.0017904931097838226, -0.000895246554928339},
957             {-0.0017904931097838226,  0.000895246554928339},
958             {-0.0017904931097838226, -0.000895246554928339}
959         }
960     },{
961         "gall",
962         "+proj=gall   +a=6400000    +lat_1=0.5 +lat_2=2",
963         {
964             { 2, 1},
965             { 2,-1},
966             {-2, 1},
967             {-2,-1}
968         },{
969             { 157969.17113451968,  95345.249178385886},
970             { 157969.17113451968, -95345.249178385886},
971             {-157969.17113451968,  95345.249178385886},
972             {-157969.17113451968, -95345.249178385886}
973         },{
974             { 200, 100},
975             { 200,-100},
976             {-200, 100},
977             {-200,-100}
978         },{
979             { 0.0025321396391918614,  0.001048846580346495},
980             { 0.0025321396391918614, -0.001048846580346495},
981             {-0.0025321396391918614,  0.001048846580346495},
982             {-0.0025321396391918614, -0.001048846580346495}
983         }
984     },{
985         "geos_e",
986         "+proj=geos   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +h=35785831",
987         {
988             { 2, 1},
989             { 2,-1},
990             {-2, 1},
991             {-2,-1}
992         },{
993             { 222527.07036580026,  110551.30341332949},
994             { 222527.07036580026, -110551.30341332949},
995             {-222527.07036580026,  110551.30341332949},
996             {-222527.07036580026, -110551.30341332949}
997         },{
998             { 200, 100},
999             { 200,-100},
1000             {-200, 100},
1001             {-200,-100}
1002         },{
1003             { 0.0017966305689715385,  0.00090436947723267452},
1004             { 0.0017966305689715385, -0.00090436947723267452},
1005             {-0.0017966305689715385,  0.00090436947723267452},
1006             {-0.0017966305689715385, -0.00090436947723267452}
1007         }
1008     },{
1009         "geos_s",
1010         "+proj=geos   +R=6400000    +lat_1=0.5 +lat_2=2 +h=35785831",
1011         {
1012             { 2, 1},
1013             { 2,-1},
1014             {-2, 1},
1015             {-2,-1}
1016         },{
1017             { 223289.45763579503,  111677.65745653701},
1018             { 223289.45763579503,  -111677.65745653701},
1019             {-223289.45763579503,  111677.65745653701},
1020             {-223289.45763579503,  -111677.65745653701}
1021         },{
1022             { 200, 100},
1023             { 200,-100},
1024             {-200, 100},
1025             {-200,-100}
1026         },{
1027             { 0.0017904931105078943,  0.00089524655504237148},
1028             { 0.0017904931105078943, -0.00089524655504237148},
1029             {-0.0017904931105078943,  0.00089524655504237148},
1030             {-0.0017904931105078943, -0.00089524655504237148}
1031         }
1032     },{
1033         "gins8",
1034         "+proj=gins8   +a=6400000    +lat_1=0.5 +lat_2=2",
1035         {
1036             { 2, 1},
1037             { 2,-1},
1038             {-2, 1},
1039             {-2,-1}
1040         },{
1041             { 194350.25093959007,  111703.90763533533},
1042             { 194350.25093959007, -111703.90763533533},
1043             {-194350.25093959007,  111703.90763533533},
1044             {-194350.25093959007, -111703.90763533533}
1045         },
1046         {},{{HUGE_VAL, HUGE_VAL}}
1047     },{
1048         "sinu_e",
1049         "+proj=sinu   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
1050         {
1051             { 2, 1},
1052             { 2,-1},
1053             {-2, 1},
1054             {-2,-1}
1055         },{
1056             { 222605.29953946592,  110574.38855415257},
1057             { 222605.29953946592, -110574.38855415257},
1058             {-222605.29953946592,  110574.38855415257},
1059             {-222605.29953946592, -110574.38855415257}
1060         },{
1061             { 200, 100},
1062             { 200,-100},
1063             {-200, 100},
1064             {-200,-100}
1065         },{
1066             { 0.0017966305684613522,  0.00090436947707945409},
1067             { 0.0017966305684613522, -0.00090436947707945409},
1068             {-0.0017966305684613522,  0.00090436947707945409},
1069             {-0.0017966305684613522, -0.00090436947707945409}
1070         }
1071     },{
1072         "sinu_s",
1073         "+proj=sinu   +R=6400000    +lat_1=0.5 +lat_2=2",
1074         {
1075             { 2, 1},
1076             { 2,-1},
1077             {-2, 1},
1078             {-2,-1}
1079         },{
1080             { 223368.11902663155,  111701.07212763709},
1081             { 223368.11902663155, -111701.07212763709},
1082             {-223368.11902663155,  111701.07212763709},
1083             {-223368.11902663155, -111701.07212763709}
1084         },{
1085             { 200, 100},
1086             { 200,-100},
1087             {-200, 100},
1088             {-200,-100}
1089         },{
1090             { 0.0017904931100023887,  0.00089524655489191132},
1091             { 0.0017904931100023887, -0.00089524655489191132},
1092             {-0.0017904931100023887,  0.00089524655489191132},
1093             {-0.0017904931100023887, -0.00089524655489191132}
1094         }
1095     },{
1096         "eck6",
1097         "+proj=eck6   +a=6400000    +lat_1=0.5 +lat_2=2",
1098         {
1099             { 2, 1},
1100             { 2,-1},
1101             {-2, 1},
1102             {-2,-1}
1103         },{
1104             { 197021.60562899226,  126640.42073317352},
1105             { 197021.60562899226, -126640.42073317352},
1106             {-197021.60562899226,  126640.42073317352},
1107             {-197021.60562899226, -126640.42073317352}
1108         },{
1109             { 200, 100},
1110             { 200,-100},
1111             {-200, 100},
1112             {-200,-100}
1113         },{
1114             { 0.002029978749734037,  0.00078963032910382171},
1115             { 0.002029978749734037, -0.00078963032910382171},
1116             {-0.002029978749734037,  0.00078963032910382171},
1117             {-0.002029978749734037, -0.00078963032910382171}
1118         }
1119     },{
1120         "mbtfps",
1121         "+proj=mbtfps   +a=6400000    +lat_1=0.5 +lat_2=2",
1122         {
1123             { 2, 1},
1124             { 2,-1},
1125             {-2, 1},
1126             {-2,-1}
1127         },{
1128             { 204740.11747857218,  121864.72971934026},
1129             { 204740.11747857218, -121864.72971934026},
1130             {-204740.11747857218,  121864.72971934026},
1131             {-204740.11747857218, -121864.72971934026}
1132         },{
1133             { 200, 100},
1134             { 200,-100},
1135             {-200, 100},
1136             {-200,-100}
1137         },{
1138             { 0.0019534152166442065,  0.00082057965689633387},
1139             { 0.0019534152166442065, -0.00082057965689633387},
1140             {-0.0019534152166442065,  0.00082057965689633387},
1141             {-0.0019534152166442065, -0.00082057965689633387}
1142         }
1143     },{
1144         "gn_sinu",
1145         "+proj=gn_sinu   +a=6400000    +lat_1=0.5 +lat_2=2 +m=1 +n=2",
1146         {
1147             { 2, 1},
1148             { 2,-1},
1149             {-2, 1},
1150             {-2,-1}
1151         },{
1152             { 223385.13250469571,  111698.23644718733},
1153             { 223385.13250469571, -111698.23644718733},
1154             {-223385.13250469571,  111698.23644718733},
1155             {-223385.13250469571, -111698.23644718733}
1156         },{
1157             { 200, 100},
1158             { 200,-100},
1159             {-200, 100},
1160             {-200,-100}
1161         },{
1162             { 0.0017904931098931057,  0.00089524655491012516},
1163             { 0.0017904931098931057, -0.00089524655491012516},
1164             {-0.0017904931098931057,  0.00089524655491012516},
1165             {-0.0017904931098931057, -0.00089524655491012516}
1166         }
1167     },{
1168         "gnom",
1169         "+proj=gnom   +a=6400000    +lat_1=0.5 +lat_2=2",
1170         {
1171             { 2, 1},
1172             { 2,-1},
1173             {-2, 1},
1174             {-2,-1}
1175         },{
1176             { 223492.92474718543,  111780.50920659291},
1177             { 223492.92474718543, -111780.50920659291},
1178             {-223492.92474718543,  111780.50920659291},
1179             {-223492.92474718543, -111780.50920659291}
1180         },{
1181             { 200, 100},
1182             { 200,-100},
1183             {-200, 100},
1184             {-200,-100}
1185         },{
1186             { 0.0017904931092009798,  0.00089524655438192376},
1187             { 0.0017904931092009798, -0.00089524655438192376},
1188             {-0.0017904931092009798,  0.00089524655438192376},
1189             {-0.0017904931092009798, -0.00089524655438192376}
1190         }
1191     },{
1192         "goode",
1193         "+proj=goode   +a=6400000    +lat_1=0.5 +lat_2=2",
1194         {
1195             { 2, 1},
1196             { 2,-1},
1197             {-2, 1},
1198             {-2,-1}
1199         },{
1200             { 223368.11902663155,  111701.07212763709},
1201             { 223368.11902663155, -111701.07212763709},
1202             {-223368.11902663155,  111701.07212763709},
1203             {-223368.11902663155, -111701.07212763709}
1204         },{
1205             { 200, 100},
1206             { 200,-100},
1207             {-200, 100},
1208             {-200,-100}
1209         },{
1210             { 0.0017904931100023887,  0.00089524655489191132},
1211             { 0.0017904931100023887, -0.00089524655489191132},
1212             {-0.0017904931100023887,  0.00089524655489191132},
1213             {-0.0017904931100023887, -0.00089524655489191132}
1214         }
1215     },{
1216         "gstmerc",
1217         "+proj=gstmerc   +R=6400000    +lat_1=0.5 +lat_2=2",
1218         {
1219             { 2, 1},
1220             { 2,-1},
1221             {-2, 1},
1222             {-2,-1}
1223         },{
1224             { 223413.46640632182,  111769.14504058557},
1225             { 223413.46640632182, -111769.14504058668},
1226             {-223413.46640632302,  111769.14504058557},
1227             {-223413.46640632302, -111769.14504058668}
1228         },{
1229             { 200, 100},
1230             { 200,-100},
1231             {-200, 100},
1232             {-200,-100}
1233         },{
1234             { 0.0017904931097109673,  0.0008952465544509083},
1235             { 0.0017904931097109673, -0.0008952465544509083},
1236             {-0.0017904931097109673,  0.0008952465544509083},
1237             {-0.0017904931097109673, -0.0008952465544509083}
1238         }
1239     },{
1240         "hammer",
1241         "+proj=hammer   +a=6400000    +lat_1=0.5 +lat_2=2",
1242         {
1243             { 2, 1},
1244             { 2,-1},
1245             {-2, 1},
1246             {-2,-1}
1247         },{
1248             { 223373.78870324057,  111703.90739776699},
1249             { 223373.78870324057, -111703.90739776699},
1250             {-223373.78870324057,  111703.90739776699},
1251             {-223373.78870324057, -111703.90739776699}
1252         },{
1253             { 200, 100},
1254             { 200,-100},
1255             {-200, 100},
1256             {-200,-100}
1257         },{
1258             { 0.001790493109965961,  0.00089524655487369749},
1259             { 0.001790493109965961, -0.00089524655487369749},
1260             {-0.001790493109965961,  0.00089524655487369749},
1261             {-0.001790493109965961, -0.00089524655487369749}
1262         }
1263     },{
1264         "hatano",
1265         "+proj=hatano   +a=6400000    +lat_1=0.5 +lat_2=2",
1266         {
1267             { 2, 1},
1268             { 2,-1},
1269             {-2, 1},
1270             {-2,-1}
1271         },{
1272             { 189878.87894652804,  131409.8024406255 },
1273             { 189881.08195244463, -131409.14227607418 },
1274             {-189878.87894652804,  131409.8024406255 },
1275             {-189881.08195244463, -131409.14227607418 }
1276         },{
1277             { 200, 100},
1278             { 200,-100},
1279             {-200, 100},
1280             {-200,-100}
1281         },{
1282             { 0.0021064624821817597,  0.00076095689425791926 },
1283             { 0.0021064624821676096, -0.00076095777439265377 },
1284             {-0.0021064624821817597,  0.00076095689425791926 },
1285             {-0.0021064624821676096, -0.00076095777439265377 }
1286         }
1287     },{
1288         "healpix_e",
1289         "+proj=healpix   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
1290         {
1291             { 2, 1},
1292             { 2,-1},
1293             {-2, 1},
1294             {-2,-1}
1295         },{
1296             { 222390.10394923863,  130406.58866448226},
1297             { 222390.10394923863, -130406.58866448054},
1298             {-222390.10394923863,  130406.58866448226},
1299             {-222390.10394923863, -130406.58866448054}
1300         },{
1301             { 200, 100},
1302             { 200,-100},
1303             {-200, 100},
1304             {-200,-100}
1305         },{
1306             { 0.0017986411845524453,  0.00076679453057823619},
1307             { 0.0017986411845524453, -0.00076679453057823619},
1308             {-0.0017986411845524453,  0.00076679453057823619},
1309             {-0.0017986411845524453, -0.00076679453057823619}
1310         }
1311     },{
1312         "healpix_s",
1313         "+proj=healpix   +R=6400000    +lat_1=0.5 +lat_2=2",
1314         {
1315             { 2, 1},
1316             { 2,-1},
1317             {-2, 1},
1318             {-2,-1}
1319         },{
1320             { 223402.14425527418,  131588.04444199943},
1321             { 223402.14425527418, -131588.04444199943},
1322             {-223402.14425527418,  131588.04444199943},
1323             {-223402.14425527418, -131588.04444199943}
1324         },{
1325             { 200, 100},
1326             { 200,-100},
1327             {-200, 100},
1328             {-200,-100}
1329         },{
1330             { 0.0017904931097838226,  0.00075990887733981202},
1331             { 0.0017904931097838226, -0.00075990887733981202},
1332             {-0.0017904931097838226,  0.00075990887733981202},
1333             {-0.0017904931097838226, -0.00075990887733981202}
1334         }
1335     },{
1336         "rhealpix_e",
1337         "+proj=rhealpix   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
1338         {
1339             { 2, 1},
1340             { 2,-1},
1341             {-2, 1},
1342             {-2,-1}
1343         },{
1344             { 222390.10394923863,  130406.58866448226},
1345             { 222390.10394923863, -130406.58866448054},
1346             {-222390.10394923863,  130406.58866448226},
1347             {-222390.10394923863, -130406.58866448054}
1348         },{
1349             { 200, 100},
1350             { 200,-100},
1351             {-200, 100},
1352             {-200,-100}
1353         },{
1354             { 0.0017986411845524453,  0.00076679453057823619},
1355             { 0.0017986411845524453, -0.00076679453057823619},
1356             {-0.0017986411845524453,  0.00076679453057823619},
1357             {-0.0017986411845524453, -0.00076679453057823619}
1358         }
1359     },{
1360         "rhealpix_s",
1361         "+proj=rhealpix   +R=6400000    +lat_1=0.5 +lat_2=2",
1362         {
1363             { 2, 1},
1364             { 2,-1},
1365             {-2, 1},
1366             {-2,-1}
1367         },{
1368             { 223402.14425527418,  131588.04444199943},
1369             { 223402.14425527418, -131588.04444199943},
1370             {-223402.14425527418,  131588.04444199943},
1371             {-223402.14425527418, -131588.04444199943}
1372         },{
1373             { 200, 100},
1374             { 200,-100},
1375             {-200, 100},
1376             {-200,-100}
1377         },{
1378             { 0.0017904931097838226,  0.00075990887733981202},
1379             { 0.0017904931097838226, -0.00075990887733981202},
1380             {-0.0017904931097838226,  0.00075990887733981202},
1381             {-0.0017904931097838226, -0.00075990887733981202}
1382         }
1383     },
1384     // helmert projection is not implemented in Boost.Geometry
1385     // hgridshift projection is not implemented in Boost.Geometry
1386     // horner projection is not implemented in Boost.Geometry
1387     {
1388         "igh",
1389         "+proj=igh   +a=6400000    +lat_1=0.5 +lat_2=2",
1390         {
1391             { 2, 1},
1392             { 2,-1},
1393             {-2, 1},
1394             {-2,-1}
1395         },{ { 223878.49745627123,  111701.07212763709},
1396             { 223708.37131305804, -111701.07212763709},
1397             {-222857.74059699223,  111701.07212763709},
1398             {-223027.86674020503, -111701.07212763709}
1399         },{
1400             { 200, 100},
1401             { 200,-100},
1402             {-200, 100},
1403             {-200,-100}
1404         },{ { 0.001790489447892545,   0.00089524655489191132},
1405             { 0.0017904906685957927, -0.00089524655489191132},
1406             {-0.001790496772112032,   0.00089524655489191132},
1407             {-0.0017904955514087843, -0.00089524655489191132}
1408         }
1409     },{
1410         "imw_p",
1411         "+proj=imw_p   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
1412         {
1413             { 2, 1},
1414             { 2,-1},
1415             {-2, 1},
1416             {-2,-1}
1417         },{
1418             { 222588.4411393762,   55321.128653809537},
1419             { 222756.90637768712, -165827.58428832365},
1420             {-222588.4411393762,   55321.128653809537},
1421             {-222756.90637768712, -165827.58428832365}
1422         },{
1423             { 200, 100},
1424             { 200,-100},
1425             {-200, 100},
1426             {-200,-100}
1427         },{
1428             { 0.0017966991379592214, 0.50090492361427374},
1429             { 0.0017966979081574697, 0.49909507588689922},
1430             {-0.0017966991379592214, 0.50090492361427374},
1431             {-0.0017966979081574697, 0.49909507588689922}
1432         }
1433     },{
1434         "isea",
1435         "+proj=isea   +a=6400000    +lat_1=0.5 +lat_2=2",
1436         {
1437             { 2, 1},
1438             { 2,-1},
1439             {-2, 1},
1440             {-2,-1}
1441         },{
1442             {-1097074.9480224741, 3442909.3090371834},
1443             {-1097074.9482647954, 3233611.7285857084},
1444             {-1575486.3536415542, 3442168.3420281881},
1445             {-1575486.353880283,  3234352.6955947056}
1446         },
1447         {},{{HUGE_VAL, HUGE_VAL}}
1448     },{
1449         "krovak",
1450         "+proj=krovak +ellps=GRS80  +no_defs",
1451         {
1452             { 2, 1},
1453             { 2,-1},
1454             {-2, 1},
1455             {-2,-1}
1456         },{
1457             {-3196535.2325636409,  -6617878.8675514441},
1458             {-3260035.4405521089,  -6898873.6148780314},
1459             {-3756305.3288691747,  -6478142.5615715114},
1460             {-3831703.6585019818,  -6759107.1701553948}
1461         },{
1462             { 200, 100},
1463             { 200,-100},
1464             {-200, 100},
1465             {-200,-100}
1466         },{
1467             {24.836218918719162,  59.758403933233858},
1468             {24.836315484509566,  59.756888425730189},
1469             {24.830447747947495,  59.758403933233858},
1470             {24.830351182157091,  59.756888425730189}
1471         }
1472     },{
1473         "labrd",
1474         "+proj=labrd   +ellps=GRS80  +lon_0=0.5 +lat_0=2",
1475         {
1476             { 2, 1},
1477             { 2,-1},
1478             {-2, 1},
1479             {-2,-1}
1480         },{
1481             { 166973.166090228391, -110536.912730266107},
1482             { 166973.168287157256, -331761.993650884193},
1483             {-278345.500519976194, -110469.032642031714},
1484             {-278345.504185269645, -331829.870790275279}
1485         },{
1486             { 200, 100},
1487             { 200,-100},
1488             {-200, 100},
1489             {-200,-100}
1490         },{
1491             {0.501797719349373672, 2.00090435742047923},
1492             {0.501797717380853658, 1.99909564058898681},
1493             {0.498202280650626328, 2.00090435742047923},
1494             {0.498202282619146342, 1.99909564058898681}
1495         }
1496     },{
1497         "laea_e",
1498         "+proj=laea   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
1499         {
1500             { 2, 1},
1501             { 2,-1},
1502             {-2, 1},
1503             {-2,-1}
1504         },{
1505             { 222602.471450095181,  110589.82722441027},
1506             { 222602.471450095181, -110589.827224408786},
1507             {-222602.471450095181,  110589.82722441027},
1508             {-222602.471450095181, -110589.827224408786}
1509         },{
1510             { 200, 100},
1511             { 200,-100},
1512             {-200, 100},
1513             {-200,-100}
1514         },{
1515             { 0.00179663056847900867,  0.000904369475966495845},
1516             { 0.00179663056847900867, -0.000904369475966495845},
1517             {-0.00179663056847900867,  0.000904369475966495845},
1518             {-0.00179663056847900867, -0.000904369475966495845}
1519         }
1520     },{
1521         "laea_s",
1522         "+proj=laea   +R=6400000    +lat_1=0.5 +lat_2=2",
1523         {
1524             { 2, 1},
1525             { 2,-1},
1526             {-2, 1},
1527             {-2,-1}
1528         },{
1529             { 223365.281370124663,  111716.668072915665},
1530             { 223365.281370124663, -111716.668072915665},
1531             {-223365.281370124663,  111716.668072915665},
1532             {-223365.281370124663, -111716.668072915665}
1533         },{
1534             { 200, 100},
1535             { 200,-100},
1536             {-200, 100},
1537             {-200,-100}
1538         },{
1539             { 0.00179049311002060264,  0.000895246554791735271},
1540             { 0.00179049311002060264, -0.000895246554791735271},
1541             {-0.00179049311002060264,  0.000895246554791735271},
1542             {-0.00179049311002060264, -0.000895246554791735271}
1543         }
1544     },{
1545         "lagrng",
1546         "+proj=lagrng   +a=6400000 +W=2   +lat_1=0.5 +lat_2=2",
1547         {
1548             { 2, 1},
1549             { 2,-1},
1550             {-2, 1},
1551             {-2,-1}
1552         },{
1553             { 111703.37591722561,   27929.8319080333386},
1554             { 111699.122088816002, -83784.1780133577704},
1555             {-111703.37591722561,   27929.8319080333386},
1556             {-111699.122088816002, -83784.1780133577704}
1557         },
1558         {},{{HUGE_VAL, HUGE_VAL}}
1559     },{
1560         "larr",
1561         "+proj=larr   +a=6400000    +lat_1=0.5 +lat_2=2",
1562         {
1563             { 2, 1},
1564             { 2,-1},
1565             {-2, 1},
1566             {-2,-1}
1567         },{
1568             {223393.637624200899,  111707.215961255497},
1569             {223393.637624200899,  -111707.215961255497},
1570             {-223393.637624200899,  111707.215961255497},
1571             {-223393.637624200899,  -111707.215961255497}
1572         },
1573         {},{{HUGE_VAL, HUGE_VAL}}
1574     },{
1575         "lask",
1576         "+proj=lask   +a=6400000    +lat_1=0.5 +lat_2=2",
1577         {
1578             { 2, 1},
1579             { 2,-1},
1580             {-2, 1},
1581             {-2,-1}
1582         },{
1583             { 217928.275907355128,  112144.32922014239},
1584             { 217928.275907355128, -112144.32922014239},
1585             {-217928.275907355128,  112144.32922014239},
1586             {-217928.275907355128, -112144.32922014239}
1587         },
1588         {},{{HUGE_VAL, HUGE_VAL}}
1589     },{
1590         "lcc",
1591         "+proj=lcc   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
1592         {
1593             { 2, 1},
1594             { 2,-1},
1595             {-2, 1},
1596             {-2,-1}
1597         },{
1598             { 222588.439735968423,  110660.533870799671},
1599             { 222756.879700278747, -110532.797660827026},
1600             {-222588.439735968423,  110660.533870799671},
1601             {-222756.879700278747, -110532.797660827026}
1602         },{
1603             { 200, 100},
1604             { 200,-100},
1605             {-200, 100},
1606             {-200,-100}
1607         },{
1608             { 0.00179635940600536667,  0.000904232207322381741},
1609             { 0.00179635817735249777, -0.000904233135128348995},
1610             {-0.00179635940600536667,  0.000904232207322381741},
1611             {-0.00179635817735249777, -0.000904233135128348995}
1612         }
1613     },{
1614         "lcca",
1615         "+proj=lcca   +ellps=GRS80  +lat_0=1 +lat_1=0.5 +lat_2=2",
1616         {
1617             { 2, 1},
1618             { 2,-1},
1619             {-2, 1},
1620             {-2,-1}
1621         },{
1622             { 222605.285770237417,  67.8060072715846616},
1623             { 222740.037637936533, -221125.539829601563},
1624             {-222605.285770237417,  67.8060072715846616},
1625             {-222740.037637936533, -221125.539829601563}
1626         },{
1627             { 200, 100},
1628             { 200,-100},
1629             {-200, 100},
1630             {-200,-100}
1631         },{
1632             { 0.00179690290525662526, 1.00090436621350798},
1633             { 0.00179690192174008037, 0.999095632791497268},
1634             {-0.00179690290525662526, 1.00090436621350798},
1635             {-0.00179690192174008037, 0.999095632791497268}
1636         }
1637     },{
1638         "loxim",
1639         "+proj=loxim   +a=6400000    +lat_1=0.5 +lat_2=2",
1640         {
1641             { 2, 1},
1642             { 2,-1},
1643             {-2, 1},
1644             {-2,-1}
1645         },{
1646             { 223382.295791338867,  55850.5360638185448},
1647             { 223393.637462243292, -167551.608191455656},
1648             {-223382.295791338867,  55850.5360638185448},
1649             {-223393.637462243292, -167551.608191455656}
1650         },{
1651             { 200, 100},
1652             { 200,-100},
1653             {-200, 100},
1654             {-200,-100}
1655         },{
1656             { 0.00179056141104335601, 0.500895246554891926},
1657             { 0.00179056116683692576, 0.499104753445108074},
1658             {-0.00179056141104335601, 0.500895246554891926},
1659             {-0.00179056116683692576, 0.499104753445108074}
1660         }
1661     },{
1662         "lsat",
1663         "+proj=lsat +ellps=GRS80 +lat_1=0.5 +lat_2=2 +lsat=1 +path=2",
1664         {
1665             { 2, 1},
1666             { 2,-1},
1667             {-2, 1},
1668             {-2,-1}
1669         },{
1670             {18241950.01455855,    9998256.83982293494},
1671             {18746856.2533194572, 10215761.669925211},
1672             {18565503.6836331636,  9085039.14672705345},
1673             {19019696.9020289108,  9247763.0394328218}
1674         },{
1675             { 200, 100},
1676             { 200,-100},
1677             {-200, 100},
1678             {-200,-100}
1679         },{
1680             {126.000423834530011,  0.00172378224025701425},
1681             {126.002213738256714,  0.00188015467480917966},
1682             {126.000734468914601, -0.00188015467480917966},
1683             {126.002524372641304, -0.00172378224025701425}
1684         }
1685     }, {
1686         "mbt_fps",
1687         "+proj=mbt_fps   +a=6400000    +lat_1=0.5 +lat_2=2",
1688         {
1689             { 2, 1},
1690             { 2,-1},
1691             {-2, 1},
1692             {-2,-1}
1693         },{
1694             { 198798.176129849948,  125512.017254530627},
1695             { 198798.176129849948, -125512.017254530627},
1696             {-198798.176129849948,  125512.017254530627},
1697             {-198798.176129849948, -125512.017254530627}
1698         },{
1699             { 200, 100},
1700             { 200,-100},
1701             {-200, 100},
1702             {-200,-100}
1703         },{
1704             { 0.00201197086238270742,  0.000796711850174446003},
1705             { 0.00201197086238270742, -0.000796711850174446003},
1706             {-0.00201197086238270742,  0.000796711850174446003},
1707             {-0.00201197086238270742, -0.000796711850174446003}
1708         }
1709     },{
1710         "mbtfpp",
1711         "+proj=mbtfpp   +a=6400000    +lat_1=0.5 +lat_2=2",
1712         {
1713             { 2, 1},
1714             { 2,-1},
1715             {-2, 1},
1716             {-2,-1}
1717         },{
1718             {206804.786929820373,  120649.762565792524},
1719             {206804.786929820373,  -120649.762565792524},
1720             {-206804.786929820373,  120649.762565792524},
1721             {-206804.786929820373,  -120649.762565792524}
1722         },{
1723             { 200, 100},
1724             { 200,-100},
1725             {-200, 100},
1726             {-200,-100}
1727         },{
1728             {0.00193395359462902698,  0.00082883725477665357},
1729             {0.00193395359462902698,  -0.00082883725477665357},
1730             {-0.00193395359462902698,  0.00082883725477665357},
1731             {-0.00193395359462902698,  -0.00082883725477665357}
1732         }
1733     },{
1734         "mbtfpq",
1735         "+proj=mbtfpq   +a=6400000    +lat_1=0.5 +lat_2=2",
1736         {
1737             { 2, 1},
1738             { 2,-1},
1739             {-2, 1},
1740             {-2,-1}
1741         },{
1742             { 209391.854738393013,  119161.040199054827},
1743             { 209391.854738393013, -119161.040199054827},
1744             {-209391.854738393013,  119161.040199054827},
1745             {-209391.854738393013, -119161.040199054827}
1746         },{
1747             { 200, 100},
1748             { 200,-100},
1749             {-200, 100},
1750             {-200,-100}
1751         },{
1752             { 0.00191010555824111571,  0.000839185447792341723},
1753             { 0.00191010555824111571, -0.000839185447792341723},
1754             {-0.00191010555824111571,  0.000839185447792341723},
1755             {-0.00191010555824111571, -0.000839185447792341723}
1756         }
1757     },{
1758         "merc_e",
1759         "+proj=merc   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
1760         {
1761             { 2, 1},
1762             { 2,-1},
1763             {-2, 1},
1764             {-2,-1}
1765         },{
1766             { 222638.981586547132,  110579.965218249708},
1767             { 222638.981586547132, -110579.965218249112},
1768             {-222638.981586547132,  110579.965218249708},
1769             {-222638.981586547132, -110579.965218249112}
1770         },{
1771             { 200, 100},
1772             { 200,-100},
1773             {-200, 100},
1774             {-200,-100}
1775         },{
1776             { 0.00179663056823904264,  0.00090436947522799056},
1777             { 0.00179663056823904264, -0.00090436947522799056},
1778             {-0.00179663056823904264,  0.00090436947522799056},
1779             {-0.00179663056823904264,  -0.00090436947522799056}
1780         }
1781     },{
1782         "merc_s",
1783         "+proj=merc   +R=6400000    +lat_1=0.5 +lat_2=2",
1784         {
1785             { 2, 1},
1786             { 2,-1},
1787             {-2, 1},
1788             {-2,-1}
1789         },{
1790             { 223402.144255274179,  111706.743574944077},
1791             { 223402.144255274179, -111706.743574944485},
1792             {-223402.144255274179,  111706.743574944077},
1793             {-223402.144255274179, -111706.743574944485}
1794         },{
1795             { 200, 100},
1796             { 200,-100},
1797             {-200, 100},
1798             {-200,-100}
1799         },{
1800             { 0.00179049310978382265,  0.000895246554845297135},
1801             { 0.00179049310978382265, -0.000895246554858019272},
1802             {-0.00179049310978382265,  0.000895246554845297135},
1803             {-0.00179049310978382265, -0.000895246554858019272}
1804         }
1805     },{
1806         "mill",
1807         "+proj=mill   +a=6400000    +lat_1=0.5 +lat_2=2",
1808         {
1809             { 2, 1},
1810             { 2,-1},
1811             {-2, 1},
1812             {-2,-1}
1813         },{
1814             { 223402.144255274179,  111704.701754393827},
1815             { 223402.144255274179, -111704.701754396243},
1816             {-223402.144255274179,  111704.701754393827},
1817             {-223402.144255274179, -111704.701754396243}
1818         },{
1819             { 200, 100},
1820             { 200,-100},
1821             {-200, 100},
1822             {-200,-100}
1823         },{
1824             { 0.00179049310978382265,  0.000895246554873922024},
1825             { 0.00179049310978382265, -0.000895246554873922024},
1826             {-0.00179049310978382265,  0.000895246554873922024},
1827             {-0.00179049310978382265, -0.000895246554873922024}
1828         }
1829     },
1830     // the following projections are not implemented in Boost.Geometry
1831     /*{
1832         "misrsom_e",
1833         "+proj=misrsom   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +path=1",
1834         {
1835             { 2, 1},
1836             { 2,-1},
1837             {-2, 1},
1838             {-2,-1}
1839         },{
1840             {18556630.3683698252, 9533394.6753112711},
1841             {19041866.0067297369, 9707182.17532352544},
1842             {18816810.1301847994, 8647669.64980295487},
1843             {19252610.7845367305, 8778164.08580140397}
1844         },{
1845             { 200, 100},
1846             { 200,-100},
1847             {-200, 100},
1848             {-200,-100}
1849         },{
1850             {127.759503987730625,  0.00173515039622462014},
1851             {127.761295471077958,  0.00187196632421706517},
1852             {127.759775773557251, -0.00187196632421891525},
1853             {127.76156725690457,  -0.00173515039622462014}
1854         }
1855     },{
1856         "misrsom_s",
1857         "+proj=misrsom   +R=6400000    +lat_1=0.5 +lat_2=2 +path=1",
1858         {
1859             { 2, 1},
1860             { 2,-1},
1861             {-2, 1},
1862             {-2,-1}
1863         },{
1864             {18641249.2791703865, 9563342.53233416565},
1865             {19130982.4615812786, 9739539.59350463562},
1866             {18903483.5150115378, 8675064.50061797537},
1867             {19343388.3998006098, 8807471.90406848863}
1868         },{
1869             { 200, 100},
1870             { 200,-100},
1871             {-200, 100},
1872             {-200,-100}
1873         },{
1874             {127.75950514818588,   0.00171623111593511971},
1875             {127.761290323778738,  0.00185412132880796244},
1876             {127.759780920856471, -0.00185412132880796244},
1877             {127.761566096449329, -0.00171623111593511971}
1878         }
1879     },{
1880         "mil_os",
1881         "+proj=mil_os   +R=6400000    +lat_1=0.5 +lat_2=2",
1882         {
1883             { 2, 1},
1884             { 2,-1},
1885             {-2, 1},
1886             {-2,-1}
1887         },{
1888             {-1908527.94959420455, -1726237.4730614475},
1889             {-1916673.02291848511, -1943133.88812552323},
1890             {-2344429.41208962305, -1706258.05121891224},
1891             {-2354637.83553299867, -1926468.60513541684}
1892         },{
1893             { 200, 100},
1894             { 200,-100},
1895             {-200, 100},
1896             {-200,-100}
1897         },{
1898             {20.0020363939492398, 18.0009683469140498},
1899             {20.0020363715837419, 17.999031631815086},
1900             {19.9979636060507602, 18.0009683469140498},
1901             {19.9979636284162581, 17.999031631815086}
1902         }
1903     },{
1904         "lee_os",
1905         "+proj=lee_os   +R=6400000    +lat_1=0.5 +lat_2=2",
1906         {
1907             { 2, 1},
1908             { 2,-1},
1909             {-2, 1},
1910             {-2,-1}
1911         },{
1912             {-25564478.9526050538, 154490848.8286255},
1913             { 30115393.9385746419, 125193997.439701974},
1914             {-31039340.5921660066,  57678685.0448915437},
1915             {-3088419.93942357088,  58150091.0991110131}
1916         },{
1917             { 200, 100},
1918             { 200,-100},
1919             {-200, 100},
1920             {-200,-100}
1921         },{
1922             {-164.997479457813824,  -9.99875886103541411},
1923             {-164.997479438558884, -10.0012411200022751},
1924             {-165.002520542186289,  -9.99875886103545142},
1925             {-165.002520561440946, -10.0012411200022999}
1926         }
1927     },{
1928         "gs48",
1929         "+proj=gs48 +R=6370997",
1930         // All latitudes and longitudes within the continental US
1931         {
1932             { -119.0, 40.0},
1933             {  -70.0, 64.0},
1934             {  -80.0, 25.0},
1935             {  -95.0, 35.0}
1936         },{
1937             { -1923908.446529345820,   355874.658944479190},
1938             {  1354020.375109298155,  3040846.007866524626},
1939             {  1625139.160484319553, -1413614.894029108109},
1940             {    90241.658071457961,  -439595.048485902138}
1941         },{
1942             { -1923000.0,   355000.0},
1943             {  1354000.0,  3040000.0},
1944             {  1625000.0, -1413000.0},
1945             {    90000.0,  -439000.0}
1946         },{
1947             {-118.987112613284, 39.994449789388},
1948             { -70.005208999424, 63.993387835525},
1949             { -80.000346610440, 25.005602546594},
1950             { -95.002606473071, 35.005424705030}
1951         }
1952     },{
1953         "alsk_e",
1954         "+proj=alsk +ellps=clrk66",
1955         {
1956             {-160.0, 55.0},
1957             {-160.0, 70.0},
1958             {-145.0, 70.0},
1959             {-145.0, 60.0}
1960         },{
1961             {-513253.146950842060, -968928.031867943470},
1962             {-305001.133897637190,  687494.464958650530},
1963             {266454.305088600490,   683423.477493030950},
1964             {389141.322439243960,  -423913.251230396680}
1965         },{
1966             {-500000.0, -950000.0},
1967             {-305000.0,  700000.0},
1968             { 250000.0,  700000.0},
1969             { 400000.0, -400000.0}
1970         },{
1971             {-159.830804302926, 55.183195262220},
1972             {-160.042203155537, 70.111086864056},
1973             {-145.381043551466, 70.163900908411},
1974             {-144.758985461448, 60.202929200739}
1975         }
1976     },{
1977         "alsk_s",
1978         "+proj=alsk +R=6370997",
1979         {
1980             {-160.0, 55.0},
1981             {-160.0, 70.0},
1982             {-145.0, 70.0},
1983             {-145.0, 60.0}
1984         },{
1985             {-511510.319410844070, -967150.991676078060},
1986             {-303744.771290368980,  685439.745941123230},
1987             {265354.974019662940,   681386.892874573010},
1988             {387711.995394026630,  -422980.685505462640}
1989         },{
1990             {-500000.0, -950000.0},
1991             {-305000.0,  700000.0},
1992             { 250000.0,  700000.0},
1993             { 400000.0, -400000.0}
1994         },{
1995             {-159.854014457557, 55.165653849074},
1996             {-160.082332371601, 70.128307617632},
1997             {-145.347827407243, 70.181566919011},
1998             {-144.734239827146, 60.193564732505}
1999         }
2000     },{
2001         "gs50_e",
2002         "+proj=gs50 +ellps=clrk66",
2003         {
2004             {-160.0, 65.0},
2005             {-130.0, 45.0},
2006             { -65.0, 45.0},
2007             { -80.0, 36.0}
2008         },{
2009             {-1874628.5377402329,   2660907.942291015300},
2010             { -771831.51885333552,    48465.166491304852},
2011             { 4030931.8339815089,   1323687.864777399200},
2012             { 3450764.2615361013,   -175619.041820732440}
2013         },{
2014             {-1800000.0, 2600000.0},
2015             { -800000.0,  500000.0},
2016             { 4000000.0, 1300000.0},
2017             { 3900000.0, -170000.0}
2018         },{
2019             {-157.989284999679, 64.851559609698},
2020             {-131.171390466814, 49.084969745967},
2021             { -65.491568685301, 44.992837923774},
2022             { -75.550660091101, 34.191114075743}
2023         }
2024     },{
2025         "gs50_s",
2026         "+proj=gs50 +R=6370997",
2027         {
2028             {-160.0, 65.0},
2029             {-130.0, 45.0},
2030             { -65.0, 45.0},
2031             { -80.0, 36.0}
2032         },{
2033             {-1867268.2534600089,   2656506.230401823300},
2034             { -769572.18967299373,    48324.312440863941},
2035             { 4019393.068680791200, 1320191.309350289200},
2036             { 3442685.615172345700, -178760.423489428680}
2037         },{
2038             {-1800000.0, 2600000.0},
2039             { -800000.0,  500000.0},
2040             { 4000000.0, 1300000.0},
2041             { 3900000.0, -170000.0}
2042         },{
2043             {-158.163295044933, 64.854288364994},
2044             {-131.206816959506, 49.082915350974},
2045             { -65.348945220767, 44.957292681774},
2046             { -75.446820242089, 34.185406225616}
2047         }
2048     },*/
2049     {
2050         "moll",
2051         "+proj=moll   +a=6400000    +lat_1=0.5 +lat_2=2",
2052         {
2053             { 2, 1},
2054             { 2,-1},
2055             {-2, 1},
2056             {-2,-1}
2057         },{
2058             {201113.698641813244,  124066.283433859542},
2059             {201113.698641813244,  -124066.283433859542},
2060             {-201113.698641813244,  124066.283433859542},
2061             {-201113.698641813244,  -124066.283433859542}
2062         },{
2063             { 200, 100},
2064             { 200,-100},
2065             {-200, 100},
2066             {-200,-100}
2067         },{
2068             {0.00198873782220854774,  0.000806005080362811612},
2069             {0.00198873782220854774,  -0.000806005080362811612},
2070             {-0.00198873782220854774,  0.000806005080362811612},
2071             {-0.00198873782220854774,  -0.000806005080362811612}
2072         }
2073     },{
2074         "wag4",
2075         "+proj=wag4   +a=6400000    +lat_1=0.5 +lat_2=2",
2076         {
2077             { 2, 1},
2078             { 2,-1},
2079             {-2, 1},
2080             {-2,-1}
2081         },{
2082             { 192801.218662384286,  129416.216394802992},
2083             { 192801.218662384286, -129416.216394802992},
2084             {-192801.218662384286,  129416.216394802992},
2085             {-192801.218662384286, -129416.216394802992}
2086         },{
2087             { 200, 100},
2088             { 200,-100},
2089             {-200, 100},
2090             {-200,-100}
2091         },{
2092             { 0.00207450259783523421, 0.000772682950537716476},
2093             { 0.00207450259783523421, -0.000772682950537716476},
2094             {-0.00207450259783523421,  0.000772682950537716476},
2095             {-0.00207450259783523421, -0.000772682950537716476}
2096        }
2097     },{
2098         "wag5",
2099         "+proj=wag5   +a=6400000    +lat_1=0.5 +lat_2=2",
2100         {
2101             { 2, 1},
2102             { 2,-1},
2103             {-2, 1},
2104             {-2,-1}
2105         },{
2106             { 203227.05192532466,  138651.631442713202},
2107             { 203227.05192532466, -138651.631442713202},
2108             {-203227.05192532466,  138651.631442713202},
2109             {-203227.05192532466, -138651.631442713202}
2110         },{
2111             { 200, 100},
2112             { 200,-100},
2113             {-200, 100},
2114             {-200,-100}
2115         },{
2116             { 0.00196807227086416396,  0.00072121615041701424},
2117             { 0.00196807227086416396, -0.00072121615041701424},
2118             {-0.00196807227086416396,  0.00072121615041701424},
2119             {-0.00196807227086416396, -0.00072121615041701424}
2120         }
2121     },{
2122         "natearth",
2123         "+proj=natearth   +a=6400000    +lat_1=0.5 +lat_2=2",
2124         {
2125             { 2, 1},
2126             { 2,-1},
2127             {-2, 1},
2128             {-2,-1}
2129         },{
2130             { 194507.265257889288,  112508.737358294515},
2131             { 194507.265257889288, -112508.737358294515},
2132             {-194507.265257889288,  112508.737358294515},
2133             {-194507.265257889288, -112508.737358294515}
2134         },{
2135             { 200, 100},
2136             { 200,-100},
2137             {-200, 100},
2138             {-200,-100}
2139         },{
2140             { 0.00205638349586440223,  0.000888823913291242177},
2141             { 0.00205638349586440223, -0.000888823913291242177},
2142             {-0.00205638349586440223,  0.000888823913291242177},
2143             {-0.00205638349586440223, -0.000888823913291242177}
2144         }
2145     },
2146     // the following projection is not implemented in Boost.Geometry
2147     /*{
2148         "natearth2",
2149         "+proj=natearth2   +a=6400000    +lat_1=0.5 +lat_2=2",
2150         {
2151             { 2, 1},
2152             { 2,-1},
2153             {-2, 1},
2154             {-2,-1}
2155         },{
2156             { 189255.172934730799,  113022.495810907014},
2157             { 189255.172934730799, -113022.495810907014},
2158             {-189255.172934730799,  113022.495810907014},
2159             {-189255.172934730799, -113022.495810907014}
2160         },{
2161             { 200, 100},
2162             { 200,-100},
2163             {-200, 100},
2164             {-200,-100}
2165         },{
2166             { 0.00211344929691056112,  0.000884779612080993237},
2167             { 0.00211344929691056112, -0.000884779612080993237},
2168             {-0.00211344929691056112,  0.000884779612080993237},
2169             {-0.00211344929691056112, -0.000884779612080993237}
2170         }
2171     },*/
2172     {
2173         "nell",
2174         "+proj=nell   +a=6400000    +lat_1=0.5 +lat_2=2",
2175         {
2176             { 2, 1},
2177             { 2,-1},
2178             {-2, 1},
2179             {-2,-1}
2180         },{
2181             { 223385.132504695706,  111698.23644718733},
2182             { 223385.132504695706, -111698.23644718733},
2183             {-223385.132504695706,  111698.23644718733},
2184             {-223385.132504695706, -111698.23644718733}
2185         },{
2186             { 200, 100},
2187             { 200,-100},
2188             {-200, 100},
2189             {-200,-100}
2190         },{
2191             { 0.00179049310989310567,  0.000895246554910125161},
2192             { 0.00179049310989310567, -0.000895246554910125161},
2193             {-0.00179049310989310567,  0.000895246554910125161},
2194             {-0.00179049310989310567, -0.000895246554910125161}
2195         }
2196     },{
2197         "nell_h",
2198         "+proj=nell_h   +a=6400000    +lat_1=0.5 +lat_2=2",
2199         {
2200             { 2, 1},
2201             { 2,-1},
2202             {-2, 1},
2203             {-2,-1}
2204         },{
2205             { 223385.131640952837,  111698.236533561678},
2206             { 223385.131640952837, -111698.236533561678},
2207             {-223385.131640952837,  111698.236533561678},
2208             {-223385.131640952837, -111698.236533561678}
2209         },{
2210             { 200, 100},
2211             { 200,-100},
2212             {-200, 100},
2213             {-200,-100}
2214         },{
2215             { 0.00179049310989310567,  0.000895246554910125378},
2216             { 0.00179049310989310567, -0.000895246554910125378},
2217             {-0.00179049310989310567,  0.000895246554910125378},
2218             {-0.00179049310989310567, -0.000895246554910125378}
2219         }
2220     },{
2221         "nicol",
2222         "+proj=nicol   +a=6400000    +lat_1=0.5 +lat_2=2",
2223         {
2224             { 2, 1},
2225             { 2,-1},
2226             {-2, 1},
2227             {-2,-1}
2228         },{
2229             { 223374.561814139714,  111732.553988545071},
2230             { 223374.561814139714, -111732.553988545071},
2231             {-223374.561814139714,  111732.553988545071},
2232             {-223374.561814139714, -111732.553988545071}
2233         },
2234         {},{{HUGE_VAL, HUGE_VAL}}
2235     },{
2236         "nsper",
2237         "+proj=nsper   +a=6400000  +h=1000000",
2238         {
2239             { 2, 1},
2240             { 2,-1},
2241             {-2, 1},
2242             {-2,-1}
2243         },{
2244             { 222239.816114099842,  111153.763991924759},
2245             { 222239.816114099842, -111153.763991924759},
2246             {-222239.816114099842,  111153.763991924759},
2247             {-222239.816114099842, -111153.763991924759}
2248         },{
2249             { 200, 100},
2250             { 200,-100},
2251             {-200, 100},
2252             {-200,-100}
2253         },{
2254             { 0.00179049311728792437,  0.000895246558425396135},
2255             { 0.00179049311728792437, -0.000895246558425396135},
2256             {-0.00179049311728792437,  0.000895246558425396135},
2257             {-0.00179049311728792437, -0.000895246558425396135}
2258         }
2259     },{
2260         "tpers",
2261         "+proj=tpers   +a=6400000  +h=1000000 +azi=20",
2262         {
2263             { 2, 1},
2264             { 2,-1},
2265             {-2, 1},
2266             {-2,-1}
2267         },{
2268             { 170820.288955531199,  180460.865555804776},
2269             { 246853.941538942483, -28439.8780357754222},
2270             {-246853.941538942483,  28439.8780357754222},
2271             {-170820.288955531199, -180460.865555804776}
2272         },{
2273             { 200, 100},
2274             { 200,-100},
2275             {-200, 100},
2276             {-200,-100}
2277         },{
2278             { 0.00198870552603137678,  0.000228871872278689991},
2279             { 0.00137632081376749859, -0.00145364129728205432},
2280             {-0.00137632081376749859,  0.00145364129728205432},
2281             {-0.00198870552603137678, -0.000228871872278689991}
2282         }
2283     },{
2284         "nzmg",
2285         "+proj=nzmg   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
2286         {
2287             { 2, 1},
2288             { 2,-1},
2289             {-2, 1},
2290             {-2,-1}
2291         },{
2292             {3352675144.74742508,  -7043205391.10024357},
2293             {3691989502.77930641,  -6729069415.33210468},
2294             {4099000768.45323849,  -7863208779.66724873},
2295             {4466166927.36997604,  -7502531736.62860489}
2296         },{
2297             { 200000, 100000},
2298             { 200000,-100000},
2299             {-200000, 100000},
2300             {-200000,-100000}
2301         },{
2302             {175.48208682711271,  -69.4226921826331846},
2303             {175.756819472543611, -69.5335710883796168},
2304             {134.605119233460016, -61.4599957106629091},
2305             {134.333684315954827, -61.6215536756024349}
2306         }
2307     },{
2308         "ob_tran",
2309         "+proj=ob_tran +a=6400000 +o_proj=latlon +o_lon_p=20 +o_lat_p=20 +lon_0=180",
2310         {
2311             { 2, 1},
2312             { 2,-1},
2313             {-2, 1},
2314             {-2,-1}
2315         },{
2316             {-2.6856872138416592, 1.2374302350496296},
2317             {-2.6954069748943286, 1.2026833954513816},
2318             {-2.8993663925401947, 1.2374302350496296},
2319             {-2.8896466314875244, 1.2026833954513816}
2320         },{
2321             { 200, 100},
2322             { 200,-100},
2323             {-200, 100},
2324             {-200,-100}
2325         },{
2326             { 121.5518748407577,  -2.5361001573966084},
2327             { 63.261184340201858,  17.585319578673531},
2328             {-141.10073322351622,  26.091712304855108},
2329             {-65.862385598848391,  51.830295078417215}
2330         }
2331     },{
2332         "ocea",
2333         "+proj=ocea   +a=6400000    +lat_1=0.5 +lat_2=2",
2334         {
2335             { 2, 1},
2336             { 2,-1},
2337             {-2, 1},
2338             {-2,-1}
2339         },{
2340             {19994423.837934087962,  223322.760576727800},
2341             {20217962.128015257418,  223322.760576729401},
2342             {19994423.837934091687, -223322.760576726549},
2343             {20217962.128015264869, -223322.760576724948},
2344         },{
2345             { 200, 100},
2346             { 200,-100},
2347             {-200, 100},
2348             {-200,-100}
2349         },{
2350             { 179.999104753445,  0.001790493110},
2351             {-179.999104753445,  0.001790493110},
2352             { 179.999104753445, -0.001790493110},
2353             {-179.999104753445, -0.001790493110}
2354         }
2355     },{
2356         "oea",
2357         "+proj=oea   +a=6400000    +lat_1=0.5 +lat_2=2 +n=1 +m=2 +theta=3",
2358         {
2359             { 2, 1},
2360             { 2,-1},
2361             {-2, 1},
2362             {-2,-1}
2363         },{
2364             { 228926.872097864107,  99870.4884300760023},
2365             { 217242.584036940476, -123247.885607474513},
2366             {-217242.584036940476,  123247.885607474556},
2367             {-228926.872097864078, -99870.4884300760168}
2368         },{
2369             { 200, 100},
2370             { 200,-100},
2371             {-200, 100},
2372             {-200,-100}
2373         },{
2374             { 0.0017411857167771369,   0.000987726819566195693},
2375             { 0.00183489288577854998, -0.000800312481495174641},
2376             {-0.00183489288577854954,  0.000800312481495174966},
2377             {-0.00174118571677713712, -0.000987726819566195043}
2378         }
2379     },{
2380         "omerc",
2381         "+proj=omerc   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
2382         {
2383             { 2, 1},
2384             { 2,-1},
2385             {-2, 1},
2386             {-2,-1}
2387         },{
2388             { 222650.796885261341,  110642.229314983808},
2389             { 222650.796885261341, -110642.229314983808},
2390             {-222650.796885261545,  110642.229314983808},
2391             {-222650.796885261545, -110642.229314983808}
2392         },{
2393             { 200, 100},
2394             { 200,-100},
2395             {-200, 100},
2396             {-200,-100}
2397         },{
2398             { 0.00179663056816996357,  0.000904369474808157338},
2399             { 0.00179663056816996357, -0.000904369474820879583},
2400             {-0.0017966305681604536,   0.000904369474808157338},
2401             {-0.0017966305681604536,  -0.000904369474820879583}
2402         }
2403     },{
2404         "ortho",
2405         "+proj=ortho   +a=6400000    +lat_1=0.5 +lat_2=2",
2406         {
2407             { 2, 1},
2408             { 2,-1},
2409             {-2, 1},
2410             {-2,-1}
2411         },{
2412             { 223322.76057672748,  111695.401198614476},
2413             { 223322.76057672748, -111695.401198614476},
2414             {-223322.76057672748,  111695.401198614476},
2415             {-223322.76057672748, -111695.401198614476}
2416         },{
2417             { 200, 100},
2418             { 200,-100},
2419             {-200, 100},
2420             {-200,-100}
2421         },{
2422             { 0.0017904931102938101,  0.000895246554928338998},
2423             { 0.0017904931102938101, -0.000895246554928338998},
2424             {-0.0017904931102938101,  0.000895246554928338998},
2425             {-0.0017904931102938101, -0.000895246554928338998}
2426         }
2427     },
2428     // patterson projection is not implemented in Boost.Geometry
2429     /*{
2430         "patterson",
2431         "+proj=patterson   +a=6400000    +lat_1=0.5 +lat_2=2",
2432         {
2433             { 2, 1},
2434             { 2,-1},
2435             {-2, 1},
2436             {-2,-1}
2437         },{
2438             {223402.144255274179,  113354.250397779804},
2439             {223402.144255274179,  -113354.250397779804},
2440             {-223402.144255274179,  113354.250397779804},
2441             {-223402.144255274179,  -113354.250397779804}
2442         },{
2443             { 200, 100},
2444             { 200,-100},
2445             {-200, 100},
2446             {-200,-100}
2447         },{
2448             {0.00179049310978382265,  0.000882190140807953657},
2449             {0.00179049310978382265,  -0.000882190140807953657},
2450             {-0.00179049310978382265,  0.000882190140807953657},
2451             {-0.00179049310978382265,  -0.000882190140807953657}
2452         }
2453     },*/
2454     // pipeline projection is not implemented in Boost.Geometry
2455     // and tests are implemented differently
2456     {
2457         "poly_e",
2458         "+proj=poly   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
2459         {
2460             { 2, 1},
2461             { 2,-1},
2462             {-2, 1},
2463             {-2,-1}
2464         },{
2465             { 222605.285770237475,  110642.194561440483},
2466             { 222605.285770237475, -110642.194561440483},
2467             {-222605.285770237475,  110642.194561440483},
2468             {-222605.285770237475, -110642.194561440483}
2469         },{
2470             { 200, 100},
2471             { 200,-100},
2472             {-200, 100},
2473             {-200,-100}
2474         },{
2475             { 0.00179663056846135222,  0.000904369476631838518},
2476             { 0.00179663056846135222, -0.000904369476631838518},
2477             {-0.00179663056846135222,  0.000904369476631838518},
2478             {-0.00179663056846135222, -0.000904369476631838518}
2479         }
2480     },{
2481         "poly_s",
2482         "+proj=poly   +R=6400000    +lat_1=0.5 +lat_2=2",
2483         {
2484             { 2, 1},
2485             { 2,-1},
2486             {-2, 1},
2487             {-2,-1}
2488         },{
2489             { 223368.105210218986,  111769.110491224754},
2490             { 223368.105210218986, -111769.110491224754},
2491             {-223368.105210218986,  111769.110491224754},
2492             {-223368.105210218986, -111769.110491224754}
2493         },{
2494             { 200, 100},
2495             { 200,-100},
2496             {-200, 100},
2497             {-200,-100}
2498         },{
2499             { 0.0017904931100023887,  0.000895246554454779222},
2500             { 0.0017904931100023887, -0.000895246554454779222},
2501             {-0.0017904931100023887,  0.000895246554454779222},
2502             {-0.0017904931100023887, -0.000895246554454779222}
2503         }
2504     },{
2505         "putp2",
2506         "+proj=putp2   +a=6400000    +lat_1=0.5 +lat_2=2",
2507         {
2508             { 2, 1},
2509             { 2,-1},
2510             {-2, 1},
2511             {-2,-1}
2512         },{
2513             { 211638.039634339279,  117895.033043379764},
2514             { 211638.039634339279, -117895.033043379764},
2515             {-211638.039634339279,  117895.033043379764},
2516             {-211638.039634339279, -117895.033043379764}
2517         },{
2518             { 200, 100},
2519             { 200,-100},
2520             {-200, 100},
2521             {-200,-100}
2522         },{
2523             { 0.00188980221640386672,  0.000848201580276863377},
2524             { 0.00188980221640386672, -0.000848201580276863377},
2525             {-0.00188980221640386672,  0.000848201580276863377},
2526             {-0.00188980221640386672, -0.000848201580276863377}
2527         }
2528     },{
2529         "putp3",
2530         "+proj=putp3   +a=6400000    +lat_1=0.5 +lat_2=2",
2531         {
2532             { 2, 1},
2533             { 2,-1},
2534             {-2, 1},
2535             {-2,-1}
2536         },{
2537             { 178227.115507793525,  89124.5607860879827},
2538             { 178227.115507793525, -89124.5607860879827},
2539             {-178227.115507793525,  89124.5607860879827},
2540             {-178227.115507793525, -89124.5607860879827}
2541         },{
2542             { 200, 100},
2543             { 200,-100},
2544             {-200, 100},
2545             {-200,-100}
2546         },{
2547             { 0.00224405032986489889,  0.00112202516475805899},
2548             { 0.00224405032986489889, -0.00112202516475805899},
2549             {-0.00224405032986489889,  0.00112202516475805899},
2550             {-0.00224405032986489889, -0.00112202516475805899}
2551         }
2552     },{
2553         "putp3p",
2554         "+proj=putp3p   +a=6400000    +lat_1=0.5 +lat_2=2",
2555         {
2556             { 2, 1},
2557             { 2,-1},
2558             {-2, 1},
2559             {-2,-1}
2560         },{
2561             { 178238.118539984745,  89124.5607860879827},
2562             { 178238.118539984745, -89124.5607860879827},
2563             {-178238.118539984745,  89124.5607860879827},
2564             {-178238.118539984745, -89124.5607860879827}
2565         },{
2566             { 200, 100},
2567             { 200,-100},
2568             {-200, 100},
2569             {-200,-100}
2570         },{
2571             { 0.00224405032969050844,  0.00112202516475805899},
2572             { 0.00224405032969050844, -0.00112202516475805899},
2573             {-0.00224405032969050844,  0.00112202516475805899},
2574             {-0.00224405032969050844, -0.00112202516475805899}
2575         }
2576     },{
2577         "putp4p",
2578         "+proj=putp4p   +a=6400000    +lat_1=0.5 +lat_2=2",
2579         {
2580             { 2, 1},
2581             { 2,-1},
2582             {-2, 1},
2583             {-2,-1}
2584         },{
2585             { 195241.47734938623,  127796.782307926231},
2586             { 195241.47734938623, -127796.782307926231},
2587             {-195241.47734938623,  127796.782307926231},
2588             {-195241.47734938623, -127796.782307926231}
2589         },{
2590             { 200, 100},
2591             { 200,-100},
2592             {-200, 100},
2593             {-200,-100}
2594         },{
2595             { 0.00204852830860296001,  0.000782480174932193733},
2596             { 0.00204852830860296001, -0.000782480174932193733},
2597             {-0.00204852830860296001,  0.000782480174932193733},
2598             {-0.00204852830860296001, -0.000782480174932193733}
2599         }
2600     },{
2601         "weren",
2602         "+proj=weren   +a=6400000    +lat_1=0.5 +lat_2=2",
2603         {
2604             { 2, 1},
2605             { 2,-1},
2606             {-2, 1},
2607             {-2,-1}
2608         },{
2609             { 223378.515757633519,  146214.093042288267},
2610             { 223378.515757633519, -146214.093042288267},
2611             {-223378.515757633519,  146214.093042288267},
2612             {-223378.515757633519, -146214.093042288267}
2613         },{
2614             { 200, 100},
2615             { 200,-100},
2616             {-200, 100},
2617             {-200,-100}
2618         },{
2619             { 0.00179049310987240413,  0.000683917989676492265},
2620             { 0.00179049310987240413, -0.000683917989676492265},
2621             {-0.00179049310987240413,  0.000683917989676492265},
2622             {-0.00179049310987240413, -0.000683917989676492265}
2623         }
2624     },{
2625         "putp5",
2626         "+proj=putp5   +a=6400000    +lat_1=0.5 +lat_2=2",
2627         {
2628             { 2, 1},
2629             { 2,-1},
2630             {-2, 1},
2631             {-2,-1}
2632         },{
2633             { 226367.21338056153,  113204.56855847509},
2634             { 226367.21338056153, -113204.56855847509},
2635             {-226367.21338056153,  113204.56855847509},
2636             {-226367.21338056153, -113204.56855847509}
2637         },{
2638             { 200, 100},
2639             { 200,-100},
2640             {-200, 100},
2641             {-200,-100}
2642         },{
2643             { 0.00176671315102969553,  0.000883356575387199546},
2644             { 0.00176671315102969553, -0.000883356575387199546},
2645             {-0.00176671315102969553,  0.000883356575387199546},
2646             {-0.00176671315102969553, -0.000883356575387199546}
2647         }
2648     },{
2649         "putp5p",
2650         "+proj=putp5p   +a=6400000    +lat_1=0.5 +lat_2=2",
2651         {
2652             { 2, 1},
2653             { 2,-1},
2654             {-2, 1},
2655             {-2,-1}
2656         },{
2657             { 226388.175248755841,  113204.56855847509},
2658             { 226388.175248755841, -113204.56855847509},
2659             {-226388.175248755841,  113204.56855847509},
2660             {-226388.175248755841, -113204.56855847509}
2661         },{
2662             { 200, 100},
2663             { 200,-100},
2664             {-200, 100},
2665             {-200,-100}
2666         },{
2667             { 0.00176671315090204742,  0.000883356575387199546},
2668             { 0.00176671315090204742, -0.000883356575387199546},
2669             {-0.00176671315090204742,  0.000883356575387199546},
2670             {-0.00176671315090204742, -0.000883356575387199546}
2671         }
2672     },{
2673         "putp6",
2674         "+proj=putp6   +a=6400000    +lat_1=0.5 +lat_2=2",
2675         {
2676             { 2, 1},
2677             { 2,-1},
2678             {-2, 1},
2679             {-2,-1}
2680         },{
2681             { 226369.395133402577,  110218.523796520662},
2682             { 226369.395133402577, -110218.523796520749},
2683             {-226369.395133402577,  110218.523796520662},
2684             {-226369.395133402577, -110218.523796520749}
2685         },{
2686             { 200, 100},
2687             { 200,-100},
2688             {-200, 100},
2689             {-200,-100}
2690         },{
2691             { 0.00176671315102969921,  0.000907295534210503544},
2692             { 0.00176671315102969921, -0.000907295534205924308},
2693             {-0.00176671315102969921,  0.000907295534210503544},
2694             {-0.00176671315102969921, -0.000907295534205924308}
2695         }
2696     },{
2697         "putp6p",
2698         "+proj=putp6p   +a=6400000    +lat_1=0.5 +lat_2=2",
2699         {
2700             { 2, 1},
2701             { 2,-1},
2702             {-2, 1},
2703             {-2,-1}
2704         },{
2705             { 198034.195132195076,  125989.475461323193},
2706             { 198034.195132195076, -125989.475461323193},
2707             {-198034.195132195076,  125989.475461323193},
2708             {-198034.195132195076, -125989.475461323193}
2709         },{
2710             { 200, 100},
2711             { 200,-100},
2712             {-200, 100},
2713             {-200,-100}
2714         },{
2715             { 0.00201955053120177067,  0.000793716441164738612},
2716             { 0.00201955053120177067, -0.000793716441164738612},
2717             {-0.00201955053120177067,  0.000793716441164738612},
2718             {-0.00201955053120177067, -0.000793716441164738612}
2719         }
2720     },{
2721         "qsc_e",
2722         "+proj=qsc   +ellps=GRS80  +lat_1=0.5 +lat_2=2",
2723         {
2724             { 2, 1},
2725             { 2,-1},
2726             {-2, 1},
2727             {-2,-1}
2728         },{
2729             { 304638.450843852363,  164123.870923793991},
2730             { 304638.450843852363, -164123.870923793991},
2731             {-304638.450843852363,  164123.870923793962},
2732             {-304638.450843852421, -164123.870923793904}
2733         },{
2734             { 200, 100},
2735             { 200,-100},
2736             {-200, 100},
2737             {-200,-100}
2738         },{
2739             { 0.00132134098471627126,  0.000610652900922527926},
2740             { 0.00132134098471627126, -0.000610652900922527926},
2741             {-0.00132134098471627126,  0.000610652900922527926},
2742             {-0.00132134098471627126, -0.000610652900922527926}
2743         }
2744     },{
2745         "qsc_s",
2746         "+proj=qsc   +R=6400000    +lat_1=0.5 +lat_2=2",
2747         {
2748             { 2, 1},
2749             { 2,-1},
2750             {-2, 1},
2751             {-2,-1}
2752         },{
2753             { 305863.792402890511,  165827.722754715243},
2754             { 305863.792402890511, -165827.722754715243},
2755             {-305863.792402890511,  165827.722754715243},
2756             {-305863.792402890569, -165827.722754715156}
2757         },{
2758             { 200, 100},
2759             { 200,-100},
2760             {-200, 100},
2761             {-200,-100}
2762         },{
2763             { 0.00131682718763827234,  0.000604493198178676161},
2764             { 0.00131682718763827234, -0.000604493198178676161},
2765             {-0.00131682718763827234,  0.000604493198178676161},
2766             {-0.00131682718763827234, -0.000604493198178676161}
2767         }
2768     },{
2769         "robin",
2770         "+proj=robin   +a=6400000    +lat_1=0.5 +lat_2=2",
2771         {
2772             { 2, 1},
2773             { 2,-1},
2774             {-2, 1},
2775             {-2,-1}
2776         },{ // original expected different because float coefficients are defined
2777             /*{ 189588.423282507836,  107318.530350702888},
2778             { 189588.423282507836, -107318.530350702888},
2779             {-189588.423282507836,  107318.530350702888},
2780             {-189588.423282507836, -107318.530350702888}*/
2781             { 189588.4232821252,  107318.5272684303},
2782             { 189588.4232821252, -107318.5272684303},
2783             {-189588.4232821252,  107318.5272684303},
2784             {-189588.4232821252, -107318.5272684303}
2785         },{
2786             { 200, 100},
2787             { 200,-100},
2788             {-200, 100},
2789             {-200,-100}
2790         },{
2791             { 0.002109689065506131,  0.000931805533547745983},
2792             { 0.002109689065506131, -0.000931805533547745983},
2793             {-0.002109689065506131,  0.000931805533547745983},
2794             {-0.002109689065506131, -0.000931805533547745983}
2795         }
2796     },{
2797         "rpoly",
2798         "+proj=rpoly   +a=6400000    +lat_1=0.5 +lat_2=2",
2799         {
2800             { 2, 1},
2801             { 2,-1},
2802             {-2, 1},
2803             {-2,-1}
2804         },{
2805             { 223368.09830201423,  111769.110486991223},
2806             { 223368.09830201423, -111769.110486991223},
2807             {-223368.09830201423,  111769.110486991223},
2808             {-223368.09830201423, -111769.110486991223}
2809         },
2810         {},{{HUGE_VAL, HUGE_VAL}}
2811     },
2812     // sch projection not implemented in Boost.Geometry
2813     // and the tests are not implemented in Proj4 anyway
2814     {
2815         "euler_e",
2816         "+proj=euler   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
2817         {
2818             { 2, 1},
2819             { 2,-1},
2820             {-2, 1},
2821             {-2,-1}
2822         },{
2823             {222597.63465910763,  111404.24054991946},
2824             {222767.16563187627,  -111234.6764910177},
2825             {-222597.63465910763,  111404.24054991946},
2826             {-222767.16563187627,  -111234.6764910177}
2827         },{
2828             { 200, 100},
2829             { 200,-100},
2830             {-200, 100},
2831             {-200,-100}
2832         },{
2833             {0.0017962807023075235,  0.0008983146697688839},
2834             {0.0017962794738334226,  -0.00089831589842987965},
2835             {-0.0017962807023075235,  0.0008983146697688839},
2836             {-0.0017962794738334226,  -0.00089831589842987965}
2837         }
2838     },{
2839         "euler_s",
2840         "+proj=euler   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
2841         {
2842             { 2, 1},
2843             { 2,-1},
2844             {-2, 1},
2845             {-2,-1}
2846         },{
2847             {223360.65559869423,  111786.11238979101},
2848             {223530.76769031584,  -111615.96709862351},
2849             {-223360.65559869423,  111786.11238979101},
2850             {-223530.76769031584,  -111615.96709862351}
2851         },{
2852             { 200, 100},
2853             { 200,-100},
2854             {-200, 100},
2855             {-200,-100}
2856         },{
2857             {0.0017901444369360026,  0.00089524594522202015},
2858             {0.001790143216840731,  -0.00089524716533368484},
2859             {-0.0017901444369360026,  0.00089524594522202015},
2860             {-0.001790143216840731,  -0.00089524716533368484}
2861         }
2862     },{
2863         "murd1_e",
2864         "+proj=murd1   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
2865         {
2866             { 2, 1},
2867             { 2,-1},
2868             {-2, 1},
2869             {-2,-1}
2870         },{
2871             {222600.81347355421,  111404.24418054636},
2872             {222770.3492878644,  -111234.6728566746},
2873             {-222600.81347355421,  111404.24418054636},
2874             {-222770.3492878644,  -111234.6728566746}
2875         },{
2876             { 200, 100},
2877             { 200,-100},
2878             {-200, 100},
2879             {-200,-100}
2880         },{
2881             {0.0017962550410516366,  0.0008983146697688839},
2882             {0.0017962538125775522,  -0.00089831589842987965},
2883             {-0.0017962550410516366,  0.0008983146697688839},
2884             {-0.0017962538125775522,  -0.00089831589842987965}
2885         }
2886     },{
2887         "murd1_s",
2888         "+proj=murd1   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
2889         {
2890             { 2, 1},
2891             { 2,-1},
2892             {-2, 1},
2893             {-2,-1}
2894         },{
2895             {223363.84530949194,  111786.11603286299},
2896             {223533.96225925098,  -111615.96345182261},
2897             {-223363.84530949194,  111786.11603286299},
2898             {-223533.96225925098,  -111615.96345182261}
2899         },{
2900             { 200, 100},
2901             { 200,-100},
2902             {-200, 100},
2903             {-200,-100}
2904         },{
2905             {0.0017901188633413715,  0.00089524594522202015},
2906             {0.0017901176432461162,  -0.00089524716492657387},
2907             {-0.0017901188633413715,  0.00089524594522202015},
2908             {-0.0017901176432461162,  -0.00089524716492657387}
2909         }
2910     },{
2911         "murd2_e",
2912         "+proj=murd2   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
2913         {
2914             { 2, 1},
2915             { 2,-1},
2916             {-2, 1},
2917             {-2,-1}
2918         },{
2919             {222588.09975123021,  111426.14002741246},
2920             {222757.72626701824,  -111341.43131750476},
2921             {-222588.09975123021,  111426.14002741246},
2922             {-222757.72626701824,  -111341.43131750476}
2923         },{
2924             { 200, 100},
2925             { 200,-100},
2926             {-200, 100},
2927             {-200,-100}
2928         },{
2929             {0.0017963574947305447,  0.00089788747830845382},
2930             {0.0017963562661689487,  -0.00089788809264252983},
2931             {-0.0017963574947305447,  0.00089788747830845382},
2932             {-0.0017963562661689487,  -0.00089788809264252983}
2933         }
2934     },{
2935         "murd2_s",
2936         "+proj=murd2   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
2937         {
2938             { 2, 1},
2939             { 2,-1},
2940             {-2, 1},
2941             {-2,-1}
2942         },{
2943             {223351.08800702673,  111808.08693438848},
2944             {223521.2959691704,  -111723.08785967289},
2945             {-223351.08800702673,  111808.08693438848},
2946             {-223521.2959691704,  -111723.08785967289}
2947         },{
2948             { 200, 100},
2949             { 200,-100},
2950             {-200, 100},
2951             {-200,-100}
2952         },{
2953             {0.0017902209670287586,  0.00089482021163422854},
2954             {0.0017902197468465887,  -0.00089482082161134206},
2955             {-0.0017902209670287586,  0.00089482021163422854},
2956             {-0.0017902197468465887,  -0.00089482082161134206}
2957         }
2958     },{
2959         "murd3_e",
2960         "+proj=murd3   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
2961         {
2962             { 2, 1},
2963             { 2,-1},
2964             {-2, 1},
2965             {-2,-1}
2966         },{
2967             {222600.81407757697,  111404.24660137216},
2968             {222770.35473389886,  -111234.67043217793},
2969             {-222600.81407757697,  111404.24660137216},
2970             {-222770.35473389886,  -111234.67043217793}
2971         },{
2972             { 200, 100},
2973             { 200,-100},
2974             {-200, 100},
2975             {-200,-100}
2976         },{
2977             {0.0017962550166583809,  0.0008983146697688839},
2978             {0.0017962537881492445,  -0.00089831589842987965},
2979             {-0.0017962550166583809,  0.0008983146697688839},
2980             {-0.0017962537881492445,  -0.00089831589842987965}
2981         }
2982     },{
2983         "murd3_s",
2984         "+proj=murd3   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
2985         {
2986             { 2, 1},
2987             { 2,-1},
2988             {-2, 1},
2989             {-2,-1}
2990         },{
2991             {223363.84591558515,  111786.11846198692},
2992             {223533.96772395336,  -111615.96101901523},
2993             {-223363.84591558515,  111786.11846198692},
2994             {-223533.96772395336,  -111615.96101901523}
2995         },{
2996             { 200, 100},
2997             { 200,-100},
2998             {-200, 100},
2999             {-200,-100}
3000         },{
3001             {0.0017901188390313859,  0.00089524594522202015},
3002             {0.0017901176189013177,  -0.00089524716533368484},
3003             {-0.0017901188390313859,  0.00089524594522202015},
3004             {-0.0017901176189013177,  -0.00089524716533368484}
3005         }
3006     },{
3007         "pconic_e",
3008         "+proj=pconic   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3009         {
3010             { 2, 1},
3011             { 2,-1},
3012             {-2, 1},
3013             {-2,-1}
3014         },{
3015             {222588.09884161691,  111416.60477006658},
3016             {222757.71809109033,  -111331.88153107995},
3017             {-222588.09884161691,  111416.60477006658},
3018             {-222757.71809109033,  -111331.88153107995}
3019         },{
3020             { 200, 100},
3021             { 200,-100},
3022             {-200, 100},
3023             {-200,-100}
3024         },{
3025             {0.0017963575313784969,  0.0008979644089172499},
3026             {0.0017963563027642206,  -0.00089796502355327969},
3027             {-0.0017963575313784969,  0.0008979644089172499},
3028             {-0.0017963563027642206,  -0.00089796502355327969}
3029         }
3030     },{
3031         "pconic_s",
3032         "+proj=pconic   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3033         {
3034             { 2, 1},
3035             { 2,-1},
3036             {-2, 1},
3037             {-2,-1}
3038         },{
3039             {223351.08709429545,  111798.5189920546},
3040             {223521.28776521701,  -111713.50533845725},
3041             {-223351.08709429545,  111798.5189920546},
3042             {-223521.28776521701,  -111713.50533845725}
3043         },{
3044             { 200, 100},
3045             { 200,-100},
3046             {-200, 100},
3047             {-200,-100}
3048         },{
3049             {0.0017902210035514285,  0.0008948968793741558},
3050             {0.0017902197833169374,  -0.00089489748965381963},
3051             {-0.0017902210035514285,  0.0008948968793741558},
3052             {-0.0017902197833169374,  -0.00089489748965381963}
3053         }
3054     },{
3055         "tissot_e",
3056         "+proj=tissot   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3057         {
3058             { 2, 1},
3059             { 2,-1},
3060             {-2, 1},
3061             {-2,-1}
3062         },{
3063             {222641.07869963095,  54347.828487281469},
3064             {222810.61451394114,  -168291.08854993948},
3065             {-222641.07869963095,  54347.828487281469},
3066             {-222810.61451394114,  -168291.08854993948}
3067         },{
3068             { 200, 100},
3069             { 200,-100},
3070             {-200, 100},
3071             {-200,-100}
3072         },{
3073             {0.0017962807107425871,  0.51344495513064536},
3074             {0.0017962794822333915,  0.51164832456244658},
3075             {-0.0017962807107425871,  0.51344495513064536},
3076             {-0.0017962794822333915,  0.51164832456244658}
3077         }
3078     },{
3079         "tissot_s",
3080         "+proj=tissot   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3081         {
3082             { 2, 1},
3083             { 2,-1},
3084             {-2, 1},
3085             {-2,-1}
3086         },{
3087             {223404.24855684943,  54534.122161157939},
3088             {223574.36550660848,  -168867.95732352766},
3089             {-223404.24855684943,  54534.122161157939},
3090             {-223574.36550660848,  -168867.95732352766}
3091         },{
3092             { 200, 100},
3093             { 200,-100},
3094             {-200, 100},
3095             {-200,-100}
3096         },{
3097             {0.0017901444453421915,  0.51344188640609856},
3098             {0.001790143225212064,  0.51165139329554277},
3099             {-0.0017901444453421915,  0.51344188640609856},
3100             {-0.001790143225212064,  0.51165139329554277}
3101         }
3102     },{
3103         "vitk1_e",
3104         "+proj=vitk1   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3105         {
3106             { 2, 1},
3107             { 2,-1},
3108             {-2, 1},
3109             {-2,-1}
3110         },{
3111             {222607.17121145778,  111404.25144243463},
3112             {222776.71670959776,  -111234.66558744459},
3113             {-222607.17121145778,  111404.25144243463},
3114             {-222776.71670959776,  -111234.66558744459}
3115         },{
3116             { 200, 100},
3117             { 200,-100},
3118             {-200, 100},
3119             {-200,-100}
3120         },{
3121             {0.0017962037198570686,  0.0008983146697688839},
3122             {0.0017962024913830157,  -0.00089831589842987965},
3123             {-0.0017962037198570686,  0.0008983146697688839},
3124             {-0.0017962024913830157,  -0.00089831589842987965}
3125         }
3126     },{
3127         "vitk1_s",
3128         "+proj=vitk1   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3129         {
3130             { 2, 1},
3131             { 2,-1},
3132             {-2, 1},
3133             {-2,-1}
3134         },{
3135             {223370.22484047143,  111786.12331964359},
3136             {223540.3515072545,  -111615.9561576751},
3137             {-223370.22484047143,  111786.12331964359},
3138             {-223540.3515072545,  -111615.9561576751}
3139         },{
3140             { 200, 100},
3141             { 200,-100},
3142             {-200, 100},
3143             {-200,-100}
3144         },{
3145             {0.0017900677174648159,  0.00089524594522202015},
3146             {0.0017900664973695916,  -0.00089524716533368484},
3147             {-0.0017900677174648159,  0.00089524594522202015},
3148             {-0.0017900664973695916,  -0.00089524716533368484}
3149         }
3150     },{
3151         "somerc_e",
3152         "+proj=somerc   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3153         {
3154             { 2, 1},
3155             { 2,-1},
3156             {-2, 1},
3157             {-2,-1}
3158         },{
3159             {222638.98158654713,  110579.96521824898},
3160             {222638.98158654713,  -110579.96521825089},
3161             {-222638.98158654713,  110579.96521824898},
3162             {-222638.98158654713,  -110579.96521825089}
3163         },{
3164             { 200, 100},
3165             { 200,-100},
3166             {-200, 100},
3167             {-200,-100}
3168         },{
3169             {0.0017966305682390426,  0.00090436947704129484},
3170             {0.0017966305682390426,  -0.00090436947704377105},
3171             {-0.0017966305682390426,  0.00090436947704129484},
3172             {-0.0017966305682390426,  -0.00090436947704377105}
3173         }
3174     },{
3175         "somerc_s",
3176         "+proj=somerc   +R=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3177         {
3178             { 2, 1},
3179             { 2,-1},
3180             {-2, 1},
3181             {-2,-1}
3182         },{
3183             {223402.14425527418,  111706.74357494408},
3184             {223402.14425527418,  -111706.74357494518},
3185             {-223402.14425527418,  111706.74357494408},
3186             {-223402.14425527418,  -111706.74357494518}
3187         },{
3188             { 200, 100},
3189             { 200,-100},
3190             {-200, 100},
3191             {-200,-100}
3192         },{
3193             {0.0017904931097838226,  0.00089524655485801927},
3194             {0.0017904931097838226,  -0.00089524655484529714},
3195             {-0.0017904931097838226,  0.00089524655485801927},
3196             {-0.0017904931097838226,  -0.00089524655484529714}
3197         }
3198     },{
3199         "stere_e",
3200         "+proj=stere   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3201         {
3202             { 2, 1},
3203             { 2,-1},
3204             {-2, 1},
3205             {-2,-1}
3206         },{
3207             { 222644.8545501172,  110610.8834741739},
3208             { 222644.8545501172, -110610.8834741739},
3209             {-222644.8545501172,  110610.8834741739},
3210             {-222644.8545501172, -110610.8834741739}
3211         },{
3212             { 200, 100},
3213             { 200,-100},
3214             {-200, 100},
3215             {-200,-100}
3216         },{
3217             { 0.0017966305682022392,  0.00090436947502443507},
3218             { 0.0017966305682022392, -0.00090436947502443507},
3219             {-0.0017966305682022392,  0.00090436947502443507},
3220             {-0.0017966305682022392, -0.00090436947502443507}
3221         }
3222     },{
3223         "stere_s",
3224         "+proj=stere   +R=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3225         {
3226             { 2, 1},
3227             { 2,-1},
3228             {-2, 1},
3229             {-2,-1}
3230         },{
3231             { 223407.81025950745,  111737.938996443},
3232             { 223407.81025950745, -111737.938996443},
3233             {-223407.81025950745,  111737.938996443},
3234             {-223407.81025950745, -111737.938996443}
3235         },{
3236             { 200, 100},
3237             { 200,-100},
3238             {-200, 100},
3239             {-200,-100}
3240         },{
3241             { 0.001790493109747395,  0.00089524655465513144},
3242             { 0.001790493109747395, -0.00089524655465513144},
3243             {-0.001790493109747395,  0.00089524655465513144},
3244             {-0.001790493109747395, -0.00089524655465513144}
3245         }
3246     },{
3247         "ups",
3248         "+proj=ups   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3249         {
3250             { 2, 1},
3251             { 2,-1},
3252             {-2, 1},
3253             {-2,-1}
3254         },{
3255             {2433455.5634384668,  -10412543.301512826},
3256             {2448749.1185681992,  -10850493.419804076},
3257             {1566544.4365615332,  -10412543.301512826},
3258             {1551250.8814318008,  -10850493.419804076}
3259         },{
3260             { 200, 100},
3261             { 200,-100},
3262             {-200, 100},
3263             {-200,-100}
3264         },{
3265             {-44.998567498074834,  64.9182362867341},
3266             {-44.995702709112308,  64.917020250675748},
3267             {-45.004297076028529,  64.915804280954518},
3268             {-45.001432287066002,  64.914588377560719}
3269         }
3270     },{
3271         "sterea_e",
3272         "+proj=sterea   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3273         {
3274             { 2, 1},
3275             { 2,-1},
3276             {-2, 1},
3277             {-2,-1}
3278         },{
3279             { 222644.89410919772,  110611.09187173686},
3280             { 222644.89410919772, -110611.09187173827},
3281             {-222644.89410919772,  110611.09187173686},
3282             {-222644.89410919772, -110611.09187173827}
3283         },{
3284             { 200, 100},
3285             { 200,-100},
3286             {-200, 100},
3287             {-200,-100}
3288         },{
3289             { 0.0017966305682019911,  0.00090436947683099009},
3290             { 0.0017966305682019911, -0.00090436947684371233},
3291             {-0.0017966305682019911,  0.00090436947683099009},
3292             {-0.0017966305682019911, -0.00090436947684371233}
3293         }
3294     },{
3295         "sterea_s",
3296         "+proj=sterea   +R=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3297         {
3298             { 2, 1},
3299             { 2,-1},
3300             {-2, 1},
3301             {-2,-1}
3302         },{
3303             { 223407.81025950745,  111737.93899644315},
3304             { 223407.81025950745, -111737.93899644315},
3305             {-223407.81025950745,  111737.93899644315},
3306             {-223407.81025950745, -111737.93899644315}
3307         },{
3308             { 200, 100},
3309             { 200,-100},
3310             {-200, 100},
3311             {-200,-100}
3312         },{
3313             { 0.001790493109747395,  0.00089524655465446378},
3314             { 0.001790493109747395, -0.00089524655465446378},
3315             {-0.001790493109747395,  0.00089524655465446378},
3316             {-0.001790493109747395, -0.00089524655465446378}
3317         }
3318     },{
3319         "fouc_e",
3320         "+proj=fouc   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3321         {
3322             { 2, 1},
3323             { 2,-1},
3324             {-2, 1},
3325             {-2,-1}
3326         },{
3327             {222588.12067589167,  111322.31670069379},
3328             {222588.12067589167,  -111322.31670069379},
3329             {-222588.12067589167,  111322.31670069379},
3330             {-222588.12067589167,  -111322.31670069379}
3331         },{
3332             { 200, 100},
3333             { 200,-100},
3334             {-200, 100},
3335             {-200,-100}
3336         },{
3337             {0.0017966305685702751,  0.00089831528410111959},
3338             {0.0017966305685702751,  -0.00089831528410111959},
3339             {-0.0017966305685702751,  0.00089831528410111959},
3340             {-0.0017966305685702751,  -0.00089831528410111959}
3341         }
3342     },{
3343         "fouc_s",
3344         "+proj=fouc   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3345         {
3346             { 2, 1},
3347             { 2,-1},
3348             {-2, 1},
3349             {-2,-1}
3350         },{
3351             {223351.10900341379,  111703.9077217125},
3352             {223351.10900341379,  -111703.9077217125},
3353             {-223351.10900341379,  111703.9077217125},
3354             {-223351.10900341379,  -111703.9077217125}
3355         },{
3356             { 200, 100},
3357             { 200,-100},
3358             {-200, 100},
3359             {-200,-100}
3360         },{
3361             {0.0017904931101116717,  0.00089524655487369749},
3362             {0.0017904931101116717,  -0.00089524655487369749},
3363             {-0.0017904931101116717,  0.00089524655487369749},
3364             {-0.0017904931101116717,  -0.00089524655487369749}
3365         }
3366     },{
3367         "kav5_e",
3368         "+proj=kav5   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3369         {
3370             { 2, 1},
3371             { 2,-1},
3372             {-2, 1},
3373             {-2,-1}
3374         },{
3375             {200360.90530882866,  123685.08247699818},
3376             {200360.90530882866,  -123685.08247699818},
3377             {-200360.90530882866,  123685.08247699818},
3378             {-200360.90530882866,  -123685.08247699818}
3379         },{
3380             { 200, 100},
3381             { 200,-100},
3382             {-200, 100},
3383             {-200,-100}
3384         },{
3385             {0.0019962591348533314,  0.00080848256185253912},
3386             {0.0019962591348533314,  -0.00080848256185253912},
3387             {-0.0019962591348533314,  0.00080848256185253912},
3388             {-0.0019962591348533314,  -0.00080848256185253912}
3389         }
3390     },{
3391         "kav5_s",
3392         "+proj=kav5   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3393         {
3394             { 2, 1},
3395             { 2,-1},
3396             {-2, 1},
3397             {-2,-1}
3398         },{
3399             {201047.7031108776,  124109.05062917093},
3400             {201047.7031108776,  -124109.05062917093},
3401             {-201047.7031108776,  124109.05062917093},
3402             {-201047.7031108776,  -124109.05062917093}
3403         },{
3404             { 200, 100},
3405             { 200,-100},
3406             {-200, 100},
3407             {-200,-100}
3408         },{
3409             {0.0019894397264987643,  0.00080572070962591153},
3410             {0.0019894397264987643,  -0.00080572070962591153},
3411             {-0.0019894397264987643,  0.00080572070962591153},
3412             {-0.0019894397264987643,  -0.00080572070962591153}
3413         }
3414     },{
3415         "qua_aut_e",
3416         "+proj=qua_aut   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3417         {
3418             { 2, 1},
3419             { 2,-1},
3420             {-2, 1},
3421             {-2,-1}
3422         },{
3423             {222613.54903309655,  111318.07788798446},
3424             {222613.54903309655,  -111318.07788798446},
3425             {-222613.54903309655,  111318.07788798446},
3426             {-222613.54903309655,  -111318.07788798446}
3427         },{
3428             { 200, 100},
3429             { 200,-100},
3430             {-200, 100},
3431             {-200,-100}
3432         },{
3433             {0.0017966305684046586,  0.00089831528412872229},
3434             {0.0017966305684046586,  -0.00089831528412872229},
3435             {-0.0017966305684046586,  0.00089831528412872229},
3436             {-0.0017966305684046586,  -0.00089831528412872229}
3437         }
3438     },{
3439         "qua_aut_s",
3440         "+proj=qua_aut   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3441         {
3442             { 2, 1},
3443             { 2,-1},
3444             {-2, 1},
3445             {-2,-1}
3446         },{
3447             {223376.62452402918,  111699.65437918637},
3448             {223376.62452402918,  -111699.65437918637},
3449             {-223376.62452402918,  111699.65437918637},
3450             {-223376.62452402918,  -111699.65437918637}
3451         },{
3452             { 200, 100},
3453             { 200,-100},
3454             {-200, 100},
3455             {-200,-100}
3456         },{
3457             {0.0017904931099477471,  0.00089524655490101819},
3458             {0.0017904931099477471,  -0.00089524655490101819},
3459             {-0.0017904931099477471,  0.00089524655490101819},
3460             {-0.0017904931099477471,  -0.00089524655490101819}
3461         }
3462     },{
3463         "mbt_s_e",
3464         "+proj=mbt_s   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3465         {
3466             { 2, 1},
3467             { 2,-1},
3468             {-2, 1},
3469             {-2,-1}
3470         },{
3471             {204131.51785027285,  121400.33022550763},
3472             {204131.51785027285,  -121400.33022550763},
3473             {-204131.51785027285,  121400.33022550763},
3474             {-204131.51785027285,  -121400.33022550763}
3475         },{
3476             { 200, 100},
3477             { 200,-100},
3478             {-200, 100},
3479             {-200,-100}
3480         },{
3481             {0.0019593827209883237,  0.00082369854658027549},
3482             {0.0019593827209883237,  -0.00082369854658027549},
3483             {-0.0019593827209883237,  0.00082369854658027549},
3484             {-0.0019593827209883237,  -0.00082369854658027549}
3485         }
3486     },{
3487         "mbt_s_s",
3488         "+proj=mbt_s   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3489         {
3490             { 2, 1},
3491             { 2,-1},
3492             {-2, 1},
3493             {-2,-1}
3494         },{
3495             {204831.24057099217,  121816.46669603503},
3496             {204831.24057099217,  -121816.46669603503},
3497             {-204831.24057099217,  121816.46669603503},
3498             {-204831.24057099217,  -121816.46669603503}
3499         },{
3500             { 200, 100},
3501             { 200,-100},
3502             {-200, 100},
3503             {-200,-100}
3504         },{
3505             {0.0019526892859206603,  0.00082088471512331508},
3506             {0.0019526892859206603,  -0.00082088471512331508},
3507             {-0.0019526892859206603,  0.00082088471512331508},
3508             {-0.0019526892859206603,  -0.00082088471512331508}
3509         }
3510     },{
3511         "tcc",
3512         "+proj=tcc   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3513         {
3514             { 2, 1},
3515             { 2,-1},
3516             {-2, 1},
3517             {-2,-1}
3518         },{
3519             {223458.84419245756,  111769.14504058579},
3520             {223458.84419245756,  -111769.14504058579},
3521             {-223458.84419245756,  111769.14504058579},
3522             {-223458.84419245756,  -111769.14504058579}
3523         },
3524         {},{{HUGE_VAL, HUGE_VAL}}
3525     },{
3526         "tcea",
3527         "+proj=tcea   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3528         {
3529             { 2, 1},
3530             { 2,-1},
3531             {-2, 1},
3532             {-2,-1}
3533         },{
3534             { 223322.76057672748,  111769.14504058579},
3535             { 223322.76057672748, -111769.14504058579},
3536             {-223322.76057672748,  111769.14504058579},
3537             {-223322.76057672748, -111769.14504058579}
3538         },{
3539             { 200, 100},
3540             { 200,-100},
3541             {-200, 100},
3542             {-200,-100}
3543         },{
3544             { 0.0017904931102938101,  0.00089524655445477922},
3545             { 0.0017904931102938101, -0.00089524655445477922},
3546             {-0.0017904931102938101,  0.00089524655445477922},
3547             {-0.0017904931102938101, -0.00089524655445477922}
3548         }
3549     },
3550     // times projection not implemented
3551     {
3552         "tmerc_e",
3553         "+proj=tmerc   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3554         {
3555             { 2, 1},
3556             { 2,-1},
3557             {-2, 1},
3558             {-2,-1}
3559         },{
3560             { 222650.79679577847,  110642.22941192707},
3561             { 222650.79679577847, -110642.22941192707},
3562             {-222650.79679577847,  110642.22941192707},
3563             {-222650.79679577847, -110642.22941192707}
3564         },{
3565             { 200, 100},
3566             { 200,-100},
3567             {-200, 100},
3568             {-200,-100}
3569         },{
3570             { 0.0017966305681649396,  0.00090436947663183841},
3571             { 0.0017966305681649396, -0.00090436947663183841},
3572             {-0.0017966305681649396,  0.00090436947663183841},
3573             {-0.0017966305681649396, -0.00090436947663183841}
3574         }
3575     },{
3576         "tmerc_s",
3577         "+proj=tmerc   +R=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3578         {
3579             { 2, 1},
3580             { 2,-1},
3581             {-2, 1},
3582             {-2,-1}
3583         },{
3584             { 223413.46640632232,  111769.14504059685},
3585             { 223413.46640632232, -111769.14504059685},
3586             {-223413.46640632208,  111769.14504059685},
3587             {-223413.46640632208, -111769.14504059685}
3588         },{
3589             { 200, 100},
3590             { 200,-100},
3591             {-200, 100},
3592             {-200,-100}
3593         },{
3594             { 0.0017904931097048034,  0.00089524670602767842},
3595             { 0.0017904931097048034, -0.00089524670602767842},
3596             {-0.001790493109714345,   0.00089524670602767842},
3597             {-0.001790493109714345,  -0.00089524670602767842}
3598         }
3599     },{
3600         "tpeqd_e",
3601         "+proj=tpeqd   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5",
3602         {
3603             { 2, 1},
3604             { 2,-1},
3605             {-2, 1},
3606             {-2,-1}
3607         },{
3608             {-27750.758831679042,  -222599.40369177726},
3609             {-250434.93702403645,  -222655.93819326628},
3610             {-27750.758831679042,  222599.40369177726},
3611             {-250434.93702403645,  222655.93819326628}
3612         },{
3613             { 200, 100},
3614             { 200,-100},
3615             {-200, 100},
3616             {-200,-100}
3617         },{
3618             {-0.00089855554821257374,  1.2517966304145272},
3619             {0.0008985555481998515,  1.2517966304145272},
3620             {-0.00089855431859741167,  1.2482033692781642},
3621             {0.00089855431859741167,  1.2482033692781642}
3622         }
3623     },{
3624         "tpeqd_s",
3625         "+proj=tpeqd   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3626         {
3627             { 2, 1},
3628             { 2,-1},
3629             {-2, 1},
3630             {-2,-1}
3631         },{
3632             {-27845.882978485075,  -223362.43069526015},
3633             {-251293.37876465076,  -223419.15898590829},
3634             {-27845.882978485075,  223362.43069526015},
3635             {-251293.37876465076,  223419.15898590829}
3636         },{
3637             { 200, 100},
3638             { 200,-100},
3639             {-200, 100},
3640             {-200,-100}
3641         },{
3642             {-0.00089548606640108474,  1.2517904929571837},
3643             {0.0008954860663883625,  1.2517904929571837},
3644             {-0.000895484845182587,  1.248209506737604},
3645             {0.00089548484516986475,  1.248209506737604}
3646         }
3647     },{
3648         "urm5",
3649         "+proj=urm5   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3650         {
3651             { 2, 1},
3652             { 2,-1},
3653             {-2, 1},
3654             {-2,-1}
3655         },{
3656             { 223393.6384339639,  111696.81878511712},
3657             { 223393.6384339639, -111696.81878511712},
3658             {-223393.6384339639,  111696.81878511712},
3659             {-223393.6384339639, -111696.81878511712}
3660         },
3661         {},{{HUGE_VAL, HUGE_VAL}}
3662     },{
3663         "urmfps",
3664         "+proj=urmfps   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3665         {
3666             { 2, 1},
3667             { 2,-1},
3668             {-2, 1},
3669             {-2,-1}
3670         },{
3671             { 196001.70813419219,  127306.84332999329},
3672             { 196001.70813419219, -127306.84332999329},
3673             {-196001.70813419219,  127306.84332999329},
3674             {-196001.70813419219, -127306.84332999329}
3675         },{
3676             { 200, 100},
3677             { 200,-100},
3678             {-200, 100},
3679             {-200,-100}
3680         },{
3681             { 0.002040720839642371,  0.00078547381740438178},
3682             { 0.002040720839642371, -0.00078547381740438178},
3683             {-0.002040720839642371,  0.00078547381740438178},
3684             {-0.002040720839642371, -0.00078547381740438178}
3685         }
3686     },{
3687         "wag1",
3688         "+proj=wag1   +a=6400000    +lat_1=0.5 +lat_2=2 +n=0.5",
3689         {
3690             { 2, 1},
3691             { 2,-1},
3692             {-2, 1},
3693             {-2,-1}
3694         },{
3695             { 195986.78156115755,  127310.07506065986},
3696             { 195986.78156115755, -127310.07506065986},
3697             {-195986.78156115755,  127310.07506065986},
3698             {-195986.78156115755, -127310.07506065986}
3699         },{
3700             { 200, 100},
3701             { 200,-100},
3702             {-200, 100},
3703             {-200,-100}
3704         },{
3705             { 0.002040720839738254,  0.00078547381739207999},
3706             { 0.002040720839738254, -0.00078547381739207999},
3707             {-0.002040720839738254,  0.00078547381739207999},
3708             {-0.002040720839738254, -0.00078547381739207999}
3709         }
3710     },{
3711         "vandg",
3712         "+proj=vandg   +a=6400000    +lat_1=0.5 +lat_2=2",
3713         {
3714             { 2, 1},
3715             { 2,-1},
3716             {-2, 1},
3717             {-2,-1}
3718         },{
3719             { 223395.24954340671,  111704.59663367498},
3720             { 223395.24954340671, -111704.59663367498},
3721             {-223395.24954340671,  111704.59663367498},
3722             {-223395.24954340671, -111704.59663367498}
3723         },{
3724             { 200, 100},
3725             { 200,-100},
3726             {-200, 100},
3727             {-200,-100}
3728         },{
3729             { 0.001790493715929761,  0.00089524655486993867},
3730             { 0.001790493715929761, -0.00089524655486993867},
3731             {-0.001790493715929761,  0.00089524655486993867},
3732             {-0.001790493715929761, -0.00089524655486993867}
3733         }
3734     },{
3735         "vandg2",
3736         "+proj=vandg2   +a=6400000    +lat_1=0.5 +lat_2=2",
3737         {
3738             { 2, 1},
3739             { 2,-1},
3740             {-2, 1},
3741             {-2,-1}
3742         },{
3743             { 223395.24785043663,  111718.49103722633},
3744             { 223395.24785043663, -111718.49103722633},
3745             {-223395.24785043663,  111718.49103722633},
3746             {-223395.24785043663, -111718.49103722633}
3747         },
3748         {},{{HUGE_VAL, HUGE_VAL}}
3749     },{
3750         "vandg3",
3751         "+proj=vandg3   +a=6400000    +lat_1=0.5 +lat_2=2",
3752         {
3753             { 2, 1},
3754             { 2,-1},
3755             {-2, 1},
3756             {-2,-1}
3757         },{
3758             { 223395.24955283134,  111704.51990442065},
3759             { 223395.24955283134, -111704.51990442065},
3760             {-223395.24955283134,  111704.51990442065},
3761             {-223395.24955283134, -111704.51990442065}
3762         },
3763         {},{{HUGE_VAL, HUGE_VAL}}
3764     },{
3765         "vandg4",
3766         "+proj=vandg4   +a=6400000    +lat_1=0.5 +lat_2=2",
3767         {
3768             { 2, 1},
3769             { 2,-1},
3770             {-2, 1},
3771             {-2,-1}
3772         },{
3773             { 223374.57729435508,  111701.19548415358 },
3774             { 223374.57729435508, -111701.19548415358 },
3775             {-223374.57729435508,  111701.19548415358 },
3776             {-223374.57729435508, -111701.19548415358 }
3777         },
3778         {},{{HUGE_VAL, HUGE_VAL}}
3779     },
3780     // vgridshift projection is not implemented in Boost.Geometry
3781     // and the Proj4 test is in a different format
3782     {
3783         "wag2",
3784         "+proj=wag2   +a=6400000  +lat_1=0.5 +lat_2=2",
3785         {
3786             { 2, 1},
3787             { 2,-1},
3788             {-2, 1},
3789             {-2,-1}
3790         },{
3791             { 206589.88809996162,   120778.04035754716},
3792             { 206589.88809996162,  -120778.04035754716},
3793             {-206589.88809996162,   120778.04035754716},
3794             {-206589.88809996162,  -120778.04035754716}
3795         },{
3796             { 200, 100},
3797             { 200,-100},
3798             {-200, 100},
3799             {-200,-100}
3800         },{
3801             { 0.0019360240367390709,   0.00082795765763814082},
3802             { 0.0019360240367390709,  -0.00082795765763814082},
3803             {-0.0019360240367390709,   0.00082795765763814082},
3804             {-0.0019360240367390709,  -0.00082795765763814082}
3805         }
3806     },{
3807         "wag3",
3808         "+proj=wag3   +a=6400000    +lat_1=0.5 +lat_2=2",
3809         {
3810             { 2, 1},
3811             { 2,-1},
3812             {-2, 1},
3813             {-2,-1}
3814         },{
3815             {223387.02171816575,  111701.07212763709},
3816             {223387.02171816575,  -111701.07212763709},
3817             {-223387.02171816575,  111701.07212763709},
3818             {-223387.02171816575,  -111701.07212763709}
3819         },{
3820             { 200, 100},
3821             { 200,-100},
3822             {-200, 100},
3823             {-200,-100}
3824         },{
3825             {0.001790493109880963,  0.00089524655489191132},
3826             {0.001790493109880963,  -0.00089524655489191132},
3827             {-0.001790493109880963,  0.00089524655489191132},
3828             {-0.001790493109880963,  -0.00089524655489191132}
3829         }
3830     },{
3831         "wag7",
3832         "+proj=wag7   +a=6400000    +lat_1=0.5 +lat_2=2",
3833         {
3834             { 2, 1},
3835             { 2,-1},
3836             {-2, 1},
3837             {-2,-1}
3838         },{
3839             { 198601.87695731167,  125637.0457141714},
3840             { 198601.87695731167, -125637.0457141714},
3841             {-198601.87695731167,  125637.0457141714},
3842             {-198601.87695731167, -125637.0457141714}
3843         },
3844         {},{{HUGE_VAL, HUGE_VAL}}
3845     },{
3846         "wink1",
3847         "+proj=wink1   +a=6400000    +lat_1=0.5 +lat_2=2",
3848         {
3849             { 2, 1},
3850             { 2,-1},
3851             {-2, 1},
3852             {-2,-1}
3853         },{
3854             { 223385.13164095284,  111701.07212763709},
3855             { 223385.13164095284,  -111701.07212763709},
3856             {-223385.13164095284,  111701.07212763709},
3857             {-223385.13164095284,  -111701.07212763709}
3858         },{
3859             { 200, 100},
3860             { 200,-100},
3861             {-200, 100},
3862             {-200,-100}
3863         },{
3864             { 0.0017904931098931057,  0.00089524655489191132},
3865             { 0.0017904931098931057, -0.00089524655489191132},
3866             {-0.0017904931098931057,  0.00089524655489191132},
3867             {-0.0017904931098931057, -0.00089524655489191132}
3868         }
3869     },{
3870         "wink2",
3871         "+proj=wink2   +a=6400000    +lat_1=0.5 +lat_2=2",
3872         {
3873             { 2, 1},
3874             { 2,-1},
3875             {-2, 1},
3876             {-2,-1}
3877         },{
3878             { 223387.39643378611,  124752.03279744535},
3879             { 223387.39643378611, -124752.03279744535},
3880             {-223387.39643378611,  124752.03279744535},
3881             {-223387.39643378611, -124752.03279744535}
3882         },
3883         {},{{HUGE_VAL, HUGE_VAL}}
3884     },{
3885         "etmerc",
3886         "+proj=etmerc   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5 +zone=30",
3887         {
3888             { 2, 1},
3889             { 2,-1},
3890             {-2, 1},
3891             {-2,-1}
3892         },{
3893             {222650.79679758562,   110642.22941193319},
3894             {222650.79679758562,  -110642.22941193319},
3895             {-222650.79679758562,  110642.22941193319},
3896             {-222650.79679758562, -110642.22941193319}
3897         },{
3898             { 200, 100},
3899             { 200,-100},
3900             {-200, 100},
3901             {-200,-100}
3902         },{
3903             {0.0017966305681649398,   0.00090436947663183873},
3904             {0.0017966305681649398,  -0.00090436947663183873},
3905             {-0.0017966305681649398,  0.00090436947663183873},
3906             {-0.0017966305681649398, -0.00090436947663183873}
3907         }
3908     },{
3909         "utm",
3910         "+proj=utm   +ellps=GRS80  +lat_1=0.5 +lat_2=2 +n=0.5 +zone=30",
3911         {
3912             { 2, 1},
3913             { 2,-1},
3914             {-2, 1},
3915             {-2,-1}
3916         },{
3917             {1057002.4054912981,  110955.14117594929},
3918             {1057002.4054912981, -110955.14117594929},
3919             {611263.81227890507,  110547.10569680421},
3920             {611263.81227890507, -110547.10569680421}
3921         },{
3922             { 200, 100},
3923             { 200,-100},
3924             {-200, 100},
3925             {-200,-100}
3926         },{
3927             {-7.4869520833902357,  0.00090193980983462605},
3928             {-7.4869520833902357, -0.00090193980983462605},
3929             {-7.4905356820622613,  0.00090193535121489081},
3930             {-7.4905356820622613, -0.00090193535121489081}
3931         }
3932     }
3933 };
3934 
3935 #endif // BOOST_GEOMETRY_TEST_SRS_PROJECTION_SELFTEST_CASES_HPP
3936