Compare commits

...
151 Commits
Author SHA1 Message Date
Mike Taves 374fd7fd19 ReadTheDocs: update output directory for artefacts, other updates 2023-01-25 21:50:33 +13:00
Mike Taves 004ba63286 Improve docs for 6.0 2023-01-25 01:05:07 +13:00
Mike Taves f615877dec Implement ReadTheDocs for 6.0, disable other CI workflows (#3583) 2023-01-22 17:53:03 +13:00
Kristian Evers 7432e75e30 [Backport 6.0] Doc: update quickstart with PROJ 6 API + add PROJ 4->6 migration guide (fixes #1403) (#1450)
[Backport 6.0] Doc: update quickstart with PROJ 6 API + add PROJ 4->6 migration guide (fixes #1403)
2019-05-01 20:51:07 +02:00
Even Rouault 798eaa9b0d Fix doc build on Travis OSX
Latest breathe 4.13.0 no longer work with sphinx 1.8.5 / Pyhon 2,
so force use 4.12.0 for now.

See
https://travis-ci.com/OSGeo/proj.4/jobs/194629602
https://github.com/michaeljones/breathe/issues/431
2019-04-22 18:02:31 +02:00
Kristian Evers 3ff977b659 Docs: Update link to Dutch grid files
Closes #1435
2019-04-20 16:37:21 +02:00
Even Rouault 8c149fa959 Doc: add a PROJ 4 -> 6 migration (fixes #1407) 2019-04-19 21:23:35 +00:00
Even Rouault a5a0f4b36a Doc: update quickstart with PROJ 6 API (fixes #1403) 2019-04-19 20:55:56 +00:00
Even Rouault ed20821eb4 Improve doc of proj_coordoperation_get_towgs84_values() (fixes #1430) 2019-04-18 11:06:58 +02:00
Even Rouault 7c36ca497d Merge pull request #1421 from OSGeo/backport-1420-to-6.0
[Backport 6.0] DOC: add sphinx links to reference in dev quickstart
2019-04-11 12:45:50 +02:00
Joris Van den Bossche f7f6b9760e convert remaining links + reflow text 2019-04-10 07:40:04 +00:00
Joris Van den Bossche 1940d63aea DOC: add sphinx links to reference in dev quickstart 2019-04-10 07:09:45 +00:00
Kristian Evers ba57407aa9 Merge pull request #1419 from OSGeo/backport-1413-to-6.0
[Backport 6.0] Add Cirrus CI with FreeBSD
2019-04-10 06:58:25 +02:00
Kristian Evers b6bacc6404 Merge pull request #1418 from OSGeo/backport-1417-to-6.0
[Backport 6.0] DOC: update line numbers in dev quickstart example
2019-04-09 22:34:43 +02:00
Kristian Evers ee46eee200 Merge pull request #1416 from OSGeo/backport-1414-to-6.0
[Backport 6.0] Docs: fix typo in vertical grid shifts
2019-04-09 21:43:08 +02:00
Joris Van den Bossche 9e590916a2 DOC: update line numbers in dev quickstart example 2019-04-09 13:08:32 +00:00
Andrew Hardin d8181fb673 Change egm96_16 to egm96_15. 2019-04-08 20:18:00 +00:00
Even Rouault b72cf59b3c Add Cirrus CI with FreeBSD 2019-04-07 19:02:01 +00:00
Even Rouault e87b374435 Merge pull request #1404 from OSGeo/backport-1401-to-6.0
[Backport 6.0] Ossfuzz 14003 14010
2019-04-02 13:10:49 +02:00
Kristian Evers 5d81543d82 Docs: Clarify that angular in proj_angular_input/output means radians 2019-04-02 13:00:42 +02:00
Kristian Evers 3bc7bec328 Merge pull request #1402 from OSGeo/backport-1385-to-6.0
[Backport 6.0] Doc axis ordering
2019-04-02 12:00:38 +02:00
Even Rouault 6f24ff64af bonne: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14010
Credit to OSS Fuzz
2019-04-01 20:18:18 +00:00
Even Rouault 1e85de9700 pj_gauss_ini(): fix division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=14003
Credit to OSS Fuzz
2019-04-01 20:06:03 +00:00
Even Rouault 50d646decf Merge pull request #1400 from OSGeo/backport-1396-to-6.0
[Backport 6.0] Ossfuzz 13947 13948
2019-04-01 19:38:45 +02:00
Even Rouault c29397d3cf Merge pull request #1399 from OSGeo/backport-1394-to-6.0
[Backport 6.0] createOperations(): improve behaviour with input CRS from WKT that lacks intermediate IDs (fixes #1343)
2019-04-01 19:03:32 +02:00
Even Rouault bb514d8952 CI: change pattern for skipped branches of backports 2019-04-01 15:49:19 +02:00
Even Rouault 969c654c2d tpeqd: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13948
Credit to OSS Fuzz
2019-03-29 22:31:57 +00:00
Even Rouault da1940a608 unitconvert: prevent division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13947
Credit to OSS Fuzz
2019-03-29 22:13:55 +00:00
Even Rouault 6b5c397707 Merge pull request #1393 from OSGeo/backport-1390-on-6.0
Backport #1390 on 6.0: createOperations(): improve BoundCRS<-->non-bound-CRS case
2019-03-29 13:34:49 +01:00
Even Rouault fc9809597b createOperations(): improve behaviour with input CRS from WKT that lacks intermediate IDs (fixes #1343) 2019-03-29 12:30:57 +00:00
Kristian Evers a42cfd4d82 Merge pull request #1389 from OSGeo/backport-1386-on-6.0
Backport #1386 on 6.0: Doc: document --identify switch of projinfo (fixes #1332)
2019-03-28 21:01:45 +01:00
Kristian Evers a73e420c04 Doc: Add FAQ question about inconsistent axis ordering 2019-03-28 20:00:22 +00:00
Even Rouault 45ce4a8c78 createOperations(): improve BoundCRS<-->non-bound-CRS case
Fixes #1388
Typically helps for
projinfo -s "+proj=longlat +ellps=GRS80 +towgs84=1,2,3 +type=crs" -t EPSG:4258
by researching operations from the pivot WGS84 implied by the towgs84 clause
to EPSG:4258.
2019-03-28 16:33:26 +00:00
Kristian Evers ef9c5b7da1 Merge pull request #1383 from OSGeo/backport-1380-on-6.0
Backport #1380 on 6.0: ocea: fix behaviour when +alpha is specified
2019-03-28 14:23:54 +01:00
Kristian Evers 7e415a7ccb Docs: Clarify axis ordering used in proj_trans_generic() 2019-03-28 13:15:37 +00:00
Even Rouault 5105ca3445 Doc: document --identify switch of projinfo (fixes #1332) 2019-03-28 12:45:17 +00:00
Even Rouault 053c0ddda5 Merge pull request #1382 from OSGeo/backport-1381-on-6.0
Backport #1381 on 6.0: Objet -> Object
2019-03-28 11:59:19 +01:00
Even Rouault 68bf63cc73 ocea: fix behaviour when +alpha is specified
The one-point case was completely broken with lat_0 being ignored.
I've fixed that, and also modified the alpha orientation, so that the angle
corresponds to the one of the 2 point case when going from point 1 to point 2,
similarly to what omerc does.
This was found rather experimentaly with the added test cases that try to
find equivalence between 1-point and 2-point cases.

Fixes #1379
and adresses https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13930
2019-03-28 10:58:59 +00:00
Nyall Dawson 29c20f5240 Objet -> Object 2019-03-28 00:44:58 +00:00
Even Rouault a268bf4e7e Merge pull request #1378 from OSGeo/backport-1376-on-6.0
Backport #1376 on 6.0: Ossfuzz 13894 follow up
2019-03-27 11:51:48 +01:00
Kristian Evers c5772cf1b7 Merge pull request #1375 from OSGeo/backport-1356-on-6.0
Backport #1356 on 6.0: pj_strerrno: enable system error messages
2019-03-27 07:33:17 +01:00
Kristian Evers 05e2e52c13 Merge pull request #1374 from OSGeo/backport-1349-on-6.0
Backport #1349 on 6.0: Doc: Be consistent in use of +opts
2019-03-27 07:33:03 +01:00
Even Rouault 3e85ebc697 misrsom inverse: avoid division by zero
Fixes testcase https://oss-fuzz.com/testcase-detail/5768588923764736
of https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13894
2019-03-26 21:55:56 +00:00
Even Rouault fb95a6ff7b omerc inverse: fix division
Test case https://oss-fuzz.com/testcase-detail/5739351578771456 of
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13894
Credit to OSS Fuzz
2019-03-26 14:49:42 +00:00
Even Rouault 4c5476f158 Merge pull request #1372 from OSGeo/backport-1368-on-6.0
Backport #1368 on 6.0: Database: update to EPSG v9.6.1, IGNF v3.0.3, ESRI 10.7.0 and add operation_version column
2019-03-26 15:30:44 +01:00
Even Rouault 5f8354b323 Merge pull request #1371 from OSGeo/backport-1369-on-6.0
Backport #1369 on 6.0: Grid related fixes
2019-03-26 14:39:06 +01:00
Even Rouault 3467f8c51d exportToPROJString(): fix for naptrans2008.gtx from EPSG:7001 coordinate operation 2019-03-25 19:54:29 +00:00
Even Rouault fb029ef8c2 lookForGridInfo(): correctly return that a grid is present, if present on the file system, but not in the database 2019-03-25 19:51:56 +00:00
Chris Mayo 9be0245b01 pj_strerrno: enable system error messages
HAVE_STRERROR is defined in proj_config.h.
2019-03-25 18:12:03 +00:00
Even Rouault 6f180b388b Database: add link from RAF18.tac to RAF18.gtx 2019-03-25 17:29:39 +00:00
Even Rouault 99d5a4d818 Database: update ESRI to ArcMap 10.7.0 2019-03-25 16:31:15 +00:00
Even Rouault 2af63e0748 Database: add operation_version column to coordinate operation tables 2019-03-25 16:00:04 +00:00
Even Rouault b3e82bdb20 Database: update to IGNF v3.0.3 2019-03-25 15:54:28 +00:00
Even Rouault c22a039007 Database: update to EPSG v9.6.1 2019-03-25 14:35:34 +00:00
Even Rouault 136e6748d9 Merge pull request #1364 from OSGeo/backport-1360-on-6.0
Backport #1360 on 6.0: WKT2 parser: update to OGC 18-010r6
2019-03-25 14:00:53 +01:00
Even Rouault 6552be10ae Merge pull request #1363 from OSGeo/backport-1359-on-6.0
Backport #1359 on 6.0: Fix ossfuzz 13892, 13893, 13894, 13895
2019-03-25 14:00:34 +01:00
Even Rouault 68e5662309 WKT2_2018: always export ID of SOURCECRS/TARGETCRS and STEPs
even if there is one on upper node

This is a particular logic allowed by paragraph 7.3.3 Identifier
of OGC 18-010r6
2019-03-25 12:56:43 +00:00
Even Rouault 78fc3263ed WKT2_2018: always export ID in base crs node, even if there is one on upper node
This is a particular logic allowed by paragraph 7.3.3 Identifier
of OGC 18-010r6
2019-03-25 12:05:40 +00:00
Even Rouault 6b99f76ccd WKT2_2018: export ID in base crs node, when there is none on top of upper node
This is the standard logic, that is now possible since ID is
allowed in BASEGEOGCRS and similar node
2019-03-25 11:44:35 +00:00
Even Rouault b900758f13 crs.cpp: remove non-intented (harmless here) pass by reference of a pointer 2019-03-25 11:44:34 +00:00
Even Rouault 9326a0dca6 test: test exporting ENSEMBLE with ID in MEMBER 2019-03-25 11:22:49 +00:00
Kristian Evers 128421dd50 Merge pull request #1362 from OSGeo/backport-1358-on-6.0
Backport #1358 on 6.0: Fix ossfuzz 13891
2019-03-25 08:32:23 +01:00
Even Rouault 032c5efca9 WKT2 parser: update to OGC 18-010r6
- Allow ID[] in base CRS of Derived CRS
- Allow VERSION[] in non-conversion coordinate operations
- Use VERSION[] to set operationVersion member of CoordinateOperation
- Export operationVersion in WKT2:2018
2019-03-24 19:40:09 +00:00
Even Rouault 3b2989deaf stere: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13895
Credit to OSS Fuzz
2019-03-24 16:20:51 +00:00
Kristian Evers 594fd7bbc7 Merge pull request #1357 from OSGeo/backport-1355-on-6.0
Backport #1355 on 6.0: Make cs2cs support 4D coordinates.
2019-03-24 17:12:43 +01:00
Even Rouault af35e10862 vandg inverse: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13894
Credit to OSS Fuzz
2019-03-24 16:11:55 +00:00
Even Rouault 5262710d4b tmerc inverse: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13893
Credit to OSS Fuzz
2019-03-24 16:05:11 +00:00
Even Rouault a733c85e42 lcc: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13892
Credit to OSS Fuzz
2019-03-24 15:50:52 +00:00
Even Rouault c3b6c65f96 urm5: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13891
Credit to OSS Fuzz
2019-03-24 15:06:25 +00:00
Even Rouault c5dd4dcdd7 strerrno.cpp: fix inverted messages for PJD_ERR_LAT_1_OR_2_ZERO_OR_90 and PJD_ERR_LAT_0_OR_ALPHA_EQ_90 2019-03-24 15:06:06 +00:00
Chris Mayo a10fbc25dc Doc: consistently use +opt and brackets
+opt represents one parameter. An ellipsis indicates additional
instances of the previous parameter may be given.

Spaces are used between parameters and before an ellipsis, not purely to
format brackets. See man(1) SYNOPSIS conventions.
2019-03-24 11:56:35 +00:00
Kristian Evers 1838b88020 Make cs2cs support 4D coordinates.
This is a bit of a hack, 4D coordinates *will* be written to STDOUT
but the output format speficied with -f is not respected for the
t component, rather it is forward verbatim from the input.

Fixes #1354
2019-03-24 11:08:35 +00:00
Kristian Evers 5eaed34206 Merge pull request #1353 from OSGeo/backport-1352-on-6.0
Backport #1352 on 6.0: Fix GCC 9 warning about useless std::move()
2019-03-24 09:36:30 +01:00
Even Rouault 1733f04ff0 Fix GCC 9 warning about useless std::move() 2019-03-23 20:29:22 +00:00
Chris Mayo 9ed477f3fe Build: install projinfo(1) with CMake 2019-03-23 09:17:31 +01:00
Kristian Evers 6a4c5975c2 Merge pull request #1346 from kbevers/backport-system-errmsg-fix
[Backport] Build: automatically enable system error messages
2019-03-22 20:59:04 +01:00
Even Rouault 7f31b7b08d Really fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2390 2019-03-22 16:12:08 +01:00
Chris Mayo 3182dfb021 Build: automatically enable system error messages
Define HAVE_STRERROR during configuration.

Before:
$ cs2cs +proj=latlong +to +proj=latlong dummy
<cs2cs>:
Sys errno: 2: <system mess. texts unavail.>
dummy

After:
$ cs2cs +proj=latlong +to +proj=latlong dummy
<cs2cs>:
Sys errno: 2: No such file or directory
dummy
2019-03-22 13:00:46 +01:00
Even Rouault 371cf6dd5d Merge pull request #1342 from OSGeo/backport-1340-on-6.0
Backport #1340 on 6.0
2019-03-21 16:03:31 +01:00
Even Rouault 493806b4bb Merge pull request #1339 from OSGeo/backport-1335-on-6.0
Backport #1335 on 6.0
2019-03-21 13:52:43 +01:00
Even Rouault ba2521c822 aea: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13827
Credit to OSS Fuzz
2019-03-21 11:49:31 +00:00
Even Rouault 9fe407c96c lcc: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12935
Credit to OSS Fuzz
2019-03-20 21:22:38 +00:00
Even Rouault 7d108036dc isea: detect various int overflows and div by zero
Fixes
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2199
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2241
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2390
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=7674
Credit to OSS Fuzz
2019-03-20 18:58:25 +00:00
Even Rouault 0968986ab8 ob_tran: detect potential recursion
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12266
Credit to OSS Fuzz
2019-03-20 18:58:25 +00:00
Even Rouault 3a5ccffe86 pj_calc_ellipsoid_params(): reject f=1
To avoid division by zero of b.
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13830
Credit to OSS Fuzz
2019-03-20 17:25:46 +00:00
Even Rouault b702580dc7 laea: error out if |lat_0|>90
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13829
Credit to OSS Fuzz
2019-03-20 17:13:12 +00:00
Even Rouault 4448b376be imw_p: prevent division by zero in inverse path
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13828
Credit to OSS Fuzz
2019-03-20 17:07:21 +00:00
Even Rouault a3976e657c CI: avoid CI to run on backport branches 2019-03-20 10:55:13 +00:00
Even Rouault bb81799d45 sterea: prevent division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13790
Credit to OSS Fuzz
2019-03-20 10:46:39 +00:00
Even Rouault d92832266a Merge pull request #1334 from OSGeo/backport-1333-on-6.0
Backport #1333 on 6.0
2019-03-20 11:42:39 +01:00
Even Rouault 32a64dbbf0 proj_create_crs_to_crs: better deal with coordinates outside of bbox (fixes #1329)
In case several coordinate operations are returned for a CRS to CRS transformation,
we currently determine the one to use by selecting the first operation whose
bounding box contains the input point.

This commit adds a fallback case where after doing that first iteration and finding
no appropriate candidate, we try again by selecting the first operation available
that does not involve grid based transformations.
2019-03-19 11:56:33 +00:00
Even Rouault aa98cb8255 Doc: impove doc about OGC URN 2019-03-19 11:12:04 +01:00
Even Rouault 9398e9988d Database: fix import of deprecated ellipsoid and geodetic_datum from ESRI database 2019-03-18 12:16:17 +01:00
Even Rouault aab0e7fcb4 createOperations(): fix nadgrids -> nadgrids+geoidgrids 2019-03-17 09:10:21 +01:00
Even Rouault 611cce0581 createOperations(): fix nadgrids+geoidgrids -> nadgrids+geoidgrids 2019-03-17 09:10:13 +01:00
Even Rouault fc363a5d85 createOperation(): fix geocent <--> nadgrids+geoidgrids case (fixes #1323) 2019-03-17 09:10:04 +01:00
Kristian Evers f8d48e5418 Remove outdated questions from FAQ
More or less all old questions from the FAQ has been removed and
replaced by new questions that align better with the current state of
the project.
2019-03-17 09:08:09 +01:00
Kristian Evers 6517181ffd Make proper reference to 'gie --list' 2019-03-17 09:07:59 +01:00
Kristian Evers edc13ed99a Fix bad rst formatting 2019-03-17 09:07:51 +01:00
Kristian Evers b41df6d128 Add projinfo description to README 2019-03-17 09:07:46 +01:00
Kristian Evers 312ad94348 Improve formatting of program references on apps index 2019-03-17 09:07:40 +01:00
Even Rouault 33abdeb601 ocea: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11699
Credit to OSS Fuzz
2019-03-17 08:12:01 +01:00
Even Rouault b5fdc11e2f ocea: code cleanup to use Snyder's conventions 2019-03-17 08:11:54 +01:00
Even Rouault 361457c15a Helmert: avoid potential division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11893
Credit to OSS Fuzz
2019-03-17 08:11:34 +01:00
Even Rouault a238f43acc sterea: fix lat_0 = -90
A division by zero caused NaN values to be returned.
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12062
Credit to OSS Fuzz
2019-03-17 08:11:26 +01:00
Even Rouault ea3f357c83 Hammer: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12799
Credit to OSS Fuzz
2019-03-17 08:11:20 +01:00
Even Rouault b146ce4dba ellps_spherification(): detect invalid semi-major axis value
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12909
Credit to OSS Fuzz
2019-03-17 08:11:09 +01:00
Even Rouault d6c8e820ec aea: validate |lat_1| and |lat_2| <= 90
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13028
Credit to OSS Fuzz
2019-03-17 08:10:57 +01:00
Kristian Evers 5d86735f67 Use 1st eccentricity instead of 2nd eccentricity
By mistake the second eccentricity was used in a few places in the
Molodensky transform. According to the literature the first eccentricity
should always be used in the eccentricity.

This only affects the output slightly. Reported test coordinates
differed by less than a millimeter.

Fixes #1321
2019-03-16 14:04:13 +01:00
Even Rouault ad57355dd5 Run scripts/reformat_cpp.sh 2019-03-16 13:34:57 +01:00
Even Rouault a8cb44cd0e Fix doc generation with Breathe 4.12.0
Breathe 4.12.0 (as pulled by MacOSX builds such as
https://travis-ci.com/OSGeo/proj.4/jobs/185395222)
does not seem to like default initialization in documented C++ structs (regression/bug)

/Users/travis/build/OSGeo/proj.4/docs/source/development/reference/cpp/io.rst:6:Parsing of expression failed. Using fallback parser. Error was:
Error in postfix expression, expected primary expression or type.
If primary expression:
  Invalid definition: Expected identifier in nested name. [error at 67]
    std::string osgeo::proj::io::AuthorityFactory::CRSInfo::authName = {}
    -------------------------------------------------------------------^
If type:
  Invalid definition: Expected identifier in nested name. [error at 67]
    std::string osgeo::proj::io::AuthorityFactory::CRSInfo::authName = {}
    -------------------------------------------------------------------^
2019-03-16 12:32:45 +01:00
Even Rouault 1086ad8ad5 Molodensky: avoid division by zero
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13069
Credit to OSS Fuzz
2019-03-15 11:44:49 +01:00
Even Rouault 03da77ddde Reject eccentricity values larger than one
Valid eccentricity should be between 0 (included) or 1 (excluded)

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13665
Credit to OSS Fuzz
2019-03-15 06:47:00 +01:00
Kristian Evers a944ed7e78 Doc: State that +n is a required for param for urm5 2019-03-14 23:05:53 +01:00
Sean Warren 85c5148464 Fix cross-compilation detection 2019-03-12 09:31:08 +01:00
Even Rouault 3cc72806fa Doc: fix typo in ob_tran 2019-03-11 17:02:37 +01:00
Kristian Evers 3bc4a6a660 Make gie return non-zero exit code when file can't be opened 2019-03-06 22:01:46 +01:00
Mike Taves 8761a476f0 Further corrections to BibTeX
- Use names as published
 - Change Tobler2017 -> Tobler2018
 - Change EPSGGuidanceNumber7Part2 -> IOGP2018
2019-03-03 13:10:43 +01:00
Mike Taves c0e12bc770 Configure bibstyle to abbreviate names 2019-03-03 13:10:31 +01:00
Kristian Evers 7d79ac5dc4 Sphinxify formatting of recent news entry 2019-03-03 11:49:48 +01:00
Even Rouault 659771020b Reformat to avoid error on PDF generation (fixes #1304) 2019-03-01 21:43:00 +01:00
Even Rouault 693d2a6b5e Doc: fix various warnings/errors raised by Sphinx 2019-03-01 19:33:06 +01:00
Dan Baston c5f12d735a Minor doc edits 2019-03-01 19:29:40 +01:00
Kristian Evers 70753b3f85 Fix typos in docs/source/news.rst 2019-03-01 19:23:03 +01:00
Kristian Evers 2eec1e21a0 Update docs and travis for 6.0.0 release 2019-03-01 19:13:44 +01:00
Kristian Evers a2aab5e44f Merge branch '6.0' of https://github.com/OSGeo/proj.4 into 6.0 2019-03-01 18:46:06 +01:00
Even Rouault b4b7d02dea Merge branch 'master' into 6.0 2019-03-01 15:41:38 +01:00
Elliott Sales de Andrade 32e84db2c9 Fix default context fallback in proj_log_func. 2019-02-27 15:08:21 +01:00
Elliott Sales de Andrade ded165a048 Fix null dereference warning.
Counter-intuitively, this means removing checks for nullptr. The
compiler sees these checks and thinks the one remaining dereference is
missing a check. However, since pj_get_default_ctx cannot return
nullptr, these tests are redundant.
2019-02-27 15:08:20 +01:00
Even Rouault 92e61ee20f Travis/Appveyor: use proj-datumgrid-1.8 2019-02-27 15:08:20 +01:00
Even Rouault aaba41d908 data/Makefile.am: remove trailing whitespace to suppress autogen.sh warning 2019-02-27 11:04:39 +01:00
Even Rouault 5eb8b4fb69 configure.ac: replace '==' by '=' to avoid Bashism (patch by Greg Troxel) 2019-02-27 11:04:38 +01:00
Even Rouault 53e93c2da6 Fix build issues on Solaris 2019-02-26 22:51:12 +01:00
Even Rouault 79b8794d69 data/Makefile.am: fix to avoid issue on Solaris 2019-02-26 22:51:12 +01:00
Even Rouault 4adaf389d8 Rename internal constant to avoid conflict with macro in Solaris system headers 2019-02-26 22:51:12 +01:00
Even Rouault 919f143796 io.cpp: cast to 'unsigned char' before isspace() to avoid undefined behaviour, for example on netBSD 8 2019-02-26 22:51:11 +01:00
Even Rouault ab404bb18c builtins.gie: relax toleranc on +proj=tpeqd for netBSD8/g++-5.5/amd64 2019-02-26 22:51:11 +01:00
Even Rouault be5e719260 mutex.cpp: remove _XOPEN_SOURCE definition that causes compilation problem on netBSD 8 and is useless on Linux 2019-02-26 22:51:11 +01:00
Kristian Evers 5284dfd3c7 Merge remote-tracking branch 'osgeo/master' into 6.0 2019-02-26 22:07:58 +01:00
Kristian Evers c40c91610e Update NEWS with latest contributors [skip ci] 2019-02-25 19:36:05 +01:00
Even Rouault 88717da6ec NEWS: update for latest Robinson fix [ci skip] 2019-02-25 11:27:06 +01:00
Even Rouault 0a9006e593 Doc: fix plotdefs.json, and aea and lcc descriptions, to take into account removal of proj_def.dat 2019-02-24 20:30:49 +01:00
Kristian Evers 78e71721da Merge remote-tracking branch 'osgeo/master' into 6.0 2019-02-24 20:01:59 +01:00
Thomas Knudsen a5bef579e4 Some improvements to the docs for tmerc and omerc (#1281) 2019-02-24 14:22:14 +01:00
Kristian Evers 75a54f4f6c Merge remote-tracking branch 'osgeo/master' into 6.0 2019-02-24 14:06:27 +01:00
Even Rouault 135612cf90 ParameterValue::_exportToWKT(): fix null pointer dereference with -D_GLIBCXX_ASSERTIONS on WKT with PARAMETERFILE (fixes #1290) 2019-02-24 12:46:03 +01:00
Even Rouault 8c8b2ecee7 jniproj.cpp: fix compiler warning 2019-02-24 12:46:03 +01:00
Even Rouault ad196087b3 .travis.yml: add build with g++-7 and -D_GLIBCXX_ASSERTIONS (refs #1290) 2019-02-24 12:46:03 +01:00
Bas Couwenberg 159e500be0 Fix spelling errors.
* specfied -> specified
2019-02-23 12:42:23 +01:00
Even Rouault c19a181614 proj.db: update to EPSG 9.6.0
Minor update w.r.t 9.5.5 that adds a few new coordinate operations.
2019-02-22 19:18:45 +01:00
Mike Taves d2541557e4 CMake warning about second proj_config.h 2019-02-22 13:04:42 +01:00
137 changed files with 9370 additions and 6732 deletions
+2
View File
@@ -98,6 +98,8 @@ install_manifest.txt
tmp_breathe
/docs/.doxygen_up_to_date
/docs/build
/docs/plot/images
/latex
# m4
m4/libtool.m4
+50
View File
@@ -0,0 +1,50 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
# Required
version: 2
build:
os: "ubuntu-22.04"
tools:
python: "mambaforge-4.10"
jobs:
post_checkout:
# Cancel building pull requests when there aren't changed in the docs directory or YAML file.
# You can add any other files or directories that you'd like here as well,
# like your docs requirements file, or other files that will change your docs build.
#
# If there are no changes (git diff exits with 0) we force the command to return with 183.
# This is a special exit code on Read the Docs that will cancel the build immediately.
- |
if [ "$READTHEDOCS_VERSION_TYPE" = "external" ] && git diff --quiet origin/6.0 -- docs/ .readthedocs.yaml;
then
exit 183;
fi
- (git --no-pager log --pretty="tformat:%s -- %b" -1 | grep -viq "skip ci") || exit 183
pre_build:
- ./docs/rtd/pre_build.sh
- ./scripts/doxygen.sh
- ./docs/rtd/plot.sh
post_build:
- ./docs/rtd/post_build.sh
apt_packages:
- cmake
- ninja-build
- g++
- sqlite3
- libsqlite3-dev
formats:
- pdf
- epub
conda:
environment: docs/environment.yml
sphinx:
configuration: docs/source/conf.py
fail_on_warning: true
+1 -1
View File
@@ -27,7 +27,7 @@ The following command line utilities are included in the PROJ package:
- geod, for geodesic (great circle) computations.
- cct, for generic Coordinate Conversions and Transformations.
- gie, the Geospatial Integrity Investigation Environment.
- projinfo, for geodetic object and coordinate operation queries
## Installation
### Build dependencies
+6
View File
@@ -4,6 +4,12 @@
# be relocated.)
file(RELATIVE_PATH PROJECT_ROOT_DIR ${CMAKE_INSTALL_PREFIX}/${CMAKECONFIGDIR} ${CMAKE_INSTALL_PREFIX})
if (CMAKE_CROSSCOMPILING)
set (CMAKE_CROSSCOMPILING_STR "ON")
else ()
set (CMAKE_CROSSCOMPILING_STR "OFF")
endif ()
string(TOLOWER "${PROJECT_NAME}" PROJECT_NAME_LOWER)
configure_file (project-config.cmake.in project-config.cmake @ONLY)
configure_file (project-config-version.cmake.in
+2 -1
View File
@@ -24,7 +24,8 @@ check_include_files (sys/types.h HAVE_SYS_TYPES_H)
check_include_files (unistd.h HAVE_UNISTD_H)
check_include_files("stdlib.h;stdarg.h;string.h;float.h" STDC_HEADERS)
CHECK_FUNCTION_EXISTS(localeconv HAVE_LOCALECONV)
check_function_exists(localeconv HAVE_LOCALECONV)
check_function_exists(strerror HAVE_STRERROR)
# check libm need on unix
check_library_exists(m ceil "" HAVE_LIBM)
+3
View File
@@ -22,6 +22,9 @@
/* Define to 1 if you have the <stdlib.h> header file. */
#cmakedefine HAVE_STDLIB_H 1
/* Define to 1 if you have the `strerror' function. */
#cmakedefine HAVE_STRERROR 1
/* Define to 1 if you have the <strings.h> header file. */
#cmakedefine HAVE_STRINGS_H 1
+9 -1
View File
@@ -5,6 +5,12 @@ set (PACKAGE_VERSION_MAJOR "@PROJ_VERSION_MAJOR@")
set (PACKAGE_VERSION_MINOR "@PROJ_VERSION_MINOR@")
set (PACKAGE_VERSION_PATCH "@PROJ_VERSION_PATCH@")
if (CMAKE_CROSSCOMPILING)
set (CMAKE_CROSSCOMPILING_STR "ON")
else ()
set (CMAKE_CROSSCOMPILING_STR "OFF")
endif ()
if (NOT PACKAGE_FIND_NAME STREQUAL "@PROJECT_NAME@")
# Check package name (in particular, because of the way cmake finds
# package config files, the capitalization could easily be "wrong").
@@ -22,7 +28,7 @@ elseif (MSVC AND NOT MSVC_VERSION STREQUAL "@MSVC_VERSION@")
# Reject if there's a mismatch in MSVC compiler versions
set (REASON "_MSC_VER = @MSVC_VERSION@")
set (PACKAGE_VERSION_UNSUITABLE TRUE)
elseif (NOT CMAKE_CROSSCOMPILING STREQUAL "@CMAKE_CROSSCOMPILING@")
elseif (NOT CMAKE_CROSSCOMPILING_STR STREQUAL "@CMAKE_CROSSCOMPILING_STR@")
# Reject if there's a mismatch in ${CMAKE_CROSSCOMPILING}
set (REASON "cross-compiling = @CMAKE_CROSSCOMPILING@")
set (PACKAGE_VERSION_UNSUITABLE TRUE)
@@ -46,3 +52,5 @@ endif ()
if (PACKAGE_VERSION_UNSUITABLE)
set (PACKAGE_VERSION "${PACKAGE_VERSION} (${REASON})")
endif ()
unset(CMAKE_CROSSCOMPILING_STR)
+1
View File
@@ -219,6 +219,7 @@ CFLAGS="$save_CFLAGS $C99_MATH"
AC_SEARCH_LIBS([sqrt], [m])
AC_CHECK_FUNC(localeconv, [AC_DEFINE(HAVE_LOCALECONV,1,[Define to 1 if you have localeconv])])
AC_CHECK_FUNCS([strerror])
dnl ---------------------------------------------------------------------------
dnl Check for JNI support.
+4
View File
@@ -424,6 +424,10 @@ INSERT INTO "alias_name" VALUES('vertical_datum','EPSG','1219','MVGC','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','1218','MGD-2000','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','1218','MTRF-2000','EPSG');
INSERT INTO "alias_name" VALUES('vertical_datum','EPSG','1205','Zero Depth Point (ZDP)','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','1223','RGWF96','EPSG');
INSERT INTO "alias_name" VALUES('vertical_datum','EPSG','1224','TWVD 2001','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','1225','CR14','EPSG');
INSERT INTO "alias_name" VALUES('vertical_datum','EPSG','1226','DACR52','EPSG');
INSERT INTO "alias_name" VALUES('vertical_datum','EPSG','1039','NZVD2009','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','1035','REGCAN95','EPSG');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6761','HTRS96','EPSG');
+5 -3
View File
@@ -2291,7 +2291,7 @@ INSERT INTO "area" VALUES('EPSG','3311','Africa - South Sudan and Sudan onshore'
INSERT INTO "area" VALUES('EPSG','3312','Suriname - onshore','Suriname - onshore.',1.83,6.06,-58.08,-53.95,0);
INSERT INTO "area" VALUES('EPSG','3313','Sweden - onshore','Sweden - onshore.',55.28,69.07,10.93,24.17,0);
INSERT INTO "area" VALUES('EPSG','3314','Syria - onshore','Syria - onshore.',32.31,37.3,35.61,42.38,0);
INSERT INTO "area" VALUES('EPSG','3315','Taiwan - onshore','Taiwan, Republic of China - onshore - Taiwan Island, Penghu (Pescadores) Islands.',21.87,25.34,119.25,122.06,0);
INSERT INTO "area" VALUES('EPSG','3315','Taiwan - onshore - mainland and Penghu','Taiwan, Republic of China - onshore - Taiwan Island, Penghu (Pescadores) Islands.',21.87,25.34,119.25,122.06,0);
INSERT INTO "area" VALUES('EPSG','3316','Tanzania - onshore','Tanzania - onshore.',-11.75,-0.99,29.34,40.48,0);
INSERT INTO "area" VALUES('EPSG','3317','Thailand - onshore','Thailand - onshore.',5.63,20.46,97.34,105.64,0);
INSERT INTO "area" VALUES('EPSG','3318','East Timor - onshore','Timor-Leste (East Timor) - onshore.',-9.5,-8.08,124.03,127.36,0);
@@ -2567,7 +2567,7 @@ INSERT INTO "area" VALUES('EPSG','3587','Europe - 25.5°E to 28.5°E onshore and
INSERT INTO "area" VALUES('EPSG','3588','Europe - 28.5°E to 31.5°E onshore and S-42(58) by country','Bulgaria and Romania - onshore east of 28°30''E.',43.34,45.44,28.5,29.74,0);
INSERT INTO "area" VALUES('EPSG','3589','Pakistan - Gambat','Pakistan - Gambat.',25.88,27.67,68.24,69.3,0);
INSERT INTO "area" VALUES('EPSG','3590','Nigeria - 4°N to 5°N, 6°E to 8°E','Nigeria - 4°N to 5°N and 6°E to 8°E.',3.99,5.01,5.99,8.01,0);
INSERT INTO "area" VALUES('EPSG','3591','Taiwan - 118°E to 120°E onshore','Taiwan, Republic of China - onshore between 118°E and 120°E - Penghu (Pescadores) Islands.',23.12,23.82,119.25,119.78,0);
INSERT INTO "area" VALUES('EPSG','3591','Taiwan - onshore - Penghu','Taiwan, Republic of China - onshore - Penghu (Pescadores) Islands.',23.12,23.82,119.25,119.78,0);
INSERT INTO "area" VALUES('EPSG','3592','Antarctica - Darwin Glacier region','Antarctica - Darwin Glacier region.',-81.0,-76.0,145.0,169.0,0);
INSERT INTO "area" VALUES('EPSG','3593','New Zealand - offshore','New Zealand - offshore.',-55.95,-25.88,160.6,-171.2,0);
INSERT INTO "area" VALUES('EPSG','3594','Europe - EVRF2007','Europe - onshore - Andorra; Austria; Belgium; Bosnia and Herzegovina; Bulgaria; Croatia; Czech Republic; Denmark; Estonia; Finland; France - mainland; Germany; Gibraltar, Hungary; Italy - mainland and Sicily; Latvia; Liechtenstein; Lithuania; Luxembourg; Netherlands; Norway; Poland; Portugal; Romania; San Marino; Slovakia; Slovenia; Spain - mainland; Sweden; Switzerland; United Kingdom (UK) - Great Britain mainland; Vatican City State.',35.95,71.21,-9.56,31.59,0);
@@ -2958,7 +2958,7 @@ INSERT INTO "area" VALUES('EPSG','3978','Indonesia - 96°E to 102°E, N hemisphe
INSERT INTO "area" VALUES('EPSG','3979','Indonesia - 102°E to 108°E, N hemisphere onshore','Indonesia - onshore north of equator and between 102°E and 108°E.',0.0,4.11,102.0,108.0,0);
INSERT INTO "area" VALUES('EPSG','3980','Indonesia - 108°E to 114°E, N hemisphere onshore','Indonesia - onshore north of equator and between 108°E and 114°E.',0.0,4.25,108.0,114.0,0);
INSERT INTO "area" VALUES('EPSG','3981','Indonesia - 114°E to 120°E, N hemisphere onshore','Indonesia - onshore north of equator and between 114°E and 120°E.',0.0,4.37,114.0,120.0,0);
INSERT INTO "area" VALUES('EPSG','3982','Taiwan - 120°E to 122°E onshore','Taiwan, Republic of China - onshore between 120°E and 122°E - Taiwan Island.',21.87,25.34,119.99,122.06,0);
INSERT INTO "area" VALUES('EPSG','3982','Taiwan - onshore - mainland','Taiwan, Republic of China - onshore - Taiwan Island.',21.87,25.34,119.99,122.06,0);
INSERT INTO "area" VALUES('EPSG','3983','Indonesia - 120°E to 126°E, N hemisphere onshore','Indonesia - onshore north of equator and between 120°E and 126°E.',0.0,3.84,120.0,125.71,0);
INSERT INTO "area" VALUES('EPSG','3984','Indonesia - 126°E to 132°E, N hemisphere onshore','Indonesia - onshore north of equator and between 126°E and 132°E.',0.0,4.59,126.55,131.0,0);
INSERT INTO "area" VALUES('EPSG','3985','Indonesia - 96°E to 102°E, S hemisphere onshore','Indonesia - onshore south of equator and between 96°E and 102°E.',-3.57,0.0,98.24,102.0,0);
@@ -3505,4 +3505,6 @@ INSERT INTO "area" VALUES('EPSG','4525','Pacific - Guam and NMI - onshore','Guam
INSERT INTO "area" VALUES('EPSG','4526','Saudi Arabia - 36°E to 42°E','Saudi Arabia - onshore and offshore - between 36°E and 42°E.',16.29,32.16,36.0,42.0,0);
INSERT INTO "area" VALUES('EPSG','4527','Saudi Arabia - 42°E to 48°E','Saudi Arabia - onshore and offshore - between of 42°E and 48°E.',15.61,31.15,41.99,48.0,0);
INSERT INTO "area" VALUES('EPSG','4528','Saudi Arabia - 48°E to 54°E','Saudi Arabia - onshore and offshore - between 48°E and 54°E.',17.43,28.94,48.0,54.01,0);
INSERT INTO "area" VALUES('EPSG','4531','Costa Rica - offshore Caribbean','Costa Rica - offshore - Caribbean sea.',9.6,11.77,-83.6,-81.43,0);
INSERT INTO "area" VALUES('EPSG','4532','Costa Rica - offshore Pacific','Costa Rica - offshore Pacific ocean and onshore Coco Island.',2.15,11.11,-90.45,-82.92,0);
INSERT INTO "area" VALUES('EPSG','4540','Africa - South Africa, Lesotho and Eswatini.','Eswatini (Swaziland); Lesotho; South Africa - onshore and offshore.',-50.32,-22.13,13.33,42.85,0);
+1
View File
@@ -276,3 +276,4 @@ INSERT INTO "compound_crs" VALUES('EPSG','8812','NAD83 / Alaska zone 10 + NAVD88
INSERT INTO "compound_crs" VALUES('EPSG','8813','NAD83 / Missouri East + NAVD88 height',NULL,NULL,'EPSG','26996','EPSG','5703','EPSG','2219',0);
INSERT INTO "compound_crs" VALUES('EPSG','8814','NAD83 / Missouri Central + NAVD88 height',NULL,NULL,'EPSG','26997','EPSG','5703','EPSG','2218',0);
INSERT INTO "compound_crs" VALUES('EPSG','8815','NAD83 / Missouri West + NAVD88 height',NULL,NULL,'EPSG','26998','EPSG','5703','EPSG','2220',0);
INSERT INTO "compound_crs" VALUES('EPSG','8912','CR-SIRGAS / CRTM05 + DACR52 height',NULL,NULL,'EPSG','8908','EPSG','8911','EPSG','3232',0);
+209 -209
View File
@@ -1,211 +1,211 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "concatenated_operation" VALUES('EPSG','3896','MGI (Ferro) to WGS 84 (2)',NULL,NULL,'EPSG','4805','EPSG','4326','EPSG','1037',NULL,'EPSG','3895','EPSG','1618',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','3966','MGI (Ferro) to WGS 84 (1)',NULL,NULL,'EPSG','4805','EPSG','4326','EPSG','2370',NULL,'EPSG','3913','EPSG','3962',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','4435','Puerto Rico to NAD83(HARN) (1)',NULL,NULL,'EPSG','4139','EPSG','4152','EPSG','3634',NULL,'EPSG','1461','EPSG','1495',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','4837','Amersfoort to ED50 (1)',NULL,NULL,'EPSG','4289','EPSG','4230','EPSG','1275',NULL,'EPSG','1672','EPSG','1311',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5190','Tokyo 1892 to Korea 2000 (1)',NULL,NULL,'EPSG','5132','EPSG','4737','EPSG','3266',NULL,'EPSG','5134','EPSG','5189',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5192','Tokyo 1892 to WGS 84 (1)',NULL,NULL,'EPSG','5132','EPSG','4326','EPSG','3266',NULL,'EPSG','5134','EPSG','5191',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5230','S-JTSK (Ferro) to WGS 84 (2)',NULL,NULL,'EPSG','4818','EPSG','4326','EPSG','1211',NULL,'EPSG','1884','EPSG','4836',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5240','S-JTSK/05 (Ferro) to WGS 84 (1)',NULL,NULL,'EPSG','5229','EPSG','4326','EPSG','1079',NULL,'EPSG','5238','EPSG','5227',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5242','S-JTSK (Ferro) to WGS 84 (3)',NULL,NULL,'EPSG','4818','EPSG','4326','EPSG','1079',NULL,'EPSG','1884','EPSG','5239',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5838','Lisbon (Lisbon) to WGS 84 (2)',NULL,NULL,'EPSG','4803','EPSG','4326','EPSG','1294',NULL,'EPSG','1756','EPSG','1988',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','6714','Tokyo to JGD2011 (1)',NULL,NULL,'EPSG','4301','EPSG','6668','EPSG','4170',NULL,'EPSG','6712','EPSG','6713',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','6739','NAD27 to NAD83(HARN) (22)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1410',NULL,'EPSG','1241','EPSG','1496',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','6874','Tananarive (Paris) to WGS 84 (2)',NULL,NULL,'EPSG','4810','EPSG','4326','EPSG','3273',NULL,'EPSG','1265','EPSG','6873',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7811','NTF (Paris) to RGF93 (2)',NULL,NULL,'EPSG','4807','EPSG','4171','EPSG','3694',NULL,'EPSG','1763','EPSG','15958',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7965','Poolbeg height (ft(Br36)) to Malin Head height (1)',NULL,NULL,'EPSG','5754','EPSG','5731','EPSG','1305',NULL,'EPSG','7963','EPSG','7964',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7967','Poolbeg height (ft(Br36)) to Belfast height (1)',NULL,NULL,'EPSG','5754','EPSG','5732','EPSG','1305',NULL,'EPSG','7963','EPSG','7966',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7973','NGVD29 height (ftUS) to NAVD88 height (1)',NULL,NULL,'EPSG','5702','EPSG','5703','EPSG','2950',NULL,'EPSG','7972','EPSG','7969',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7974','NGVD29 height (ftUS) to NAVD88 height (2)',NULL,NULL,'EPSG','5702','EPSG','5703','EPSG','2949',NULL,'EPSG','7972','EPSG','7970',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7975','NGVD29 height (ftUS) to NAVD88 height (3)',NULL,NULL,'EPSG','5702','EPSG','5703','EPSG','2948',NULL,'EPSG','7972','EPSG','7971',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7983','HKPD height to HKCD depth (1)',NULL,NULL,'EPSG','5738','EPSG','5739','EPSG','3335',NULL,'EPSG','7982','EPSG','7977',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7986','KOC CD height to KOC WD depth (1)',NULL,NULL,'EPSG','5790','EPSG','5789','EPSG','3267',NULL,'EPSG','7980','EPSG','7984',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7987','KOC CD height to KOC WD depth (ft) (1)',NULL,NULL,'EPSG','5790','EPSG','5614','EPSG','3267',NULL,'EPSG','7980','EPSG','7984','EPSG','7985',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8047','ED50 to WGS 84 (15)',NULL,NULL,'EPSG','4230','EPSG','4326','EPSG','2332',NULL,'EPSG','1147','EPSG','1146',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8094','NTF (Paris) to WGS 84 (1)',NULL,NULL,'EPSG','4807','EPSG','4326','EPSG','3694',NULL,'EPSG','1763','EPSG','1193',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8174','Bogota 1975 (Bogota) to WGS 84 (1)',NULL,NULL,'EPSG','4802','EPSG','4326','EPSG','3229',NULL,'EPSG','1755','EPSG','1125',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8175','Monte Mario (Rome) to WGS 84 (1)',NULL,NULL,'EPSG','4806','EPSG','4326','EPSG','2339',NULL,'EPSG','1262','EPSG','1169',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8176','Tananarive (Paris) to WGS 84 (1)',NULL,NULL,'EPSG','4810','EPSG','4326','EPSG','3273',NULL,'EPSG','1265','EPSG','1227',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8178','Batavia (Jakarta) to WGS 84 (1)',NULL,NULL,'EPSG','4813','EPSG','4326','EPSG','1355',NULL,'EPSG','1759','EPSG','1123',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8183','HD72 to WGS 84 (1)',NULL,NULL,'EPSG','4237','EPSG','4326','EPSG','1119',NULL,'EPSG','1273','EPSG','1149',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8186','NTF (Paris) to ED50 (1)',NULL,NULL,'EPSG','4807','EPSG','4230','EPSG','3694',NULL,'EPSG','1763','EPSG','1276',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8188','NTF (Paris) to WGS 72 (1)',NULL,NULL,'EPSG','4807','EPSG','4322','EPSG','3694',NULL,'EPSG','1763','EPSG','1277',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8190','AGD66 to WGS 84 (2)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2575',NULL,'EPSG','1278','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8192','AGD84 to WGS 84 (3)',NULL,NULL,'EPSG','4203','EPSG','4326','EPSG','2575',NULL,'EPSG','1279','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8194','AGD84 to WGS 84 (4)',NULL,NULL,'EPSG','4203','EPSG','4326','EPSG','2575',NULL,'EPSG','1280','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8195','RT90 to WGS 84 (1)',NULL,NULL,'EPSG','4124','EPSG','4326','EPSG','1225',NULL,'EPSG','1437','EPSG','1149',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8199','Pulkovo 1942 to WGS 84 (2)',NULL,NULL,'EPSG','4284','EPSG','4326','EPSG','1145',NULL,'EPSG','1274','EPSG','1283',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8211','Voirol 1875 (Paris) to WGS 84 (1)',NULL,NULL,'EPSG','4811','EPSG','4326','EPSG','1365',NULL,'EPSG','1266','EPSG','1294',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8215','Tete to WGS 84 (1)',NULL,NULL,'EPSG','4127','EPSG','4326','EPSG','1167',NULL,'EPSG','1297','EPSG','1302',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8217','Tete to WGS 84 (2)',NULL,NULL,'EPSG','4127','EPSG','4326','EPSG','2350',NULL,'EPSG','1298','EPSG','1302',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8219','Tete to WGS 84 (3)',NULL,NULL,'EPSG','4127','EPSG','4326','EPSG','2351',NULL,'EPSG','1299','EPSG','1302',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8221','Tete to WGS 84 (4)',NULL,NULL,'EPSG','4127','EPSG','4326','EPSG','2352',NULL,'EPSG','1300','EPSG','1302',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8223','Tete to WGS 84 (5)',NULL,NULL,'EPSG','4127','EPSG','4326','EPSG','2353',NULL,'EPSG','1301','EPSG','1302',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8234','DHDN to WGS 84 (1)',NULL,NULL,'EPSG','4314','EPSG','4326','EPSG','2326',NULL,'EPSG','1309','EPSG','1149',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8236','Pulkovo 1942 to WGS 84 (11)',NULL,NULL,'EPSG','4284','EPSG','4326','EPSG','1343',NULL,'EPSG','1310','EPSG','1149',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8243','NAD27 to WGS 84 (25)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1061',NULL,'EPSG','1312','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8245','NAD27 to WGS 84 (26)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1061',NULL,'EPSG','1313','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8263','MGI (Ferro) to WGS 84 (1)',NULL,NULL,'EPSG','4805','EPSG','4326','EPSG','2370',NULL,'EPSG','1757','EPSG','1306',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8363','ETRS89 + Baltic 1957 height to ETRS89 + EVRF2007 height (1)',NULL,NULL,'EPSG','8360','EPSG','7423','EPSG','1211',NULL,'EPSG','8361','EPSG','8362',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8386','Old Hawaiian to WGS 84 (1)',NULL,NULL,'EPSG','4135','EPSG','4326','EPSG','1334',NULL,'EPSG','1454','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8388','St. Lawrence Island to WGS 84 (1)',NULL,NULL,'EPSG','4136','EPSG','4326','EPSG','1332',NULL,'EPSG','1455','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8390','St. Paul Island to WGS 84 (1)',NULL,NULL,'EPSG','4137','EPSG','4326','EPSG','1333',NULL,'EPSG','1456','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8392','St. George Island to WGS 84 (1)',NULL,NULL,'EPSG','4138','EPSG','4326','EPSG','1331',NULL,'EPSG','1457','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8394','NAD27(CGQ77) to WGS 84 (1)',NULL,NULL,'EPSG','4609','EPSG','4326','EPSG','1368',NULL,'EPSG','1451','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8396','AGD66 to WGS 84 (3)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2283',NULL,'EPSG','1458','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8398','AGD66 to WGS 84 (4)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','1282',NULL,'EPSG','1459','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8400','AGD66 to WGS 84 (5)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2286',NULL,'EPSG','1460','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8402','Puerto Rico to WGS 84 (1)',NULL,NULL,'EPSG','4139','EPSG','4326','EPSG','1335',NULL,'EPSG','1461','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8404','NAD27 to WGS 84 (27)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1368',NULL,'EPSG','1462','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8406','NAD27(76) to WGS 84 (1)',NULL,NULL,'EPSG','4608','EPSG','4326','EPSG','1367',NULL,'EPSG','1463','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8408','AGD66 to WGS 84 (6)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2285',NULL,'EPSG','1464','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8418','ATS77 to WGS 84 (1)',NULL,NULL,'EPSG','4122','EPSG','4326','EPSG','1447',NULL,'EPSG','1472','EPSG','1473',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8419','ATS77 to WGS 84 (2)',NULL,NULL,'EPSG','4122','EPSG','4326','EPSG','1533',NULL,'EPSG','1599','EPSG','1473',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8420','NAD27 to WGS 84 (32)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2375',NULL,'EPSG','1600','EPSG','1473',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8421','NAD83 to WGS 84 (7)',NULL,NULL,'EPSG','4269','EPSG','4326','EPSG','2375',NULL,'EPSG','1601','EPSG','1473',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8422','NAD83 to WGS 84 (8)',NULL,NULL,'EPSG','4269','EPSG','4326','EPSG','2376',NULL,'EPSG','1602','EPSG','1473',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8442','ETRS89 to S-JTSK (5)',NULL,NULL,'EPSG','4258','EPSG','4156','EPSG','1211',NULL,'EPSG','8365','EPSG','8364',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8443','S-JTSK to ETRS89 (6)',NULL,NULL,'EPSG','4156','EPSG','4258','EPSG','1211',NULL,'EPSG','8364','EPSG','8367',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8453','AGD66 to WGS 84 (7)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','1282',NULL,'EPSG','1506','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8454','AGD66 to WGS 84 (8)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2284',NULL,'EPSG','1507','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8457','CH1903+ to WGS 84 (1)',NULL,NULL,'EPSG','4150','EPSG','4326','EPSG','1286',NULL,'EPSG','1509','EPSG','1511',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8460','NAD27 to NAD83(HARN) (1)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1372',NULL,'EPSG','1241','EPSG','1474',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8461','NAD27 to NAD83(HARN) (2)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1373',NULL,'EPSG','1241','EPSG','1475',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8462','NAD27 to NAD83(HARN) (3)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2297',NULL,'EPSG','1241','EPSG','1476',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8463','NAD27 to NAD83(HARN) (4)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2298',NULL,'EPSG','1241','EPSG','1477',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8464','NAD27 to NAD83(HARN) (5)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1376',NULL,'EPSG','1241','EPSG','1478',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8465','NAD27 to NAD83(HARN) (6)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1380',NULL,'EPSG','1241','EPSG','1479',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8466','NAD27 to NAD83(HARN) (7)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1379',NULL,'EPSG','1241','EPSG','1480',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8467','NAD27 to NAD83(HARN) (8)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2382',NULL,'EPSG','1241','EPSG','1481',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8468','NAD27 to NAD83(HARN) (9)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2383',NULL,'EPSG','1241','EPSG','1482',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8469','NAD27 to NAD83(HARN) (10)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1386',NULL,'EPSG','1241','EPSG','1483',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8470','NAD27 to NAD83(HARN) (11)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1387',NULL,'EPSG','1241','EPSG','1484',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8471','NAD27 to NAD83(HARN) (12)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2377',NULL,'EPSG','1241','EPSG','1485',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8472','NAD27 to NAD83(HARN) (13)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1388',NULL,'EPSG','1241','EPSG','1486',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8473','NAD27 to NAD83(HARN) (14)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1391',NULL,'EPSG','1241','EPSG','1487',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8474','NAD27 to NAD83(HARN) (15)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1393',NULL,'EPSG','1241','EPSG','1488',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8475','NAD27 to NAD83(HARN) (16)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1396',NULL,'EPSG','1241','EPSG','1489',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8476','NAD27 to NAD83(HARN) (17)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2378',NULL,'EPSG','1241','EPSG','1490',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8477','NAD27 to NAD83(HARN) (18)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1400',NULL,'EPSG','1241','EPSG','1491',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8478','NAD27 to NAD83(HARN) (19)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1401',NULL,'EPSG','1241','EPSG','1492',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8479','NAD27 to NAD83(HARN) (20)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1403',NULL,'EPSG','1241','EPSG','1493',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8480','NAD27 to NAD83(HARN) (21)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1405',NULL,'EPSG','1241','EPSG','1494',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8481','Puerto Rico to NAD83(HARN) (1)',NULL,NULL,'EPSG','4139','EPSG','4152','EPSG','1335',NULL,'EPSG','1241','EPSG','1495',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8482','NAD27 to NAD83(HARN) (22)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1410',NULL,'EPSG','1747','EPSG','1496',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8483','NAD27 to NAD83(HARN) (23)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1411',NULL,'EPSG','1241','EPSG','1497',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8484','NAD27 to NAD83(HARN) (24)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2379',NULL,'EPSG','1241','EPSG','1498',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8485','NAD27 to NAD83(HARN) (25)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2380',NULL,'EPSG','1241','EPSG','1499',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8486','NAD27 to NAD83(HARN) (26)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1415',NULL,'EPSG','1241','EPSG','1500',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8487','NAD27 to NAD83(HARN) (27)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2381',NULL,'EPSG','1241','EPSG','1501',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8488','NAD27 to NAD83(HARN) (28)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1418',NULL,'EPSG','1241','EPSG','1502',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8489','NAD27 to NAD83(HARN) (29)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1419',NULL,'EPSG','1241','EPSG','1503',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8496','NAD27 to WGS 84 (28)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2374',NULL,'EPSG','1241','EPSG','1515',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8497','NAD27 to WGS 84 (29)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2373',NULL,'EPSG','1243','EPSG','1515',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8508','Old Hawaiian to NAD83(HARN) (1)',NULL,NULL,'EPSG','4135','EPSG','4152','EPSG','1334',NULL,'EPSG','1454','EPSG','1520',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8509','NAD27 to NAD83(HARN) (30)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1383',NULL,'EPSG','1241','EPSG','1521',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8510','NAD27 to NAD83(HARN) (31)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1385',NULL,'EPSG','1241','EPSG','1522',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8511','NAD27 to NAD83(HARN) (32)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1397',NULL,'EPSG','1241','EPSG','1523',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8512','NAD27 to NAD83(HARN) (33)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1404',NULL,'EPSG','1241','EPSG','1524',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8513','NAD27 to NAD83(HARN) (34)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1413',NULL,'EPSG','1241','EPSG','1525',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8514','NAD27 to NAD83(HARN) (35)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1417',NULL,'EPSG','1241','EPSG','1526',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8517','Chos Malal 1914 to WGS 84 (1)',NULL,NULL,'EPSG','4160','EPSG','4326','EPSG','2325',NULL,'EPSG','1528','EPSG','1527',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8530','South Yemen to WGS 84 (1)',NULL,NULL,'EPSG','4164','EPSG','4326','EPSG','1340',NULL,'EPSG','1539','EPSG','1540',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8532','Indian 1960 to WGS 84 (1)',NULL,NULL,'EPSG','4131','EPSG','4326','EPSG','1495',NULL,'EPSG','1541','EPSG','1240',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8537','Egypt 1907 to WGS 84 (2)',NULL,NULL,'EPSG','4229','EPSG','4326','EPSG','1086',NULL,'EPSG','1545','EPSG','1237',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8553','NAD27 to NAD83(HARN) (36)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1382',NULL,'EPSG','1241','EPSG','1553',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8554','NAD27 to NAD83(HARN) (37)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1399',NULL,'EPSG','1241','EPSG','1554',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8560','AGD84 to WGS 84 (5)',NULL,NULL,'EPSG','4203','EPSG','4326','EPSG','1280',NULL,'EPSG','1559','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8562','Nord Sahara 1959 to WGS 84 (3)',NULL,NULL,'EPSG','4307','EPSG','4326','EPSG','2393',NULL,'EPSG','1560','EPSG','1240',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8563','NZGD49 to WGS 84 (3)',NULL,NULL,'EPSG','4272','EPSG','4326','EPSG','1175',NULL,'EPSG','1568','EPSG','1565',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8564','NAD27(CGQ77) to WGS 84 (2)',NULL,NULL,'EPSG','4609','EPSG','4326','EPSG','1368',NULL,'EPSG','1576','EPSG','1473',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8565','NAD27 to WGS 84 (31)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1368',NULL,'EPSG','1574','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8566','NAD83 to WGS 84 (6)',NULL,NULL,'EPSG','4269','EPSG','4326','EPSG','1368',NULL,'EPSG','1572','EPSG','1188',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8568','Deir ez Zor to WGS 84 (1)',NULL,NULL,'EPSG','4227','EPSG','4326','EPSG','2329',NULL,'EPSG','1584','EPSG','1240',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8569','ED50 to WGS 84 (21)',NULL,NULL,'EPSG','4230','EPSG','4326','EPSG','2332',NULL,'EPSG','1588','EPSG','1149',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8571','Accra to WGS 84 (2)',NULL,NULL,'EPSG','4168','EPSG','4326','EPSG','1505',NULL,'EPSG','1570','EPSG','1240',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8572','Amersfoort to WGS 84 (2)',NULL,NULL,'EPSG','4289','EPSG','4326','EPSG','1275',NULL,'EPSG','1571','EPSG','1149',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8573','RGF93 to WGS 84 (1)',NULL,NULL,'EPSG','4171','EPSG','4326','EPSG','1096',NULL,'EPSG','1591','EPSG','1149',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8574','American Samoa 1962 to WGS 84 (2)',NULL,NULL,'EPSG','4169','EPSG','4326','EPSG','2288',NULL,'EPSG','1578','EPSG','1580',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8575','American Samoa 1962 to WGS 84 (3)',NULL,NULL,'EPSG','4169','EPSG','4326','EPSG','2289',NULL,'EPSG','1579','EPSG','1580',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8576','AGD66 to WGS 84 (9)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','1282',NULL,'EPSG','1594','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8577','AGD66 to WGS 84 (10)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2284',NULL,'EPSG','1595','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8578','AGD66 to WGS 84 (11)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2287',NULL,'EPSG','1596','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8579','AGD84 to WGS 84 (6)',NULL,NULL,'EPSG','4203','EPSG','4326','EPSG','1280',NULL,'EPSG','1593','EPSG','1150',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8580','IRENET95 to WGS 84 (1)',NULL,NULL,'EPSG','4173','EPSG','4326','EPSG','1305',NULL,'EPSG','1611','EPSG','1149',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8581','PSD93 to WGS 84 (2)',NULL,NULL,'EPSG','4134','EPSG','4326','EPSG','3288',NULL,'EPSG','1616','EPSG','1237',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8582','Old Hawaiian to WGS 84 (2)',NULL,NULL,'EPSG','4135','EPSG','4326','EPSG','1334',NULL,'EPSG','1454','EPSG','1741',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8583','Puerto Rico to WGS 84 (2)',NULL,NULL,'EPSG','4139','EPSG','4326','EPSG','3634',NULL,'EPSG','1461','EPSG','1731',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8584','NAD27 to NAD83(CSRS98) (3)',NULL,NULL,'EPSG','4267','EPSG','4140','EPSG','2376',NULL,'EPSG','1313','EPSG','1752',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8585','NAD27 to WGS 84 (36)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2376',NULL,'EPSG','1313','EPSG','1702',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8586','NAD27 to NAD83(HARN) (38)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1374',NULL,'EPSG','1241','EPSG','1704',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8587','NAD27 to NAD83(HARN) (39)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1384',NULL,'EPSG','1241','EPSG','1705',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8588','NAD27 to NAD83(HARN) (40)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1392',NULL,'EPSG','1241','EPSG','1706',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8589','NAD27 to NAD83(HARN) (41)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1394',NULL,'EPSG','1241','EPSG','1707',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8590','NAD27 to WGS 84 (37)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1372',NULL,'EPSG','1241','EPSG','1717',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8591','NAD27 to WGS 84 (38)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1373',NULL,'EPSG','1241','EPSG','1728',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8592','NAD27 to WGS 84 (39)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1374',NULL,'EPSG','1241','EPSG','1708',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8593','NAD27 to WGS 84 (40)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2297',NULL,'EPSG','1241','EPSG','1739',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8594','NAD27 to WGS 84 (41)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2298',NULL,'EPSG','1241','EPSG','1750',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8595','NAD27 to WGS 84 (42)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1376',NULL,'EPSG','1241','EPSG','1712',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8596','NAD27 to WGS 84 (43)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1379',NULL,'EPSG','1241','EPSG','1714',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8597','NAD27 to WGS 84 (44)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1380',NULL,'EPSG','1241','EPSG','1713',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8598','NAD27 to WGS 84 (45)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1382',NULL,'EPSG','1241','EPSG','1748',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8599','NAD27 to WGS 84 (46)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1383',NULL,'EPSG','1241','EPSG','1742',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8600','NAD27 to WGS 84 (47)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1384',NULL,'EPSG','1241','EPSG','1709',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8601','NAD27 to WGS 84 (48)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1385',NULL,'EPSG','1241','EPSG','1743',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8602','NAD27 to WGS 84 (49)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1386',NULL,'EPSG','1241','EPSG','1718',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8603','NAD27 to WGS 84 (50)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1387',NULL,'EPSG','1241','EPSG','1719',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8604','NAD27 to WGS 84 (51)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1388',NULL,'EPSG','1241','EPSG','1721',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8605','NAD27 to WGS 84 (52)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2377',NULL,'EPSG','1241','EPSG','1720',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8606','NAD27 to WGS 84 (53)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2378',NULL,'EPSG','1241','EPSG','1725',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8607','NAD27 to WGS 84 (54)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1391',NULL,'EPSG','1241','EPSG','1722',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8608','NAD27 to WGS 84 (55)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1392',NULL,'EPSG','1241','EPSG','1710',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8609','NAD27 to WGS 84 (56)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1393',NULL,'EPSG','1241','EPSG','1723',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8610','NAD27 to WGS 84 (57)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1394',NULL,'EPSG','1241','EPSG','1711',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8611','NAD27 to WGS 84 (58)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2382',NULL,'EPSG','1241','EPSG','1715',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8612','NAD27 to WGS 84 (59)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2383',NULL,'EPSG','1241','EPSG','1716',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8613','NAD27 to WGS 84 (60)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1396',NULL,'EPSG','1241','EPSG','1724',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8614','NAD27 to WGS 84 (61)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1397',NULL,'EPSG','1241','EPSG','1744',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8615','NAD27 to WGS 84 (62)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1399',NULL,'EPSG','1241','EPSG','1749',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8616','NAD27 to WGS 84 (63)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1400',NULL,'EPSG','1241','EPSG','1726',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8617','NAD27 to WGS 84 (64)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1401',NULL,'EPSG','1241','EPSG','1727',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8618','NAD27 to WGS 84 (65)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1403',NULL,'EPSG','1241','EPSG','1729',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8619','NAD27 to WGS 84 (66)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1404',NULL,'EPSG','1241','EPSG','1745',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8620','NAD27 to WGS 84 (67)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1405',NULL,'EPSG','1241','EPSG','1730',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8621','NAD27 to WGS 84 (68)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2381',NULL,'EPSG','1241','EPSG','1737',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8622','NAD27 to WGS 84 (69)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1410',NULL,'EPSG','1241','EPSG','1732',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8623','NAD27 to WGS 84 (70)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1411',NULL,'EPSG','1241','EPSG','1733',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8624','NAD27 to WGS 84 (71)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2379',NULL,'EPSG','1241','EPSG','1734',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8625','NAD27 to WGS 84 (72)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2380',NULL,'EPSG','1241','EPSG','1735',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8626','NAD27 to WGS 84 (73)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1413',NULL,'EPSG','1241','EPSG','1746',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8627','NAD27 to WGS 84 (74)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1415',NULL,'EPSG','1241','EPSG','1736',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8628','NAD27 to WGS 84 (75)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1417',NULL,'EPSG','1241','EPSG','1747',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8629','NAD27 to WGS 84 (76)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1418',NULL,'EPSG','1241','EPSG','1738',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8630','NAD27 to WGS 84 (77)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1419',NULL,'EPSG','1241','EPSG','1740',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8631','Garoua to WGS 84 (1)',NULL,NULL,'EPSG','4197','EPSG','4326','EPSG','2590',NULL,'EPSG','1805','EPSG','1240',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8632','Kousseri to WGS 84 (1)',NULL,NULL,'EPSG','4198','EPSG','4326','EPSG','2591',NULL,'EPSG','1806','EPSG','1240',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8633','Yoff to WGS 84 (1)',NULL,NULL,'EPSG','4310','EPSG','4326','EPSG','1207',NULL,'EPSG','1828','EPSG','1238',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8634','Beduaram to WGS 84 (1)',NULL,NULL,'EPSG','4213','EPSG','4326','EPSG','2771',NULL,'EPSG','1839','EPSG','1240',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8635','NAD27 to NAD83(CSRS) (3)',NULL,NULL,'EPSG','4267','EPSG','4617','EPSG','2376',NULL,'EPSG','1313','EPSG','1849',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8636','Carthage (Paris) to WGS 84 (1)',NULL,NULL,'EPSG','4816','EPSG','4326','EPSG','1618',NULL,'EPSG','1881','EPSG','1130',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8637','Lisbon (Lisbon) to WGS 84 (1)',NULL,NULL,'EPSG','4803','EPSG','4326','EPSG','1294',NULL,'EPSG','1756','EPSG','1944',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8638','Makassar (Jakarta) to WGS 84 (1)',NULL,NULL,'EPSG','4804','EPSG','4326','EPSG','1316',NULL,'EPSG','1260','EPSG','1837',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8639','NGO 1948 (Oslo) to WGS 84 (1)',NULL,NULL,'EPSG','4817','EPSG','4326','EPSG','1352',NULL,'EPSG','1762','EPSG','1654',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8640','Nord Sahara 1959 (Paris) to WGS 84 (1)',NULL,NULL,'EPSG','4819','EPSG','4326','EPSG','1026',NULL,'EPSG','1882','EPSG','1253',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8641','Segara (Jakarta) to WGS 84 (1)',NULL,NULL,'EPSG','4820','EPSG','4326','EPSG','1360',NULL,'EPSG','1883','EPSG','1897',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8642','S-JTSK (Ferro) to WGS 84 (1)',NULL,NULL,'EPSG','4818','EPSG','4326','EPSG','1079',NULL,'EPSG','1884','EPSG','1623',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8643','Greek to WGS 84 (1)',NULL,NULL,'EPSG','4120','EPSG','4326','EPSG','3254',NULL,'EPSG','1891','EPSG','1272',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8644','Greek (Athens) to WGS 84 (1)',NULL,NULL,'EPSG','4815','EPSG','4326','EPSG','3254',NULL,'EPSG','1761','EPSG','1891','EPSG','1272',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8645','MGI (Ferro) to WGS 84 (2)',NULL,NULL,'EPSG','4805','EPSG','4326','EPSG','1037',NULL,'EPSG','1757','EPSG','1618',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8646','Manoca 1962 to WGS 84 (1)',NULL,NULL,'EPSG','4193','EPSG','4326','EPSG','2555',NULL,'EPSG','1902','EPSG','1240',NULL,NULL,1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8647','NAD27 to WGS 84 (78)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2831',NULL,'EPSG','1313','EPSG','1950','EPSG','1946',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8648','Lisbon 1890 (Lisbon) to WGS 84 (1)',NULL,NULL,'EPSG','4904','EPSG','4326','EPSG','1294',NULL,'EPSG','1991','EPSG','1986',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8649','Lisbon 1890 (Lisbon) to WGS 84 (2)',NULL,NULL,'EPSG','4904','EPSG','4326','EPSG','1294',NULL,'EPSG','1991','EPSG','1990',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8650','Palestine 1923 to WGS 84 (2)',NULL,NULL,'EPSG','4281','EPSG','4326','EPSG','2603',NULL,'EPSG','1071','EPSG','1073',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8651','Vientiane 1982 to WGS 84 (1)',NULL,NULL,'EPSG','4676','EPSG','4326','EPSG','1138',NULL,'EPSG','1063','EPSG','1065',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8652','Lao 1993 to WGS 84 (1)',NULL,NULL,'EPSG','4677','EPSG','4326','EPSG','1138',NULL,'EPSG','1064','EPSG','1065',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8655','Manoca 1962 to WGS 84 (2)',NULL,NULL,'EPSG','4193','EPSG','4326','EPSG','2555',NULL,'EPSG','1902','EPSG','1240',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8656','Mhast (offshore) to WGS 84 (1)',NULL,NULL,'EPSG','4705','EPSG','4326','EPSG','3180',NULL,'EPSG','15790','EPSG','1240',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8657','Egypt Gulf of Suez S-650 TL to WGS 84 (1)',NULL,NULL,'EPSG','4706','EPSG','4326','EPSG','2341',NULL,'EPSG','15792','EPSG','1240',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8659','Kertau (RSO) to WGS 84 (1)',NULL,NULL,'EPSG','4751','EPSG','4326','EPSG','1309',NULL,'EPSG','15896','EPSG','1158',NULL,NULL,0);
INSERT INTO "concatenated_operation" VALUES('EPSG','3896','MGI (Ferro) to WGS 84 (2)',NULL,NULL,'EPSG','4805','EPSG','4326','EPSG','1037',NULL,'EPSG','3895','EPSG','1618',NULL,NULL,'BEV-Aut',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','3966','MGI (Ferro) to WGS 84 (1)',NULL,NULL,'EPSG','4805','EPSG','4326','EPSG','2370',NULL,'EPSG','3913','EPSG','3962',NULL,NULL,'DMA-balk',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','4435','Puerto Rico to NAD83(HARN) (1)',NULL,NULL,'EPSG','4139','EPSG','4152','EPSG','3634',NULL,'EPSG','1461','EPSG','1495',NULL,NULL,'NGS-PRVI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','4837','Amersfoort to ED50 (1)',NULL,NULL,'EPSG','4289','EPSG','4230','EPSG','1275',NULL,'EPSG','1672','EPSG','1311',NULL,NULL,'NAM-Nld 2006',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5190','Tokyo 1892 to Korea 2000 (1)',NULL,NULL,'EPSG','5132','EPSG','4737','EPSG','3266',NULL,'EPSG','5134','EPSG','5189',NULL,NULL,'OGP-Kor',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5192','Tokyo 1892 to WGS 84 (1)',NULL,NULL,'EPSG','5132','EPSG','4326','EPSG','3266',NULL,'EPSG','5134','EPSG','5191',NULL,NULL,'OGP-Kor',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5230','S-JTSK (Ferro) to WGS 84 (2)',NULL,NULL,'EPSG','4818','EPSG','4326','EPSG','1211',NULL,'EPSG','1884','EPSG','4836',NULL,NULL,'OGP-Svk',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5240','S-JTSK/05 (Ferro) to WGS 84 (1)',NULL,NULL,'EPSG','5229','EPSG','4326','EPSG','1079',NULL,'EPSG','5238','EPSG','5227',NULL,NULL,'OGP-Cze',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5242','S-JTSK (Ferro) to WGS 84 (3)',NULL,NULL,'EPSG','4818','EPSG','4326','EPSG','1079',NULL,'EPSG','1884','EPSG','5239',NULL,NULL,'OGP-Cze R05',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5838','Lisbon (Lisbon) to WGS 84 (2)',NULL,NULL,'EPSG','4803','EPSG','4326','EPSG','1294',NULL,'EPSG','1756','EPSG','1988',NULL,NULL,'OGP-Prt 2009',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','6714','Tokyo to JGD2011 (1)',NULL,NULL,'EPSG','4301','EPSG','6668','EPSG','4170',NULL,'EPSG','6712','EPSG','6713',NULL,NULL,'OGP-Jpn N Honshu',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','6739','NAD27 to NAD83(HARN) (22)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1410',NULL,'EPSG','1241','EPSG','1496',NULL,NULL,'NGS-Usa SD',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','6874','Tananarive (Paris) to WGS 84 (2)',NULL,NULL,'EPSG','4810','EPSG','4326','EPSG','3273',NULL,'EPSG','1265','EPSG','6873',NULL,NULL,'OGP-Mdg',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7811','NTF (Paris) to RGF93 (2)',NULL,NULL,'EPSG','4807','EPSG','4171','EPSG','3694',NULL,'EPSG','1763','EPSG','15958',NULL,NULL,'IOGP-Fra NTv2',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7965','Poolbeg height (ft(Br36)) to Malin Head height (1)',NULL,NULL,'EPSG','5754','EPSG','5731','EPSG','1305',NULL,'EPSG','7963','EPSG','7964',NULL,NULL,'1',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7967','Poolbeg height (ft(Br36)) to Belfast height (1)',NULL,NULL,'EPSG','5754','EPSG','5732','EPSG','1305',NULL,'EPSG','7963','EPSG','7966',NULL,NULL,'1',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7973','NGVD29 height (ftUS) to NAVD88 height (1)',NULL,NULL,'EPSG','5702','EPSG','5703','EPSG','2950',NULL,'EPSG','7972','EPSG','7969',NULL,NULL,'IOGP - US Conus W',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7974','NGVD29 height (ftUS) to NAVD88 height (2)',NULL,NULL,'EPSG','5702','EPSG','5703','EPSG','2949',NULL,'EPSG','7972','EPSG','7970',NULL,NULL,'IOGP - US Conus C',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7975','NGVD29 height (ftUS) to NAVD88 height (3)',NULL,NULL,'EPSG','5702','EPSG','5703','EPSG','2948',NULL,'EPSG','7972','EPSG','7971',NULL,NULL,'IOGP - US Conus E',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7983','HKPD height to HKCD depth (1)',NULL,NULL,'EPSG','5738','EPSG','5739','EPSG','3335',NULL,'EPSG','7982','EPSG','7977',NULL,NULL,'IOGP-HK',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7986','KOC CD height to KOC WD depth (1)',NULL,NULL,'EPSG','5790','EPSG','5789','EPSG','3267',NULL,'EPSG','7980','EPSG','7984',NULL,NULL,'IOGP-Kwt',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7987','KOC CD height to KOC WD depth (ft) (1)',NULL,NULL,'EPSG','5790','EPSG','5614','EPSG','3267',NULL,'EPSG','7980','EPSG','7984','EPSG','7985','IOGP-Kwt',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8047','ED50 to WGS 84 (15)',NULL,NULL,'EPSG','4230','EPSG','4326','EPSG','2332',NULL,'EPSG','1147','EPSG','1146',NULL,NULL,'NMA-Nor N65 1991',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8094','NTF (Paris) to WGS 84 (1)',NULL,NULL,'EPSG','4807','EPSG','4326','EPSG','3694',NULL,'EPSG','1763','EPSG','1193',NULL,NULL,'EPSG-Fra',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8174','Bogota 1975 (Bogota) to WGS 84 (1)',NULL,NULL,'EPSG','4802','EPSG','4326','EPSG','3229',NULL,'EPSG','1755','EPSG','1125',NULL,NULL,'DMA-Col',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8175','Monte Mario (Rome) to WGS 84 (1)',NULL,NULL,'EPSG','4806','EPSG','4326','EPSG','2339',NULL,'EPSG','1262','EPSG','1169',NULL,NULL,'EPSG-Ita',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8176','Tananarive (Paris) to WGS 84 (1)',NULL,NULL,'EPSG','4810','EPSG','4326','EPSG','3273',NULL,'EPSG','1265','EPSG','1227',NULL,NULL,'EPSG-Mdg',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8178','Batavia (Jakarta) to WGS 84 (1)',NULL,NULL,'EPSG','4813','EPSG','4326','EPSG','1355',NULL,'EPSG','1759','EPSG','1123',NULL,NULL,'EPSG-Idn Sumatra',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8183','HD72 to WGS 84 (1)',NULL,NULL,'EPSG','4237','EPSG','4326','EPSG','1119',NULL,'EPSG','1273','EPSG','1149',NULL,NULL,'EPSG-Hun',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8186','NTF (Paris) to ED50 (1)',NULL,NULL,'EPSG','4807','EPSG','4230','EPSG','3694',NULL,'EPSG','1763','EPSG','1276',NULL,NULL,'EPSG-Fra',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8188','NTF (Paris) to WGS 72 (1)',NULL,NULL,'EPSG','4807','EPSG','4322','EPSG','3694',NULL,'EPSG','1763','EPSG','1277',NULL,NULL,'EPSG-Fra',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8190','AGD66 to WGS 84 (2)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2575',NULL,'EPSG','1278','EPSG','1150',NULL,NULL,'EPSG-Aus 5m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8192','AGD84 to WGS 84 (3)',NULL,NULL,'EPSG','4203','EPSG','4326','EPSG','2575',NULL,'EPSG','1279','EPSG','1150',NULL,NULL,'EPSG-Aus 5m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8194','AGD84 to WGS 84 (4)',NULL,NULL,'EPSG','4203','EPSG','4326','EPSG','2575',NULL,'EPSG','1280','EPSG','1150',NULL,NULL,'EPSG-Aus 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8195','RT90 to WGS 84 (1)',NULL,NULL,'EPSG','4124','EPSG','4326','EPSG','1225',NULL,'EPSG','1437','EPSG','1149',NULL,NULL,'EPSG-Swe',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8199','Pulkovo 1942 to WGS 84 (2)',NULL,NULL,'EPSG','4284','EPSG','4326','EPSG','1145',NULL,'EPSG','1274','EPSG','1283',NULL,NULL,'EPSG-Ltu',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8211','Voirol 1875 (Paris) to WGS 84 (1)',NULL,NULL,'EPSG','4811','EPSG','4326','EPSG','1365',NULL,'EPSG','1266','EPSG','1294',NULL,NULL,'EPSG-Dza N',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8215','Tete to WGS 84 (1)',NULL,NULL,'EPSG','4127','EPSG','4326','EPSG','1167',NULL,'EPSG','1297','EPSG','1302',NULL,NULL,'EPSG-Moz',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8217','Tete to WGS 84 (2)',NULL,NULL,'EPSG','4127','EPSG','4326','EPSG','2350',NULL,'EPSG','1298','EPSG','1302',NULL,NULL,'EPSG-Moz A',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8219','Tete to WGS 84 (3)',NULL,NULL,'EPSG','4127','EPSG','4326','EPSG','2351',NULL,'EPSG','1299','EPSG','1302',NULL,NULL,'EPSG-Moz B',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8221','Tete to WGS 84 (4)',NULL,NULL,'EPSG','4127','EPSG','4326','EPSG','2352',NULL,'EPSG','1300','EPSG','1302',NULL,NULL,'EPSG-Moz C',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8223','Tete to WGS 84 (5)',NULL,NULL,'EPSG','4127','EPSG','4326','EPSG','2353',NULL,'EPSG','1301','EPSG','1302',NULL,NULL,'EPSG-Moz D',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8234','DHDN to WGS 84 (1)',NULL,NULL,'EPSG','4314','EPSG','4326','EPSG','2326',NULL,'EPSG','1309','EPSG','1149',NULL,NULL,'EPSG-Deu W',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8236','Pulkovo 1942 to WGS 84 (11)',NULL,NULL,'EPSG','4284','EPSG','4326','EPSG','1343',NULL,'EPSG','1310','EPSG','1149',NULL,NULL,'EPSG-Deu E',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8243','NAD27 to WGS 84 (25)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1061',NULL,'EPSG','1312','EPSG','1188',NULL,NULL,'EPSG-Can old',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8245','NAD27 to WGS 84 (26)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1061',NULL,'EPSG','1313','EPSG','1188',NULL,NULL,'EPSG-Can',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8263','MGI (Ferro) to WGS 84 (1)',NULL,NULL,'EPSG','4805','EPSG','4326','EPSG','2370',NULL,'EPSG','1757','EPSG','1306',NULL,NULL,'DMA-balk',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8363','ETRS89 + Baltic 1957 height to ETRS89 + EVRF2007 height (1)',NULL,NULL,'EPSG','8360','EPSG','7423','EPSG','1211',NULL,'EPSG','8361','EPSG','8362',NULL,NULL,'UGKK-Svk',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8386','Old Hawaiian to WGS 84 (1)',NULL,NULL,'EPSG','4135','EPSG','4326','EPSG','1334',NULL,'EPSG','1454','EPSG','1188',NULL,NULL,'EPSG-Usa Hi',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8388','St. Lawrence Island to WGS 84 (1)',NULL,NULL,'EPSG','4136','EPSG','4326','EPSG','1332',NULL,'EPSG','1455','EPSG','1188',NULL,NULL,'EPSG-Usa AK StL',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8390','St. Paul Island to WGS 84 (1)',NULL,NULL,'EPSG','4137','EPSG','4326','EPSG','1333',NULL,'EPSG','1456','EPSG','1188',NULL,NULL,'EPSG-Usa AK StP',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8392','St. George Island to WGS 84 (1)',NULL,NULL,'EPSG','4138','EPSG','4326','EPSG','1331',NULL,'EPSG','1457','EPSG','1188',NULL,NULL,'EPSG-Usa AK StG',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8394','NAD27(CGQ77) to WGS 84 (1)',NULL,NULL,'EPSG','4609','EPSG','4326','EPSG','1368',NULL,'EPSG','1451','EPSG','1188',NULL,NULL,'EPSG-Can Qc NT1',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8396','AGD66 to WGS 84 (3)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2283',NULL,'EPSG','1458','EPSG','1150',NULL,NULL,'EPSG-Aus ACT 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8398','AGD66 to WGS 84 (4)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','1282',NULL,'EPSG','1459','EPSG','1150',NULL,NULL,'EPSG-Aus Tas 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8400','AGD66 to WGS 84 (5)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2286',NULL,'EPSG','1460','EPSG','1150',NULL,NULL,'EPSG-Aus NSW Vic 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8402','Puerto Rico to WGS 84 (1)',NULL,NULL,'EPSG','4139','EPSG','4326','EPSG','1335',NULL,'EPSG','1461','EPSG','1188',NULL,NULL,'EPSG-PRVI',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8404','NAD27 to WGS 84 (27)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1368',NULL,'EPSG','1462','EPSG','1188',NULL,NULL,'EPSG-Can QC',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8406','NAD27(76) to WGS 84 (1)',NULL,NULL,'EPSG','4608','EPSG','4326','EPSG','1367',NULL,'EPSG','1463','EPSG','1188',NULL,NULL,'EPSG-Can On',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8408','AGD66 to WGS 84 (6)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2285',NULL,'EPSG','1464','EPSG','1150',NULL,NULL,'EPSG-Aus Vic 0.1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8418','ATS77 to WGS 84 (1)',NULL,NULL,'EPSG','4122','EPSG','4326','EPSG','1447',NULL,'EPSG','1472','EPSG','1473',NULL,NULL,'EPSG-Can NB',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8419','ATS77 to WGS 84 (2)',NULL,NULL,'EPSG','4122','EPSG','4326','EPSG','1533',NULL,'EPSG','1599','EPSG','1473',NULL,NULL,'EPSG-Can PEI',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8420','NAD27 to WGS 84 (32)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2375',NULL,'EPSG','1600','EPSG','1473',NULL,NULL,'SK PMC-Can SK',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8421','NAD83 to WGS 84 (7)',NULL,NULL,'EPSG','4269','EPSG','4326','EPSG','2375',NULL,'EPSG','1601','EPSG','1473',NULL,NULL,'SK PMC-Can SK',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8422','NAD83 to WGS 84 (8)',NULL,NULL,'EPSG','4269','EPSG','4326','EPSG','2376',NULL,'EPSG','1602','EPSG','1473',NULL,NULL,'Alb Env-Can AB',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8442','ETRS89 to S-JTSK (5)',NULL,NULL,'EPSG','4258','EPSG','4156','EPSG','1211',NULL,'EPSG','8365','EPSG','8364',NULL,NULL,'UGKK-Sk JTSK03',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8443','S-JTSK to ETRS89 (6)',NULL,NULL,'EPSG','4156','EPSG','4258','EPSG','1211',NULL,'EPSG','8364','EPSG','8367',NULL,NULL,'UGKK-Sk JTSK03',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8453','AGD66 to WGS 84 (7)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','1282',NULL,'EPSG','1506','EPSG','1150',NULL,NULL,'EPSG-Aus Tas 0.1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8454','AGD66 to WGS 84 (8)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2284',NULL,'EPSG','1507','EPSG','1150',NULL,NULL,'EPSG-Aus NT 0.1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8457','CH1903+ to WGS 84 (1)',NULL,NULL,'EPSG','4150','EPSG','4326','EPSG','1286',NULL,'EPSG','1509','EPSG','1511',NULL,NULL,'EPSG-CH',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8460','NAD27 to NAD83(HARN) (1)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1372',NULL,'EPSG','1241','EPSG','1474',NULL,NULL,'NGS-Usa AL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8461','NAD27 to NAD83(HARN) (2)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1373',NULL,'EPSG','1241','EPSG','1475',NULL,NULL,'NGS-Usa AZ',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8462','NAD27 to NAD83(HARN) (3)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2297',NULL,'EPSG','1241','EPSG','1476',NULL,NULL,'NGS-Usa CA n',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8463','NAD27 to NAD83(HARN) (4)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2298',NULL,'EPSG','1241','EPSG','1477',NULL,NULL,'NGS-Usa CA s',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8464','NAD27 to NAD83(HARN) (5)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1376',NULL,'EPSG','1241','EPSG','1478',NULL,NULL,'NGS-Usa CO',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8465','NAD27 to NAD83(HARN) (6)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1380',NULL,'EPSG','1241','EPSG','1479',NULL,NULL,'NGS-Usa GA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8466','NAD27 to NAD83(HARN) (7)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1379',NULL,'EPSG','1241','EPSG','1480',NULL,NULL,'NGS-Usa FL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8467','NAD27 to NAD83(HARN) (8)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2382',NULL,'EPSG','1241','EPSG','1481',NULL,NULL,'NGS-Usa ID MT e',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8468','NAD27 to NAD83(HARN) (9)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2383',NULL,'EPSG','1241','EPSG','1482',NULL,NULL,'NGS-Usa ID MT w',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8469','NAD27 to NAD83(HARN) (10)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1386',NULL,'EPSG','1241','EPSG','1483',NULL,NULL,'NGS-Usa KY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8470','NAD27 to NAD83(HARN) (11)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1387',NULL,'EPSG','1241','EPSG','1484',NULL,NULL,'NGS-Usa LA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8471','NAD27 to NAD83(HARN) (12)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2377',NULL,'EPSG','1241','EPSG','1485',NULL,NULL,'NGS-Usa DE MD',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8472','NAD27 to NAD83(HARN) (13)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1388',NULL,'EPSG','1241','EPSG','1486',NULL,NULL,'NGS-Usa ME',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8473','NAD27 to NAD83(HARN) (14)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1391',NULL,'EPSG','1241','EPSG','1487',NULL,NULL,'NGS-Usa MI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8474','NAD27 to NAD83(HARN) (15)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1393',NULL,'EPSG','1241','EPSG','1488',NULL,NULL,'NGS-Usa MS',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8475','NAD27 to NAD83(HARN) (16)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1396',NULL,'EPSG','1241','EPSG','1489',NULL,NULL,'NGS-Usa NE',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8476','NAD27 to NAD83(HARN) (17)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2378',NULL,'EPSG','1241','EPSG','1490',NULL,NULL,'NGS-Usa NewEng',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8477','NAD27 to NAD83(HARN) (18)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1400',NULL,'EPSG','1241','EPSG','1491',NULL,NULL,'NGS-Usa NM',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8478','NAD27 to NAD83(HARN) (19)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1401',NULL,'EPSG','1241','EPSG','1492',NULL,NULL,'NGS-Usa NY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8479','NAD27 to NAD83(HARN) (20)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1403',NULL,'EPSG','1241','EPSG','1493',NULL,NULL,'NGS-Usa ND',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8480','NAD27 to NAD83(HARN) (21)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1405',NULL,'EPSG','1241','EPSG','1494',NULL,NULL,'NGS-Usa OK',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8481','Puerto Rico to NAD83(HARN) (1)',NULL,NULL,'EPSG','4139','EPSG','4152','EPSG','1335',NULL,'EPSG','1241','EPSG','1495',NULL,NULL,'NGS-PRVI',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8482','NAD27 to NAD83(HARN) (22)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1410',NULL,'EPSG','1747','EPSG','1496',NULL,NULL,'NGS-Usa SD',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8483','NAD27 to NAD83(HARN) (23)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1411',NULL,'EPSG','1241','EPSG','1497',NULL,NULL,'NGS-Usa TN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8484','NAD27 to NAD83(HARN) (24)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2379',NULL,'EPSG','1241','EPSG','1498',NULL,NULL,'NGS-Usa TX e',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8485','NAD27 to NAD83(HARN) (25)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2380',NULL,'EPSG','1241','EPSG','1499',NULL,NULL,'NGS-Usa TX w',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8486','NAD27 to NAD83(HARN) (26)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1415',NULL,'EPSG','1241','EPSG','1500',NULL,NULL,'NGS-Usa VA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8487','NAD27 to NAD83(HARN) (27)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','2381',NULL,'EPSG','1241','EPSG','1501',NULL,NULL,'NGS-Usa OR WA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8488','NAD27 to NAD83(HARN) (28)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1418',NULL,'EPSG','1241','EPSG','1502',NULL,NULL,'NGS-Usa WI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8489','NAD27 to NAD83(HARN) (29)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1419',NULL,'EPSG','1241','EPSG','1503',NULL,NULL,'NGS-Usa WY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8496','NAD27 to WGS 84 (28)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2374',NULL,'EPSG','1241','EPSG','1515',NULL,NULL,'NGS-Usa conus',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8497','NAD27 to WGS 84 (29)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2373',NULL,'EPSG','1243','EPSG','1515',NULL,NULL,'NGS-Usa AK',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8508','Old Hawaiian to NAD83(HARN) (1)',NULL,NULL,'EPSG','4135','EPSG','4152','EPSG','1334',NULL,'EPSG','1454','EPSG','1520',NULL,NULL,'NGS-Usa HI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8509','NAD27 to NAD83(HARN) (30)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1383',NULL,'EPSG','1241','EPSG','1521',NULL,NULL,'NGS-Usa IN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8510','NAD27 to NAD83(HARN) (31)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1385',NULL,'EPSG','1241','EPSG','1522',NULL,NULL,'NGS-Usa KS',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8511','NAD27 to NAD83(HARN) (32)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1397',NULL,'EPSG','1241','EPSG','1523',NULL,NULL,'NGS-Usa NV',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8512','NAD27 to NAD83(HARN) (33)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1404',NULL,'EPSG','1241','EPSG','1524',NULL,NULL,'NGS-Usa OH',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8513','NAD27 to NAD83(HARN) (34)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1413',NULL,'EPSG','1241','EPSG','1525',NULL,NULL,'NGS-Usa UT',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8514','NAD27 to NAD83(HARN) (35)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1417',NULL,'EPSG','1241','EPSG','1526',NULL,NULL,'NGS-Usa WV',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8517','Chos Malal 1914 to WGS 84 (1)',NULL,NULL,'EPSG','4160','EPSG','4326','EPSG','2325',NULL,'EPSG','1528','EPSG','1527',NULL,NULL,'TOT-Arg Neu',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8530','South Yemen to WGS 84 (1)',NULL,NULL,'EPSG','4164','EPSG','4326','EPSG','1340',NULL,'EPSG','1539','EPSG','1540',NULL,NULL,'IGN-Yem South',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8532','Indian 1960 to WGS 84 (1)',NULL,NULL,'EPSG','4131','EPSG','4326','EPSG','1495',NULL,'EPSG','1541','EPSG','1240',NULL,NULL,'PV-Vnm',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8537','Egypt 1907 to WGS 84 (2)',NULL,NULL,'EPSG','4229','EPSG','4326','EPSG','1086',NULL,'EPSG','1545','EPSG','1237',NULL,NULL,'MCE-Egy',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8553','NAD27 to NAD83(HARN) (36)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1382',NULL,'EPSG','1241','EPSG','1553',NULL,NULL,'NGS-Usa IL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8554','NAD27 to NAD83(HARN) (37)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1399',NULL,'EPSG','1241','EPSG','1554',NULL,NULL,'NGS-Usa NJ',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8560','AGD84 to WGS 84 (5)',NULL,NULL,'EPSG','4203','EPSG','4326','EPSG','1280',NULL,'EPSG','1559','EPSG','1150',NULL,NULL,'EPSG-Aus WA',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8562','Nord Sahara 1959 to WGS 84 (3)',NULL,NULL,'EPSG','4307','EPSG','4326','EPSG','2393',NULL,'EPSG','1560','EPSG','1240',NULL,NULL,'CGG-Alg HM',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8563','NZGD49 to WGS 84 (3)',NULL,NULL,'EPSG','4272','EPSG','4326','EPSG','1175',NULL,'EPSG','1568','EPSG','1565',NULL,NULL,'OSG-Nzl 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8564','NAD27(CGQ77) to WGS 84 (2)',NULL,NULL,'EPSG','4609','EPSG','4326','EPSG','1368',NULL,'EPSG','1576','EPSG','1473',NULL,NULL,'EPSG-Can Qc NT2',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8565','NAD27 to WGS 84 (31)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1368',NULL,'EPSG','1574','EPSG','1188',NULL,NULL,'EPSG-Can Que',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8566','NAD83 to WGS 84 (6)',NULL,NULL,'EPSG','4269','EPSG','4326','EPSG','1368',NULL,'EPSG','1572','EPSG','1188',NULL,NULL,'EPSG-Can Qc',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8568','Deir ez Zor to WGS 84 (1)',NULL,NULL,'EPSG','4227','EPSG','4326','EPSG','2329',NULL,'EPSG','1584','EPSG','1240',NULL,NULL,'EPSG-Syr',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8569','ED50 to WGS 84 (21)',NULL,NULL,'EPSG','4230','EPSG','4326','EPSG','2332',NULL,'EPSG','1588','EPSG','1149',NULL,NULL,'EPSG-Nor N65 1997',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8571','Accra to WGS 84 (2)',NULL,NULL,'EPSG','4168','EPSG','4326','EPSG','1505',NULL,'EPSG','1570','EPSG','1240',NULL,NULL,'EPSG-Gha',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8572','Amersfoort to WGS 84 (2)',NULL,NULL,'EPSG','4289','EPSG','4326','EPSG','1275',NULL,'EPSG','1571','EPSG','1149',NULL,NULL,'EPSG-Nld',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8573','RGF93 to WGS 84 (1)',NULL,NULL,'EPSG','4171','EPSG','4326','EPSG','1096',NULL,'EPSG','1591','EPSG','1149',NULL,NULL,'EPSG-Fra',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8574','American Samoa 1962 to WGS 84 (2)',NULL,NULL,'EPSG','4169','EPSG','4326','EPSG','2288',NULL,'EPSG','1578','EPSG','1580',NULL,NULL,'EPSG-Asm',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8575','American Samoa 1962 to WGS 84 (3)',NULL,NULL,'EPSG','4169','EPSG','4326','EPSG','2289',NULL,'EPSG','1579','EPSG','1580',NULL,NULL,'EPSG-Asm',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8576','AGD66 to WGS 84 (9)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','1282',NULL,'EPSG','1594','EPSG','1150',NULL,NULL,'EPSG-Aus Tas 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8577','AGD66 to WGS 84 (10)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2284',NULL,'EPSG','1595','EPSG','1150',NULL,NULL,'EPSG-Aus NT',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8578','AGD66 to WGS 84 (11)',NULL,NULL,'EPSG','4202','EPSG','4326','EPSG','2287',NULL,'EPSG','1596','EPSG','1150',NULL,NULL,'EPSG-Aus',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8579','AGD84 to WGS 84 (6)',NULL,NULL,'EPSG','4203','EPSG','4326','EPSG','1280',NULL,'EPSG','1593','EPSG','1150',NULL,NULL,'EPSG-Aus WA',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8580','IRENET95 to WGS 84 (1)',NULL,NULL,'EPSG','4173','EPSG','4326','EPSG','1305',NULL,'EPSG','1611','EPSG','1149',NULL,NULL,'OSI-Ire',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8581','PSD93 to WGS 84 (2)',NULL,NULL,'EPSG','4134','EPSG','4326','EPSG','3288',NULL,'EPSG','1616','EPSG','1237',NULL,NULL,'PDO-Omn 93',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8582','Old Hawaiian to WGS 84 (2)',NULL,NULL,'EPSG','4135','EPSG','4326','EPSG','1334',NULL,'EPSG','1454','EPSG','1741',NULL,NULL,'EPSG-Usa Hi',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8583','Puerto Rico to WGS 84 (2)',NULL,NULL,'EPSG','4139','EPSG','4326','EPSG','3634',NULL,'EPSG','1461','EPSG','1731',NULL,NULL,'EPSG-PRVI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8584','NAD27 to NAD83(CSRS98) (3)',NULL,NULL,'EPSG','4267','EPSG','4140','EPSG','2376',NULL,'EPSG','1313','EPSG','1752',NULL,NULL,'EPSG-Can AB',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8585','NAD27 to WGS 84 (36)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2376',NULL,'EPSG','1313','EPSG','1702',NULL,NULL,'EPSG-Can AB',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8586','NAD27 to NAD83(HARN) (38)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1374',NULL,'EPSG','1241','EPSG','1704',NULL,NULL,'NGS-Usa AR',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8587','NAD27 to NAD83(HARN) (39)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1384',NULL,'EPSG','1241','EPSG','1705',NULL,NULL,'NGS-Usa IA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8588','NAD27 to NAD83(HARN) (40)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1392',NULL,'EPSG','1241','EPSG','1706',NULL,NULL,'NGS-Usa MN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8589','NAD27 to NAD83(HARN) (41)',NULL,NULL,'EPSG','4267','EPSG','4152','EPSG','1394',NULL,'EPSG','1241','EPSG','1707',NULL,NULL,'NGS-Usa MO',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8590','NAD27 to WGS 84 (37)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1372',NULL,'EPSG','1241','EPSG','1717',NULL,NULL,'EPSG-Usa AL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8591','NAD27 to WGS 84 (38)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1373',NULL,'EPSG','1241','EPSG','1728',NULL,NULL,'EPSG-Usa AZ',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8592','NAD27 to WGS 84 (39)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1374',NULL,'EPSG','1241','EPSG','1708',NULL,NULL,'EPSG-Usa AR',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8593','NAD27 to WGS 84 (40)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2297',NULL,'EPSG','1241','EPSG','1739',NULL,NULL,'EPSG-Usa CA n',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8594','NAD27 to WGS 84 (41)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2298',NULL,'EPSG','1241','EPSG','1750',NULL,NULL,'EPSG-Usa CA s',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8595','NAD27 to WGS 84 (42)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1376',NULL,'EPSG','1241','EPSG','1712',NULL,NULL,'EPSG-Usa CO',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8596','NAD27 to WGS 84 (43)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1379',NULL,'EPSG','1241','EPSG','1714',NULL,NULL,'EPSG-Usa FL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8597','NAD27 to WGS 84 (44)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1380',NULL,'EPSG','1241','EPSG','1713',NULL,NULL,'EPSG-Usa GA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8598','NAD27 to WGS 84 (45)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1382',NULL,'EPSG','1241','EPSG','1748',NULL,NULL,'EPSG-Usa IL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8599','NAD27 to WGS 84 (46)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1383',NULL,'EPSG','1241','EPSG','1742',NULL,NULL,'EPSG-Usa IN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8600','NAD27 to WGS 84 (47)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1384',NULL,'EPSG','1241','EPSG','1709',NULL,NULL,'EPSG-Usa IA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8601','NAD27 to WGS 84 (48)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1385',NULL,'EPSG','1241','EPSG','1743',NULL,NULL,'EPSG-Usa KS',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8602','NAD27 to WGS 84 (49)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1386',NULL,'EPSG','1241','EPSG','1718',NULL,NULL,'EPSG-Usa KY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8603','NAD27 to WGS 84 (50)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1387',NULL,'EPSG','1241','EPSG','1719',NULL,NULL,'EPSG-Usa LA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8604','NAD27 to WGS 84 (51)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1388',NULL,'EPSG','1241','EPSG','1721',NULL,NULL,'EPSG-Usa ME',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8605','NAD27 to WGS 84 (52)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2377',NULL,'EPSG','1241','EPSG','1720',NULL,NULL,'EPSG-Usa DE MD',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8606','NAD27 to WGS 84 (53)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2378',NULL,'EPSG','1241','EPSG','1725',NULL,NULL,'EPSG-Usa NewEng',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8607','NAD27 to WGS 84 (54)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1391',NULL,'EPSG','1241','EPSG','1722',NULL,NULL,'EPSG-Usa MI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8608','NAD27 to WGS 84 (55)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1392',NULL,'EPSG','1241','EPSG','1710',NULL,NULL,'EPSG-Usa MN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8609','NAD27 to WGS 84 (56)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1393',NULL,'EPSG','1241','EPSG','1723',NULL,NULL,'EPSG-Usa MS',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8610','NAD27 to WGS 84 (57)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1394',NULL,'EPSG','1241','EPSG','1711',NULL,NULL,'EPSG-Usa MO',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8611','NAD27 to WGS 84 (58)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2382',NULL,'EPSG','1241','EPSG','1715',NULL,NULL,'EPSG-Usa ID MT e',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8612','NAD27 to WGS 84 (59)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2383',NULL,'EPSG','1241','EPSG','1716',NULL,NULL,'EPSG-Usa ID MT w',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8613','NAD27 to WGS 84 (60)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1396',NULL,'EPSG','1241','EPSG','1724',NULL,NULL,'EPSG-Usa NE',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8614','NAD27 to WGS 84 (61)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1397',NULL,'EPSG','1241','EPSG','1744',NULL,NULL,'EPSG-Usa NV',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8615','NAD27 to WGS 84 (62)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1399',NULL,'EPSG','1241','EPSG','1749',NULL,NULL,'EPSG-Usa NJ',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8616','NAD27 to WGS 84 (63)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1400',NULL,'EPSG','1241','EPSG','1726',NULL,NULL,'EPSG-Usa NM',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8617','NAD27 to WGS 84 (64)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1401',NULL,'EPSG','1241','EPSG','1727',NULL,NULL,'EPSG-Usa NY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8618','NAD27 to WGS 84 (65)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1403',NULL,'EPSG','1241','EPSG','1729',NULL,NULL,'EPSG-Usa ND',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8619','NAD27 to WGS 84 (66)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1404',NULL,'EPSG','1241','EPSG','1745',NULL,NULL,'EPSG-Usa OH',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8620','NAD27 to WGS 84 (67)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1405',NULL,'EPSG','1241','EPSG','1730',NULL,NULL,'EPSG-Usa OK',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8621','NAD27 to WGS 84 (68)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2381',NULL,'EPSG','1241','EPSG','1737',NULL,NULL,'EPSG-Usa OR WA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8622','NAD27 to WGS 84 (69)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1410',NULL,'EPSG','1241','EPSG','1732',NULL,NULL,'EPSG-Usa SD',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8623','NAD27 to WGS 84 (70)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1411',NULL,'EPSG','1241','EPSG','1733',NULL,NULL,'EPSG-Usa TN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8624','NAD27 to WGS 84 (71)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2379',NULL,'EPSG','1241','EPSG','1734',NULL,NULL,'EPSG-Usa TX e',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8625','NAD27 to WGS 84 (72)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2380',NULL,'EPSG','1241','EPSG','1735',NULL,NULL,'EPSG-Usa TX w',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8626','NAD27 to WGS 84 (73)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1413',NULL,'EPSG','1241','EPSG','1746',NULL,NULL,'EPSG-Usa UT',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8627','NAD27 to WGS 84 (74)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1415',NULL,'EPSG','1241','EPSG','1736',NULL,NULL,'EPSG-Usa VA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8628','NAD27 to WGS 84 (75)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1417',NULL,'EPSG','1241','EPSG','1747',NULL,NULL,'EPSG-Usa WV',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8629','NAD27 to WGS 84 (76)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1418',NULL,'EPSG','1241','EPSG','1738',NULL,NULL,'EPSG-Usa WI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8630','NAD27 to WGS 84 (77)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','1419',NULL,'EPSG','1241','EPSG','1740',NULL,NULL,'EPSG-Usa WY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8631','Garoua to WGS 84 (1)',NULL,NULL,'EPSG','4197','EPSG','4326','EPSG','2590',NULL,'EPSG','1805','EPSG','1240',NULL,NULL,'EPSG-Cmr',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8632','Kousseri to WGS 84 (1)',NULL,NULL,'EPSG','4198','EPSG','4326','EPSG','2591',NULL,'EPSG','1806','EPSG','1240',NULL,NULL,'EPSG-Cmr',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8633','Yoff to WGS 84 (1)',NULL,NULL,'EPSG','4310','EPSG','4326','EPSG','1207',NULL,'EPSG','1828','EPSG','1238',NULL,NULL,'EPSG-SEN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8634','Beduaram to WGS 84 (1)',NULL,NULL,'EPSG','4213','EPSG','4326','EPSG','2771',NULL,'EPSG','1839','EPSG','1240',NULL,NULL,'ELF-Ner SE',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8635','NAD27 to NAD83(CSRS) (3)',NULL,NULL,'EPSG','4267','EPSG','4617','EPSG','2376',NULL,'EPSG','1313','EPSG','1849',NULL,NULL,'EPSG-Can AB',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8636','Carthage (Paris) to WGS 84 (1)',NULL,NULL,'EPSG','4816','EPSG','4326','EPSG','1618',NULL,'EPSG','1881','EPSG','1130',NULL,NULL,'EPSG-Tun',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8637','Lisbon (Lisbon) to WGS 84 (1)',NULL,NULL,'EPSG','4803','EPSG','4326','EPSG','1294',NULL,'EPSG','1756','EPSG','1944',NULL,NULL,'EPSG-Prt',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8638','Makassar (Jakarta) to WGS 84 (1)',NULL,NULL,'EPSG','4804','EPSG','4326','EPSG','1316',NULL,'EPSG','1260','EPSG','1837',NULL,NULL,'EPSG - Idn Sul SW',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8639','NGO 1948 (Oslo) to WGS 84 (1)',NULL,NULL,'EPSG','4817','EPSG','4326','EPSG','1352',NULL,'EPSG','1762','EPSG','1654',NULL,NULL,'EPSG-Nor',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8640','Nord Sahara 1959 (Paris) to WGS 84 (1)',NULL,NULL,'EPSG','4819','EPSG','4326','EPSG','1026',NULL,'EPSG','1882','EPSG','1253',NULL,NULL,'EPSG-Dza',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8641','Segara (Jakarta) to WGS 84 (1)',NULL,NULL,'EPSG','4820','EPSG','4326','EPSG','1360',NULL,'EPSG','1883','EPSG','1897',NULL,NULL,'EPSG-Idn Kal SW',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8642','S-JTSK (Ferro) to WGS 84 (1)',NULL,NULL,'EPSG','4818','EPSG','4326','EPSG','1079',NULL,'EPSG','1884','EPSG','1623',NULL,NULL,'EPSG-Cze',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8643','Greek to WGS 84 (1)',NULL,NULL,'EPSG','4120','EPSG','4326','EPSG','3254',NULL,'EPSG','1891','EPSG','1272',NULL,NULL,'EPSG-Grc',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8644','Greek (Athens) to WGS 84 (1)',NULL,NULL,'EPSG','4815','EPSG','4326','EPSG','3254',NULL,'EPSG','1761','EPSG','1891','EPSG','1272','EPSG-Grc',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8645','MGI (Ferro) to WGS 84 (2)',NULL,NULL,'EPSG','4805','EPSG','4326','EPSG','1037',NULL,'EPSG','1757','EPSG','1618',NULL,NULL,'BEV-Aut',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8646','Manoca 1962 to WGS 84 (1)',NULL,NULL,'EPSG','4193','EPSG','4326','EPSG','2555',NULL,'EPSG','1902','EPSG','1240',NULL,NULL,'OGP-Cmr',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8647','NAD27 to WGS 84 (78)',NULL,NULL,'EPSG','4267','EPSG','4326','EPSG','2831',NULL,'EPSG','1313','EPSG','1950','EPSG','1946','EPSG-Can E Off',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8648','Lisbon 1890 (Lisbon) to WGS 84 (1)',NULL,NULL,'EPSG','4904','EPSG','4326','EPSG','1294',NULL,'EPSG','1991','EPSG','1986',NULL,NULL,'EPSG-Prt 5m',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8649','Lisbon 1890 (Lisbon) to WGS 84 (2)',NULL,NULL,'EPSG','4904','EPSG','4326','EPSG','1294',NULL,'EPSG','1991','EPSG','1990',NULL,NULL,'EPSG-Prt 1m',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8650','Palestine 1923 to WGS 84 (2)',NULL,NULL,'EPSG','4281','EPSG','4326','EPSG','2603',NULL,'EPSG','1071','EPSG','1073',NULL,NULL,'SoI-Isr',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8651','Vientiane 1982 to WGS 84 (1)',NULL,NULL,'EPSG','4676','EPSG','4326','EPSG','1138',NULL,'EPSG','1063','EPSG','1065',NULL,NULL,'EPSG-Lao',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8652','Lao 1993 to WGS 84 (1)',NULL,NULL,'EPSG','4677','EPSG','4326','EPSG','1138',NULL,'EPSG','1064','EPSG','1065',NULL,NULL,'EPSG-Lao',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8655','Manoca 1962 to WGS 84 (2)',NULL,NULL,'EPSG','4193','EPSG','4326','EPSG','2555',NULL,'EPSG','1902','EPSG','1240',NULL,NULL,'OGP-Cmr',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8656','Mhast (offshore) to WGS 84 (1)',NULL,NULL,'EPSG','4705','EPSG','4326','EPSG','3180',NULL,'EPSG','15790','EPSG','1240',NULL,NULL,'OGP-Ago Cab',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8657','Egypt Gulf of Suez S-650 TL to WGS 84 (1)',NULL,NULL,'EPSG','4706','EPSG','4326','EPSG','2341',NULL,'EPSG','15792','EPSG','1240',NULL,NULL,'OGP-Egy GoS',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8659','Kertau (RSO) to WGS 84 (1)',NULL,NULL,'EPSG','4751','EPSG','4326','EPSG','1309',NULL,'EPSG','15896','EPSG','1158',NULL,NULL,'OGP-Mys',0);
+1 -1
View File
@@ -2,7 +2,7 @@
INSERT INTO "geodetic_crs" VALUES('OGC','CRS84','WGS 84 (CRS84)',NULL,NULL,'geographic 2D','EPSG','6424','EPSG','6326','EPSG','1262',NULL,0);
INSERT INTO "other_transformation" VALUES('PROJ','CRS84_TO_EPSG_4326','OGC:CRS84 to WGS 84',NULL,NULL,'EPSG','9843','Axis Order Reversal (2D)','OGC','CRS84','EPSG','4326','EPSG','1262',0.0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('PROJ','CRS84_TO_EPSG_4326','OGC:CRS84 to WGS 84',NULL,NULL,'EPSG','9843','Axis Order Reversal (2D)','OGC','CRS84','EPSG','4326','EPSG','1262',0.0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
-- alias of EPSG:3857
INSERT INTO "projected_crs" VALUES('EPSG','900913','Google Maps Global Mercator',NULL,NULL,'EPSG','4499','EPSG','4326','EPSG','3856','EPSG','3544',NULL,1);
+1226 -916
View File
File diff suppressed because it is too large Load Diff
+8
View File
@@ -896,3 +896,11 @@ INSERT INTO "geodetic_crs" VALUES('EPSG','8816','MTRF-2000',NULL,NULL,'geocentri
INSERT INTO "geodetic_crs" VALUES('EPSG','8817','MTRF-2000',NULL,NULL,'geographic 3D','EPSG','6423','EPSG','1218','EPSG','1206',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','8818','MTRF-2000',NULL,NULL,'geographic 2D','EPSG','6422','EPSG','1218','EPSG','1206',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','8860','NAD83(FBN)',NULL,NULL,'geographic 2D','EPSG','6422','EPSG','1211','EPSG','4515',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','8898','RGWF96',NULL,NULL,'geocentric','EPSG','6500','EPSG','1223','EPSG','1255',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','8899','RGWF96',NULL,NULL,'geographic 3D','EPSG','6423','EPSG','1223','EPSG','1255',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','8900','RGWF96',NULL,NULL,'geographic 2D','EPSG','6422','EPSG','1223','EPSG','1255',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','8901','RGWF96 (lon-lat)',NULL,NULL,'geographic 3D','EPSG','6426','EPSG','1223','EPSG','1255',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','8902','RGWF96 (lon-lat)',NULL,NULL,'geographic 2D','EPSG','6424','EPSG','1223','EPSG','1255',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','8905','CR-SIRGAS',NULL,NULL,'geocentric','EPSG','6500','EPSG','1225','EPSG','1074',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','8906','CR-SIRGAS',NULL,NULL,'geographic 3D','EPSG','6423','EPSG','1225','EPSG','1074',NULL,0);
INSERT INTO "geodetic_crs" VALUES('EPSG','8907','CR-SIRGAS',NULL,NULL,'geographic 2D','EPSG','6422','EPSG','1225','EPSG','1074',NULL,0);
+2
View File
@@ -116,6 +116,8 @@ INSERT INTO "geodetic_datum" VALUES('EPSG','1211','NAD83 (Federal Base Network)'
INSERT INTO "geodetic_datum" VALUES('EPSG','1212','NAD83 (High Accuracy Reference Network - Corrected)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3634',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1214','Serbian Spatial Reference System 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3534',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1218','MOMRA Terrestrial Reference Frame 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1206',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1223','Reseau Geodesique de Wallis et Futuna 1996',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1255',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1225','CR-SIRGAS',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1074',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6001','Not specified (based on Airy 1830 ellipsoid)',NULL,NULL,'EPSG','7001','EPSG','8901','EPSG','1263',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6002','Not specified (based on Airy Modified 1849 ellipsoid)',NULL,NULL,'EPSG','7002','EPSG','8901','EPSG','1263',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6003','Not specified (based on Australian National Spheroid)',NULL,NULL,'EPSG','7003','EPSG','8901','EPSG','1263',0);
+15
View File
@@ -464,6 +464,21 @@ INSERT INTO grid_alternatives(original_grid_name,
'proj-datumgrid-europe',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('RAF18.tac',
'RAF18.gtx',
'GTX',
'vgridshift',
1,
'proj-datumgrid-europe',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
+385 -385
View File
@@ -1,387 +1,387 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "grid_transformation" VALUES('EPSG','1068','Guam 1963 to NAD83(HARN) (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4675','EPSG','4152','EPSG','3255',5.0,'EPSG','8657','Latitude difference file','guhpgn.las','EPSG','8658','Longitude difference file','guhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1069','Guam 1963 to WGS 84 (2)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4675','EPSG','4326','EPSG','3255',5.0,'EPSG','8657','Latitude difference file','guhpgn.las','EPSG','8658','Longitude difference file','guhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1241','NAD27 to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4267','EPSG','4269','EPSG','2374',0.15,'EPSG','8657','Latitude difference file','conus.las','EPSG','8658','Longitude difference file','conus.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1243','NAD27 to NAD83 (2)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4267','EPSG','4269','EPSG','2373',0.5,'EPSG','8657','Latitude difference file','alaska.las','EPSG','8658','Longitude difference file','alaska.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1295','RGNC91-93 to NEA74 Noumea (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4749','EPSG','4644','EPSG','2823',0.05,'EPSG','8656','Latitude and longitude difference file','RGNC1991_NEA74Noumea.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1312','NAD27 to NAD83 (3)',NULL,NULL,'EPSG','9614','NTv1','EPSG','4267','EPSG','4269','EPSG','1061',1.0,'EPSG','8656','Latitude and longitude difference file','NTv1_0.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1313','NAD27 to NAD83 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4269','EPSG','4517',1.5,'EPSG','8656','Latitude and longitude difference file','NTv2_0.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1451','NAD27(CGQ77) to NAD83 (1)',NULL,NULL,'EPSG','9614','NTv1','EPSG','4609','EPSG','4269','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','PQV4.DAC',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1454','Old Hawaiian to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4135','EPSG','4269','EPSG','1334',0.2,'EPSG','8657','Latitude difference file','hawaii.las','EPSG','8658','Longitude difference file','hawaii.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1455','St. Lawrence Island to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4136','EPSG','4269','EPSG','1332',0.5,'EPSG','8657','Latitude difference file','stlrnc.las','EPSG','8658','Longitude difference file','stlrnc.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1456','St. Paul Island to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4137','EPSG','4269','EPSG','1333',0.5,'EPSG','8657','Latitude difference file','stpaul.las','EPSG','8658','Longitude difference file','stpaul.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1457','St. George Island to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4138','EPSG','4269','EPSG','1331',0.5,'EPSG','8657','Latitude difference file','stgeorge.las','EPSG','8658','Longitude difference file','stgeorge.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1461','Puerto Rico to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4139','EPSG','4269','EPSG','1335',0.05,'EPSG','8657','Latitude difference file','prvi.las','EPSG','8658','Longitude difference file','prvi.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1462','NAD27 to NAD83 (5)',NULL,NULL,'EPSG','9614','NTv1','EPSG','4267','EPSG','4269','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','GS2783v1.QUE',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1463','NAD27(76) to NAD83 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4608','EPSG','4269','EPSG','1367',1.0,'EPSG','8656','Latitude and longitude difference file','May76v20.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1464','AGD66 to GDA94 (5)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2285',0.1,'EPSG','8656','Latitude and longitude difference file','vic_0799.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1472','ATS77 to NAD83(CSRS98) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4140','EPSG','1447',NULL,'EPSG','8656','Latitude and longitude difference file','NB7783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','1474','NAD83 to NAD83(HARN) (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1372',0.05,'EPSG','8657','Latitude difference file','alhpgn.las','EPSG','8658','Longitude difference file','alhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1475','NAD83 to NAD83(HARN) (2)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1373',0.05,'EPSG','8657','Latitude difference file','azhpgn.las','EPSG','8658','Longitude difference file','azhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1476','NAD83 to NAD83(HARN) (3)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2297',0.05,'EPSG','8657','Latitude difference file','cnhpgn.las','EPSG','8658','Longitude difference file','cnhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1477','NAD83 to NAD83(HARN) (4)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2298',0.05,'EPSG','8657','Latitude difference file','cshpgn.las','EPSG','8658','Longitude difference file','cshpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1478','NAD83 to NAD83(HARN) (5)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1376',0.05,'EPSG','8657','Latitude difference file','cohpgn.las','EPSG','8658','Longitude difference file','cohpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1479','NAD83 to NAD83(HARN) (6)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1380',0.05,'EPSG','8657','Latitude difference file','gahpgn.las','EPSG','8658','Longitude difference file','gahpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1480','NAD83 to NAD83(HARN) (7)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1379',0.05,'EPSG','8657','Latitude difference file','flhpgn.las','EPSG','8658','Longitude difference file','flhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1481','NAD83 to NAD83(HARN) (8)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2382',0.05,'EPSG','8657','Latitude difference file','emhpgn.las','EPSG','8658','Longitude difference file','emhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1482','NAD83 to NAD83(HARN) (9)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2383',0.05,'EPSG','8657','Latitude difference file','wmhpgn.las','EPSG','8658','Longitude difference file','wmhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1483','NAD83 to NAD83(HARN) (10)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1386',0.05,'EPSG','8657','Latitude difference file','kyhpgn.las','EPSG','8658','Longitude difference file','kyhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1484','NAD83 to NAD83(HARN) (11)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1387',0.05,'EPSG','8657','Latitude difference file','lahpgn.las','EPSG','8658','Longitude difference file','lahpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1485','NAD83 to NAD83(HARN) (12)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2377',0.05,'EPSG','8657','Latitude difference file','mdhpgn.las','EPSG','8658','Longitude difference file','mdhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1486','NAD83 to NAD83(HARN) (13)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1388',0.05,'EPSG','8657','Latitude difference file','mehpgn.las','EPSG','8658','Longitude difference file','mehpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1487','NAD83 to NAD83(HARN) (14)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1391',0.05,'EPSG','8657','Latitude difference file','mihpgn.las','EPSG','8658','Longitude difference file','mihpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1488','NAD83 to NAD83(HARN) (15)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1393',0.05,'EPSG','8657','Latitude difference file','mshpgn.las','EPSG','8658','Longitude difference file','mshpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1489','NAD83 to NAD83(HARN) (16)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1396',0.05,'EPSG','8657','Latitude difference file','nbhpgn.las','EPSG','8658','Longitude difference file','nbhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1490','NAD83 to NAD83(HARN) (17)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2378',0.05,'EPSG','8657','Latitude difference file','nehpgn.las','EPSG','8658','Longitude difference file','nehpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1491','NAD83 to NAD83(HARN) (18)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1400',0.05,'EPSG','8657','Latitude difference file','nmhpgn.las','EPSG','8658','Longitude difference file','nmhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1492','NAD83 to NAD83(HARN) (19)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1401',0.05,'EPSG','8657','Latitude difference file','nyhpgn.las','EPSG','8658','Longitude difference file','nyhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1493','NAD83 to NAD83(HARN) (20)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1403',0.05,'EPSG','8657','Latitude difference file','ndhpgn.las','EPSG','8658','Longitude difference file','ndhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1494','NAD83 to NAD83(HARN) (21)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1405',0.05,'EPSG','8657','Latitude difference file','okhpgn.las','EPSG','8658','Longitude difference file','okhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1495','NAD83 to NAD83(HARN) (22)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','3634',0.05,'EPSG','8657','Latitude difference file','pvhpgn.las','EPSG','8658','Longitude difference file','pvhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1496','NAD83 to NAD83(HARN) (23)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1410',0.05,'EPSG','8657','Latitude difference file','sdhpgn.las','EPSG','8658','Longitude difference file','sdhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1497','NAD83 to NAD83(HARN) (24)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1411',0.05,'EPSG','8657','Latitude difference file','tnhpgn.las','EPSG','8658','Longitude difference file','tnhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1498','NAD83 to NAD83(HARN) (25)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2379',0.05,'EPSG','8657','Latitude difference file','ethpgn.las','EPSG','8658','Longitude difference file','ethpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1499','NAD83 to NAD83(HARN) (26)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2380',0.05,'EPSG','8657','Latitude difference file','wthpgn.las','EPSG','8658','Longitude difference file','wthpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1500','NAD83 to NAD83(HARN) (27)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1415',0.05,'EPSG','8657','Latitude difference file','vahpgn.las','EPSG','8658','Longitude difference file','vahpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1501','NAD83 to NAD83(HARN) (28)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2381',0.05,'EPSG','8657','Latitude difference file','wohpgn.las','EPSG','8658','Longitude difference file','wohpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1502','NAD83 to NAD83(HARN) (29)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1418',0.05,'EPSG','8657','Latitude difference file','wihpgn.las','EPSG','8658','Longitude difference file','wihpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1503','NAD83 to NAD83(HARN) (30)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1419',0.05,'EPSG','8657','Latitude difference file','wyhpgn.las','EPSG','8658','Longitude difference file','wyhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1506','AGD66 to GDA94 (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','1282',0.1,'EPSG','8656','Latitude and longitude difference file','tas_1098.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1507','AGD66 to GDA94 (7)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2284',0.1,'EPSG','8656','Latitude and longitude difference file','nt_0599.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1520','NAD83 to NAD83(HARN) (31)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1334',0.05,'EPSG','8657','Latitude difference file','hihpgn.las','EPSG','8658','Longitude difference file','hihpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1521','NAD83 to NAD83(HARN) (32)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1383',0.05,'EPSG','8657','Latitude difference file','inhpgn.las','EPSG','8658','Longitude difference file','inhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1522','NAD83 to NAD83(HARN) (33)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1385',0.05,'EPSG','8657','Latitude difference file','kshpgn.las','EPSG','8658','Longitude difference file','kshpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1523','NAD83 to NAD83(HARN) (34)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1397',0.05,'EPSG','8657','Latitude difference file','nvhpgn.las','EPSG','8658','Longitude difference file','nvhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1524','NAD83 to NAD83(HARN) (35)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1404',0.05,'EPSG','8657','Latitude difference file','ohhpgn.las','EPSG','8658','Longitude difference file','ohhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1525','NAD83 to NAD83(HARN) (36)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1413',0.05,'EPSG','8657','Latitude difference file','uthpgn.las','EPSG','8658','Longitude difference file','uthpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1526','NAD83 to NAD83(HARN) (37)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1417',0.05,'EPSG','8657','Latitude difference file','wvhpgn.las','EPSG','8658','Longitude difference file','wvhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1553','NAD83 to NAD83(HARN) (38)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1382',0.05,'EPSG','8657','Latitude difference file','ilhpgn.las','EPSG','8658','Longitude difference file','ilhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1554','NAD83 to NAD83(HARN) (39)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1399',0.05,'EPSG','8657','Latitude difference file','njhpgn.las','EPSG','8658','Longitude difference file','njhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1559','AGD84 to GDA94 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4203','EPSG','4283','EPSG','1280',0.1,'EPSG','8656','Latitude and longitude difference file','wa_0400.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','1568','NZGD49 to NZGD2000 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4272','EPSG','4167','EPSG','3285',0.2,'EPSG','8656','Latitude and longitude difference file','nzgd2kgrid0005.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1572','NAD83 to NAD83(CSRS98) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4140','EPSG','1368',NULL,'EPSG','8656','Latitude and longitude difference file','NAD83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','1573','NAD27 to NAD83 (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4269','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','QUE27-83.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1574','NAD27 to NAD83(CSRS98) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4140','EPSG','1368',NULL,'EPSG','8656','Latitude and longitude difference file','QUE27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','1575','NAD27(CGQ77) to NAD83 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4609','EPSG','4269','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','CGQ77-83.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1576','NAD27(CGQ77) to NAD83(CSRS98) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4609','EPSG','4140','EPSG','1368',NULL,'EPSG','8656','Latitude and longitude difference file','CGQ77-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','1578','American Samoa 1962 to NAD83(HARN) (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4169','EPSG','4152','EPSG','2288',5.0,'EPSG','8657','Latitude difference file','wshpgn.las','EPSG','8658','Longitude difference file','wshpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1579','American Samoa 1962 to NAD83(HARN) (2)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4169','EPSG','4152','EPSG','2289',5.0,'EPSG','8657','Latitude difference file','eshpgn.las','EPSG','8658','Longitude difference file','eshpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1593','AGD84 to GDA94 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4203','EPSG','4283','EPSG','1280',0.1,'EPSG','8656','Latitude and longitude difference file','wa_0700.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1596','AGD66 to GDA94 (10)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2287',0.1,'EPSG','8656','Latitude and longitude difference file','SEAust_21_06_00.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1599','ATS77 to NAD83(CSRS98) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4140','EPSG','1533',NULL,'EPSG','8656','Latitude and longitude difference file','PE7783V2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','1600','NAD27 to NAD83(CSRS98) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4140','EPSG','2375',NULL,'EPSG','8656','Latitude and longitude difference file','SK27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','1601','NAD83 to NAD83(CSRS98) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4140','EPSG','2375',NULL,'EPSG','8656','Latitude and longitude difference file','SK83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','1602','NAD83 to NAD83(CSRS98) (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4140','EPSG','2376',NULL,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','1670','NZGD49 to WGS 84 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4272','EPSG','4326','EPSG','3285',1.0,'EPSG','8656','Latitude and longitude difference file','nzgd2kgrid0005.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1688','ATS77 to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4326','EPSG','1447',1.0,'EPSG','8656','Latitude and longitude difference file','NB7783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1689','ATS77 to WGS 84 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4326','EPSG','1533',1.0,'EPSG','8656','Latitude and longitude difference file','PE7783V2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1690','NAD27(76) to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4608','EPSG','4326','EPSG','1367',1.0,'EPSG','8656','Latitude and longitude difference file','May76v20.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1691','NAD27(CGQ77) to WGS 84 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4609','EPSG','4326','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','CGQ77-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1692','NAD27 to WGS 84 (34)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4326','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','QUE27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1693','NAD27 to WGS 84 (33)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4326','EPSG','4517',1.0,'EPSG','8656','Latitude and longitude difference file','NTv2_0.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1694','American Samoa 1962 to WGS 84 (2)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4169','EPSG','4326','EPSG','2288',5.0,'EPSG','8657','Latitude difference file','wshpgn.las','EPSG','8658','Longitude difference file','wshpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1695','American Samoa 1962 to WGS 84 (3)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4169','EPSG','4326','EPSG','2289',5.0,'EPSG','8657','Latitude difference file','eshpgn.las','EPSG','8658','Longitude difference file','eshpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1696','NAD83 to WGS 84 (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4326','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','NAD83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1697','NAD83 to WGS 84 (7)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4326','EPSG','2375',1.0,'EPSG','8656','Latitude and longitude difference file','SK83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1698','St. George Island to WGS 84 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4138','EPSG','4326','EPSG','1331',1.5,'EPSG','8657','Latitude difference file','stgeorge.las','EPSG','8658','Longitude difference file','stgeorge.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1699','St. Lawrence Island to WGS 84 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4136','EPSG','4326','EPSG','1332',1.5,'EPSG','8657','Latitude difference file','stlrnc.las','EPSG','8658','Longitude difference file','stlrnc.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1700','St. Paul Island to WGS 84 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4137','EPSG','4326','EPSG','1333',1.5,'EPSG','8657','Latitude difference file','stpaul.las','EPSG','8658','Longitude difference file','stpaul.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1702','NAD83 to WGS 84 (8)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4326','EPSG','2376',1.0,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1703','NAD27 to WGS 84 (32)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4326','EPSG','2375',1.0,'EPSG','8656','Latitude and longitude difference file','SK27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1704','NAD83 to NAD83(HARN) (40)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1374',0.05,'EPSG','8657','Latitude difference file','arhpgn.las','EPSG','8658','Longitude difference file','arhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1705','NAD83 to NAD83(HARN) (41)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1384',0.05,'EPSG','8657','Latitude difference file','iahpgn.las','EPSG','8658','Longitude difference file','iahpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1706','NAD83 to NAD83(HARN) (42)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1392',0.05,'EPSG','8657','Latitude difference file','mnhpgn.las','EPSG','8658','Longitude difference file','mnhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1707','NAD83 to NAD83(HARN) (43)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1394',0.05,'EPSG','8657','Latitude difference file','mohpgn.las','EPSG','8658','Longitude difference file','mohpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1708','NAD83 to WGS 84 (12)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1374',1.0,'EPSG','8657','Latitude difference file','arhpgn.las','EPSG','8658','Longitude difference file','arhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1709','NAD83 to WGS 84 (13)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1384',1.0,'EPSG','8657','Latitude difference file','iahpgn.las','EPSG','8658','Longitude difference file','iahpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1710','NAD83 to WGS 84 (14)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1392',1.0,'EPSG','8657','Latitude difference file','mnhpgn.las','EPSG','8658','Longitude difference file','mnhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1711','NAD83 to WGS 84 (15)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1394',1.0,'EPSG','8657','Latitude difference file','mohpgn.las','EPSG','8658','Longitude difference file','mohpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1712','NAD83 to WGS 84 (16)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1376',1.0,'EPSG','8657','Latitude difference file','cohpgn.las','EPSG','8658','Longitude difference file','cohpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1713','NAD83 to WGS 84 (17)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1380',1.0,'EPSG','8657','Latitude difference file','gahpgn.las','EPSG','8658','Longitude difference file','gahpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1714','NAD83 to WGS 84 (18)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1379',1.0,'EPSG','8657','Latitude difference file','flhpgn.las','EPSG','8658','Longitude difference file','flhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1715','NAD83 to WGS 84 (19)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2382',1.0,'EPSG','8657','Latitude difference file','emhpgn.las','EPSG','8658','Longitude difference file','emhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1716','NAD83 to WGS 84 (20)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2383',1.0,'EPSG','8657','Latitude difference file','wmhpgn.las','EPSG','8658','Longitude difference file','wmhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1717','NAD83 to WGS 84 (21)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1372',1.0,'EPSG','8657','Latitude difference file','alhpgn.las','EPSG','8658','Longitude difference file','alhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1718','NAD83 to WGS 84 (22)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1386',1.0,'EPSG','8657','Latitude difference file','kyhpgn.las','EPSG','8658','Longitude difference file','kyhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1719','NAD83 to WGS 84 (23)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1387',1.0,'EPSG','8657','Latitude difference file','lahpgn.las','EPSG','8658','Longitude difference file','lahpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1720','NAD83 to WGS 84 (24)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2377',1.0,'EPSG','8657','Latitude difference file','mdhpgn.las','EPSG','8658','Longitude difference file','mdhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1721','NAD83 to WGS 84 (25)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1388',1.0,'EPSG','8657','Latitude difference file','mehpgn.las','EPSG','8658','Longitude difference file','mehpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1722','NAD83 to WGS 84 (26)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1391',1.0,'EPSG','8657','Latitude difference file','mihpgn.las','EPSG','8658','Longitude difference file','mihpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1723','NAD83 to WGS 84 (27)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1393',1.0,'EPSG','8657','Latitude difference file','mshpgn.las','EPSG','8658','Longitude difference file','mshpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1724','NAD83 to WGS 84 (28)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1396',1.0,'EPSG','8657','Latitude difference file','nbhpgn.las','EPSG','8658','Longitude difference file','nbhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1725','NAD83 to WGS 84 (29)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2378',1.0,'EPSG','8657','Latitude difference file','nehpgn.las','EPSG','8658','Longitude difference file','nehpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1726','NAD83 to WGS 84 (30)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1400',1.0,'EPSG','8657','Latitude difference file','nmhpgn.las','EPSG','8658','Longitude difference file','nmhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1727','NAD83 to WGS 84 (31)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1401',1.0,'EPSG','8657','Latitude difference file','nyhpgn.las','EPSG','8658','Longitude difference file','nyhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1728','NAD83 to WGS 84 (32)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1373',1.0,'EPSG','8657','Latitude difference file','azhpgn.las','EPSG','8658','Longitude difference file','azhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1729','NAD83 to WGS 84 (33)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1403',1.0,'EPSG','8657','Latitude difference file','ndhpgn.las','EPSG','8658','Longitude difference file','ndhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1730','NAD83 to WGS 84 (34)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1405',1.0,'EPSG','8657','Latitude difference file','okhpgn.las','EPSG','8658','Longitude difference file','okhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1731','NAD83 to WGS 84 (35)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','3634',1.0,'EPSG','8657','Latitude difference file','pvhpgn.las','EPSG','8658','Longitude difference file','pvhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1732','NAD83 to WGS 84 (36)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1410',1.0,'EPSG','8657','Latitude difference file','sdhpgn.las','EPSG','8658','Longitude difference file','sdhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1733','NAD83 to WGS 84 (37)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1411',1.0,'EPSG','8657','Latitude difference file','tnhpgn.las','EPSG','8658','Longitude difference file','tnhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1734','NAD83 to WGS 84 (38)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2379',1.0,'EPSG','8657','Latitude difference file','ethpgn.las','EPSG','8658','Longitude difference file','ethpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1735','NAD83 to WGS 84 (39)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2380',1.0,'EPSG','8657','Latitude difference file','wthpgn.las','EPSG','8658','Longitude difference file','wthpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1736','NAD83 to WGS 84 (40)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1415',1.0,'EPSG','8657','Latitude difference file','vahpgn.las','EPSG','8658','Longitude difference file','vahpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1737','NAD83 to WGS 84 (41)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2381',1.0,'EPSG','8657','Latitude difference file','wohpgn.las','EPSG','8658','Longitude difference file','wohpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1738','NAD83 to WGS 84 (42)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1418',1.0,'EPSG','8657','Latitude difference file','wihpgn.las','EPSG','8658','Longitude difference file','wihpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1739','NAD83 to WGS 84 (43)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2297',1.0,'EPSG','8657','Latitude difference file','cnhpgn.las','EPSG','8658','Longitude difference file','cnhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1740','NAD83 to WGS 84 (44)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1419',1.0,'EPSG','8657','Latitude difference file','wyhpgn.las','EPSG','8658','Longitude difference file','wyhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1741','NAD83 to WGS 84 (45)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1334',1.0,'EPSG','8657','Latitude difference file','hihpgn.las','EPSG','8658','Longitude difference file','hihpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1742','NAD83 to WGS 84 (46)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1383',1.0,'EPSG','8657','Latitude difference file','inhpgn.las','EPSG','8658','Longitude difference file','inhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1743','NAD83 to WGS 84 (47)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1385',1.0,'EPSG','8657','Latitude difference file','kshpgn.las','EPSG','8658','Longitude difference file','kshpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1744','NAD83 to WGS 84 (48)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1397',1.0,'EPSG','8657','Latitude difference file','nvhpgn.las','EPSG','8658','Longitude difference file','nvhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1745','NAD83 to WGS 84 (49)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1404',1.0,'EPSG','8657','Latitude difference file','ohhpgn.las','EPSG','8658','Longitude difference file','ohhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1746','NAD83 to WGS 84 (50)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1413',1.0,'EPSG','8657','Latitude difference file','uthpgn.las','EPSG','8658','Longitude difference file','uthpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1747','NAD83 to WGS 84 (51)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1417',1.0,'EPSG','8657','Latitude difference file','wvhpgn.las','EPSG','8658','Longitude difference file','wvhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1748','NAD83 to WGS 84 (52)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1382',1.0,'EPSG','8657','Latitude difference file','ilhpgn.las','EPSG','8658','Longitude difference file','ilhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1749','NAD83 to WGS 84 (53)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1399',1.0,'EPSG','8657','Latitude difference file','njhpgn.las','EPSG','8658','Longitude difference file','njhpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1750','NAD83 to WGS 84 (54)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2298',1.0,'EPSG','8657','Latitude difference file','cshpgn.las','EPSG','8658','Longitude difference file','cshpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1752','NAD83 to NAD83(CSRS98) (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4140','EPSG','2376',NULL,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','1803','AGD66 to GDA94 (11)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2575',0.1,'EPSG','8656','Latitude and longitude difference file','A66 National (13.09.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1804','AGD84 to GDA94 (5)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4203','EPSG','4283','EPSG','2576',0.1,'EPSG','8656','Latitude and longitude difference file','National 84 (02.07.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1841','ATS77 to NAD83(CSRS) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4617','EPSG','1447',1.5,'EPSG','8656','Latitude and longitude difference file','NB7783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1843','NAD83 to NAD83(CSRS) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4617','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','NAD83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1844','NAD27 to NAD83(CSRS) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4617','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','QUE27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1845','NAD27(CGQ77) to NAD83(CSRS) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4609','EPSG','4617','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','CGQ77-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1846','ATS77 to NAD83(CSRS) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4617','EPSG','1533',1.5,'EPSG','8656','Latitude and longitude difference file','PE7783V2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1847','NAD27 to NAD83(CSRS) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4617','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1848','NAD83 to NAD83(CSRS) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4617','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1849','NAD83 to NAD83(CSRS) (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4617','EPSG','2376',1.5,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1850','ATS77 to NAD83(CSRS) (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4617','EPSG','2313',1.5,'EPSG','8656','Latitude and longitude difference file','NS778301.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1851','ATS77 to WGS 84 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4326','EPSG','2313',1.0,'EPSG','8656','Latitude and longitude difference file','NS778301.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','3858','WGS 84 to EGM2008 height (1)',NULL,NULL,'EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','4979','EPSG','3855','EPSG','1262',1.0,'EPSG','8666','Geoid (height correction) model file','Und_min2.5x2.5_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','3859','WGS 84 to EGM2008 height (2)',NULL,NULL,'EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','4979','EPSG','3855','EPSG','1262',0.5,'EPSG','8666','Geoid (height correction) model file','Und_min1x1_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','4459','NZGD2000 to NZVD2009 height (1)',NULL,NULL,'EPSG','1030','Geographic3D to GravityRelatedHeight (NZgeoid)','EPSG','4959','EPSG','4440','EPSG','1175',0.1,'EPSG','8666','Geoid (height correction) model file','nzgeoid09.sid',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','4561','RRAF 1991 to Martinique 1987 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5756','EPSG','3276',998.0,'EPSG','8666','Geoid (height correction) model file','ggm00.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','4562','RRAF 1991 to Guadeloupe 1988 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5757','EPSG','2892',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','4563','RRAF 1991 to IGN 1988 MG height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5617','EPSG','2894',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','4564','RRAF 1991 to IGN 1988 SM height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5620','EPSG','2890',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','4565','RRAF 1991 to IGN 1988 LS height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5616','EPSG','2895',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','4566','RRAF 1991 to IGN 1992 LD height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5618','EPSG','2893',0.5,'EPSG','8666','Geoid (height correction) model file','ggg00_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','4567','RRAF 1991 to IGN 1988 SB height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5619','EPSG','2891',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5334','ETRS89 to Belfast height (1)',NULL,NULL,'EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5732','EPSG','2530',0.03,'EPSG','8666','Geoid (height correction) model file','OSGM02_NI.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5335','ETRS89 to Malin Head height (1)',NULL,NULL,'EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5731','EPSG','1305',0.04,'EPSG','8666','Geoid (height correction) model file','OSGM02_RoI.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5338','OSGB 1936 to ETRS89 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4277','EPSG','4258','EPSG','1264',0.03,'EPSG','8656','Latitude and longitude difference file','OSTN02_NTv2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5339','OSGB 1936 to WGS 84 (7)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4277','EPSG','4326','EPSG','1264',1.0,'EPSG','8656','Latitude and longitude difference file','OSTN02_NTv2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5409','NGVD29 height to NAVD88 height (1)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','5702','EPSG','5703','EPSG','2950',0.02,'EPSG','8732','Vertical offset file','vertconw.94',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','5410','NGVD29 height to NAVD88 height (2)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','5702','EPSG','5703','EPSG','2949',0.02,'EPSG','8732','Vertical offset file','vertconc.94',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','5411','NGVD29 height to NAVD88 height (3)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','5702','EPSG','5703','EPSG','2948',0.02,'EPSG','8732','Vertical offset file','vertcone.94',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','5502','RGAF09 to Martinique 1987 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5756','EPSG','3276',998.0,'EPSG','8666','Geoid (height correction) model file','gg10_mart.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5503','RGAF09 to Guadeloupe 1988 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5757','EPSG','2892',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_gtbt.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5504','RGAF09 to IGN 1988 MG height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5617','EPSG','2894',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5505','RGAF09 to IGN 1988 SM height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5620','EPSG','2890',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5506','RGAF09 to IGN 1988 LS height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5616','EPSG','2895',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5507','RGAF09 to IGN 1992 LD height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5618','EPSG','2893',0.5,'EPSG','8666','Geoid (height correction) model file','gg10_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5508','RGAF09 to IGN 1988 SB height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5619','EPSG','2891',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5525','Corrego Alegre 1961 to SIRGAS 2000 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','5524','EPSG','4674','EPSG','3874',2.0,'EPSG','8656','Latitude and longitude difference file','CA61_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5526','Corrego Alegre 1970-72 to SIRGAS 2000 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4225','EPSG','4674','EPSG','1293',2.0,'EPSG','8656','Latitude and longitude difference file','CA7072_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5528','SAD69 to SIRGAS 2000 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4618','EPSG','4674','EPSG','3887',1.0,'EPSG','8656','Latitude and longitude difference file','SAD69_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5529','SAD69(96) to SIRGAS 2000 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','5527','EPSG','4674','EPSG','3887',0.5,'EPSG','8656','Latitude and longitude difference file','SAD96_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5540','Corrego Alegre 1961 to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','5524','EPSG','4326','EPSG','3874',2.0,'EPSG','8656','Latitude and longitude difference file','CA61_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5541','Corrego Alegre 1970-72 to WGS 84 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4225','EPSG','4326','EPSG','1293',2.0,'EPSG','8656','Latitude and longitude difference file','CA7072_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5542','SAD69 to WGS 84 (15)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4618','EPSG','4326','EPSG','3887',2.0,'EPSG','8656','Latitude and longitude difference file','SAD69_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5543','SAD69(96) to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','5527','EPSG','4326','EPSG','3887',1.0,'EPSG','8656','Latitude and longitude difference file','SAD96_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5594','FEH2010 to FCSVR10 height (1)',NULL,NULL,'EPSG','1030','Geographic3D to GravityRelatedHeight (NZgeoid)','EPSG','5592','EPSG','5597','EPSG','3890',0.1,'EPSG','8666','Geoid (height correction) model file','fehmarn_geoid10.gri',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','5626','FEH2010 to FCSVR10 height (1)',NULL,NULL,'EPSG','1047','Geographic3D to GravityRelatedHeight (Gravsoft)','EPSG','5592','EPSG','5597','EPSG','3890',0.1,'EPSG','8666','Geoid (height correction) model file','fehmarn_geoid10.gri',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5656','GDA94 to AHD height (49)',NULL,NULL,'EPSG','1048','Geographic3D to GravityRelatedHeight (Ausgeoid v2)','EPSG','4939','EPSG','5711','EPSG','1281',0.03,'EPSG','8666','Geoid (height correction) model file','AUSGeoid09_GDA94_V1.01_DOV_windows.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5657','GDA94 to AHD (Tasmania) height (2)',NULL,NULL,'EPSG','1048','Geographic3D to GravityRelatedHeight (Ausgeoid v2)','EPSG','4939','EPSG','5712','EPSG','2947',0.03,'EPSG','8666','Geoid (height correction) model file','AUSGeoid09_GDA94_V1.01_DOV_windows.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5661','ED50 to ETRS89 (14)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4230','EPSG','4258','EPSG','3732',0.05,'EPSG','8656','Latitude and longitude difference file','100800401.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','5891','MGI to ETRS89 (5)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4312','EPSG','4258','EPSG','1037',0.15,'EPSG','8656','Latitude and longitude difference file','AT_GIS_GRID.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6138','CIGD11 to GCVD54 height (ft) (1)',NULL,NULL,'EPSG','1050','Geographic3D to GravityRelatedHeight (CI)','EPSG','6134','EPSG','6130','EPSG','3185',0.03,'EPSG','8666','Geoid (height correction) model file','GCGM0811.TXT',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6139','CIGD11 to LCVD61 height (ft) (1)',NULL,NULL,'EPSG','1050','Geographic3D to GravityRelatedHeight (CI)','EPSG','6134','EPSG','6131','EPSG','4121',0.03,'EPSG','8666','Geoid (height correction) model file','LCGM0811.TXT',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6140','CIGD11 to CBVD61 height (ft) (1)',NULL,NULL,'EPSG','1050','Geographic3D to GravityRelatedHeight (CI)','EPSG','6134','EPSG','6132','EPSG','3207',0.03,'EPSG','8666','Geoid (height correction) model file','CBGM0811.TXT',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6188','Lisbon to ETRS89 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4207','EPSG','4258','EPSG','1294',0.1,'EPSG','8656','Latitude and longitude difference file','DLx_ETRS89_geo.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6189','Datum 73 to ETRS89 (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4274','EPSG','4258','EPSG','1294',0.1,'EPSG','8656','Latitude and longitude difference file','D73_ETRS89_geo.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6209','NAD27 to NAD83(CSRS) (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4617','EPSG','1447',0.8,'EPSG','8656','Latitude and longitude difference file','NB2783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6326','NAD83(2011) to NAVD88 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','5703','EPSG','1323',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bu0.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6327','NAD83(2011) to NAVD88 height (2)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','5703','EPSG','1330',0.2,'EPSG','8666','Geoid (height correction) model file','g2012Ba0.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6648','NAD83(CSRS) to CGVD2013 height (1)',NULL,NULL,'EPSG','1060','Geographic3D to GravityRelatedHeight (CGG2013)','EPSG','4955','EPSG','6647','EPSG','1061',0.03,'EPSG','8666','Geoid (height correction) model file','CGG2013n83.byn',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6712','Tokyo to JGD2000 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4301','EPSG','4612','EPSG','3957',0.2,'EPSG','8656','Latitude and longitude difference file','tky2jgd.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6713','JGD2000 to JGD2011 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4612','EPSG','6668','EPSG','4170',0.2,'EPSG','8656','Latitude and longitude difference file','touhokutaiheiyouoki2011.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6740','Tokyo to JGD2011 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4301','EPSG','6668','EPSG','4194',0.2,'EPSG','8656','Latitude and longitude difference file','tky2jgd.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6946','TM75 to ETRS89 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4300','EPSG','4258','EPSG','1305',0.41,'EPSG','8656','Latitude and longitude difference file','tm75_etrs89.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6947','TM75 to WGS 84 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4300','EPSG','4326','EPSG','1305',1.0,'EPSG','8656','Latitude and longitude difference file','tm75_etrs89.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','6948','RD/83 to ETRS89 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4745','EPSG','4258','EPSG','2545',0.03,'EPSG','8656','Latitude and longitude difference file','NTv2_SN.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7000','Amersfoort to ETRS89 (7)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4289','EPSG','4258','EPSG','1275',0.001,'EPSG','8656','Latitude and longitude difference file','rdtrans2008.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7001','ETRS89 to NAP height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4937','EPSG','5709','EPSG','1275',0.01,'EPSG','8666','Geoid (height correction) model file','naptrans2008.gtx',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7646','NAD83(2011) to PRVD02 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','6641','EPSG','3294',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bp0.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7647','NAD83(2011) to VIVD09 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','6642','EPSG','3330',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bp0.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7648','NAD83(MA11) to GUVD04 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6323','EPSG','6644','EPSG','3255',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bg0.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7649','NAD83(MA11) to NMVD03 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6323','EPSG','6640','EPSG','4171',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bg0.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7650','NAD83(PA11) to ASVD02 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6320','EPSG','6643','EPSG','2288',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bs0.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7655','PNG94 to PNG08 height (1)',NULL,NULL,'EPSG','1059','Geographic3D to GravityRelatedHeight (PNG)','EPSG','5545','EPSG','7447','EPSG','4384',0.2,'EPSG','8666','Geoid (height correction) model file','PNG08.DAT',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7673','CH1903 to CHTRF95 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4149','EPSG','4151','EPSG','1286',0.25,'EPSG','8656','Latitude and longitude difference file','CHENyx06_ETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7674','CH1903 to ETRS89 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4149','EPSG','4258','EPSG','1286',0.25,'EPSG','8656','Latitude and longitude difference file','CHENyx06_ETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7709','OSGB 1936 to ETRS89 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4277','EPSG','4258','EPSG','4390',0.03,'EPSG','8656','Latitude and longitude difference file','OSTN15_NTv2_OSGBtoETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7710','OSGB 1936 to WGS 84 (9)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4277','EPSG','4326','EPSG','4390',1.0,'EPSG','8656','Latitude and longitude difference file','OSTN15_NTv2_OSGBtoETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7711','ETRS89 to Newlyn height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5701','EPSG','2792',0.008,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7712','ETRS89 to Newlyn (Orkney Isles) height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5740','EPSG','2793',0.017,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7713','ETRS89 to Newlyn (Offshore) height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','7707','EPSG','4391',0.02,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7714','ETRS89 to Lerwick height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5742','EPSG','2795',0.018,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7715','ETRS89 to Stornoway height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5746','EPSG','2799',0.011,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7716','ETRS89 to St. Marys height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5749','EPSG','2802',0.01,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7717','ETRS89 to Douglas height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5750','EPSG','2803',0.03,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7718','ETRS89 to Belfast height (2)',NULL,NULL,'EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5732','EPSG','2530',0.014,'EPSG','8666','Geoid (height correction) model file','OSGM15_Belfast.gri',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','7719','ETRS89 to Malin Head height (2)',NULL,NULL,'EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5731','EPSG','1305',0.023,'EPSG','8666','Geoid (height correction) model file','OSGM15_Malin.gri',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','7788','CH1903 to WGS 84 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4149','EPSG','4326','EPSG','1286',1.5,'EPSG','8656','Latitude and longitude difference file','CHENyx06_ETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7840','NZGD2000 to NZVD2016 height (1)',NULL,NULL,'EPSG','1030','Geographic3D to GravityRelatedHeight (NZgeoid)','EPSG','4959','EPSG','7839','EPSG','1175',0.1,'EPSG','8666','Geoid (height correction) model file','New_Zealand_Quasigeoid_2016.csv',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7860','NZVD2016 height to Auckland 1946 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5759','EPSG','3764',0.02,'EPSG','8732','Vertical offset file','auckland-1946-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7861','NZVD2016 height to Bluff 1955 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5760','EPSG','3801',0.02,'EPSG','8732','Vertical offset file','bluff-1955-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7862','NZVD2016 height to Dunedin 1958 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5761','EPSG','3803',0.02,'EPSG','8732','Vertical offset file','dunedin-1958-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7863','NZVD2016 height to Dunedin-Bluff 1960 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','4458','EPSG','3806',0.02,'EPSG','8732','Vertical offset file','dunedin-bluff-1960-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7864','NZVD2016 height to Gisborne 1926 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5762','EPSG','3771',0.02,'EPSG','8732','Vertical offset file','gisborne-1926-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7865','NZVD2016 height to Lyttelton 1937 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5763','EPSG','3804',0.01,'EPSG','8732','Vertical offset file','lyttelton-1937-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7866','NZVD2016 height to Moturiki 1953 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5764','EPSG','3768',0.02,'EPSG','8732','Vertical offset file','moturiki-1953-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7867','NZVD2016 height to Napier 1962 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5765','EPSG','3772',0.02,'EPSG','8732','Vertical offset file','napier-1962-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7868','NZVD2016 height to Nelson 1955 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5766','EPSG','3802',0.02,'EPSG','8732','Vertical offset file','nelson-1955-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7869','NZVD2016 height to One Tree Point 1964 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5767','EPSG','3762',0.01,'EPSG','8732','Vertical offset file','onetreepoint-1964-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7870','NZVD2016 height to Stewart Island 1977 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5772','EPSG','3338',0.18,'EPSG','8732','Vertical offset file','stewartisland-1977-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7871','NZVD2016 height to Taranaki 1970 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5769','EPSG','3769',0.02,'EPSG','8732','Vertical offset file','taranaki-1970-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7872','NZVD2016 height to Wellington 1953 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5770','EPSG','3773',0.02,'EPSG','8732','Vertical offset file','wellington-1953-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7891','SHGD2015 to SHVD2015 height (1)',NULL,NULL,'EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','7885','EPSG','7890','EPSG','3183',0.0,'EPSG','8666','Geoid (height correction) model file','Und_min2.5x2.5_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7957','Canada velocity grid v6',NULL,NULL,'EPSG','1070','Point motion by grid (Canada NTv2_Vel)','EPSG','8251','EPSG','8251','EPSG','1061',0.01,'EPSG','1050','Point motion velocity grid file','cvg60.cvb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','7958','ETRS89 to Belfast height (2)',NULL,NULL,'EPSG','1072','Geographic3D to GravityRelatedHeight (OSGM15-Ire)','EPSG','4937','EPSG','5732','EPSG','2530',0.014,'EPSG','8666','Geoid (height correction) model file','OSGM15_Belfast.gri',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7959','ETRS89 to Malin Head height (2)',NULL,NULL,'EPSG','1072','Geographic3D to GravityRelatedHeight (OSGM15-Ire)','EPSG','4937','EPSG','5731','EPSG','1305',0.023,'EPSG','8666','Geoid (height correction) model file','OSGM15_Malin.gri',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7969','NGVD29 height (m) to NAVD88 height (1)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','7968','EPSG','5703','EPSG','2950',0.02,'EPSG','8732','Vertical offset file','vertconw.94',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7970','NGVD29 height (m) to NAVD88 height (2)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','7968','EPSG','5703','EPSG','2949',0.02,'EPSG','8732','Vertical offset file','vertconc.94',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','7971','NGVD29 height (m) to NAVD88 height (3)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','7968','EPSG','5703','EPSG','2948',0.02,'EPSG','8732','Vertical offset file','vertcone.94',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8037','WGS 84 to MSL height (1)',NULL,NULL,'EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','4979','EPSG','5714','EPSG','1262',0.5,'EPSG','8666','Geoid (height correction) model file','Und_min1x1_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8268','GR96 to GVR2000 height (1)',NULL,NULL,'EPSG','1047','Geographic3D to GravityRelatedHeight (Gravsoft)','EPSG','4909','EPSG','8266','EPSG','4461',0.1,'EPSG','8666','Geoid (height correction) model file','gr2000g.gri',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8269','GR96 to GVR2016 height (1)',NULL,NULL,'EPSG','1047','Geographic3D to GravityRelatedHeight (Gravsoft)','EPSG','4909','EPSG','8267','EPSG','4454',0.1,'EPSG','8666','Geoid (height correction) model file','ggeoid16.gri',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8271','RGF93 to NGF IGN69 height (2)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5720','EPSG','1326',0.02,'EPSG','8666','Geoid (height correction) model file','RAF09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','8272','RGF93 to IGN78 Corsica height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5721','EPSG','1327',0.05,'EPSG','8666','Geoid (height correction) model file','RAC09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','8361','ETRS89 to ETRS89 + Baltic 1957 height (1)',NULL,NULL,'EPSG','9635','Geog3D to Geog2D+GravityRelatedHeight (US .gtx)','EPSG','4937','EPSG','8360','EPSG','1211',0.03,'EPSG','8666','Geoid (height correction) model file','Slovakia_ETRS89h_to_Baltic1957.gtx',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8362','ETRS89 to ETRS89 + EVRF2007 height (1)',NULL,NULL,'EPSG','9635','Geog3D to Geog2D+GravityRelatedHeight (US .gtx)','EPSG','4937','EPSG','7423','EPSG','1211',0.03,'EPSG','8666','Geoid (height correction) model file','Slovakia_ETRS89h_to_EVRF2007.gtx',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8364','S-JTSK [JTSK03] to S-JTSK (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','8351','EPSG','4156','EPSG','1211',0.05,'EPSG','8657','Latitude difference file','Slovakia_JTSK03_to_JTSK.LAS','EPSG','8658','Longitude difference file','Slovakia_JTSK03_to_JTSK.LOS',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8369','BD72 to ETRS89 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4313','EPSG','4258','EPSG','1347',0.01,'EPSG','8656','Latitude and longitude difference file','bd72lb72_etrs89lb08.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8371','RGF93 to NGF IGN69 height (2)',NULL,NULL,'EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4965','EPSG','5720','EPSG','1326',0.02,'EPSG','8666','Geoid (height correction) model file','RAF09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8372','RGF93 to IGN78 Corsica height (2)',NULL,NULL,'EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4965','EPSG','5721','EPSG','1327',0.05,'EPSG','8666','Geoid (height correction) model file','RAC09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8444','GDA94 to GDA2020 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','4169',0.05,'EPSG','8656','Latitude and longitude difference file','XMAS_C_V1.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8445','GDA94 to GDA2020 (5)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','1069',0.05,'EPSG','8656','Latitude and longitude difference file','COCOS_C_V1.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8446','GDA94 to GDA2020 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','2575',0.05,'EPSG','8656','Latitude and longitude difference file','GDA94_GDA2020_conformal.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8447','GDA94 to GDA2020 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','2575',0.05,'EPSG','8656','Latitude and longitude difference file','GDA94_GDA2020_conformal_and_distortion.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8451','GDA2020 to AHD height (1)',NULL,NULL,'EPSG','1048','Geographic3D to GravityRelatedHeight (Ausgeoid v2)','EPSG','7843','EPSG','5711','EPSG','4493',0.03,'EPSG','8666','Geoid (height correction) model file','AUSGeoid2020_windows_binary.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8676','Canada velocity grid v6',NULL,NULL,'EPSG','1070','Point motion by grid (Canada NTv2_Vel)','EPSG','8251','EPSG','8251','EPSG','1061',0.01,'EPSG','1050','Point motion velocity grid file','cvg60.cvb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','8885','RGF93 to NGF IGN69 height (3)',NULL,NULL,'EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4965','EPSG','5720','EPSG','1326',0.01,'EPSG','8666','Geoid (height correction) model file','RAF18.tac',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10000','RGF93 to NGF IGN69 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5720','EPSG','1326',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10001','ETRS89 to NGF IGN69 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4937','EPSG','5720','EPSG','1326',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10002','RGF93 to IGN78 Corsica height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5721','EPSG','1327',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a_corse.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10003','ETRS89 to IGN78 Corsica height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4937','EPSG','5721','EPSG','1327',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a_corse.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10004','RRAF 1991 to Martinique 1987 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5756','EPSG','1156',998.0,'EPSG','8666','Geoid (height correction) model file','ggm00.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','10005','RRAF 1991 to Guadeloupe 1988 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2892',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','10006','RRAF 1991 to Guadeloupe 1988 height (2)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2894',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','10007','RRAF 1991 to Guadeloupe 1988 height (3)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2895',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','10008','RRAF 1991 to Guadeloupe 1988 height (4)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2893',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','10009','RRAF 1991 to Guadeloupe 1988 height (5)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2891',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','10010','RRAF 1991 to Guadeloupe 1988 height (6)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2890',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','10011','RGFG95 to NGG1977 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4967','EPSG','5755','EPSG','3146',998.0,'EPSG','8666','Geoid (height correction) model file','ggguy00.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10012','RGR92 to Reunion 1989 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4971','EPSG','5758','EPSG','3337',0.1,'EPSG','8666','Geoid (height correction) model file','ggr99.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10013','NAD83 to NAVD88 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2977',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u01.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10014','NAD83 to NAVD88 height (2)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2978',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u02.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10015','NAD83 to NAVD88 height (3)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2979',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u03.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10016','NAD83 to NAVD88 height (4)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2980',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u04.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10017','NAD83 to NAVD88 height (5)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2973',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u05.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10018','NAD83 to NAVD88 height (6)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2974',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u06.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10019','NAD83 to NAVD88 height (7)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2975',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u07.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10020','NAD83 to NAVD88 height (8)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2976',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u08.bin',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10021','ETRS89 to Newlyn height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5701','EPSG','2792',0.02,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10022','ETRS89 to Belfast height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5732','EPSG','2530',0.03,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','10023','ETRS89 to Douglas height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5750','EPSG','2803',0.02,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10024','ETRS89 to Fair Isle height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5741','EPSG','2794',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10025','ETRS89 to Flannan Isles height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5748','EPSG','2801',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10026','ETRS89 to Foula height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5743','EPSG','2796',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10027','ETRS89 to Lerwick height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5742','EPSG','2795',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10028','ETRS89 to Malin Head height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5731','EPSG','1305',0.04,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','10029','ETRS89 to Newlyn (Orkney Isles) height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5740','EPSG','2793',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10030','ETRS89 to North Rona height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5745','EPSG','2798',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10031','ETRS89 to St. Kilda height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5747','EPSG','2800',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10032','ETRS89 to St. Marys height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5749','EPSG','2802',0.0,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10033','ETRS89 to Stornoway height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5746','EPSG','2799',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10034','ETRS89 to Sule Skerry height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5744','EPSG','2797',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10035','GDA94 to AHD height (1)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2899',0.4,'EPSG','8666','Geoid (height correction) model file','SC52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10036','GDA94 to AHD height (2)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2900',0.4,'EPSG','8666','Geoid (height correction) model file','SC53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10037','GDA94 to AHD height (3)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2901',0.4,'EPSG','8666','Geoid (height correction) model file','SC54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10038','GDA94 to AHD height (4)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2902',0.4,'EPSG','8666','Geoid (height correction) model file','SD51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10039','GDA94 to AHD height (5)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2903',0.4,'EPSG','8666','Geoid (height correction) model file','SD52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10040','GDA94 to AHD height (6)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2904',0.4,'EPSG','8666','Geoid (height correction) model file','SD53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10041','GDA94 to AHD height (7)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2905',0.4,'EPSG','8666','Geoid (height correction) model file','SD54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10042','GDA94 to AHD height (8)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2906',0.4,'EPSG','8666','Geoid (height correction) model file','SD55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10043','GDA94 to AHD height (9)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2907',0.4,'EPSG','8666','Geoid (height correction) model file','SE50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10044','GDA94 to AHD height (10)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2908',0.4,'EPSG','8666','Geoid (height correction) model file','SE51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10045','GDA94 to AHD height (11)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2909',0.4,'EPSG','8666','Geoid (height correction) model file','SE52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10046','GDA94 to AHD height (12)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2910',0.4,'EPSG','8666','Geoid (height correction) model file','SE53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10047','GDA94 to AHD height (13)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2911',0.4,'EPSG','8666','Geoid (height correction) model file','SE54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10048','GDA94 to AHD height (14)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2912',0.4,'EPSG','8666','Geoid (height correction) model file','SE55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10049','GDA94 to AHD height (15)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2913',0.4,'EPSG','8666','Geoid (height correction) model file','SF49_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10050','GDA94 to AHD height (16)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2914',0.4,'EPSG','8666','Geoid (height correction) model file','SF50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10051','GDA94 to AHD height (17)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2915',0.4,'EPSG','8666','Geoid (height correction) model file','SF51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10052','GDA94 to AHD height (18)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2916',0.4,'EPSG','8666','Geoid (height correction) model file','SF52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10053','GDA94 to AHD height (19)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2917',0.4,'EPSG','8666','Geoid (height correction) model file','SF53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10054','GDA94 to AHD height (20)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2918',0.4,'EPSG','8666','Geoid (height correction) model file','SF54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10055','GDA94 to AHD height (21)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2919',0.4,'EPSG','8666','Geoid (height correction) model file','SF55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10056','GDA94 to AHD height (22)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2920',0.4,'EPSG','8666','Geoid (height correction) model file','SF56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10057','GDA94 to AHD height (23)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2921',0.4,'EPSG','8666','Geoid (height correction) model file','SG49_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10058','GDA94 to AHD height (24)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2922',0.4,'EPSG','8666','Geoid (height correction) model file','SG50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10059','GDA94 to AHD height (25)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2923',0.4,'EPSG','8666','Geoid (height correction) model file','SG51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10060','GDA94 to AHD height (26)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2924',0.4,'EPSG','8666','Geoid (height correction) model file','SG52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10061','GDA94 to AHD height (27)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2925',0.4,'EPSG','8666','Geoid (height correction) model file','SG53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10062','GDA94 to AHD height (28)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2926',0.4,'EPSG','8666','Geoid (height correction) model file','SG54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10063','GDA94 to AHD height (29)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2927',0.4,'EPSG','8666','Geoid (height correction) model file','SG55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10064','GDA94 to AHD height (30)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2928',0.4,'EPSG','8666','Geoid (height correction) model file','SG56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10065','GDA94 to AHD height (31)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2929',0.4,'EPSG','8666','Geoid (height correction) model file','SH49_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','10066','GDA94 to AHD height (32)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2930',0.4,'EPSG','8666','Geoid (height correction) model file','SH50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10067','GDA94 to AHD height (33)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2931',0.4,'EPSG','8666','Geoid (height correction) model file','SH51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10068','GDA94 to AHD height (34)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2932',0.4,'EPSG','8666','Geoid (height correction) model file','SH52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10069','GDA94 to AHD height (35)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2933',0.4,'EPSG','8666','Geoid (height correction) model file','SH53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10070','GDA94 to AHD height (36)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2934',0.4,'EPSG','8666','Geoid (height correction) model file','SH54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10071','GDA94 to AHD height (37)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2935',0.4,'EPSG','8666','Geoid (height correction) model file','SH55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10072','GDA94 to AHD height (38)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2936',0.4,'EPSG','8666','Geoid (height correction) model file','SH56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10073','GDA94 to AHD height (39)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2937',0.4,'EPSG','8666','Geoid (height correction) model file','SI50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10074','GDA94 to AHD height (40)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2938',0.4,'EPSG','8666','Geoid (height correction) model file','SI51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10075','GDA94 to AHD height (41)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2939',0.4,'EPSG','8666','Geoid (height correction) model file','SI53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10076','GDA94 to AHD height (42)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2940',0.4,'EPSG','8666','Geoid (height correction) model file','SI54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10077','GDA94 to AHD height (43)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2941',0.4,'EPSG','8666','Geoid (height correction) model file','SI55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10078','GDA94 to AHD height (44)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2942',0.4,'EPSG','8666','Geoid (height correction) model file','SI56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10079','GDA94 to AHD height (45)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2943',0.4,'EPSG','8666','Geoid (height correction) model file','SJ53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10080','GDA94 to AHD height (46)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2944',0.4,'EPSG','8666','Geoid (height correction) model file','SJ54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10081','GDA94 to AHD height (47)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2945',0.4,'EPSG','8666','Geoid (height correction) model file','SJ55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10082','GDA94 to AHD height (48)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2946',0.4,'EPSG','8666','Geoid (height correction) model file','SJ56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10083','GDA94 to AHD (Tasmania) height (1)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5712','EPSG','2947',0.4,'EPSG','8666','Geoid (height correction) model file','SK55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','10084','WGS 84 to EGM96 height (1)',NULL,NULL,'EPSG','9661','Geographic3D to GravityRelatedHeight (EGM)','EPSG','4979','EPSG','5773','EPSG','1262',1.0,'EPSG','8666','Geoid (height correction) model file','WW15MGH.GRD',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15486','CH1903 to CH1903+ (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4149','EPSG','4150','EPSG','1286',0.2,'EPSG','8656','Latitude and longitude difference file','CHENyx06a.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15488','RRAF 1991 to IGN 1988 MG height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5617','EPSG','2894',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15489','RRAF 1991 to IGN 1988 LS height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5616','EPSG','2895',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15490','RRAF 1991 to IGN 1992 LD height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5618','EPSG','2893',0.5,'EPSG','8666','Geoid (height correction) model file','ggg00_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15491','RRAF 1991 to IGN 1988 SB height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5619','EPSG','2891',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15492','RRAF 1991 to IGN 1988 SM height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5620','EPSG','2890',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15781','WGS 84 to EGM84 height (1)',NULL,NULL,'EPSG','9661','Geographic3D to GravityRelatedHeight (EGM)','EPSG','4979','EPSG','5798','EPSG','1262',1.0,'EPSG','8666','Geoid (height correction) model file','DIRACC.DMA',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15785','AGD84 to WGS 84 (9)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4203','EPSG','4326','EPSG','2576',1.0,'EPSG','8656','Latitude and longitude difference file','National 84 (02.07.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15786','AGD66 to WGS 84 (17)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4326','EPSG','2575',1.0,'EPSG','8656','Latitude and longitude difference file','A66 National (13.09.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15834','NAD83 to NAD83(HARN) (44)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1402',0.05,'EPSG','8657','Latitude difference file','nchpgn.las','EPSG','8658','Longitude difference file','nchpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15835','NAD83 to WGS 84 (55)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1402',1.0,'EPSG','8657','Latitude difference file','nchpgn.las','EPSG','8658','Longitude difference file','nchpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15836','NAD83 to NAD83(HARN) (45)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1409',0.05,'EPSG','8657','Latitude difference file','schpgn.las','EPSG','8658','Longitude difference file','schpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15837','NAD83 to WGS 84 (56)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1409',1.0,'EPSG','8657','Latitude difference file','schpgn.las','EPSG','8658','Longitude difference file','schpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15838','NAD83 to NAD83(HARN) (46)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1407',0.05,'EPSG','8657','Latitude difference file','pahpgn.las','EPSG','8658','Longitude difference file','pahpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15839','NAD83 to WGS 84 (57)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1407',1.0,'EPSG','8657','Latitude difference file','pahpgn.las','EPSG','8658','Longitude difference file','pahpgn.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15840','Old Hawaiian to WGS 84 (8)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4135','EPSG','4326','EPSG','1334',2.0,'EPSG','8657','Latitude difference file','hawaii.las','EPSG','8658','Longitude difference file','hawaii.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15841','Puerto Rico to WGS 84 (4)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4139','EPSG','4326','EPSG','3294',2.0,'EPSG','8657','Latitude difference file','prvi.las','EPSG','8658','Longitude difference file','prvi.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15851','NAD27 to WGS 84 (79)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4267','EPSG','4326','EPSG','2374',5.0,'EPSG','8657','Latitude difference file','conus.las','EPSG','8658','Longitude difference file','conus.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15864','NAD27 to WGS 84 (85)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4267','EPSG','4326','EPSG','2373',5.0,'EPSG','8657','Latitude difference file','alaska.las','EPSG','8658','Longitude difference file','alaska.los',NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15895','ED50 to ETRS89 (11)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4230','EPSG','4258','EPSG','3429',0.2,'EPSG','8656','Latitude and longitude difference file','sped2et.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15907','ED50 to WGS 84 (40)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4230','EPSG','4326','EPSG','3429',1.0,'EPSG','8656','Latitude and longitude difference file','sped2et.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15932','ED50 to ETRS89 (12)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4230','EPSG','4258','EPSG','3429',0.2,'EPSG','8656','Latitude and longitude difference file','SPED2ETV2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15933','ED50 to WGS 84 (41)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4230','EPSG','4326','EPSG','3429',1.0,'EPSG','8656','Latitude and longitude difference file','SPED2ETV2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15940','NTF to RGF93 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4275','EPSG','4171','EPSG','1326',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15941','NTF to ETRS89 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4275','EPSG','4258','EPSG','1326',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15942','NTF to WGS 84 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4275','EPSG','4326','EPSG','1326',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15944','NEA74 Noumea to RGNC91-93 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4644','EPSG','4749','EPSG','2823',0.05,'EPSG','8656','Latitude and longitude difference file','RGNC1991_NEA74Noumea.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15947','IGN72 Grande Terre to RGNC91-93 (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4662','EPSG','4749','EPSG','2822',0.1,'EPSG','8656','Latitude and longitude difference file','RGNC1991_IGN72GrandeTerre.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15948','DHDN to ETRS89 (8)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4314','EPSG','4258','EPSG','3339',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15949','DHDN to WGS 84 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4314','EPSG','4326','EPSG','3339',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15954','RD/83 to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4745','EPSG','4326','EPSG','2545',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15955','PD/83 to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4746','EPSG','4326','EPSG','2544',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15958','RGF93 to NTF (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4171','EPSG','4275','EPSG','3694',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15959','ETRS89 to NTF (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4258','EPSG','4275','EPSG','3694',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15960','WGS 84 to NTF (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4326','EPSG','4275','EPSG','3694',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','15961','RGNC91-93 to NEA74 Noumea (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4749','EPSG','4644','EPSG','2823',0.05,'EPSG','8656','Latitude and longitude difference file','RGNC1991_IGN72GrandeTerre.gsb',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "grid_transformation" VALUES('EPSG','15962','RGNC91-93 to IGN72 Grande Terre (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4749','EPSG','4662','EPSG','2822',0.1,'EPSG','8656','Latitude and longitude difference file','RGNC1991_IGN72GrandeTerre.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES('EPSG','1068','Guam 1963 to NAD83(HARN) (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4675','EPSG','4152','EPSG','3255',5.0,'EPSG','8657','Latitude difference file','guhpgn.las','EPSG','8658','Longitude difference file','guhpgn.los',NULL,NULL,'NGS-Gum',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1069','Guam 1963 to WGS 84 (2)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4675','EPSG','4326','EPSG','3255',5.0,'EPSG','8657','Latitude difference file','guhpgn.las','EPSG','8658','Longitude difference file','guhpgn.los',NULL,NULL,'EPSG-Gum',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1241','NAD27 to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4267','EPSG','4269','EPSG','2374',0.15,'EPSG','8657','Latitude difference file','conus.las','EPSG','8658','Longitude difference file','conus.los',NULL,NULL,'NGS-Usa Conus',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1243','NAD27 to NAD83 (2)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4267','EPSG','4269','EPSG','2373',0.5,'EPSG','8657','Latitude difference file','alaska.las','EPSG','8658','Longitude difference file','alaska.los',NULL,NULL,'NGS-Usa AK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1295','RGNC91-93 to NEA74 Noumea (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4749','EPSG','4644','EPSG','2823',0.05,'EPSG','8656','Latitude and longitude difference file','RGNC1991_NEA74Noumea.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Ncl 0.05m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1312','NAD27 to NAD83 (3)',NULL,NULL,'EPSG','9614','NTv1','EPSG','4267','EPSG','4269','EPSG','1061',1.0,'EPSG','8656','Latitude and longitude difference file','NTv1_0.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GC-Can NT1',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1313','NAD27 to NAD83 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4269','EPSG','4517',1.5,'EPSG','8656','Latitude and longitude difference file','NTv2_0.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GC-Can NT2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1451','NAD27(CGQ77) to NAD83 (1)',NULL,NULL,'EPSG','9614','NTv1','EPSG','4609','EPSG','4269','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','PQV4.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC NT1',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1454','Old Hawaiian to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4135','EPSG','4269','EPSG','1334',0.2,'EPSG','8657','Latitude difference file','hawaii.las','EPSG','8658','Longitude difference file','hawaii.los',NULL,NULL,'NGS-Usa HI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1455','St. Lawrence Island to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4136','EPSG','4269','EPSG','1332',0.5,'EPSG','8657','Latitude difference file','stlrnc.las','EPSG','8658','Longitude difference file','stlrnc.los',NULL,NULL,'NGS-Usa AK StL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1456','St. Paul Island to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4137','EPSG','4269','EPSG','1333',0.5,'EPSG','8657','Latitude difference file','stpaul.las','EPSG','8658','Longitude difference file','stpaul.los',NULL,NULL,'NGS-Usa AK StP',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1457','St. George Island to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4138','EPSG','4269','EPSG','1331',0.5,'EPSG','8657','Latitude difference file','stgeorge.las','EPSG','8658','Longitude difference file','stgeorge.los',NULL,NULL,'NGS-Usa AK StG',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1461','Puerto Rico to NAD83 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4139','EPSG','4269','EPSG','1335',0.05,'EPSG','8657','Latitude difference file','prvi.las','EPSG','8658','Longitude difference file','prvi.los',NULL,NULL,'NGS-PRVI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1462','NAD27 to NAD83 (5)',NULL,NULL,'EPSG','9614','NTv1','EPSG','4267','EPSG','4269','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','GS2783v1.QUE',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC NT1',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1463','NAD27(76) to NAD83 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4608','EPSG','4269','EPSG','1367',1.0,'EPSG','8656','Latitude and longitude difference file','May76v20.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can Ont',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1464','AGD66 to GDA94 (5)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2285',0.1,'EPSG','8656','Latitude and longitude difference file','vic_0799.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSG-Aus Vic old',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1472','ATS77 to NAD83(CSRS98) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4140','EPSG','1447',NULL,'EPSG','8656','Latitude and longitude difference file','NB7783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GIC-Can NB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1474','NAD83 to NAD83(HARN) (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1372',0.05,'EPSG','8657','Latitude difference file','alhpgn.las','EPSG','8658','Longitude difference file','alhpgn.los',NULL,NULL,'NGS-Usa AL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1475','NAD83 to NAD83(HARN) (2)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1373',0.05,'EPSG','8657','Latitude difference file','azhpgn.las','EPSG','8658','Longitude difference file','azhpgn.los',NULL,NULL,'NGS-Usa AZ',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1476','NAD83 to NAD83(HARN) (3)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2297',0.05,'EPSG','8657','Latitude difference file','cnhpgn.las','EPSG','8658','Longitude difference file','cnhpgn.los',NULL,NULL,'NGS-Usa CA n',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1477','NAD83 to NAD83(HARN) (4)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2298',0.05,'EPSG','8657','Latitude difference file','cshpgn.las','EPSG','8658','Longitude difference file','cshpgn.los',NULL,NULL,'NGS-Usa CA s',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1478','NAD83 to NAD83(HARN) (5)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1376',0.05,'EPSG','8657','Latitude difference file','cohpgn.las','EPSG','8658','Longitude difference file','cohpgn.los',NULL,NULL,'NGS-Usa CO',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1479','NAD83 to NAD83(HARN) (6)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1380',0.05,'EPSG','8657','Latitude difference file','gahpgn.las','EPSG','8658','Longitude difference file','gahpgn.los',NULL,NULL,'NGS-Usa GA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1480','NAD83 to NAD83(HARN) (7)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1379',0.05,'EPSG','8657','Latitude difference file','flhpgn.las','EPSG','8658','Longitude difference file','flhpgn.los',NULL,NULL,'NGS-Usa FL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1481','NAD83 to NAD83(HARN) (8)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2382',0.05,'EPSG','8657','Latitude difference file','emhpgn.las','EPSG','8658','Longitude difference file','emhpgn.los',NULL,NULL,'NGS-Usa ID MT e',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1482','NAD83 to NAD83(HARN) (9)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2383',0.05,'EPSG','8657','Latitude difference file','wmhpgn.las','EPSG','8658','Longitude difference file','wmhpgn.los',NULL,NULL,'NGS-Usa ID MT w',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1483','NAD83 to NAD83(HARN) (10)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1386',0.05,'EPSG','8657','Latitude difference file','kyhpgn.las','EPSG','8658','Longitude difference file','kyhpgn.los',NULL,NULL,'NGS-Usa KY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1484','NAD83 to NAD83(HARN) (11)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1387',0.05,'EPSG','8657','Latitude difference file','lahpgn.las','EPSG','8658','Longitude difference file','lahpgn.los',NULL,NULL,'NGS-Usa LA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1485','NAD83 to NAD83(HARN) (12)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2377',0.05,'EPSG','8657','Latitude difference file','mdhpgn.las','EPSG','8658','Longitude difference file','mdhpgn.los',NULL,NULL,'NGS-Usa DE MD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1486','NAD83 to NAD83(HARN) (13)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1388',0.05,'EPSG','8657','Latitude difference file','mehpgn.las','EPSG','8658','Longitude difference file','mehpgn.los',NULL,NULL,'NGS-Usa ME',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1487','NAD83 to NAD83(HARN) (14)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1391',0.05,'EPSG','8657','Latitude difference file','mihpgn.las','EPSG','8658','Longitude difference file','mihpgn.los',NULL,NULL,'NGS-Usa MI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1488','NAD83 to NAD83(HARN) (15)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1393',0.05,'EPSG','8657','Latitude difference file','mshpgn.las','EPSG','8658','Longitude difference file','mshpgn.los',NULL,NULL,'NGS-Usa MS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1489','NAD83 to NAD83(HARN) (16)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1396',0.05,'EPSG','8657','Latitude difference file','nbhpgn.las','EPSG','8658','Longitude difference file','nbhpgn.los',NULL,NULL,'NGS-Usa NE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1490','NAD83 to NAD83(HARN) (17)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2378',0.05,'EPSG','8657','Latitude difference file','nehpgn.las','EPSG','8658','Longitude difference file','nehpgn.los',NULL,NULL,'NGS-Usa NewEng',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1491','NAD83 to NAD83(HARN) (18)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1400',0.05,'EPSG','8657','Latitude difference file','nmhpgn.las','EPSG','8658','Longitude difference file','nmhpgn.los',NULL,NULL,'NGS-Usa NM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1492','NAD83 to NAD83(HARN) (19)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1401',0.05,'EPSG','8657','Latitude difference file','nyhpgn.las','EPSG','8658','Longitude difference file','nyhpgn.los',NULL,NULL,'NGS-Usa NY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1493','NAD83 to NAD83(HARN) (20)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1403',0.05,'EPSG','8657','Latitude difference file','ndhpgn.las','EPSG','8658','Longitude difference file','ndhpgn.los',NULL,NULL,'NGS-Usa ND',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1494','NAD83 to NAD83(HARN) (21)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1405',0.05,'EPSG','8657','Latitude difference file','okhpgn.las','EPSG','8658','Longitude difference file','okhpgn.los',NULL,NULL,'NGS-Usa OK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1495','NAD83 to NAD83(HARN) (22)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','3634',0.05,'EPSG','8657','Latitude difference file','pvhpgn.las','EPSG','8658','Longitude difference file','pvhpgn.los',NULL,NULL,'NGS-PRVI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1496','NAD83 to NAD83(HARN) (23)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1410',0.05,'EPSG','8657','Latitude difference file','sdhpgn.las','EPSG','8658','Longitude difference file','sdhpgn.los',NULL,NULL,'NGS-Usa SD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1497','NAD83 to NAD83(HARN) (24)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1411',0.05,'EPSG','8657','Latitude difference file','tnhpgn.las','EPSG','8658','Longitude difference file','tnhpgn.los',NULL,NULL,'NGS-Usa TN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1498','NAD83 to NAD83(HARN) (25)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2379',0.05,'EPSG','8657','Latitude difference file','ethpgn.las','EPSG','8658','Longitude difference file','ethpgn.los',NULL,NULL,'NGS-Usa TX e',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1499','NAD83 to NAD83(HARN) (26)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2380',0.05,'EPSG','8657','Latitude difference file','wthpgn.las','EPSG','8658','Longitude difference file','wthpgn.los',NULL,NULL,'NGS-Usa TX w',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1500','NAD83 to NAD83(HARN) (27)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1415',0.05,'EPSG','8657','Latitude difference file','vahpgn.las','EPSG','8658','Longitude difference file','vahpgn.los',NULL,NULL,'NGS-Usa VA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1501','NAD83 to NAD83(HARN) (28)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2381',0.05,'EPSG','8657','Latitude difference file','wohpgn.las','EPSG','8658','Longitude difference file','wohpgn.los',NULL,NULL,'NGS-Usa OR WA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1502','NAD83 to NAD83(HARN) (29)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1418',0.05,'EPSG','8657','Latitude difference file','wihpgn.las','EPSG','8658','Longitude difference file','wihpgn.los',NULL,NULL,'NGS-Usa WI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1503','NAD83 to NAD83(HARN) (30)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1419',0.05,'EPSG','8657','Latitude difference file','wyhpgn.las','EPSG','8658','Longitude difference file','wyhpgn.los',NULL,NULL,'NGS-Usa WY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1506','AGD66 to GDA94 (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','1282',0.1,'EPSG','8656','Latitude and longitude difference file','tas_1098.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSG-Tas 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1507','AGD66 to GDA94 (7)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2284',0.1,'EPSG','8656','Latitude and longitude difference file','nt_0599.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'Auslig-NT 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1520','NAD83 to NAD83(HARN) (31)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1334',0.05,'EPSG','8657','Latitude difference file','hihpgn.las','EPSG','8658','Longitude difference file','hihpgn.los',NULL,NULL,'NGS-Usa HI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1521','NAD83 to NAD83(HARN) (32)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1383',0.05,'EPSG','8657','Latitude difference file','inhpgn.las','EPSG','8658','Longitude difference file','inhpgn.los',NULL,NULL,'NGS-Usa IN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1522','NAD83 to NAD83(HARN) (33)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1385',0.05,'EPSG','8657','Latitude difference file','kshpgn.las','EPSG','8658','Longitude difference file','kshpgn.los',NULL,NULL,'NGS-Usa KS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1523','NAD83 to NAD83(HARN) (34)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1397',0.05,'EPSG','8657','Latitude difference file','nvhpgn.las','EPSG','8658','Longitude difference file','nvhpgn.los',NULL,NULL,'NGS-Usa NV',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1524','NAD83 to NAD83(HARN) (35)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1404',0.05,'EPSG','8657','Latitude difference file','ohhpgn.las','EPSG','8658','Longitude difference file','ohhpgn.los',NULL,NULL,'NGS-Usa OH',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1525','NAD83 to NAD83(HARN) (36)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1413',0.05,'EPSG','8657','Latitude difference file','uthpgn.las','EPSG','8658','Longitude difference file','uthpgn.los',NULL,NULL,'NGS-Usa UT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1526','NAD83 to NAD83(HARN) (37)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1417',0.05,'EPSG','8657','Latitude difference file','wvhpgn.las','EPSG','8658','Longitude difference file','wvhpgn.los',NULL,NULL,'NGS-Usa WV',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1553','NAD83 to NAD83(HARN) (38)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1382',0.05,'EPSG','8657','Latitude difference file','ilhpgn.las','EPSG','8658','Longitude difference file','ilhpgn.los',NULL,NULL,'NGS-Usa IL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1554','NAD83 to NAD83(HARN) (39)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1399',0.05,'EPSG','8657','Latitude difference file','njhpgn.las','EPSG','8658','Longitude difference file','njhpgn.los',NULL,NULL,'NGS-Usa NJ',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1559','AGD84 to GDA94 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4203','EPSG','4283','EPSG','1280',0.1,'EPSG','8656','Latitude and longitude difference file','wa_0400.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'DOLA-Aus WA 0.1m old',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1568','NZGD49 to NZGD2000 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4272','EPSG','4167','EPSG','3285',0.2,'EPSG','8656','Latitude and longitude difference file','nzgd2kgrid0005.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSG-Nzl 1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1572','NAD83 to NAD83(CSRS98) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4140','EPSG','1368',NULL,'EPSG','8656','Latitude and longitude difference file','NAD83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1573','NAD27 to NAD83 (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4269','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','QUE27-83.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC NT2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1574','NAD27 to NAD83(CSRS98) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4140','EPSG','1368',NULL,'EPSG','8656','Latitude and longitude difference file','QUE27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1575','NAD27(CGQ77) to NAD83 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4609','EPSG','4269','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','CGQ77-83.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC NT2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1576','NAD27(CGQ77) to NAD83(CSRS98) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4609','EPSG','4140','EPSG','1368',NULL,'EPSG','8656','Latitude and longitude difference file','CGQ77-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1578','American Samoa 1962 to NAD83(HARN) (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4169','EPSG','4152','EPSG','2288',5.0,'EPSG','8657','Latitude difference file','wshpgn.las','EPSG','8658','Longitude difference file','wshpgn.los',NULL,NULL,'NGS-Asm W',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1579','American Samoa 1962 to NAD83(HARN) (2)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4169','EPSG','4152','EPSG','2289',5.0,'EPSG','8657','Latitude difference file','eshpgn.las','EPSG','8658','Longitude difference file','eshpgn.los',NULL,NULL,'NGS-Asm E',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1593','AGD84 to GDA94 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4203','EPSG','4283','EPSG','1280',0.1,'EPSG','8656','Latitude and longitude difference file','wa_0700.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'DOLA-Aus WA 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1596','AGD66 to GDA94 (10)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2287',0.1,'EPSG','8656','Latitude and longitude difference file','SEAust_21_06_00.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSG-Aus SE 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1599','ATS77 to NAD83(CSRS98) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4140','EPSG','1533',NULL,'EPSG','8656','Latitude and longitude difference file','PE7783V2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'PEI DOT-Can PEI',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1600','NAD27 to NAD83(CSRS98) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4140','EPSG','2375',NULL,'EPSG','8656','Latitude and longitude difference file','SK27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SK PMC-Can SK',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1601','NAD83 to NAD83(CSRS98) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4140','EPSG','2375',NULL,'EPSG','8656','Latitude and longitude difference file','SK83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SK PMC-Can SK',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1602','NAD83 to NAD83(CSRS98) (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4140','EPSG','2376',NULL,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'AB Env-Can AB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1670','NZGD49 to WGS 84 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4272','EPSG','4326','EPSG','3285',1.0,'EPSG','8656','Latitude and longitude difference file','nzgd2kgrid0005.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Nzl 1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1688','ATS77 to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4326','EPSG','1447',1.0,'EPSG','8656','Latitude and longitude difference file','NB7783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can NB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1689','ATS77 to WGS 84 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4326','EPSG','1533',1.0,'EPSG','8656','Latitude and longitude difference file','PE7783V2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can PEI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1690','NAD27(76) to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4608','EPSG','4326','EPSG','1367',1.0,'EPSG','8656','Latitude and longitude difference file','May76v20.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can On',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1691','NAD27(CGQ77) to WGS 84 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4609','EPSG','4326','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','CGQ77-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can Qc NT2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1692','NAD27 to WGS 84 (34)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4326','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','QUE27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can QC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1693','NAD27 to WGS 84 (33)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4326','EPSG','4517',1.0,'EPSG','8656','Latitude and longitude difference file','NTv2_0.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1694','American Samoa 1962 to WGS 84 (2)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4169','EPSG','4326','EPSG','2288',5.0,'EPSG','8657','Latitude difference file','wshpgn.las','EPSG','8658','Longitude difference file','wshpgn.los',NULL,NULL,'EPSG-Asm W',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1695','American Samoa 1962 to WGS 84 (3)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4169','EPSG','4326','EPSG','2289',5.0,'EPSG','8657','Latitude difference file','eshpgn.las','EPSG','8658','Longitude difference file','eshpgn.los',NULL,NULL,'EPSG-Asm E',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1696','NAD83 to WGS 84 (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4326','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','NAD83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can QC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1697','NAD83 to WGS 84 (7)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4326','EPSG','2375',1.0,'EPSG','8656','Latitude and longitude difference file','SK83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can SK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1698','St. George Island to WGS 84 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4138','EPSG','4326','EPSG','1331',1.5,'EPSG','8657','Latitude difference file','stgeorge.las','EPSG','8658','Longitude difference file','stgeorge.los',NULL,NULL,'EPSG-Usa AK StG',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1699','St. Lawrence Island to WGS 84 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4136','EPSG','4326','EPSG','1332',1.5,'EPSG','8657','Latitude difference file','stlrnc.las','EPSG','8658','Longitude difference file','stlrnc.los',NULL,NULL,'EPSG-Usa AK StL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1700','St. Paul Island to WGS 84 (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4137','EPSG','4326','EPSG','1333',1.5,'EPSG','8657','Latitude difference file','stpaul.las','EPSG','8658','Longitude difference file','stpaul.los',NULL,NULL,'EPSG-Usa AK StP',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1702','NAD83 to WGS 84 (8)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4326','EPSG','2376',1.0,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can AB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1703','NAD27 to WGS 84 (32)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4326','EPSG','2375',1.0,'EPSG','8656','Latitude and longitude difference file','SK27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can SK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1704','NAD83 to NAD83(HARN) (40)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1374',0.05,'EPSG','8657','Latitude difference file','arhpgn.las','EPSG','8658','Longitude difference file','arhpgn.los',NULL,NULL,'NGS-Usa AR',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1705','NAD83 to NAD83(HARN) (41)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1384',0.05,'EPSG','8657','Latitude difference file','iahpgn.las','EPSG','8658','Longitude difference file','iahpgn.los',NULL,NULL,'NGS-Usa IA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1706','NAD83 to NAD83(HARN) (42)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1392',0.05,'EPSG','8657','Latitude difference file','mnhpgn.las','EPSG','8658','Longitude difference file','mnhpgn.los',NULL,NULL,'NGS-Usa MN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1707','NAD83 to NAD83(HARN) (43)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1394',0.05,'EPSG','8657','Latitude difference file','mohpgn.las','EPSG','8658','Longitude difference file','mohpgn.los',NULL,NULL,'NGS-Usa MO',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1708','NAD83 to WGS 84 (12)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1374',1.0,'EPSG','8657','Latitude difference file','arhpgn.las','EPSG','8658','Longitude difference file','arhpgn.los',NULL,NULL,'EPSG-USA Ar',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1709','NAD83 to WGS 84 (13)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1384',1.0,'EPSG','8657','Latitude difference file','iahpgn.las','EPSG','8658','Longitude difference file','iahpgn.los',NULL,NULL,'EPSG-Usa IA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1710','NAD83 to WGS 84 (14)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1392',1.0,'EPSG','8657','Latitude difference file','mnhpgn.las','EPSG','8658','Longitude difference file','mnhpgn.los',NULL,NULL,'EPSG-Usa MN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1711','NAD83 to WGS 84 (15)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1394',1.0,'EPSG','8657','Latitude difference file','mohpgn.las','EPSG','8658','Longitude difference file','mohpgn.los',NULL,NULL,'EPSG-Usa MO',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1712','NAD83 to WGS 84 (16)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1376',1.0,'EPSG','8657','Latitude difference file','cohpgn.las','EPSG','8658','Longitude difference file','cohpgn.los',NULL,NULL,'EPSG-Usa CO',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1713','NAD83 to WGS 84 (17)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1380',1.0,'EPSG','8657','Latitude difference file','gahpgn.las','EPSG','8658','Longitude difference file','gahpgn.los',NULL,NULL,'EPSG-Usa GA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1714','NAD83 to WGS 84 (18)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1379',1.0,'EPSG','8657','Latitude difference file','flhpgn.las','EPSG','8658','Longitude difference file','flhpgn.los',NULL,NULL,'EPSG-Usa FL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1715','NAD83 to WGS 84 (19)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2382',1.0,'EPSG','8657','Latitude difference file','emhpgn.las','EPSG','8658','Longitude difference file','emhpgn.los',NULL,NULL,'EPSG-Usa ID MT e',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1716','NAD83 to WGS 84 (20)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2383',1.0,'EPSG','8657','Latitude difference file','wmhpgn.las','EPSG','8658','Longitude difference file','wmhpgn.los',NULL,NULL,'EPSG-Usa ID MT w',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1717','NAD83 to WGS 84 (21)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1372',1.0,'EPSG','8657','Latitude difference file','alhpgn.las','EPSG','8658','Longitude difference file','alhpgn.los',NULL,NULL,'EPSG-Usa AL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1718','NAD83 to WGS 84 (22)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1386',1.0,'EPSG','8657','Latitude difference file','kyhpgn.las','EPSG','8658','Longitude difference file','kyhpgn.los',NULL,NULL,'EPSG-Usa KY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1719','NAD83 to WGS 84 (23)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1387',1.0,'EPSG','8657','Latitude difference file','lahpgn.las','EPSG','8658','Longitude difference file','lahpgn.los',NULL,NULL,'EPSG-Usa LA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1720','NAD83 to WGS 84 (24)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2377',1.0,'EPSG','8657','Latitude difference file','mdhpgn.las','EPSG','8658','Longitude difference file','mdhpgn.los',NULL,NULL,'EPSG-Usa DE MD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1721','NAD83 to WGS 84 (25)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1388',1.0,'EPSG','8657','Latitude difference file','mehpgn.las','EPSG','8658','Longitude difference file','mehpgn.los',NULL,NULL,'EPSG-Usa ME',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1722','NAD83 to WGS 84 (26)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1391',1.0,'EPSG','8657','Latitude difference file','mihpgn.las','EPSG','8658','Longitude difference file','mihpgn.los',NULL,NULL,'EPSG-Usa MI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1723','NAD83 to WGS 84 (27)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1393',1.0,'EPSG','8657','Latitude difference file','mshpgn.las','EPSG','8658','Longitude difference file','mshpgn.los',NULL,NULL,'EPSG-Usa MS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1724','NAD83 to WGS 84 (28)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1396',1.0,'EPSG','8657','Latitude difference file','nbhpgn.las','EPSG','8658','Longitude difference file','nbhpgn.los',NULL,NULL,'EPSG-Usa NE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1725','NAD83 to WGS 84 (29)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2378',1.0,'EPSG','8657','Latitude difference file','nehpgn.las','EPSG','8658','Longitude difference file','nehpgn.los',NULL,NULL,'EPSG-Usa NewEng',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1726','NAD83 to WGS 84 (30)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1400',1.0,'EPSG','8657','Latitude difference file','nmhpgn.las','EPSG','8658','Longitude difference file','nmhpgn.los',NULL,NULL,'EPSG-Usa NM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1727','NAD83 to WGS 84 (31)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1401',1.0,'EPSG','8657','Latitude difference file','nyhpgn.las','EPSG','8658','Longitude difference file','nyhpgn.los',NULL,NULL,'EPSG-Usa NY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1728','NAD83 to WGS 84 (32)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1373',1.0,'EPSG','8657','Latitude difference file','azhpgn.las','EPSG','8658','Longitude difference file','azhpgn.los',NULL,NULL,'EPSG-Usa AZ',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1729','NAD83 to WGS 84 (33)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1403',1.0,'EPSG','8657','Latitude difference file','ndhpgn.las','EPSG','8658','Longitude difference file','ndhpgn.los',NULL,NULL,'EPSG-Usa ND',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1730','NAD83 to WGS 84 (34)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1405',1.0,'EPSG','8657','Latitude difference file','okhpgn.las','EPSG','8658','Longitude difference file','okhpgn.los',NULL,NULL,'EPSG-Usa OK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1731','NAD83 to WGS 84 (35)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','3634',1.0,'EPSG','8657','Latitude difference file','pvhpgn.las','EPSG','8658','Longitude difference file','pvhpgn.los',NULL,NULL,'EPSG-PRVI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1732','NAD83 to WGS 84 (36)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1410',1.0,'EPSG','8657','Latitude difference file','sdhpgn.las','EPSG','8658','Longitude difference file','sdhpgn.los',NULL,NULL,'EPSG-Usa SD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1733','NAD83 to WGS 84 (37)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1411',1.0,'EPSG','8657','Latitude difference file','tnhpgn.las','EPSG','8658','Longitude difference file','tnhpgn.los',NULL,NULL,'EPSG-Usa TN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1734','NAD83 to WGS 84 (38)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2379',1.0,'EPSG','8657','Latitude difference file','ethpgn.las','EPSG','8658','Longitude difference file','ethpgn.los',NULL,NULL,'EPSG-Usa TX e',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1735','NAD83 to WGS 84 (39)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2380',1.0,'EPSG','8657','Latitude difference file','wthpgn.las','EPSG','8658','Longitude difference file','wthpgn.los',NULL,NULL,'EPSG-Usa TX w',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1736','NAD83 to WGS 84 (40)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1415',1.0,'EPSG','8657','Latitude difference file','vahpgn.las','EPSG','8658','Longitude difference file','vahpgn.los',NULL,NULL,'EPSG-Usa VA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1737','NAD83 to WGS 84 (41)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2381',1.0,'EPSG','8657','Latitude difference file','wohpgn.las','EPSG','8658','Longitude difference file','wohpgn.los',NULL,NULL,'EPSG-Usa OR WA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1738','NAD83 to WGS 84 (42)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1418',1.0,'EPSG','8657','Latitude difference file','wihpgn.las','EPSG','8658','Longitude difference file','wihpgn.los',NULL,NULL,'EPSG-Usa WI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1739','NAD83 to WGS 84 (43)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2297',1.0,'EPSG','8657','Latitude difference file','cnhpgn.las','EPSG','8658','Longitude difference file','cnhpgn.los',NULL,NULL,'EPSG-Usa CA n',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1740','NAD83 to WGS 84 (44)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1419',1.0,'EPSG','8657','Latitude difference file','wyhpgn.las','EPSG','8658','Longitude difference file','wyhpgn.los',NULL,NULL,'EPSG-Usa WY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1741','NAD83 to WGS 84 (45)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1334',1.0,'EPSG','8657','Latitude difference file','hihpgn.las','EPSG','8658','Longitude difference file','hihpgn.los',NULL,NULL,'EPSG-Usa HI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1742','NAD83 to WGS 84 (46)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1383',1.0,'EPSG','8657','Latitude difference file','inhpgn.las','EPSG','8658','Longitude difference file','inhpgn.los',NULL,NULL,'EPSG-Usa IN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1743','NAD83 to WGS 84 (47)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1385',1.0,'EPSG','8657','Latitude difference file','kshpgn.las','EPSG','8658','Longitude difference file','kshpgn.los',NULL,NULL,'EPSG-Usa KS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1744','NAD83 to WGS 84 (48)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1397',1.0,'EPSG','8657','Latitude difference file','nvhpgn.las','EPSG','8658','Longitude difference file','nvhpgn.los',NULL,NULL,'EPSG-Usa NV',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1745','NAD83 to WGS 84 (49)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1404',1.0,'EPSG','8657','Latitude difference file','ohhpgn.las','EPSG','8658','Longitude difference file','ohhpgn.los',NULL,NULL,'EPSG-Usa OH',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1746','NAD83 to WGS 84 (50)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1413',1.0,'EPSG','8657','Latitude difference file','uthpgn.las','EPSG','8658','Longitude difference file','uthpgn.los',NULL,NULL,'EPSG-Usa UT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1747','NAD83 to WGS 84 (51)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1417',1.0,'EPSG','8657','Latitude difference file','wvhpgn.las','EPSG','8658','Longitude difference file','wvhpgn.los',NULL,NULL,'EPSG-Usa WV',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1748','NAD83 to WGS 84 (52)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1382',1.0,'EPSG','8657','Latitude difference file','ilhpgn.las','EPSG','8658','Longitude difference file','ilhpgn.los',NULL,NULL,'EPSG-Usa IL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1749','NAD83 to WGS 84 (53)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1399',1.0,'EPSG','8657','Latitude difference file','njhpgn.las','EPSG','8658','Longitude difference file','njhpgn.los',NULL,NULL,'EPSG-Usa NJ',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1750','NAD83 to WGS 84 (54)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2298',1.0,'EPSG','8657','Latitude difference file','cshpgn.las','EPSG','8658','Longitude difference file','cshpgn.los',NULL,NULL,'EPSG-Usa CA s',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1752','NAD83 to NAD83(CSRS98) (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4140','EPSG','2376',NULL,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'AB Env-Can AB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1803','AGD66 to GDA94 (11)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2575',0.1,'EPSG','8656','Latitude and longitude difference file','A66 National (13.09.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Aus 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1804','AGD84 to GDA94 (5)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4203','EPSG','4283','EPSG','2576',0.1,'EPSG','8656','Latitude and longitude difference file','National 84 (02.07.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,'Auslig-Aus 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1841','ATS77 to NAD83(CSRS) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4617','EPSG','1447',1.5,'EPSG','8656','Latitude and longitude difference file','NB7783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GIC-Can NB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1843','NAD83 to NAD83(CSRS) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4617','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','NAD83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1844','NAD27 to NAD83(CSRS) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4617','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','QUE27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1845','NAD27(CGQ77) to NAD83(CSRS) (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4609','EPSG','4617','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','CGQ77-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1846','ATS77 to NAD83(CSRS) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4617','EPSG','1533',1.5,'EPSG','8656','Latitude and longitude difference file','PE7783V2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'PEI DOT-Can PEI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1847','NAD27 to NAD83(CSRS) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4617','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SK PMC-Can SK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1848','NAD83 to NAD83(CSRS) (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4617','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SK PMC-Can SK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1849','NAD83 to NAD83(CSRS) (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4269','EPSG','4617','EPSG','2376',1.5,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'AB Env-Can AB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1850','ATS77 to NAD83(CSRS) (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4617','EPSG','2313',1.5,'EPSG','8656','Latitude and longitude difference file','NS778301.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'NSGC-Can NS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1851','ATS77 to WGS 84 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4122','EPSG','4326','EPSG','2313',1.0,'EPSG','8656','Latitude and longitude difference file','NS778301.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can NS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','3858','WGS 84 to EGM2008 height (1)',NULL,NULL,'EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','4979','EPSG','3855','EPSG','1262',1.0,'EPSG','8666','Geoid (height correction) model file','Und_min2.5x2.5_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,'NGA-World',0);
INSERT INTO "grid_transformation" VALUES('EPSG','3859','WGS 84 to EGM2008 height (2)',NULL,NULL,'EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','4979','EPSG','3855','EPSG','1262',0.5,'EPSG','8666','Geoid (height correction) model file','Und_min1x1_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,'NGA-World',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4459','NZGD2000 to NZVD2009 height (1)',NULL,NULL,'EPSG','1030','Geographic3D to GravityRelatedHeight (NZgeoid)','EPSG','4959','EPSG','4440','EPSG','1175',0.1,'EPSG','8666','Geoid (height correction) model file','nzgeoid09.sid',NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ 2009',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4561','RRAF 1991 to Martinique 1987 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5756','EPSG','3276',998.0,'EPSG','8666','Geoid (height correction) model file','ggm00.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Mtq',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4562','RRAF 1991 to Guadeloupe 1988 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5757','EPSG','2892',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp GT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4563','RRAF 1991 to IGN 1988 MG height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5617','EPSG','2894',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp MG',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4564','RRAF 1991 to IGN 1988 SM height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5620','EPSG','2890',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4565','RRAF 1991 to IGN 1988 LS height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5616','EPSG','2895',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp LSt',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4566','RRAF 1991 to IGN 1992 LD height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5618','EPSG','2893',0.5,'EPSG','8666','Geoid (height correction) model file','ggg00_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp Des',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4567','RRAF 1991 to IGN 1988 SB height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5619','EPSG','2891',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5334','ETRS89 to Belfast height (1)',NULL,NULL,'EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5732','EPSG','2530',0.03,'EPSG','8666','Geoid (height correction) model file','OSGM02_NI.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK NI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5335','ETRS89 to Malin Head height (1)',NULL,NULL,'EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5731','EPSG','1305',0.04,'EPSG','8666','Geoid (height correction) model file','OSGM02_RoI.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-Ire',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5338','OSGB 1936 to ETRS89 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4277','EPSG','4258','EPSG','1264',0.03,'EPSG','8656','Latitude and longitude difference file','OSTN02_NTv2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSGB-UK Gbr02 NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5339','OSGB 1936 to WGS 84 (7)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4277','EPSG','4326','EPSG','1264',1.0,'EPSG','8656','Latitude and longitude difference file','OSTN02_NTv2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-UK Gbr02 NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5409','NGVD29 height to NAVD88 height (1)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','5702','EPSG','5703','EPSG','2950',0.02,'EPSG','8732','Vertical offset file','vertconw.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus W',1);
INSERT INTO "grid_transformation" VALUES('EPSG','5410','NGVD29 height to NAVD88 height (2)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','5702','EPSG','5703','EPSG','2949',0.02,'EPSG','8732','Vertical offset file','vertconc.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus C',1);
INSERT INTO "grid_transformation" VALUES('EPSG','5411','NGVD29 height to NAVD88 height (3)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','5702','EPSG','5703','EPSG','2948',0.02,'EPSG','8732','Vertical offset file','vertcone.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus E',1);
INSERT INTO "grid_transformation" VALUES('EPSG','5502','RGAF09 to Martinique 1987 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5756','EPSG','3276',998.0,'EPSG','8666','Geoid (height correction) model file','gg10_mart.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Mtq',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5503','RGAF09 to Guadeloupe 1988 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5757','EPSG','2892',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_gtbt.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp GT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5504','RGAF09 to IGN 1988 MG height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5617','EPSG','2894',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp MG',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5505','RGAF09 to IGN 1988 SM height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5620','EPSG','2890',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5506','RGAF09 to IGN 1988 LS height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5616','EPSG','2895',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp LSt',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5507','RGAF09 to IGN 1992 LD height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5618','EPSG','2893',0.5,'EPSG','8666','Geoid (height correction) model file','gg10_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp Des',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5508','RGAF09 to IGN 1988 SB height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5619','EPSG','2891',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5525','Corrego Alegre 1961 to SIRGAS 2000 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','5524','EPSG','4674','EPSG','3874',2.0,'EPSG','8656','Latitude and longitude difference file','CA61_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IBGE-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5526','Corrego Alegre 1970-72 to SIRGAS 2000 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4225','EPSG','4674','EPSG','1293',2.0,'EPSG','8656','Latitude and longitude difference file','CA7072_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IBGE-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5528','SAD69 to SIRGAS 2000 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4618','EPSG','4674','EPSG','3887',1.0,'EPSG','8656','Latitude and longitude difference file','SAD69_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IBGE-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5529','SAD69(96) to SIRGAS 2000 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','5527','EPSG','4674','EPSG','3887',0.5,'EPSG','8656','Latitude and longitude difference file','SAD96_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IBGE-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5540','Corrego Alegre 1961 to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','5524','EPSG','4326','EPSG','3874',2.0,'EPSG','8656','Latitude and longitude difference file','CA61_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5541','Corrego Alegre 1970-72 to WGS 84 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4225','EPSG','4326','EPSG','1293',2.0,'EPSG','8656','Latitude and longitude difference file','CA7072_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5542','SAD69 to WGS 84 (15)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4618','EPSG','4326','EPSG','3887',2.0,'EPSG','8656','Latitude and longitude difference file','SAD69_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5543','SAD69(96) to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','5527','EPSG','4326','EPSG','3887',1.0,'EPSG','8656','Latitude and longitude difference file','SAD96_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5594','FEH2010 to FCSVR10 height (1)',NULL,NULL,'EPSG','1030','Geographic3D to GravityRelatedHeight (NZgeoid)','EPSG','5592','EPSG','5597','EPSG','3890',0.1,'EPSG','8666','Geoid (height correction) model file','fehmarn_geoid10.gri',NULL,NULL,NULL,NULL,NULL,NULL,'FEM-Dnk-Deu Feh',1);
INSERT INTO "grid_transformation" VALUES('EPSG','5626','FEH2010 to FCSVR10 height (1)',NULL,NULL,'EPSG','1047','Geographic3D to GravityRelatedHeight (Gravsoft)','EPSG','5592','EPSG','5597','EPSG','3890',0.1,'EPSG','8666','Geoid (height correction) model file','fehmarn_geoid10.gri',NULL,NULL,NULL,NULL,NULL,NULL,'FEM-Dnk-Deu Feh',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5656','GDA94 to AHD height (49)',NULL,NULL,'EPSG','1048','Geographic3D to GravityRelatedHeight (Ausgeoid v2)','EPSG','4939','EPSG','5711','EPSG','1281',0.03,'EPSG','8666','Geoid (height correction) model file','AUSGeoid09_GDA94_V1.01_DOV_windows.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus09 mainland',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5657','GDA94 to AHD (Tasmania) height (2)',NULL,NULL,'EPSG','1048','Geographic3D to GravityRelatedHeight (Ausgeoid v2)','EPSG','4939','EPSG','5712','EPSG','2947',0.03,'EPSG','8666','Geoid (height correction) model file','AUSGeoid09_GDA94_V1.01_DOV_windows.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus09 Tas',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5661','ED50 to ETRS89 (14)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4230','EPSG','4258','EPSG','3732',0.05,'EPSG','8656','Latitude and longitude difference file','100800401.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICC-Esp Cat',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5891','MGI to ETRS89 (5)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4312','EPSG','4258','EPSG','1037',0.15,'EPSG','8656','Latitude and longitude difference file','AT_GIS_GRID.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BEV-Aut NTv2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6138','CIGD11 to GCVD54 height (ft) (1)',NULL,NULL,'EPSG','1050','Geographic3D to GravityRelatedHeight (CI)','EPSG','6134','EPSG','6130','EPSG','3185',0.03,'EPSG','8666','Geoid (height correction) model file','GCGM0811.TXT',NULL,NULL,NULL,NULL,NULL,NULL,'LSD-Cym',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6139','CIGD11 to LCVD61 height (ft) (1)',NULL,NULL,'EPSG','1050','Geographic3D to GravityRelatedHeight (CI)','EPSG','6134','EPSG','6131','EPSG','4121',0.03,'EPSG','8666','Geoid (height correction) model file','LCGM0811.TXT',NULL,NULL,NULL,NULL,NULL,NULL,'LSD-Cym',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6140','CIGD11 to CBVD61 height (ft) (1)',NULL,NULL,'EPSG','1050','Geographic3D to GravityRelatedHeight (CI)','EPSG','6134','EPSG','6132','EPSG','3207',0.03,'EPSG','8666','Geoid (height correction) model file','CBGM0811.TXT',NULL,NULL,NULL,NULL,NULL,NULL,'LSD-Cym',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6188','Lisbon to ETRS89 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4207','EPSG','4258','EPSG','1294',0.1,'EPSG','8656','Latitude and longitude difference file','DLx_ETRS89_geo.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IGP-Prt 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6189','Datum 73 to ETRS89 (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4274','EPSG','4258','EPSG','1294',0.1,'EPSG','8656','Latitude and longitude difference file','D73_ETRS89_geo.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IGP-Prt 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6209','NAD27 to NAD83(CSRS) (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4267','EPSG','4617','EPSG','1447',0.8,'EPSG','8656','Latitude and longitude difference file','NB2783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SNB-Can NB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6326','NAD83(2011) to NAVD88 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','5703','EPSG','1323',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bu0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6327','NAD83(2011) to NAVD88 height (2)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','5703','EPSG','1330',0.2,'EPSG','8666','Geoid (height correction) model file','g2012Ba0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US AK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6648','NAD83(CSRS) to CGVD2013 height (1)',NULL,NULL,'EPSG','1060','Geographic3D to GravityRelatedHeight (CGG2013)','EPSG','4955','EPSG','6647','EPSG','1061',0.03,'EPSG','8666','Geoid (height correction) model file','CGG2013n83.byn',NULL,NULL,NULL,NULL,NULL,NULL,'NRC Can CGG2013',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6712','Tokyo to JGD2000 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4301','EPSG','4612','EPSG','3957',0.2,'EPSG','8656','Latitude and longitude difference file','tky2jgd.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Jpn',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6713','JGD2000 to JGD2011 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4612','EPSG','6668','EPSG','4170',0.2,'EPSG','8656','Latitude and longitude difference file','touhokutaiheiyouoki2011.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Jpn N Honshu',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6740','Tokyo to JGD2011 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4301','EPSG','6668','EPSG','4194',0.2,'EPSG','8656','Latitude and longitude difference file','tky2jgd.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Jpn ex N Honshu',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6946','TM75 to ETRS89 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4300','EPSG','4258','EPSG','1305',0.41,'EPSG','8656','Latitude and longitude difference file','tm75_etrs89.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSI-Ire NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6947','TM75 to WGS 84 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4300','EPSG','4326','EPSG','1305',1.0,'EPSG','8656','Latitude and longitude difference file','tm75_etrs89.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Ire NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6948','RD/83 to ETRS89 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4745','EPSG','4258','EPSG','2545',0.03,'EPSG','8656','Latitude and longitude difference file','NTv2_SN.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GeoSN-Deu SN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7000','Amersfoort to ETRS89 (7)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4289','EPSG','4258','EPSG','1275',0.001,'EPSG','8656','Latitude and longitude difference file','rdtrans2008.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'RDNAP-Nld 2008',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7001','ETRS89 to NAP height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4937','EPSG','5709','EPSG','1275',0.01,'EPSG','8666','Geoid (height correction) model file','naptrans2008.gtx',NULL,NULL,NULL,NULL,NULL,NULL,'RDNAP-Nld 2008',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7646','NAD83(2011) to PRVD02 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','6641','EPSG','3294',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bp0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Pri 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7647','NAD83(2011) to VIVD09 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','6642','EPSG','3330',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bp0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Vir 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7648','NAD83(MA11) to GUVD04 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6323','EPSG','6644','EPSG','3255',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bg0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Gum 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7649','NAD83(MA11) to NMVD03 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6323','EPSG','6640','EPSG','4171',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bg0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Mnp 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7650','NAD83(PA11) to ASVD02 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6320','EPSG','6643','EPSG','2288',0.1,'EPSG','8666','Geoid (height correction) model file','g2012Bs0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Asm 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7655','PNG94 to PNG08 height (1)',NULL,NULL,'EPSG','1059','Geographic3D to GravityRelatedHeight (PNG)','EPSG','5545','EPSG','7447','EPSG','4384',0.2,'EPSG','8666','Geoid (height correction) model file','PNG08.DAT',NULL,NULL,NULL,NULL,NULL,NULL,'QC-Png',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7673','CH1903 to CHTRF95 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4149','EPSG','4151','EPSG','1286',0.25,'EPSG','8656','Latitude and longitude difference file','CHENyx06_ETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BfL-Che NTv2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7674','CH1903 to ETRS89 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4149','EPSG','4258','EPSG','1286',0.25,'EPSG','8656','Latitude and longitude difference file','CHENyx06_ETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BfL-Che NTv2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7709','OSGB 1936 to ETRS89 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4277','EPSG','4258','EPSG','4390',0.03,'EPSG','8656','Latitude and longitude difference file','OSTN15_NTv2_OSGBtoETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSGB-UK Gbr15 NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7710','OSGB 1936 to WGS 84 (9)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4277','EPSG','4326','EPSG','4390',1.0,'EPSG','8656','Latitude and longitude difference file','OSTN15_NTv2_OSGBtoETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-UK Gbr15 NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7711','ETRS89 to Newlyn height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5701','EPSG','2792',0.008,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Gbr 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7712','ETRS89 to Newlyn (Orkney Isles) height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5740','EPSG','2793',0.017,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Ork 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7713','ETRS89 to Newlyn (Offshore) height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','7707','EPSG','4391',0.02,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Off 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7714','ETRS89 to Lerwick height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5742','EPSG','2795',0.018,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS -UK Shet 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7715','ETRS89 to Stornoway height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5746','EPSG','2799',0.011,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Heb 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7716','ETRS89 to St. Marys height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5749','EPSG','2802',0.01,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Scilly 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7717','ETRS89 to Douglas height (2)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5750','EPSG','2803',0.03,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Man 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7718','ETRS89 to Belfast height (2)',NULL,NULL,'EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5732','EPSG','2530',0.014,'EPSG','8666','Geoid (height correction) model file','OSGM15_Belfast.gri',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK NI 2015',1);
INSERT INTO "grid_transformation" VALUES('EPSG','7719','ETRS89 to Malin Head height (2)',NULL,NULL,'EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5731','EPSG','1305',0.023,'EPSG','8666','Geoid (height correction) model file','OSGM15_Malin.gri',NULL,NULL,NULL,NULL,NULL,NULL,'OS-Ire 2015',1);
INSERT INTO "grid_transformation" VALUES('EPSG','7788','CH1903 to WGS 84 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4149','EPSG','4326','EPSG','1286',1.5,'EPSG','8656','Latitude and longitude difference file','CHENyx06_ETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Che NTv2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7840','NZGD2000 to NZVD2016 height (1)',NULL,NULL,'EPSG','1030','Geographic3D to GravityRelatedHeight (NZgeoid)','EPSG','4959','EPSG','7839','EPSG','1175',0.1,'EPSG','8666','Geoid (height correction) model file','New_Zealand_Quasigeoid_2016.csv',NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ 2016',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7860','NZVD2016 height to Auckland 1946 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5759','EPSG','3764',0.02,'EPSG','8732','Vertical offset file','auckland-1946-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ AUCK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7861','NZVD2016 height to Bluff 1955 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5760','EPSG','3801',0.02,'EPSG','8732','Vertical offset file','bluff-1955-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ BLUF',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7862','NZVD2016 height to Dunedin 1958 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5761','EPSG','3803',0.02,'EPSG','8732','Vertical offset file','dunedin-1958-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ DUNE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7863','NZVD2016 height to Dunedin-Bluff 1960 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','4458','EPSG','3806',0.02,'EPSG','8732','Vertical offset file','dunedin-bluff-1960-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ DUBL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7864','NZVD2016 height to Gisborne 1926 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5762','EPSG','3771',0.02,'EPSG','8732','Vertical offset file','gisborne-1926-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ GISB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7865','NZVD2016 height to Lyttelton 1937 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5763','EPSG','3804',0.01,'EPSG','8732','Vertical offset file','lyttelton-1937-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ LYTT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7866','NZVD2016 height to Moturiki 1953 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5764','EPSG','3768',0.02,'EPSG','8732','Vertical offset file','moturiki-1953-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ MOTU',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7867','NZVD2016 height to Napier 1962 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5765','EPSG','3772',0.02,'EPSG','8732','Vertical offset file','napier-1962-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ NAPI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7868','NZVD2016 height to Nelson 1955 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5766','EPSG','3802',0.02,'EPSG','8732','Vertical offset file','nelson-1955-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ NELS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7869','NZVD2016 height to One Tree Point 1964 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5767','EPSG','3762',0.01,'EPSG','8732','Vertical offset file','onetreepoint-1964-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ ONTP',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7870','NZVD2016 height to Stewart Island 1977 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5772','EPSG','3338',0.18,'EPSG','8732','Vertical offset file','stewartisland-1977-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ STWT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7871','NZVD2016 height to Taranaki 1970 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5769','EPSG','3769',0.02,'EPSG','8732','Vertical offset file','taranaki-1970-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ TARA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7872','NZVD2016 height to Wellington 1953 height (1)',NULL,NULL,'EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5770','EPSG','3773',0.02,'EPSG','8732','Vertical offset file','wellington-1953-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ WGTN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7891','SHGD2015 to SHVD2015 height (1)',NULL,NULL,'EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','7885','EPSG','7890','EPSG','3183',0.0,'EPSG','8666','Geoid (height correction) model file','Und_min2.5x2.5_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,'ENRD-Shn Hel',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7957','Canada velocity grid v6',NULL,NULL,'EPSG','1070','Point motion by grid (Canada NTv2_Vel)','EPSG','8251','EPSG','8251','EPSG','1061',0.01,'EPSG','1050','Point motion velocity grid file','cvg60.cvb',NULL,NULL,NULL,NULL,NULL,NULL,'NRC-Can cvg6.0',1);
INSERT INTO "grid_transformation" VALUES('EPSG','7958','ETRS89 to Belfast height (2)',NULL,NULL,'EPSG','1072','Geographic3D to GravityRelatedHeight (OSGM15-Ire)','EPSG','4937','EPSG','5732','EPSG','2530',0.014,'EPSG','8666','Geoid (height correction) model file','OSGM15_Belfast.gri',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK NI 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7959','ETRS89 to Malin Head height (2)',NULL,NULL,'EPSG','1072','Geographic3D to GravityRelatedHeight (OSGM15-Ire)','EPSG','4937','EPSG','5731','EPSG','1305',0.023,'EPSG','8666','Geoid (height correction) model file','OSGM15_Malin.gri',NULL,NULL,NULL,NULL,NULL,NULL,'OS-Ire 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7969','NGVD29 height (m) to NAVD88 height (1)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','7968','EPSG','5703','EPSG','2950',0.02,'EPSG','8732','Vertical offset file','vertconw.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus W',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7970','NGVD29 height (m) to NAVD88 height (2)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','7968','EPSG','5703','EPSG','2949',0.02,'EPSG','8732','Vertical offset file','vertconc.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus C',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7971','NGVD29 height (m) to NAVD88 height (3)',NULL,NULL,'EPSG','9658','VERTCON','EPSG','7968','EPSG','5703','EPSG','2948',0.02,'EPSG','8732','Vertical offset file','vertcone.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus E',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8037','WGS 84 to MSL height (1)',NULL,NULL,'EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','4979','EPSG','5714','EPSG','1262',0.5,'EPSG','8666','Geoid (height correction) model file','Und_min1x1_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,'IOGP-World',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8268','GR96 to GVR2000 height (1)',NULL,NULL,'EPSG','1047','Geographic3D to GravityRelatedHeight (Gravsoft)','EPSG','4909','EPSG','8266','EPSG','4461',0.1,'EPSG','8666','Geoid (height correction) model file','gr2000g.gri',NULL,NULL,NULL,NULL,NULL,NULL,'SDFE-Grl',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8269','GR96 to GVR2016 height (1)',NULL,NULL,'EPSG','1047','Geographic3D to GravityRelatedHeight (Gravsoft)','EPSG','4909','EPSG','8267','EPSG','4454',0.1,'EPSG','8666','Geoid (height correction) model file','ggeoid16.gri',NULL,NULL,NULL,NULL,NULL,NULL,'SDFE-Grl',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8271','RGF93 to NGF IGN69 height (2)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5720','EPSG','1326',0.02,'EPSG','8666','Geoid (height correction) model file','RAF09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra 09',1);
INSERT INTO "grid_transformation" VALUES('EPSG','8272','RGF93 to IGN78 Corsica height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5721','EPSG','1327',0.05,'EPSG','8666','Geoid (height correction) model file','RAC09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra Cor 09',1);
INSERT INTO "grid_transformation" VALUES('EPSG','8361','ETRS89 to ETRS89 + Baltic 1957 height (1)',NULL,NULL,'EPSG','9635','Geog3D to Geog2D+GravityRelatedHeight (US .gtx)','EPSG','4937','EPSG','8360','EPSG','1211',0.03,'EPSG','8666','Geoid (height correction) model file','Slovakia_ETRS89h_to_Baltic1957.gtx',NULL,NULL,NULL,NULL,NULL,NULL,'UGKK-Svk',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8362','ETRS89 to ETRS89 + EVRF2007 height (1)',NULL,NULL,'EPSG','9635','Geog3D to Geog2D+GravityRelatedHeight (US .gtx)','EPSG','4937','EPSG','7423','EPSG','1211',0.03,'EPSG','8666','Geoid (height correction) model file','Slovakia_ETRS89h_to_EVRF2007.gtx',NULL,NULL,NULL,NULL,NULL,NULL,'UGKK-Svk',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8364','S-JTSK [JTSK03] to S-JTSK (1)',NULL,NULL,'EPSG','9613','NADCON','EPSG','8351','EPSG','4156','EPSG','1211',0.05,'EPSG','8657','Latitude difference file','Slovakia_JTSK03_to_JTSK.LAS','EPSG','8658','Longitude difference file','Slovakia_JTSK03_to_JTSK.LOS',NULL,NULL,'UGKK-Svk',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8369','BD72 to ETRS89 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4313','EPSG','4258','EPSG','1347',0.01,'EPSG','8656','Latitude and longitude difference file','bd72lb72_etrs89lb08.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Bel 0.01m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8371','RGF93 to NGF IGN69 height (2)',NULL,NULL,'EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4965','EPSG','5720','EPSG','1326',0.02,'EPSG','8666','Geoid (height correction) model file','RAF09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra 09',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8372','RGF93 to IGN78 Corsica height (2)',NULL,NULL,'EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4965','EPSG','5721','EPSG','1327',0.05,'EPSG','8666','Geoid (height correction) model file','RAC09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra Cor 09',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8444','GDA94 to GDA2020 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','4169',0.05,'EPSG','8656','Latitude and longitude difference file','XMAS_C_V1.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Cxr CI Conf',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8445','GDA94 to GDA2020 (5)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','1069',0.05,'EPSG','8656','Latitude and longitude difference file','COCOS_C_V1.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Cki Conf',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8446','GDA94 to GDA2020 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','2575',0.05,'EPSG','8656','Latitude and longitude difference file','GDA94_GDA2020_conformal.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Aus NTv2 Conf',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8447','GDA94 to GDA2020 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','2575',0.05,'EPSG','8656','Latitude and longitude difference file','GDA94_GDA2020_conformal_and_distortion.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Aus Conf and Dist',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8451','GDA2020 to AHD height (1)',NULL,NULL,'EPSG','1048','Geographic3D to GravityRelatedHeight (Ausgeoid v2)','EPSG','7843','EPSG','5711','EPSG','4493',0.03,'EPSG','8666','Geoid (height correction) model file','AUSGeoid2020_windows_binary.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus 2020',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8676','Canada velocity grid v6',NULL,NULL,'EPSG','1070','Point motion by grid (Canada NTv2_Vel)','EPSG','8251','EPSG','8251','EPSG','1061',0.01,'EPSG','1050','Point motion velocity grid file','cvg60.cvb',NULL,NULL,NULL,NULL,NULL,NULL,'NRC-Can cvg6.0',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8885','RGF93 to NGF IGN69 height (3)',NULL,NULL,'EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4965','EPSG','5720','EPSG','1326',0.01,'EPSG','8666','Geoid (height correction) model file','RAF18.tac',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra 18',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10000','RGF93 to NGF IGN69 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5720','EPSG','1326',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10001','ETRS89 to NGF IGN69 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4937','EPSG','5720','EPSG','1326',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10002','RGF93 to IGN78 Corsica height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5721','EPSG','1327',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a_corse.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra Cor',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10003','ETRS89 to IGN78 Corsica height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4937','EPSG','5721','EPSG','1327',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a_corse.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra Cor',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10004','RRAF 1991 to Martinique 1987 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5756','EPSG','1156',998.0,'EPSG','8666','Geoid (height correction) model file','ggm00.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Mtq',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10005','RRAF 1991 to Guadeloupe 1988 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2892',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp GT',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10006','RRAF 1991 to Guadeloupe 1988 height (2)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2894',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp MG',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10007','RRAF 1991 to Guadeloupe 1988 height (3)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2895',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp LSt',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10008','RRAF 1991 to Guadeloupe 1988 height (4)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2893',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp Des',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10009','RRAF 1991 to Guadeloupe 1988 height (5)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2891',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10010','RRAF 1991 to Guadeloupe 1988 height (6)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2890',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StM',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10011','RGFG95 to NGG1977 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4967','EPSG','5755','EPSG','3146',998.0,'EPSG','8666','Geoid (height correction) model file','ggguy00.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Guf',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10012','RGR92 to Reunion 1989 height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4971','EPSG','5758','EPSG','3337',0.1,'EPSG','8666','Geoid (height correction) model file','ggr99.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Reu',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10013','NAD83 to NAVD88 height (1)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2977',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u01.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus NW',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10014','NAD83 to NAVD88 height (2)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2978',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u02.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CNW',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10015','NAD83 to NAVD88 height (3)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2979',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u03.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CNE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10016','NAD83 to NAVD88 height (4)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2980',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u04.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus NE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10017','NAD83 to NAVD88 height (5)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2973',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u05.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus SW',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10018','NAD83 to NAVD88 height (6)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2974',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u06.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CSW',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10019','NAD83 to NAVD88 height (7)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2975',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u07.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CSE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10020','NAD83 to NAVD88 height (8)',NULL,NULL,'EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2976',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u08.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus SE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10021','ETRS89 to Newlyn height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5701','EPSG','2792',0.02,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Gbr',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10022','ETRS89 to Belfast height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5732','EPSG','2530',0.03,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK NI',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10023','ETRS89 to Douglas height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5750','EPSG','2803',0.02,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Man',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10024','ETRS89 to Fair Isle height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5741','EPSG','2794',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Fair',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10025','ETRS89 to Flannan Isles height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5748','EPSG','2801',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Flan',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10026','ETRS89 to Foula height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5743','EPSG','2796',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Foula',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10027','ETRS89 to Lerwick height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5742','EPSG','2795',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Shet',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10028','ETRS89 to Malin Head height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5731','EPSG','1305',0.04,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-Ire',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10029','ETRS89 to Newlyn (Orkney Isles) height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5740','EPSG','2793',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Ork',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10030','ETRS89 to North Rona height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5745','EPSG','2798',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Rona',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10031','ETRS89 to St. Kilda height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5747','EPSG','2800',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Kilda',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10032','ETRS89 to St. Marys height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5749','EPSG','2802',0.0,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Scilly',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10033','ETRS89 to Stornoway height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5746','EPSG','2799',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Heb',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10034','ETRS89 to Sule Skerry height (1)',NULL,NULL,'EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5744','EPSG','2797',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Sule',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10035','GDA94 to AHD height (1)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2899',0.4,'EPSG','8666','Geoid (height correction) model file','SC52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SC52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10036','GDA94 to AHD height (2)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2900',0.4,'EPSG','8666','Geoid (height correction) model file','SC53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SC53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10037','GDA94 to AHD height (3)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2901',0.4,'EPSG','8666','Geoid (height correction) model file','SC54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SC54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10038','GDA94 to AHD height (4)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2902',0.4,'EPSG','8666','Geoid (height correction) model file','SD51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SD51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10039','GDA94 to AHD height (5)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2903',0.4,'EPSG','8666','Geoid (height correction) model file','SD52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SD52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10040','GDA94 to AHD height (6)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2904',0.4,'EPSG','8666','Geoid (height correction) model file','SD53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SD53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10041','GDA94 to AHD height (7)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2905',0.4,'EPSG','8666','Geoid (height correction) model file','SD54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SD54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10042','GDA94 to AHD height (8)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2906',0.4,'EPSG','8666','Geoid (height correction) model file','SD55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SD55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10043','GDA94 to AHD height (9)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2907',0.4,'EPSG','8666','Geoid (height correction) model file','SE50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE50',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10044','GDA94 to AHD height (10)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2908',0.4,'EPSG','8666','Geoid (height correction) model file','SE51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10045','GDA94 to AHD height (11)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2909',0.4,'EPSG','8666','Geoid (height correction) model file','SE52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10046','GDA94 to AHD height (12)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2910',0.4,'EPSG','8666','Geoid (height correction) model file','SE53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10047','GDA94 to AHD height (13)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2911',0.4,'EPSG','8666','Geoid (height correction) model file','SE54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10048','GDA94 to AHD height (14)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2912',0.4,'EPSG','8666','Geoid (height correction) model file','SE55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10049','GDA94 to AHD height (15)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2913',0.4,'EPSG','8666','Geoid (height correction) model file','SF49_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF49',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10050','GDA94 to AHD height (16)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2914',0.4,'EPSG','8666','Geoid (height correction) model file','SF50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF50',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10051','GDA94 to AHD height (17)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2915',0.4,'EPSG','8666','Geoid (height correction) model file','SF51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10052','GDA94 to AHD height (18)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2916',0.4,'EPSG','8666','Geoid (height correction) model file','SF52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10053','GDA94 to AHD height (19)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2917',0.4,'EPSG','8666','Geoid (height correction) model file','SF53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10054','GDA94 to AHD height (20)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2918',0.4,'EPSG','8666','Geoid (height correction) model file','SF54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10055','GDA94 to AHD height (21)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2919',0.4,'EPSG','8666','Geoid (height correction) model file','SF55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10056','GDA94 to AHD height (22)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2920',0.4,'EPSG','8666','Geoid (height correction) model file','SF56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF56',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10057','GDA94 to AHD height (23)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2921',0.4,'EPSG','8666','Geoid (height correction) model file','SG49_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG49',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10058','GDA94 to AHD height (24)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2922',0.4,'EPSG','8666','Geoid (height correction) model file','SG50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG50',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10059','GDA94 to AHD height (25)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2923',0.4,'EPSG','8666','Geoid (height correction) model file','SG51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10060','GDA94 to AHD height (26)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2924',0.4,'EPSG','8666','Geoid (height correction) model file','SG52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10061','GDA94 to AHD height (27)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2925',0.4,'EPSG','8666','Geoid (height correction) model file','SG53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10062','GDA94 to AHD height (28)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2926',0.4,'EPSG','8666','Geoid (height correction) model file','SG54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10063','GDA94 to AHD height (29)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2927',0.4,'EPSG','8666','Geoid (height correction) model file','SG55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10064','GDA94 to AHD height (30)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2928',0.4,'EPSG','8666','Geoid (height correction) model file','SG56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG56',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10065','GDA94 to AHD height (31)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2929',0.4,'EPSG','8666','Geoid (height correction) model file','SH49_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH49',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10066','GDA94 to AHD height (32)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2930',0.4,'EPSG','8666','Geoid (height correction) model file','SH50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH50',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10067','GDA94 to AHD height (33)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2931',0.4,'EPSG','8666','Geoid (height correction) model file','SH51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10068','GDA94 to AHD height (34)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2932',0.4,'EPSG','8666','Geoid (height correction) model file','SH52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10069','GDA94 to AHD height (35)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2933',0.4,'EPSG','8666','Geoid (height correction) model file','SH53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10070','GDA94 to AHD height (36)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2934',0.4,'EPSG','8666','Geoid (height correction) model file','SH54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10071','GDA94 to AHD height (37)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2935',0.4,'EPSG','8666','Geoid (height correction) model file','SH55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10072','GDA94 to AHD height (38)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2936',0.4,'EPSG','8666','Geoid (height correction) model file','SH56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH56',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10073','GDA94 to AHD height (39)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2937',0.4,'EPSG','8666','Geoid (height correction) model file','SI50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI50',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10074','GDA94 to AHD height (40)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2938',0.4,'EPSG','8666','Geoid (height correction) model file','SI51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10075','GDA94 to AHD height (41)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2939',0.4,'EPSG','8666','Geoid (height correction) model file','SI53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10076','GDA94 to AHD height (42)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2940',0.4,'EPSG','8666','Geoid (height correction) model file','SI54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10077','GDA94 to AHD height (43)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2941',0.4,'EPSG','8666','Geoid (height correction) model file','SI55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10078','GDA94 to AHD height (44)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2942',0.4,'EPSG','8666','Geoid (height correction) model file','SI56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI56',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10079','GDA94 to AHD height (45)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2943',0.4,'EPSG','8666','Geoid (height correction) model file','SJ53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SJ53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10080','GDA94 to AHD height (46)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2944',0.4,'EPSG','8666','Geoid (height correction) model file','SJ54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SJ54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10081','GDA94 to AHD height (47)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2945',0.4,'EPSG','8666','Geoid (height correction) model file','SJ55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SJ55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10082','GDA94 to AHD height (48)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2946',0.4,'EPSG','8666','Geoid (height correction) model file','SJ56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SJ56',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10083','GDA94 to AHD (Tasmania) height (1)',NULL,NULL,'EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5712','EPSG','2947',0.4,'EPSG','8666','Geoid (height correction) model file','SK55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SK55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10084','WGS 84 to EGM96 height (1)',NULL,NULL,'EPSG','9661','Geographic3D to GravityRelatedHeight (EGM)','EPSG','4979','EPSG','5773','EPSG','1262',1.0,'EPSG','8666','Geoid (height correction) model file','WW15MGH.GRD',NULL,NULL,NULL,NULL,NULL,NULL,'NGA-World',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15486','CH1903 to CH1903+ (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4149','EPSG','4150','EPSG','1286',0.2,'EPSG','8656','Latitude and longitude difference file','CHENyx06a.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BfL-Che',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15488','RRAF 1991 to IGN 1988 MG height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5617','EPSG','2894',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp MG',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15489','RRAF 1991 to IGN 1988 LS height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5616','EPSG','2895',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp LSt',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15490','RRAF 1991 to IGN 1992 LD height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5618','EPSG','2893',0.5,'EPSG','8666','Geoid (height correction) model file','ggg00_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp Des',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15491','RRAF 1991 to IGN 1988 SB height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5619','EPSG','2891',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15492','RRAF 1991 to IGN 1988 SM height (1)',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5620','EPSG','2890',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StM',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15781','WGS 84 to EGM84 height (1)',NULL,NULL,'EPSG','9661','Geographic3D to GravityRelatedHeight (EGM)','EPSG','4979','EPSG','5798','EPSG','1262',1.0,'EPSG','8666','Geoid (height correction) model file','DIRACC.DMA',NULL,NULL,NULL,NULL,NULL,NULL,'NGA-World',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15785','AGD84 to WGS 84 (9)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4203','EPSG','4326','EPSG','2576',1.0,'EPSG','8656','Latitude and longitude difference file','National 84 (02.07.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Aus 1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15786','AGD66 to WGS 84 (17)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4202','EPSG','4326','EPSG','2575',1.0,'EPSG','8656','Latitude and longitude difference file','A66 National (13.09.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Aus 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15834','NAD83 to NAD83(HARN) (44)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1402',0.05,'EPSG','8657','Latitude difference file','nchpgn.las','EPSG','8658','Longitude difference file','nchpgn.los',NULL,NULL,'NGS-Usa NC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15835','NAD83 to WGS 84 (55)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1402',1.0,'EPSG','8657','Latitude difference file','nchpgn.las','EPSG','8658','Longitude difference file','nchpgn.los',NULL,NULL,'OGP-Usa NC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15836','NAD83 to NAD83(HARN) (45)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1409',0.05,'EPSG','8657','Latitude difference file','schpgn.las','EPSG','8658','Longitude difference file','schpgn.los',NULL,NULL,'NGS-Usa SC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15837','NAD83 to WGS 84 (56)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1409',1.0,'EPSG','8657','Latitude difference file','schpgn.las','EPSG','8658','Longitude difference file','schpgn.los',NULL,NULL,'OGP-Usa SC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15838','NAD83 to NAD83(HARN) (46)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1407',0.05,'EPSG','8657','Latitude difference file','pahpgn.las','EPSG','8658','Longitude difference file','pahpgn.los',NULL,NULL,'NGS-Usa PA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15839','NAD83 to WGS 84 (57)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1407',1.0,'EPSG','8657','Latitude difference file','pahpgn.las','EPSG','8658','Longitude difference file','pahpgn.los',NULL,NULL,'OGP-Usa PA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15840','Old Hawaiian to WGS 84 (8)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4135','EPSG','4326','EPSG','1334',2.0,'EPSG','8657','Latitude difference file','hawaii.las','EPSG','8658','Longitude difference file','hawaii.los',NULL,NULL,'OGP-Usa HI 2m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15841','Puerto Rico to WGS 84 (4)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4139','EPSG','4326','EPSG','3294',2.0,'EPSG','8657','Latitude difference file','prvi.las','EPSG','8658','Longitude difference file','prvi.los',NULL,NULL,'OGP-Pri 2m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15851','NAD27 to WGS 84 (79)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4267','EPSG','4326','EPSG','2374',5.0,'EPSG','8657','Latitude difference file','conus.las','EPSG','8658','Longitude difference file','conus.los',NULL,NULL,'OGP-Usa Conus',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15864','NAD27 to WGS 84 (85)',NULL,NULL,'EPSG','9613','NADCON','EPSG','4267','EPSG','4326','EPSG','2373',5.0,'EPSG','8657','Latitude difference file','alaska.las','EPSG','8658','Longitude difference file','alaska.los',NULL,NULL,'OGP-Usa AK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15895','ED50 to ETRS89 (11)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4230','EPSG','4258','EPSG','3429',0.2,'EPSG','8656','Latitude and longitude difference file','sped2et.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Esp',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15907','ED50 to WGS 84 (40)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4230','EPSG','4326','EPSG','3429',1.0,'EPSG','8656','Latitude and longitude difference file','sped2et.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Esp',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15932','ED50 to ETRS89 (12)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4230','EPSG','4258','EPSG','3429',0.2,'EPSG','8656','Latitude and longitude difference file','SPED2ETV2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Esp v2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15933','ED50 to WGS 84 (41)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4230','EPSG','4326','EPSG','3429',1.0,'EPSG','8656','Latitude and longitude difference file','SPED2ETV2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Esp v2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15940','NTF to RGF93 (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4275','EPSG','4171','EPSG','1326',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Fra 1m emulation',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15941','NTF to ETRS89 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4275','EPSG','4258','EPSG','1326',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Fra 1m emulation',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15942','NTF to WGS 84 (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4275','EPSG','4326','EPSG','1326',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Fra 1m emulation',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15944','NEA74 Noumea to RGNC91-93 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4644','EPSG','4749','EPSG','2823',0.05,'EPSG','8656','Latitude and longitude difference file','RGNC1991_NEA74Noumea.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Ncl 0.05m',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15947','IGN72 Grande Terre to RGNC91-93 (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4662','EPSG','4749','EPSG','2822',0.1,'EPSG','8656','Latitude and longitude difference file','RGNC1991_IGN72GrandeTerre.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Ncl 0.1m',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15948','DHDN to ETRS89 (8)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4314','EPSG','4258','EPSG','3339',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BKG-Deu BeTA2007',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15949','DHDN to WGS 84 (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4314','EPSG','4326','EPSG','3339',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Deu BeTA2007',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15954','RD/83 to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4745','EPSG','4326','EPSG','2545',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Deu BeTA2007',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15955','PD/83 to WGS 84 (1)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4746','EPSG','4326','EPSG','2544',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Deu BeTA2007',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15958','RGF93 to NTF (2)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4171','EPSG','4275','EPSG','3694',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Fra 1m emulation',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15959','ETRS89 to NTF (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4258','EPSG','4275','EPSG','3694',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Fra 1m emulation',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15960','WGS 84 to NTF (3)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4326','EPSG','4275','EPSG','3694',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Fra 1m emulation',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15961','RGNC91-93 to NEA74 Noumea (4)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4749','EPSG','4644','EPSG','2823',0.05,'EPSG','8656','Latitude and longitude difference file','RGNC1991_IGN72GrandeTerre.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Ncl 0.05m',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15962','RGNC91-93 to IGN72 Grande Terre (6)',NULL,NULL,'EPSG','9615','NTv2','EPSG','4749','EPSG','4662','EPSG','2822',0.1,'EPSG','8656','Latitude and longitude difference file','RGNC1991_IGN72GrandeTerre.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Ncl 0.1m',0);
+4 -4
View File
@@ -11,7 +11,7 @@ INSERT INTO "grid_transformation" VALUES(
'EPSG','3237', -- area of use: Denmark onshore
NULL,
'EPSG','8666','Geoid (height correction) model file','dvr90.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,0);
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES(
'PROJ','EPSG_5733_TO_EPSG_4937','DNN height to ETRS89',
@@ -22,7 +22,7 @@ INSERT INTO "grid_transformation" VALUES(
'EPSG','3237', -- area of use: Denmark onshore
NULL,
'EPSG','8666','Geoid (height correction) model file','dnn.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,0);
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
-- Faroe Islands
@@ -35,7 +35,7 @@ INSERT INTO "grid_transformation" VALUES(
'EPSG','3248', -- area of use: Faroe Islands - onshore
NULL,
'EPSG','8666','Geoid (height correction) model file','fvr09.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,0);
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
-- Sweden
@@ -48,4 +48,4 @@ INSERT INTO "grid_transformation" VALUES(
'EPSG','3313', -- area of use: Sweden onshore
NULL,
'EPSG','8666','Geoid (height correction) model file','SWEN17_RH2000.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,0);
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
File diff suppressed because it is too large Load Diff
+1256 -1241
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -1,2 +1,2 @@
INSERT INTO "metadata" VALUES('EPSG.VERSION', 'v9.6.0');
INSERT INTO "metadata" VALUES('EPSG.DATE', '2019-02-22');
INSERT INTO "metadata" VALUES('EPSG.VERSION', 'v9.6.1');
INSERT INTO "metadata" VALUES('EPSG.DATE', '2019-03-25');
+310 -310
View File
@@ -1,312 +1,312 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "other_transformation" VALUES('EPSG','1258','Bogota 1975 (Bogota) to Bogota 1975 (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4802','EPSG','4218','EPSG','1070',NULL,'EPSG','8602','Longitude offset',-74.04513,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1259','Lisbon (Lisbon) to Lisbon (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4803','EPSG','4207','EPSG','1294',NULL,'EPSG','8602','Longitude offset',-9.0754862,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1260','Makassar (Jakarta) to Makassar (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4804','EPSG','4257','EPSG','1316',0.0,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1261','MGI (Ferro) to MGI (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4805','EPSG','4312','EPSG','1166',NULL,'EPSG','8602','Longitude offset',-17.4,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1262','Monte Mario (Rome) to Monte Mario (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4806','EPSG','4265','EPSG','3343',0.0,'EPSG','8602','Longitude offset',12.27084,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1263','Padang (Jakarta) to Padang (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4808','EPSG','4280','EPSG','1355',NULL,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1264','Belge 1950 (Brussels) to Belge 1950 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4809','EPSG','4215','EPSG','1347',0.0,'EPSG','8602','Longitude offset',4.220471,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1265','Tananarive (Paris) to Tananarive (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4810','EPSG','4297','EPSG','3273',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1266','Voirol 1875 (Paris) to Voirol 1875 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4811','EPSG','4304','EPSG','1365',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1268','Batavia (Jakarta) to Batavia (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4813','EPSG','4211','EPSG','1285',NULL,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1269','RT38 (Stockholm) to RT38 (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4814','EPSG','4308','EPSG','1225',NULL,'EPSG','8602','Longitude offset',18.03298,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1270','Greek (Athens) to Greek (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4815','EPSG','4120','EPSG','1106',NULL,'EPSG','8602','Longitude offset',23.4258815,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1335','Tokyo to WGS 84 (6)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','4301','EPSG','4326','EPSG','2425',2.0,'EPSG','8601','Latitude offset',7.92,'EPSG','9108','EPSG','8602','Longitude offset',-13.88,'EPSG','9104','EPSG','8604','Geoid undulation',26.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1336','Tokyo + JSLD to WGS 84 (7)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2426',1.0,'EPSG','8601','Latitude offset',7.94,'EPSG','9104','EPSG','8602','Longitude offset',-13.97,'EPSG','9104','EPSG','8604','Geoid undulation',26.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1337','Tokyo + JSLD to WGS 84 (8)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2427',1.0,'EPSG','8601','Latitude offset',8.1,'EPSG','9104','EPSG','8602','Longitude offset',-13.81,'EPSG','9104','EPSG','8604','Geoid undulation',27.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1338','Tokyo + JSLD to WGS 84 (9)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2428',1.0,'EPSG','8601','Latitude offset',8.15,'EPSG','9104','EPSG','8602','Longitude offset',-13.95,'EPSG','9104','EPSG','8604','Geoid undulation',28.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1339','Tokyo + JSLD to WGS 84 (10)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2429',1.0,'EPSG','8601','Latitude offset',8.37,'EPSG','9104','EPSG','8602','Longitude offset',-13.65,'EPSG','9104','EPSG','8604','Geoid undulation',29.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1340','Tokyo + JSLD to WGS 84 (11)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2430',1.0,'EPSG','8601','Latitude offset',8.44,'EPSG','9104','EPSG','8602','Longitude offset',-13.87,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1341','Tokyo + JSLD to WGS 84 (12)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2431',1.0,'EPSG','8601','Latitude offset',8.61,'EPSG','9104','EPSG','8602','Longitude offset',-14.08,'EPSG','9104','EPSG','8604','Geoid undulation',30.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1342','Tokyo + JSLD to WGS 84 (13)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2432',1.0,'EPSG','8601','Latitude offset',8.73,'EPSG','9104','EPSG','8602','Longitude offset',-14.3,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1343','Tokyo + JSLD to WGS 84 (14)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2433',1.0,'EPSG','8601','Latitude offset',8.63,'EPSG','9104','EPSG','8602','Longitude offset',-13.49,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1344','Tokyo + JSLD to WGS 84 (15)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2434',1.0,'EPSG','8601','Latitude offset',8.71,'EPSG','9104','EPSG','8602','Longitude offset',-13.73,'EPSG','9104','EPSG','8604','Geoid undulation',31.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1345','Tokyo + JSLD to WGS 84 (16)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2435',1.0,'EPSG','8601','Latitude offset',8.84,'EPSG','9104','EPSG','8602','Longitude offset',-14.03,'EPSG','9104','EPSG','8604','Geoid undulation',31.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1346','Tokyo + JSLD to WGS 84 (17)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2436',1.0,'EPSG','8601','Latitude offset',8.98,'EPSG','9104','EPSG','8602','Longitude offset',-14.33,'EPSG','9104','EPSG','8604','Geoid undulation',32.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1347','Tokyo + JSLD to WGS 84 (18)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2437',1.0,'EPSG','8601','Latitude offset',9.1,'EPSG','9104','EPSG','8602','Longitude offset',-14.56,'EPSG','9104','EPSG','8604','Geoid undulation',32.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1348','Tokyo + JSLD to WGS 84 (19)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2438',1.0,'EPSG','8601','Latitude offset',8.79,'EPSG','9104','EPSG','8602','Longitude offset',-13.0,'EPSG','9104','EPSG','8604','Geoid undulation',33.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1349','Tokyo + JSLD to WGS 84 (20)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2439',1.0,'EPSG','8601','Latitude offset',8.84,'EPSG','9104','EPSG','8602','Longitude offset',-13.31,'EPSG','9104','EPSG','8604','Geoid undulation',31.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1350','Tokyo + JSLD to WGS 84 (21)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2440',1.0,'EPSG','8601','Latitude offset',8.98,'EPSG','9104','EPSG','8602','Longitude offset',-13.59,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1351','Tokyo + JSLD to WGS 84 (22)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2441',1.0,'EPSG','8601','Latitude offset',9.1,'EPSG','9104','EPSG','8602','Longitude offset',-13.91,'EPSG','9104','EPSG','8604','Geoid undulation',29.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1352','Tokyo + JSLD to WGS 84 (23)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2442',1.0,'EPSG','8601','Latitude offset',9.17,'EPSG','9104','EPSG','8602','Longitude offset',-14.27,'EPSG','9104','EPSG','8604','Geoid undulation',31.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1353','Tokyo + JSLD to WGS 84 (24)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2443',1.0,'EPSG','8601','Latitude offset',9.23,'EPSG','9104','EPSG','8602','Longitude offset',-14.52,'EPSG','9104','EPSG','8604','Geoid undulation',31.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1354','Tokyo + JSLD to WGS 84 (25)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2444',1.0,'EPSG','8601','Latitude offset',8.9,'EPSG','9104','EPSG','8602','Longitude offset',-12.68,'EPSG','9104','EPSG','8604','Geoid undulation',34.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1355','Tokyo + JSLD to WGS 84 (26)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2445',1.0,'EPSG','8601','Latitude offset',8.99,'EPSG','9104','EPSG','8602','Longitude offset',-12.8,'EPSG','9104','EPSG','8604','Geoid undulation',34.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1356','Tokyo + JSLD to WGS 84 (27)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2446',1.0,'EPSG','8601','Latitude offset',9.0,'EPSG','9104','EPSG','8602','Longitude offset',-13.07,'EPSG','9104','EPSG','8604','Geoid undulation',31.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1357','Tokyo + JSLD to WGS 84 (28)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2447',1.0,'EPSG','8601','Latitude offset',9.21,'EPSG','9104','EPSG','8602','Longitude offset',-13.51,'EPSG','9104','EPSG','8604','Geoid undulation',27.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1358','Tokyo + JSLD to WGS 84 (29)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2448',1.0,'EPSG','8601','Latitude offset',9.33,'EPSG','9104','EPSG','8602','Longitude offset',-13.66,'EPSG','9104','EPSG','8604','Geoid undulation',23.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1359','Tokyo + JSLD to WGS 84 (30)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2449',1.0,'EPSG','8601','Latitude offset',9.25,'EPSG','9104','EPSG','8602','Longitude offset',-12.72,'EPSG','9104','EPSG','8604','Geoid undulation',34.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1360','Tokyo + JSLD to WGS 84 (31)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2450',1.0,'EPSG','8601','Latitude offset',9.39,'EPSG','9104','EPSG','8602','Longitude offset',-12.91,'EPSG','9104','EPSG','8604','Geoid undulation',31.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1361','Tokyo + JSLD to WGS 84 (32)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2451',1.0,'EPSG','8601','Latitude offset',9.55,'EPSG','9104','EPSG','8602','Longitude offset',-12.63,'EPSG','9104','EPSG','8604','Geoid undulation',35.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1362','Tokyo + JSLD to WGS 84 (33)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2452',1.0,'EPSG','8601','Latitude offset',9.62,'EPSG','9104','EPSG','8602','Longitude offset',-12.82,'EPSG','9104','EPSG','8604','Geoid undulation',34.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1363','Tokyo + JSLD to WGS 84 (34)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2453',1.0,'EPSG','8601','Latitude offset',9.81,'EPSG','9104','EPSG','8602','Longitude offset',-12.29,'EPSG','9104','EPSG','8604','Geoid undulation',36.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1364','Tokyo + JSLD to WGS 84 (35)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2454',1.0,'EPSG','8601','Latitude offset',9.81,'EPSG','9104','EPSG','8602','Longitude offset',-12.45,'EPSG','9104','EPSG','8604','Geoid undulation',37.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1365','Tokyo + JSLD to WGS 84 (36)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2455',1.0,'EPSG','8601','Latitude offset',9.92,'EPSG','9104','EPSG','8602','Longitude offset',-12.79,'EPSG','9104','EPSG','8604','Geoid undulation',38.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1366','Tokyo + JSLD to WGS 84 (37)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2456',1.0,'EPSG','8601','Latitude offset',9.91,'EPSG','9104','EPSG','8602','Longitude offset',-12.21,'EPSG','9104','EPSG','8604','Geoid undulation',36.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1367','Tokyo + JSLD to WGS 84 (38)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2457',1.0,'EPSG','8601','Latitude offset',10.08,'EPSG','9104','EPSG','8602','Longitude offset',-12.35,'EPSG','9104','EPSG','8604','Geoid undulation',39.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1368','Tokyo + JSLD to WGS 84 (39)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2458',1.0,'EPSG','8601','Latitude offset',10.19,'EPSG','9104','EPSG','8602','Longitude offset',-12.74,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1369','Tokyo + JSLD to WGS 84 (40)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2459',1.0,'EPSG','8601','Latitude offset',10.29,'EPSG','9104','EPSG','8602','Longitude offset',-12.13,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1370','Tokyo + JSLD to WGS 84 (41)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2460',1.0,'EPSG','8601','Latitude offset',10.33,'EPSG','9104','EPSG','8602','Longitude offset',-12.27,'EPSG','9104','EPSG','8604','Geoid undulation',40.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1371','Tokyo + JSLD to WGS 84 (42)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2461',1.0,'EPSG','8601','Latitude offset',10.45,'EPSG','9104','EPSG','8602','Longitude offset',-12.61,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1372','Tokyo + JSLD to WGS 84 (43)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2462',1.0,'EPSG','8601','Latitude offset',10.54,'EPSG','9104','EPSG','8602','Longitude offset',-11.96,'EPSG','9104','EPSG','8604','Geoid undulation',39.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1373','Tokyo + JSLD to WGS 84 (44)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2463',1.0,'EPSG','8601','Latitude offset',10.65,'EPSG','9104','EPSG','8602','Longitude offset',-12.27,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1374','Tokyo + JSLD to WGS 84 (45)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2464',1.0,'EPSG','8601','Latitude offset',10.67,'EPSG','9104','EPSG','8602','Longitude offset',-12.5,'EPSG','9104','EPSG','8604','Geoid undulation',41.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1375','Tokyo + JSLD to WGS 84 (46)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2465',1.0,'EPSG','8601','Latitude offset',10.67,'EPSG','9104','EPSG','8602','Longitude offset',-10.86,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1376','Tokyo + JSLD to WGS 84 (47)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2466',1.0,'EPSG','8601','Latitude offset',10.68,'EPSG','9104','EPSG','8602','Longitude offset',-10.97,'EPSG','9104','EPSG','8604','Geoid undulation',36.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1377','Tokyo + JSLD to WGS 84 (48)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2467',1.0,'EPSG','8601','Latitude offset',10.8,'EPSG','9104','EPSG','8602','Longitude offset',-11.53,'EPSG','9104','EPSG','8604','Geoid undulation',39.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1378','Tokyo + JSLD to WGS 84 (49)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2468',1.0,'EPSG','8601','Latitude offset',10.8,'EPSG','9104','EPSG','8602','Longitude offset',-11.73,'EPSG','9104','EPSG','8604','Geoid undulation',40.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1379','Tokyo + JSLD to WGS 84 (50)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2469',1.0,'EPSG','8601','Latitude offset',10.92,'EPSG','9104','EPSG','8602','Longitude offset',-12.16,'EPSG','9104','EPSG','8604','Geoid undulation',42.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1380','Tokyo + JSLD to WGS 84 (51)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2470',1.0,'EPSG','8601','Latitude offset',11.0,'EPSG','9104','EPSG','8602','Longitude offset',-12.25,'EPSG','9104','EPSG','8604','Geoid undulation',41.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1381','Tokyo + JSLD to WGS 84 (52)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2471',1.0,'EPSG','8601','Latitude offset',10.83,'EPSG','9104','EPSG','8602','Longitude offset',-10.77,'EPSG','9104','EPSG','8604','Geoid undulation',36.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1382','Tokyo + JSLD to WGS 84 (53)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2472',1.0,'EPSG','8601','Latitude offset',10.95,'EPSG','9104','EPSG','8602','Longitude offset',-11.0,'EPSG','9104','EPSG','8604','Geoid undulation',38.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1383','Tokyo + JSLD to WGS 84 (54)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2473',1.0,'EPSG','8601','Latitude offset',10.97,'EPSG','9104','EPSG','8602','Longitude offset',-11.34,'EPSG','9104','EPSG','8604','Geoid undulation',40.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1384','Tokyo + JSLD to WGS 84 (55)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2474',1.0,'EPSG','8601','Latitude offset',11.04,'EPSG','9104','EPSG','8602','Longitude offset',-11.69,'EPSG','9104','EPSG','8604','Geoid undulation',43.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1385','Tokyo + JSLD to WGS 84 (56)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2475',1.0,'EPSG','8601','Latitude offset',11.17,'EPSG','9104','EPSG','8602','Longitude offset',-12.05,'EPSG','9104','EPSG','8604','Geoid undulation',42.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1386','Tokyo + JSLD to WGS 84 (57)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2476',1.0,'EPSG','8601','Latitude offset',11.11,'EPSG','9104','EPSG','8602','Longitude offset',-10.59,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1387','Tokyo + JSLD to WGS 84 (58)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2477',1.0,'EPSG','8601','Latitude offset',11.16,'EPSG','9104','EPSG','8602','Longitude offset',-10.97,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1388','Tokyo + JSLD to WGS 84 (59)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2478',1.0,'EPSG','8601','Latitude offset',11.29,'EPSG','9104','EPSG','8602','Longitude offset',-11.23,'EPSG','9104','EPSG','8604','Geoid undulation',42.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1389','Tokyo + JSLD to WGS 84 (60)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2479',1.0,'EPSG','8601','Latitude offset',11.36,'EPSG','9104','EPSG','8602','Longitude offset',-11.59,'EPSG','9104','EPSG','8604','Geoid undulation',42.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1390','Tokyo + JSLD to WGS 84 (61)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2480',1.0,'EPSG','8601','Latitude offset',11.44,'EPSG','9104','EPSG','8602','Longitude offset',-11.88,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1391','Tokyo + JSLD to WGS 84 (62)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2481',1.0,'EPSG','8601','Latitude offset',11.27,'EPSG','9104','EPSG','8602','Longitude offset',-9.31,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1392','Tokyo + JSLD to WGS 84 (63)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2482',1.0,'EPSG','8601','Latitude offset',11.33,'EPSG','9104','EPSG','8602','Longitude offset',-9.52,'EPSG','9104','EPSG','8604','Geoid undulation',33.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1393','Tokyo + JSLD to WGS 84 (64)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2483',1.0,'EPSG','8601','Latitude offset',11.38,'EPSG','9104','EPSG','8602','Longitude offset',-9.86,'EPSG','9104','EPSG','8604','Geoid undulation',34.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1394','Tokyo + JSLD to WGS 84 (65)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2484',1.0,'EPSG','8601','Latitude offset',11.41,'EPSG','9104','EPSG','8602','Longitude offset',-10.14,'EPSG','9104','EPSG','8604','Geoid undulation',35.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1395','Tokyo + JSLD to WGS 84 (66)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2485',1.0,'EPSG','8601','Latitude offset',11.39,'EPSG','9104','EPSG','8602','Longitude offset',-10.52,'EPSG','9104','EPSG','8604','Geoid undulation',37.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1396','Tokyo + JSLD to WGS 84 (67)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2486',1.0,'EPSG','8601','Latitude offset',11.49,'EPSG','9104','EPSG','8602','Longitude offset',-10.83,'EPSG','9104','EPSG','8604','Geoid undulation',39.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1397','Tokyo + JSLD to WGS 84 (68)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2487',1.0,'EPSG','8601','Latitude offset',11.58,'EPSG','9104','EPSG','8602','Longitude offset',-11.21,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1398','Tokyo + JSLD to WGS 84 (69)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2488',1.0,'EPSG','8601','Latitude offset',11.65,'EPSG','9104','EPSG','8602','Longitude offset',-11.53,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1399','Tokyo + JSLD to WGS 84 (70)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2489',1.0,'EPSG','8601','Latitude offset',11.72,'EPSG','9104','EPSG','8602','Longitude offset',-11.8,'EPSG','9104','EPSG','8604','Geoid undulation',34.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1400','Tokyo + JSLD to WGS 84 (71)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2490',1.0,'EPSG','8601','Latitude offset',11.44,'EPSG','9104','EPSG','8602','Longitude offset',-9.21,'EPSG','9104','EPSG','8604','Geoid undulation',32.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1401','Tokyo + JSLD to WGS 84 (72)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2491',1.0,'EPSG','8601','Latitude offset',11.47,'EPSG','9104','EPSG','8602','Longitude offset',-9.52,'EPSG','9104','EPSG','8604','Geoid undulation',35.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1402','Tokyo + JSLD to WGS 84 (73)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2492',1.0,'EPSG','8601','Latitude offset',11.55,'EPSG','9104','EPSG','8602','Longitude offset',-9.8,'EPSG','9104','EPSG','8604','Geoid undulation',35.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1403','Tokyo + JSLD to WGS 84 (74)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2493',1.0,'EPSG','8601','Latitude offset',11.61,'EPSG','9104','EPSG','8602','Longitude offset',-10.12,'EPSG','9104','EPSG','8604','Geoid undulation',35.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1404','Tokyo + JSLD to WGS 84 (75)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2494',1.0,'EPSG','8601','Latitude offset',11.66,'EPSG','9104','EPSG','8602','Longitude offset',-10.47,'EPSG','9104','EPSG','8604','Geoid undulation',37.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1405','Tokyo + JSLD to WGS 84 (76)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2495',1.0,'EPSG','8601','Latitude offset',11.78,'EPSG','9104','EPSG','8602','Longitude offset',-10.79,'EPSG','9104','EPSG','8604','Geoid undulation',39.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1406','Tokyo + JSLD to WGS 84 (77)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2496',1.0,'EPSG','8601','Latitude offset',11.85,'EPSG','9104','EPSG','8602','Longitude offset',-11.13,'EPSG','9104','EPSG','8604','Geoid undulation',39.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1407','Tokyo + JSLD to WGS 84 (78)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2497',1.0,'EPSG','8601','Latitude offset',11.9,'EPSG','9104','EPSG','8602','Longitude offset',-11.47,'EPSG','9104','EPSG','8604','Geoid undulation',36.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1408','Tokyo + JSLD to WGS 84 (79)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2498',1.0,'EPSG','8601','Latitude offset',11.91,'EPSG','9104','EPSG','8602','Longitude offset',-11.69,'EPSG','9104','EPSG','8604','Geoid undulation',33.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1409','Tokyo + JSLD to WGS 84 (80)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2499',1.0,'EPSG','8601','Latitude offset',11.65,'EPSG','9104','EPSG','8602','Longitude offset',-8.59,'EPSG','9104','EPSG','8604','Geoid undulation',29.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1410','Tokyo + JSLD to WGS 84 (81)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2500',1.0,'EPSG','8601','Latitude offset',11.68,'EPSG','9104','EPSG','8602','Longitude offset',-8.8,'EPSG','9104','EPSG','8604','Geoid undulation',30.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1411','Tokyo + JSLD to WGS 84 (82)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2501',1.0,'EPSG','8601','Latitude offset',11.73,'EPSG','9104','EPSG','8602','Longitude offset',-9.04,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1412','Tokyo + JSLD to WGS 84 (83)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2502',1.0,'EPSG','8601','Latitude offset',11.72,'EPSG','9104','EPSG','8602','Longitude offset',-9.48,'EPSG','9104','EPSG','8604','Geoid undulation',35.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1413','Tokyo + JSLD to WGS 84 (84)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2503',1.0,'EPSG','8601','Latitude offset',11.81,'EPSG','9104','EPSG','8602','Longitude offset',9.74,'EPSG','9104','EPSG','8604','Geoid undulation',35.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1414','Tokyo + JSLD to WGS 84 (85)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2504',1.0,'EPSG','8601','Latitude offset',11.88,'EPSG','9104','EPSG','8602','Longitude offset',-10.1,'EPSG','9104','EPSG','8604','Geoid undulation',37.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1415','Tokyo + JSLD to WGS 84 (86)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2505',1.0,'EPSG','8601','Latitude offset',11.91,'EPSG','9104','EPSG','8602','Longitude offset',-10.35,'EPSG','9104','EPSG','8604','Geoid undulation',37.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1416','Tokyo + JSLD to WGS 84 (87)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2506',1.0,'EPSG','8601','Latitude offset',11.9,'EPSG','9104','EPSG','8602','Longitude offset',-10.7,'EPSG','9104','EPSG','8604','Geoid undulation',39.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1417','Tokyo + JSLD to WGS 84 (88)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2507',1.0,'EPSG','8601','Latitude offset',12.02,'EPSG','9104','EPSG','8602','Longitude offset',-11.09,'EPSG','9104','EPSG','8604','Geoid undulation',38.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1418','Tokyo + JSLD to WGS 84 (89)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2508',1.0,'EPSG','8601','Latitude offset',11.87,'EPSG','9104','EPSG','8602','Longitude offset',-8.23,'EPSG','9104','EPSG','8604','Geoid undulation',29.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1419','Tokyo + JSLD to WGS 84 (90)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2509',1.0,'EPSG','8601','Latitude offset',11.84,'EPSG','9104','EPSG','8602','Longitude offset',-8.44,'EPSG','9104','EPSG','8604','Geoid undulation',30.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1420','Tokyo + JSLD to WGS 84 (91)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2510',1.0,'EPSG','8601','Latitude offset',11.94,'EPSG','9104','EPSG','8602','Longitude offset',-8.71,'EPSG','9104','EPSG','8604','Geoid undulation',30.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1421','Tokyo + JSLD to WGS 84 (92)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2511',1.0,'EPSG','8601','Latitude offset',11.99,'EPSG','9104','EPSG','8602','Longitude offset',-9.02,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1422','Tokyo + JSLD to WGS 84 (93)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2512',1.0,'EPSG','8601','Latitude offset',12.05,'EPSG','9104','EPSG','8602','Longitude offset',-9.36,'EPSG','9104','EPSG','8604','Geoid undulation',35.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1423','Tokyo + JSLD to WGS 84 (94)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2513',1.0,'EPSG','8601','Latitude offset',12.1,'EPSG','9104','EPSG','8602','Longitude offset',-9.64,'EPSG','9104','EPSG','8604','Geoid undulation',35.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1424','Tokyo + JSLD to WGS 84 (95)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2514',1.0,'EPSG','8601','Latitude offset',12.1,'EPSG','9104','EPSG','8602','Longitude offset',-10.08,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1425','Tokyo + JSLD to WGS 84 (96)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2515',1.0,'EPSG','8601','Latitude offset',12.07,'EPSG','9104','EPSG','8602','Longitude offset',-10.25,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1426','Tokyo + JSLD to WGS 84 (97)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2516',1.0,'EPSG','8601','Latitude offset',12.0,'EPSG','9104','EPSG','8602','Longitude offset',-8.15,'EPSG','9104','EPSG','8604','Geoid undulation',32.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1427','Tokyo + JSLD to WGS 84 (98)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2517',1.0,'EPSG','8601','Latitude offset',12.06,'EPSG','9104','EPSG','8602','Longitude offset',-8.38,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1428','Tokyo + JSLD to WGS 84 (99)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2518',1.0,'EPSG','8601','Latitude offset',12.17,'EPSG','9104','EPSG','8602','Longitude offset',-8.69,'EPSG','9104','EPSG','8604','Geoid undulation',30.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1429','Tokyo + JSLD to WGS 84 (100)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2519',1.0,'EPSG','8601','Latitude offset',12.23,'EPSG','9104','EPSG','8602','Longitude offset',-8.99,'EPSG','9104','EPSG','8604','Geoid undulation',31.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1430','Tokyo + JSLD to WGS 84 (101)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2520',1.0,'EPSG','8601','Latitude offset',12.21,'EPSG','9104','EPSG','8602','Longitude offset',-9.21,'EPSG','9104','EPSG','8604','Geoid undulation',34.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1431','Tokyo + JSLD to WGS 84 (102)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2521',1.0,'EPSG','8601','Latitude offset',12.28,'EPSG','9104','EPSG','8602','Longitude offset',-9.6,'EPSG','9104','EPSG','8604','Geoid undulation',33.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1432','Tokyo + JSLD to WGS 84 (103)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2522',1.0,'EPSG','8601','Latitude offset',12.28,'EPSG','9104','EPSG','8602','Longitude offset',-8.25,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1433','Tokyo + JSLD to WGS 84 (104)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2523',1.0,'EPSG','8601','Latitude offset',12.37,'EPSG','9104','EPSG','8602','Longitude offset',-8.55,'EPSG','9104','EPSG','8604','Geoid undulation',29.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1434','Tokyo + JSLD to WGS 84 (105)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2524',1.0,'EPSG','8601','Latitude offset',12.53,'EPSG','9104','EPSG','8602','Longitude offset',-8.21,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1435','Tokyo + JSLD to WGS 84 (106)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2525',1.0,'EPSG','8601','Latitude offset',12.57,'EPSG','9104','EPSG','8602','Longitude offset',-8.4,'EPSG','9104','EPSG','8604','Geoid undulation',28.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1436','Tokyo + JSLD to WGS 84 (107)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2526',1.0,'EPSG','8601','Latitude offset',12.71,'EPSG','9104','EPSG','8602','Longitude offset',-8.17,'EPSG','9104','EPSG','8604','Geoid undulation',29.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1447','Anguilla 1957 to WGS 84 (1)',NULL,NULL,'EPSG','9619','Geographic2D offsets','EPSG','4600','EPSG','4326','EPSG','3214',10.0,'EPSG','8601','Latitude offset',-18.0,'EPSG','9104','EPSG','8602','Longitude offset',4.4,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1466','NGO 1948 (Oslo) to NGO1948 (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4817','EPSG','4273','EPSG','1352',NULL,'EPSG','8602','Longitude offset',10.43225,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1467','NTF (Paris) to NTF (Greenwich) (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4807','EPSG','4275','EPSG','1096',NULL,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1468','NTF (Paris) to NTF (Greenwich) (2)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4807','EPSG','4275','EPSG','1096',NULL,'EPSG','8602','Longitude offset',2.201395,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1519','Bern 1898 (Bern) to CH1903 (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4801','EPSG','4149','EPSG','1286',NULL,'EPSG','8602','Longitude offset',7.26225,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1755','Bogota 1975 (Bogota) to Bogota 1975 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4802','EPSG','4218','EPSG','3229',0.0,'EPSG','8602','Longitude offset',-74.04513,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1756','Lisbon (Lisbon) to Lisbon (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4803','EPSG','4207','EPSG','1294',0.0,'EPSG','8602','Longitude offset',-9.0754862,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1757','MGI (Ferro) to MGI (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4805','EPSG','4312','EPSG','1321',0.0,'EPSG','8602','Longitude offset',-17.4,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1758','Padang (Jakarta) to Padang (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4808','EPSG','4280','EPSG','1355',0.0,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1759','Batavia (Jakarta) to Batavia (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4813','EPSG','4211','EPSG','1285',0.0,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1760','RT38 (Stockholm) to RT38 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4814','EPSG','4308','EPSG','3313',0.0,'EPSG','8602','Longitude offset',18.03298,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1761','Greek (Athens) to Greek (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4815','EPSG','4120','EPSG','3254',0.0,'EPSG','8602','Longitude offset',23.4258815,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1762','NGO 1948 (Oslo) to NGO1948 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4817','EPSG','4273','EPSG','1352',0.0,'EPSG','8602','Longitude offset',10.43225,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1763','NTF (Paris) to NTF (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4807','EPSG','4275','EPSG','3694',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1764','NTF (Paris) to NTF (2)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4807','EPSG','4275','EPSG','3694',0.0,'EPSG','8602','Longitude offset',2.201395,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1765','Bern 1898 (Bern) to CH1903 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4801','EPSG','4149','EPSG','1286',0.0,'EPSG','8602','Longitude offset',7.26225,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1827','Tokyo + JSLD to WGS 84 (6)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2425',1.0,'EPSG','8601','Latitude offset',7.92,'EPSG','9104','EPSG','8602','Longitude offset',-13.88,'EPSG','9104','EPSG','8604','Geoid undulation',26.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1881','Carthage (Paris) to Carthage (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4816','EPSG','4223','EPSG','1618',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1882','Nord Sahara 1959 (Paris) to Nord Sahara 1959 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4819','EPSG','4307','EPSG','1026',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','1883','Segara (Jakarta) to Segara (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4820','EPSG','4613','EPSG','1360',0.0,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1884','S-JTSK (Ferro) to S-JTSK (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4818','EPSG','4156','EPSG','1306',0.0,'EPSG','8602','Longitude offset',-17.4,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1891','Greek to GGRS87 (1)',NULL,NULL,'EPSG','9619','Geographic2D offsets','EPSG','4120','EPSG','4121','EPSG','3254',5.0,'EPSG','8601','Latitude offset',-5.86,'EPSG','9104','EPSG','8602','Longitude offset',0.28,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1991','Lisbon 1890 (Lisbon) to Lisbon 1890 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4904','EPSG','4666','EPSG','1294',0.0,'EPSG','8602','Longitude offset',-9.0754862,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','3895','MGI (Ferro) to MGI (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4805','EPSG','4312','EPSG','1037',0.0,'EPSG','8602','Longitude offset',-17.4,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','3913','MGI (Ferro) to MGI 1901 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4805','EPSG','3906','EPSG','2370',1.0,'EPSG','8602','Longitude offset',-17.394602,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4441','NZVD2009 height to One Tree Point 1964 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5767','EPSG','3762',0.03,'EPSG','8603','Vertical Offset',0.06,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4442','NZVD2009 height to Auckland 1946 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5759','EPSG','3764',0.05,'EPSG','8603','Vertical Offset',0.34,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4443','NZVD2009 height to Moturiki 1953 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5764','EPSG','3768',0.06,'EPSG','8603','Vertical Offset',0.24,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4444','NZVD2009 height to Nelson 1955 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5766','EPSG','3802',0.07,'EPSG','8603','Vertical Offset',0.29,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4445','NZVD2009 height to Gisborne 1926 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5762','EPSG','3771',0.02,'EPSG','8603','Vertical Offset',0.34,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4446','NZVD2009 height to Napier 1962 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5765','EPSG','3772',0.05,'EPSG','8603','Vertical Offset',0.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4447','NZVD2009 height to Taranaki 1970 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5769','EPSG','3769',0.05,'EPSG','8603','Vertical Offset',0.32,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4448','NZVD2009 height to Wellington 1953 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5770','EPSG','3773',0.04,'EPSG','8603','Vertical Offset',0.44,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4449','NZVD2009 height to Lyttelton 1937 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5763','EPSG','3804',0.09,'EPSG','8603','Vertical Offset',0.47,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4450','NZVD2009 height to Dunedin 1958 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5761','EPSG','3803',0.07,'EPSG','8603','Vertical Offset',0.49,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4451','NZVD2009 height to Bluff 1955 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5760','EPSG','3801',0.05,'EPSG','8603','Vertical Offset',0.36,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4452','NZVD2009 height to Stewart Island 1977 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5772','EPSG','3338',0.15,'EPSG','8603','Vertical Offset',0.39,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','4453','NZVD2009 height to Dunedin-Bluff 1960 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','4458','EPSG','3806',0.04,'EPSG','8603','Vertical Offset',0.38,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5133','Tokyo 1892 to Tokyo (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','5132','EPSG','4301','EPSG','1364',0.0,'EPSG','8602','Longitude offset',10.405,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5134','Tokyo 1892 to Korean 1985 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','5132','EPSG','4162','EPSG','3266',0.0,'EPSG','8602','Longitude offset',10.405,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5238','S-JTSK/05 (Ferro) to S-JTSK/05 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','5229','EPSG','5228','EPSG','1079',0.0,'EPSG','8602','Longitude offset',-17.4,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5241','S-JTSK to S-JTSK/05 (1)',NULL,NULL,'EPSG','9619','Geographic2D offsets','EPSG','4156','EPSG','5228','EPSG','1079',0.0,'EPSG','8601','Latitude offset',0.0,'EPSG','9104','EPSG','8602','Longitude offset',0.0,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5400','Baltic height to Caspian depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5706','EPSG','1291',0.0,'EPSG','8603','Vertical Offset',-28.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5401','Belfast to Malin Head',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5732','EPSG','5731','EPSG','1305',0.01,'EPSG','8603','Vertical Offset',-0.037,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5402','Baltic height to AIOC95 depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5734','EPSG','2592',0.0,'EPSG','8603','Vertical Offset',-26.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5403','AIOC95 depth to Caspian depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5734','EPSG','5706','EPSG','2592',0.0,'EPSG','8603','Vertical Offset',-1.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5404','Baltic to Black Sea (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5735','EPSG','1102',0.0,'EPSG','8603','Vertical Offset',-0.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5405','Hong Kong Principal height to Hong Kong Chart depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5738','EPSG','5739','EPSG','1118',0.0,'EPSG','8603','Vertical Offset',0.146,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5406','Belfast to Malin Head (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5732','EPSG','5731','EPSG','1305',0.01,'EPSG','8603','Vertical Offset',0.037,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5407','Poolbeg to Malin Head (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5754','EPSG','5731','EPSG','1305',0.1,'EPSG','8603','Vertical Offset',2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5408','Poolbeg to Belfast (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5754','EPSG','5732','EPSG','1305',0.1,'EPSG','8603','Vertical Offset',2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5412','KOC CD to Kuwait PWD (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5790','EPSG','5788','EPSG','1136',0.1,'EPSG','8603','Vertical Offset',0.49,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5413','KOC CD height to KOC WD depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5790','EPSG','5789','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',4.74,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5414','KOC WD to Kuwait PWD (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5789','EPSG','5788','EPSG','1136',0.1,'EPSG','8603','Vertical Offset',-4.25,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5419','NGF IGN69 height to EVRF2000 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5720','EPSG','5730','EPSG','1326',0.1,'EPSG','8603','Vertical Offset',-0.486,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5425','NAP height to EVRF2000 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5709','EPSG','5730','EPSG','1275',0.1,'EPSG','8603','Vertical Offset',-0.005,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5427','Cascais height to EVRF2000 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5780','EPSG','5730','EPSG','1294',0.1,'EPSG','8603','Vertical Offset',-0.315,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5432','N60 height to EVRF2000 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5717','EPSG','5730','EPSG','3333',0.1,'EPSG','8603','Vertical Offset',0.213,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5438','Baltic 1977 height to Caspian height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5611','EPSG','1291',0.0,'EPSG','8603','Vertical Offset',28.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5440','Baltic 1977 depth to Caspian depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5612','EPSG','5706','EPSG','1291',0.0,'EPSG','8603','Vertical Offset',-28.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5441','Baltic depth to Caspian height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5612','EPSG','5611','EPSG','1291',0.0,'EPSG','8603','Vertical Offset',28.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5442','Baltic height to Baltic depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5612','EPSG','1284',0.0,'EPSG','8603','Vertical Offset',0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5443','Baltic 1977 height to AIOC95 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5797','EPSG','2592',0.0,'EPSG','8603','Vertical Offset',26.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5445','Baltic 1977 depth to AIOC95 depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5612','EPSG','5734','EPSG','2592',0.0,'EPSG','8603','Vertical Offset',-26.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5446','Baltic depth to AIOC95 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5612','EPSG','5797','EPSG','2592',0.0,'EPSG','8603','Vertical Offset',26.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5447','Baltic 1977 height to Black Sea height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5735','EPSG','3251',0.0,'EPSG','8603','Vertical Offset',0.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5448','Poolbeg height to Malin Head height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5754','EPSG','5731','EPSG','1305',0.1,'EPSG','8603','Vertical Offset',-2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5449','Poolbeg height to Belfast height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5754','EPSG','5732','EPSG','2530',0.1,'EPSG','8603','Vertical Offset',-2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5450','KOC CD height to Kuwait PWD height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5790','EPSG','5788','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',-0.49,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5452','Belfast height to Malin Head height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5732','EPSG','5731','EPSG','2530',0.01,'EPSG','8603','Vertical Offset',-0.037,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','5453','KOC CD height to KOC WD depth (ft) (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5790','EPSG','5614','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',15.55,'EPSG','9002',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5454','HKPD height to HKCD depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5738','EPSG','5739','EPSG','1118',0.0,'EPSG','8603','Vertical Offset',-0.146,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','5455','KOC WD depth to Kuwait PWD height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5789','EPSG','5788','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',4.25,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','6699','JGD2000 (vertical) height to JGD2011 (vertical) height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','6694','EPSG','6695','EPSG','4165',0.01,'EPSG','8603','Vertical Offset',0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','7653','EGM96 height to Kumul 34 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5773','EPSG','7651','EPSG','4013',0.0,'EPSG','8603','Vertical Offset',-0.87,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','7654','EGM2008 height to Kiunga height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','3855','EPSG','7652','EPSG','4383',0.0,'EPSG','8603','Vertical Offset',-3.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','7873','EGM96 height to POM96 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5773','EPSG','7832','EPSG','4425',0.0,'EPSG','8603','Vertical Offset',-1.58,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','7874','EGM2008 height to POM08 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','3855','EPSG','7841','EPSG','4425',0.0,'EPSG','8603','Vertical Offset',-0.93,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','7964','Poolbeg height (m) to Malin Head height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','7962','EPSG','5731','EPSG','1305',0.1,'EPSG','8603','Vertical Offset',-2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','7966','Poolbeg height (m) to Belfast height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','7962','EPSG','5732','EPSG','1305',0.1,'EPSG','8603','Vertical Offset',-2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','7977','HKPD depth to HKCD depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','7976','EPSG','5739','EPSG','3335',0.0,'EPSG','8603','Vertical Offset',-0.146,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','7980','KOC CD height to KOC WD height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5790','EPSG','7979','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',-4.74,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','7981','Kuwait PWD height to KOC WD height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5788','EPSG','7979','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',-4.25,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','10087','Jamaica 1875 / Jamaica (Old Grid) to JAD69 / Jamaica National Grid (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','24100','EPSG','24200','EPSG','3342',1.5,'EPSG','8623','A0',82357.457,'EPSG','9001','EPSG','8624','A1',0.304794369,'EPSG','9203','EPSG','8625','A2',1.5417425e-05,'EPSG','9203','EPSG','8639','B0',28091.324,'EPSG','9001','EPSG','8640','B1',-1.5417425e-05,'EPSG','9203','EPSG','8641','B2',0.304794369,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','10088','JAD69 / Jamaica National Grid to Jamaica 1875 / Jamaica (Old Grid) (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','24200','EPSG','24100','EPSG','3342',1.5,'EPSG','8623','A0',-270201.96,'EPSG','9005','EPSG','8624','A1',0.00016595792,'EPSG','9203','EPSG','8625','A2',3.2809005,'EPSG','9203','EPSG','8639','B0',-92178.51,'EPSG','9005','EPSG','8640','B1',3.2809005,'EPSG','9203','EPSG','8641','B2',-0.00016595792,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','10095','Mauritania 1999 / UTM zone 28N to WGS 84 / UTM zone 28N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3103','EPSG','32628','EPSG','2971',40.0,'EPSG','8623','A0',NULL,'EPSG',NULL,'EPSG','8624','A1',NULL,'EPSG',NULL,'EPSG','8625','A2',NULL,'EPSG',NULL,'EPSG','8639','B0',NULL,'EPSG',NULL,'EPSG','8640','B1',NULL,'EPSG',NULL,'EPSG','8641','B2',NULL,'EPSG',NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','10096','Mauritania 1999 / UTM zone 29N to WGS 84 / UTM zone 29N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3104','EPSG','32629','EPSG','2970',40.0,'EPSG','8623','A0',NULL,'EPSG',NULL,'EPSG','8624','A1',NULL,'EPSG',NULL,'EPSG','8625','A2',NULL,'EPSG',NULL,'EPSG','8639','B0',NULL,'EPSG',NULL,'EPSG','8640','B1',NULL,'EPSG',NULL,'EPSG','8641','B2',NULL,'EPSG',NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','10097','Mauritania 1999 / UTM zone 30N to WGS 84 / UTM zone 30N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3105','EPSG','32630','EPSG','2969',40.0,'EPSG','8623','A0',NULL,'EPSG',NULL,'EPSG','8624','A1',NULL,'EPSG',NULL,'EPSG','8625','A2',NULL,'EPSG',NULL,'EPSG','8639','B0',NULL,'EPSG',NULL,'EPSG','8640','B1',NULL,'EPSG',NULL,'EPSG','8641','B2',NULL,'EPSG',NULL,NULL,NULL,NULL,NULL,NULL,NULL,1);
INSERT INTO "other_transformation" VALUES('EPSG','15596','Tokyo + JSLD height to WGS 84 (7)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2426',1.0,'EPSG','8601','Latitude offset',7.94,'EPSG','9104','EPSG','8602','Longitude offset',-13.97,'EPSG','9104','EPSG','8604','Geoid undulation',26.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15597','Tokyo + JSLD height to WGS 84 (8)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2427',1.0,'EPSG','8601','Latitude offset',8.1,'EPSG','9104','EPSG','8602','Longitude offset',-13.81,'EPSG','9104','EPSG','8604','Geoid undulation',27.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15598','Tokyo + JSLD height to WGS 84 (9)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2428',1.0,'EPSG','8601','Latitude offset',8.15,'EPSG','9104','EPSG','8602','Longitude offset',-13.95,'EPSG','9104','EPSG','8604','Geoid undulation',28.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15599','Tokyo + JSLD height to WGS 84 (10)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2429',1.0,'EPSG','8601','Latitude offset',8.37,'EPSG','9104','EPSG','8602','Longitude offset',-13.65,'EPSG','9104','EPSG','8604','Geoid undulation',29.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15600','Tokyo + JSLD height to WGS 84 (11)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2430',1.0,'EPSG','8601','Latitude offset',8.44,'EPSG','9104','EPSG','8602','Longitude offset',-13.87,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15601','Tokyo + JSLD height to WGS 84 (12)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2431',1.0,'EPSG','8601','Latitude offset',8.61,'EPSG','9104','EPSG','8602','Longitude offset',-14.08,'EPSG','9104','EPSG','8604','Geoid undulation',30.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15602','Tokyo + JSLD height to WGS 84 (13)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2432',1.0,'EPSG','8601','Latitude offset',8.73,'EPSG','9104','EPSG','8602','Longitude offset',-14.3,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15603','Tokyo + JSLD height to WGS 84 (14)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2433',1.0,'EPSG','8601','Latitude offset',8.63,'EPSG','9104','EPSG','8602','Longitude offset',-13.49,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15604','Tokyo + JSLD height to WGS 84 (15)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2434',1.0,'EPSG','8601','Latitude offset',8.71,'EPSG','9104','EPSG','8602','Longitude offset',-13.73,'EPSG','9104','EPSG','8604','Geoid undulation',31.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15605','Tokyo + JSLD height to WGS 84 (16)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2435',1.0,'EPSG','8601','Latitude offset',8.84,'EPSG','9104','EPSG','8602','Longitude offset',-14.03,'EPSG','9104','EPSG','8604','Geoid undulation',31.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15606','Tokyo + JSLD height to WGS 84 (17)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2436',1.0,'EPSG','8601','Latitude offset',8.98,'EPSG','9104','EPSG','8602','Longitude offset',-14.33,'EPSG','9104','EPSG','8604','Geoid undulation',32.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15607','Tokyo + JSLD height to WGS 84 (18)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2437',1.0,'EPSG','8601','Latitude offset',9.1,'EPSG','9104','EPSG','8602','Longitude offset',-14.56,'EPSG','9104','EPSG','8604','Geoid undulation',32.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15608','Tokyo + JSLD height to WGS 84 (19)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2438',1.0,'EPSG','8601','Latitude offset',8.79,'EPSG','9104','EPSG','8602','Longitude offset',-13.0,'EPSG','9104','EPSG','8604','Geoid undulation',33.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15609','Tokyo + JSLD height to WGS 84 (20)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2439',1.0,'EPSG','8601','Latitude offset',8.84,'EPSG','9104','EPSG','8602','Longitude offset',-13.31,'EPSG','9104','EPSG','8604','Geoid undulation',31.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15610','Tokyo + JSLD height to WGS 84 (21)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2440',1.0,'EPSG','8601','Latitude offset',8.98,'EPSG','9104','EPSG','8602','Longitude offset',-13.59,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15611','Tokyo + JSLD height to WGS 84 (22)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2441',1.0,'EPSG','8601','Latitude offset',9.1,'EPSG','9104','EPSG','8602','Longitude offset',-13.91,'EPSG','9104','EPSG','8604','Geoid undulation',29.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15612','Tokyo + JSLD height to WGS 84 (23)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2442',1.0,'EPSG','8601','Latitude offset',9.17,'EPSG','9104','EPSG','8602','Longitude offset',-14.27,'EPSG','9104','EPSG','8604','Geoid undulation',31.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15613','Tokyo + JSLD height to WGS 84 (24)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2443',1.0,'EPSG','8601','Latitude offset',9.23,'EPSG','9104','EPSG','8602','Longitude offset',-14.52,'EPSG','9104','EPSG','8604','Geoid undulation',31.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15614','Tokyo + JSLD height to WGS 84 (25)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2444',1.0,'EPSG','8601','Latitude offset',8.9,'EPSG','9104','EPSG','8602','Longitude offset',-12.68,'EPSG','9104','EPSG','8604','Geoid undulation',34.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15615','Tokyo + JSLD height to WGS 84 (26)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2445',1.0,'EPSG','8601','Latitude offset',8.99,'EPSG','9104','EPSG','8602','Longitude offset',-12.8,'EPSG','9104','EPSG','8604','Geoid undulation',34.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15616','Tokyo + JSLD height to WGS 84 (27)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2446',1.0,'EPSG','8601','Latitude offset',9.0,'EPSG','9104','EPSG','8602','Longitude offset',-13.07,'EPSG','9104','EPSG','8604','Geoid undulation',31.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15617','Tokyo + JSLD height to WGS 84 (28)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2447',1.0,'EPSG','8601','Latitude offset',9.21,'EPSG','9104','EPSG','8602','Longitude offset',-13.51,'EPSG','9104','EPSG','8604','Geoid undulation',27.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15618','Tokyo + JSLD height to WGS 84 (29)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2448',1.0,'EPSG','8601','Latitude offset',9.33,'EPSG','9104','EPSG','8602','Longitude offset',-13.66,'EPSG','9104','EPSG','8604','Geoid undulation',23.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15619','Tokyo + JSLD height to WGS 84 (30)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2449',1.0,'EPSG','8601','Latitude offset',9.25,'EPSG','9104','EPSG','8602','Longitude offset',-12.72,'EPSG','9104','EPSG','8604','Geoid undulation',34.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15620','Tokyo + JSLD height to WGS 84 (31)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2450',1.0,'EPSG','8601','Latitude offset',9.39,'EPSG','9104','EPSG','8602','Longitude offset',-12.91,'EPSG','9104','EPSG','8604','Geoid undulation',31.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15621','Tokyo + JSLD height to WGS 84 (32)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2451',1.0,'EPSG','8601','Latitude offset',9.55,'EPSG','9104','EPSG','8602','Longitude offset',-12.63,'EPSG','9104','EPSG','8604','Geoid undulation',35.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15622','Tokyo + JSLD height to WGS 84 (33)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2452',1.0,'EPSG','8601','Latitude offset',9.62,'EPSG','9104','EPSG','8602','Longitude offset',-12.82,'EPSG','9104','EPSG','8604','Geoid undulation',34.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15623','Tokyo + JSLD height to WGS 84 (34)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2453',1.0,'EPSG','8601','Latitude offset',9.81,'EPSG','9104','EPSG','8602','Longitude offset',-12.29,'EPSG','9104','EPSG','8604','Geoid undulation',36.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15624','Tokyo + JSLD height to WGS 84 (35)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2454',1.0,'EPSG','8601','Latitude offset',9.81,'EPSG','9104','EPSG','8602','Longitude offset',-12.45,'EPSG','9104','EPSG','8604','Geoid undulation',37.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15625','Tokyo + JSLD height to WGS 84 (36)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2455',1.0,'EPSG','8601','Latitude offset',9.92,'EPSG','9104','EPSG','8602','Longitude offset',-12.79,'EPSG','9104','EPSG','8604','Geoid undulation',38.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15626','Tokyo + JSLD height to WGS 84 (37)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2456',1.0,'EPSG','8601','Latitude offset',9.91,'EPSG','9104','EPSG','8602','Longitude offset',-12.21,'EPSG','9104','EPSG','8604','Geoid undulation',36.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15627','Tokyo + JSLD height to WGS 84 (38)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2457',1.0,'EPSG','8601','Latitude offset',10.08,'EPSG','9104','EPSG','8602','Longitude offset',-12.35,'EPSG','9104','EPSG','8604','Geoid undulation',39.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15628','Tokyo + JSLD height to WGS 84 (39)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2458',1.0,'EPSG','8601','Latitude offset',10.19,'EPSG','9104','EPSG','8602','Longitude offset',-12.74,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15629','Tokyo + JSLD height to WGS 84 (40)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2459',1.0,'EPSG','8601','Latitude offset',10.29,'EPSG','9104','EPSG','8602','Longitude offset',-12.13,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15630','Tokyo + JSLD height to WGS 84 (41)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2460',1.0,'EPSG','8601','Latitude offset',10.33,'EPSG','9104','EPSG','8602','Longitude offset',-12.27,'EPSG','9104','EPSG','8604','Geoid undulation',40.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15631','Tokyo + JSLD height to WGS 84 (42)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2461',1.0,'EPSG','8601','Latitude offset',10.45,'EPSG','9104','EPSG','8602','Longitude offset',-12.61,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15632','Tokyo + JSLD height to WGS 84 (43)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2462',1.0,'EPSG','8601','Latitude offset',10.54,'EPSG','9104','EPSG','8602','Longitude offset',-11.96,'EPSG','9104','EPSG','8604','Geoid undulation',39.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15633','Tokyo + JSLD height to WGS 84 (44)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2463',1.0,'EPSG','8601','Latitude offset',10.65,'EPSG','9104','EPSG','8602','Longitude offset',-12.27,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15634','Tokyo + JSLD height to WGS 84 (45)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2464',1.0,'EPSG','8601','Latitude offset',10.67,'EPSG','9104','EPSG','8602','Longitude offset',-12.5,'EPSG','9104','EPSG','8604','Geoid undulation',41.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15635','Tokyo + JSLD height to WGS 84 (46)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2465',1.0,'EPSG','8601','Latitude offset',10.67,'EPSG','9104','EPSG','8602','Longitude offset',-10.86,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15636','Tokyo + JSLD height to WGS 84 (47)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2466',1.0,'EPSG','8601','Latitude offset',10.68,'EPSG','9104','EPSG','8602','Longitude offset',-10.97,'EPSG','9104','EPSG','8604','Geoid undulation',36.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15637','Tokyo + JSLD height to WGS 84 (48)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2467',1.0,'EPSG','8601','Latitude offset',10.8,'EPSG','9104','EPSG','8602','Longitude offset',-11.53,'EPSG','9104','EPSG','8604','Geoid undulation',39.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15638','Tokyo + JSLD height to WGS 84 (49)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2468',1.0,'EPSG','8601','Latitude offset',10.8,'EPSG','9104','EPSG','8602','Longitude offset',-11.73,'EPSG','9104','EPSG','8604','Geoid undulation',40.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15639','Tokyo + JSLD height to WGS 84 (50)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2469',1.0,'EPSG','8601','Latitude offset',10.92,'EPSG','9104','EPSG','8602','Longitude offset',-12.16,'EPSG','9104','EPSG','8604','Geoid undulation',42.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15640','Tokyo + JSLD height to WGS 84 (51)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2470',1.0,'EPSG','8601','Latitude offset',11.0,'EPSG','9104','EPSG','8602','Longitude offset',-12.25,'EPSG','9104','EPSG','8604','Geoid undulation',41.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15641','Tokyo + JSLD height to WGS 84 (52)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2471',1.0,'EPSG','8601','Latitude offset',10.83,'EPSG','9104','EPSG','8602','Longitude offset',-10.77,'EPSG','9104','EPSG','8604','Geoid undulation',36.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15642','Tokyo + JSLD height to WGS 84 (53)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2472',1.0,'EPSG','8601','Latitude offset',10.95,'EPSG','9104','EPSG','8602','Longitude offset',-11.0,'EPSG','9104','EPSG','8604','Geoid undulation',38.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15643','Tokyo + JSLD height to WGS 84 (54)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2473',1.0,'EPSG','8601','Latitude offset',10.97,'EPSG','9104','EPSG','8602','Longitude offset',-11.34,'EPSG','9104','EPSG','8604','Geoid undulation',40.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15644','Tokyo + JSLD height to WGS 84 (55)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2474',1.0,'EPSG','8601','Latitude offset',11.04,'EPSG','9104','EPSG','8602','Longitude offset',-11.69,'EPSG','9104','EPSG','8604','Geoid undulation',43.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15645','Tokyo + JSLD height to WGS 84 (56)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2475',1.0,'EPSG','8601','Latitude offset',11.17,'EPSG','9104','EPSG','8602','Longitude offset',-12.05,'EPSG','9104','EPSG','8604','Geoid undulation',42.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15646','Tokyo + JSLD height to WGS 84 (57)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2476',1.0,'EPSG','8601','Latitude offset',11.11,'EPSG','9104','EPSG','8602','Longitude offset',-10.59,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15647','Tokyo + JSLD height to WGS 84 (58)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2477',1.0,'EPSG','8601','Latitude offset',11.16,'EPSG','9104','EPSG','8602','Longitude offset',-10.97,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15648','Tokyo + JSLD height to WGS 84 (59)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2478',1.0,'EPSG','8601','Latitude offset',11.29,'EPSG','9104','EPSG','8602','Longitude offset',-11.23,'EPSG','9104','EPSG','8604','Geoid undulation',42.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15649','Tokyo + JSLD height to WGS 84 (60)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2479',1.0,'EPSG','8601','Latitude offset',11.36,'EPSG','9104','EPSG','8602','Longitude offset',-11.59,'EPSG','9104','EPSG','8604','Geoid undulation',42.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15650','Tokyo + JSLD height to WGS 84 (61)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2480',1.0,'EPSG','8601','Latitude offset',11.44,'EPSG','9104','EPSG','8602','Longitude offset',-11.88,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15651','Tokyo + JSLD height to WGS 84 (62)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2481',1.0,'EPSG','8601','Latitude offset',11.27,'EPSG','9104','EPSG','8602','Longitude offset',-9.31,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15652','Tokyo + JSLD height to WGS 84 (63)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2482',1.0,'EPSG','8601','Latitude offset',11.33,'EPSG','9104','EPSG','8602','Longitude offset',-9.52,'EPSG','9104','EPSG','8604','Geoid undulation',33.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15653','Tokyo + JSLD height to WGS 84 (64)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2483',1.0,'EPSG','8601','Latitude offset',11.38,'EPSG','9104','EPSG','8602','Longitude offset',-9.86,'EPSG','9104','EPSG','8604','Geoid undulation',34.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15654','Tokyo + JSLD height to WGS 84 (65)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2484',1.0,'EPSG','8601','Latitude offset',11.41,'EPSG','9104','EPSG','8602','Longitude offset',-10.14,'EPSG','9104','EPSG','8604','Geoid undulation',35.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15655','Tokyo + JSLD height to WGS 84 (66)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2485',1.0,'EPSG','8601','Latitude offset',11.39,'EPSG','9104','EPSG','8602','Longitude offset',-10.52,'EPSG','9104','EPSG','8604','Geoid undulation',37.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15656','Tokyo + JSLD height to WGS 84 (67)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2486',1.0,'EPSG','8601','Latitude offset',11.49,'EPSG','9104','EPSG','8602','Longitude offset',-10.83,'EPSG','9104','EPSG','8604','Geoid undulation',39.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15657','Tokyo + JSLD height to WGS 84 (68)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2487',1.0,'EPSG','8601','Latitude offset',11.58,'EPSG','9104','EPSG','8602','Longitude offset',-11.21,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15658','Tokyo + JSLD height to WGS 84 (69)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2488',1.0,'EPSG','8601','Latitude offset',11.65,'EPSG','9104','EPSG','8602','Longitude offset',-11.53,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15659','Tokyo + JSLD height to WGS 84 (70)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2489',1.0,'EPSG','8601','Latitude offset',11.72,'EPSG','9104','EPSG','8602','Longitude offset',-11.8,'EPSG','9104','EPSG','8604','Geoid undulation',34.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15660','Tokyo + JSLD height to WGS 84 (71)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2490',1.0,'EPSG','8601','Latitude offset',11.44,'EPSG','9104','EPSG','8602','Longitude offset',-9.21,'EPSG','9104','EPSG','8604','Geoid undulation',32.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15661','Tokyo + JSLD height to WGS 84 (72)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2491',1.0,'EPSG','8601','Latitude offset',11.47,'EPSG','9104','EPSG','8602','Longitude offset',-9.52,'EPSG','9104','EPSG','8604','Geoid undulation',35.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15662','Tokyo + JSLD height to WGS 84 (73)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2492',1.0,'EPSG','8601','Latitude offset',11.55,'EPSG','9104','EPSG','8602','Longitude offset',-9.8,'EPSG','9104','EPSG','8604','Geoid undulation',35.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15663','Tokyo + JSLD height to WGS 84 (74)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2493',1.0,'EPSG','8601','Latitude offset',11.61,'EPSG','9104','EPSG','8602','Longitude offset',-10.12,'EPSG','9104','EPSG','8604','Geoid undulation',35.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15664','Tokyo + JSLD height to WGS 84 (75)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2494',1.0,'EPSG','8601','Latitude offset',11.66,'EPSG','9104','EPSG','8602','Longitude offset',-10.47,'EPSG','9104','EPSG','8604','Geoid undulation',37.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15665','Tokyo + JSLD height to WGS 84 (76)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2495',1.0,'EPSG','8601','Latitude offset',11.78,'EPSG','9104','EPSG','8602','Longitude offset',-10.79,'EPSG','9104','EPSG','8604','Geoid undulation',39.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15666','Tokyo + JSLD height to WGS 84 (77)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2496',1.0,'EPSG','8601','Latitude offset',11.85,'EPSG','9104','EPSG','8602','Longitude offset',-11.13,'EPSG','9104','EPSG','8604','Geoid undulation',39.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15667','Tokyo + JSLD height to WGS 84 (78)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2497',1.0,'EPSG','8601','Latitude offset',11.9,'EPSG','9104','EPSG','8602','Longitude offset',-11.47,'EPSG','9104','EPSG','8604','Geoid undulation',36.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15668','Tokyo + JSLD height to WGS 84 (79)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2498',1.0,'EPSG','8601','Latitude offset',11.91,'EPSG','9104','EPSG','8602','Longitude offset',-11.69,'EPSG','9104','EPSG','8604','Geoid undulation',33.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15669','Tokyo + JSLD height to WGS 84 (80)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2499',1.0,'EPSG','8601','Latitude offset',11.65,'EPSG','9104','EPSG','8602','Longitude offset',-8.59,'EPSG','9104','EPSG','8604','Geoid undulation',29.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15670','Tokyo + JSLD height to WGS 84 (81)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2500',1.0,'EPSG','8601','Latitude offset',11.68,'EPSG','9104','EPSG','8602','Longitude offset',-8.8,'EPSG','9104','EPSG','8604','Geoid undulation',30.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15671','Tokyo + JSLD height to WGS 84 (82)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2501',1.0,'EPSG','8601','Latitude offset',11.73,'EPSG','9104','EPSG','8602','Longitude offset',-9.04,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15672','Tokyo + JSLD height to WGS 84 (83)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2502',1.0,'EPSG','8601','Latitude offset',11.72,'EPSG','9104','EPSG','8602','Longitude offset',-9.48,'EPSG','9104','EPSG','8604','Geoid undulation',35.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15673','Tokyo + JSLD height to WGS 84 (84)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2503',1.0,'EPSG','8601','Latitude offset',11.81,'EPSG','9104','EPSG','8602','Longitude offset',9.74,'EPSG','9104','EPSG','8604','Geoid undulation',35.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15674','Tokyo + JSLD height to WGS 84 (85)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2504',1.0,'EPSG','8601','Latitude offset',11.88,'EPSG','9104','EPSG','8602','Longitude offset',-10.1,'EPSG','9104','EPSG','8604','Geoid undulation',37.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15675','Tokyo + JSLD height to WGS 84 (86)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2505',1.0,'EPSG','8601','Latitude offset',11.91,'EPSG','9104','EPSG','8602','Longitude offset',-10.35,'EPSG','9104','EPSG','8604','Geoid undulation',37.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15676','Tokyo + JSLD height to WGS 84 (87)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2506',1.0,'EPSG','8601','Latitude offset',11.9,'EPSG','9104','EPSG','8602','Longitude offset',-10.7,'EPSG','9104','EPSG','8604','Geoid undulation',39.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15677','Tokyo + JSLD height to WGS 84 (88)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2507',1.0,'EPSG','8601','Latitude offset',12.02,'EPSG','9104','EPSG','8602','Longitude offset',-11.09,'EPSG','9104','EPSG','8604','Geoid undulation',38.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15678','Tokyo + JSLD height to WGS 84 (89)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2508',1.0,'EPSG','8601','Latitude offset',11.87,'EPSG','9104','EPSG','8602','Longitude offset',-8.23,'EPSG','9104','EPSG','8604','Geoid undulation',29.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15679','Tokyo + JSLD height to WGS 84 (90)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2509',1.0,'EPSG','8601','Latitude offset',11.84,'EPSG','9104','EPSG','8602','Longitude offset',-8.44,'EPSG','9104','EPSG','8604','Geoid undulation',30.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15680','Tokyo + JSLD height to WGS 84 (91)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2510',1.0,'EPSG','8601','Latitude offset',11.94,'EPSG','9104','EPSG','8602','Longitude offset',-8.71,'EPSG','9104','EPSG','8604','Geoid undulation',30.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15681','Tokyo + JSLD height to WGS 84 (92)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2511',1.0,'EPSG','8601','Latitude offset',11.99,'EPSG','9104','EPSG','8602','Longitude offset',-9.02,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15682','Tokyo + JSLD height to WGS 84 (93)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2512',1.0,'EPSG','8601','Latitude offset',12.05,'EPSG','9104','EPSG','8602','Longitude offset',-9.36,'EPSG','9104','EPSG','8604','Geoid undulation',35.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15683','Tokyo + JSLD height to WGS 84 (94)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2513',1.0,'EPSG','8601','Latitude offset',12.1,'EPSG','9104','EPSG','8602','Longitude offset',-9.64,'EPSG','9104','EPSG','8604','Geoid undulation',35.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15684','Tokyo + JSLD height to WGS 84 (95)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2514',1.0,'EPSG','8601','Latitude offset',12.1,'EPSG','9104','EPSG','8602','Longitude offset',-10.08,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15685','Tokyo + JSLD height to WGS 84 (96)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2515',1.0,'EPSG','8601','Latitude offset',12.07,'EPSG','9104','EPSG','8602','Longitude offset',-10.25,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15686','Tokyo + JSLD height to WGS 84 (97)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2516',1.0,'EPSG','8601','Latitude offset',12.0,'EPSG','9104','EPSG','8602','Longitude offset',-8.15,'EPSG','9104','EPSG','8604','Geoid undulation',32.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15687','Tokyo + JSLD height to WGS 84 (98)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2517',1.0,'EPSG','8601','Latitude offset',12.06,'EPSG','9104','EPSG','8602','Longitude offset',-8.38,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15688','Tokyo + JSLD height to WGS 84 (99)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2518',1.0,'EPSG','8601','Latitude offset',12.17,'EPSG','9104','EPSG','8602','Longitude offset',-8.69,'EPSG','9104','EPSG','8604','Geoid undulation',30.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15689','Tokyo + JSLD height to WGS 84 (100)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2519',1.0,'EPSG','8601','Latitude offset',12.23,'EPSG','9104','EPSG','8602','Longitude offset',-8.99,'EPSG','9104','EPSG','8604','Geoid undulation',31.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15690','Tokyo + JSLD height to WGS 84 (101)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2520',1.0,'EPSG','8601','Latitude offset',12.21,'EPSG','9104','EPSG','8602','Longitude offset',-9.21,'EPSG','9104','EPSG','8604','Geoid undulation',34.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15691','Tokyo + JSLD height to WGS 84 (102)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2521',1.0,'EPSG','8601','Latitude offset',12.28,'EPSG','9104','EPSG','8602','Longitude offset',-9.6,'EPSG','9104','EPSG','8604','Geoid undulation',33.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15692','Tokyo + JSLD height to WGS 84 (103)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2522',1.0,'EPSG','8601','Latitude offset',12.28,'EPSG','9104','EPSG','8602','Longitude offset',-8.25,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15693','Tokyo + JSLD height to WGS 84 (104)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2523',1.0,'EPSG','8601','Latitude offset',12.37,'EPSG','9104','EPSG','8602','Longitude offset',-8.55,'EPSG','9104','EPSG','8604','Geoid undulation',29.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15694','Tokyo + JSLD height to WGS 84 (105)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2524',1.0,'EPSG','8601','Latitude offset',12.53,'EPSG','9104','EPSG','8602','Longitude offset',-8.21,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15695','Tokyo + JSLD height to WGS 84 (106)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2525',1.0,'EPSG','8601','Latitude offset',12.57,'EPSG','9104','EPSG','8602','Longitude offset',-8.4,'EPSG','9104','EPSG','8604','Geoid undulation',28.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15696','Tokyo + JSLD height to WGS 84 (107)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2526',1.0,'EPSG','8601','Latitude offset',12.71,'EPSG','9104','EPSG','8602','Longitude offset',-8.17,'EPSG','9104','EPSG','8604','Geoid undulation',29.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15697','Tokyo + JSLD height to WGS 84 (6)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2425',1.0,'EPSG','8601','Latitude offset',7.92,'EPSG','9104','EPSG','8602','Longitude offset',-13.88,'EPSG','9104','EPSG','8604','Geoid undulation',26.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15857','IGN Astro 1960 / UTM zone 28N to Mauritania 1999 / UTM zone 28N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3367','EPSG','3343','EPSG','2971',40.0,'EPSG','8623','A0',-532.876,'EPSG','9001','EPSG','8624','A1',1.00017216658401,'EPSG','9203','EPSG','8625','A2',9.029305555e-05,'EPSG','9203','EPSG','8639','B0',-34.015,'EPSG','9001','EPSG','8640','B1',-9.029305555e-05,'EPSG','9203','EPSG','8641','B2',1.00017216658401,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15858','IGN Astro 1960 / UTM zone 29N to Mauritania 1999 / UTM zone 29N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3368','EPSG','3344','EPSG','2970',40.0,'EPSG','8623','A0',-409.264,'EPSG','9001','EPSG','8624','A1',1.00017432259949,'EPSG','9203','EPSG','8625','A2',9.14562824e-05,'EPSG','9203','EPSG','8639','B0',-88.803,'EPSG','9001','EPSG','8640','B1',-9.14562824e-05,'EPSG','9203','EPSG','8641','B2',1.00017432259949,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15859','IGN Astro 1960 / UTM zone 30N to Mauritania 1999 / UTM zone 30N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3369','EPSG','3345','EPSG','2969',40.0,'EPSG','8623','A0',-286.351,'EPSG','9001','EPSG','8624','A1',1.0001754456884,'EPSG','9203','EPSG','8625','A2',9.270672363e-05,'EPSG','9203','EPSG','8639','B0',-146.722,'EPSG','9001','EPSG','8640','B1',-9.270672363e-05,'EPSG','9203','EPSG','8641','B2',1.0001754456884,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15861','IGN Astro 1960 / UTM zone 28N to WGS 84 / UTM zone 28N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3367','EPSG','32628','EPSG','2971',40.0,'EPSG','8623','A0',-532.876,'EPSG','9001','EPSG','8624','A1',1.00017216658401,'EPSG','9203','EPSG','8625','A2',9.029305555e-05,'EPSG','9203','EPSG','8639','B0',-34.015,'EPSG','9001','EPSG','8640','B1',-9.029305555e-05,'EPSG','9203','EPSG','8641','B2',1.00017216658401,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15862','IGN Astro 1960 / UTM zone 29N to WGS 84 / UTM zone 29N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3368','EPSG','32629','EPSG','2970',1.0,'EPSG','8623','A0',-409.264,'EPSG','9001','EPSG','8624','A1',1.00017432259949,'EPSG','9203','EPSG','8625','A2',9.14562824e-05,'EPSG','9203','EPSG','8639','B0',-88.803,'EPSG','9001','EPSG','8640','B1',-9.14562824e-05,'EPSG','9203','EPSG','8641','B2',1.00017432259949,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','15863','IGN Astro 1960 / UTM zone 30N to WGS 84 / UTM zone 30N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3369','EPSG','32630','EPSG','2969',1.0,'EPSG','8623','A0',-286.351,'EPSG','9001','EPSG','8624','A1',1.0001754456884,'EPSG','9203','EPSG','8625','A2',9.270672363e-05,'EPSG','9203','EPSG','8639','B0',-146.722,'EPSG','9001','EPSG','8640','B1',-9.270672363e-05,'EPSG','9203','EPSG','8641','B2',1.0001754456884,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "other_transformation" VALUES('EPSG','1258','Bogota 1975 (Bogota) to Bogota 1975 (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4802','EPSG','4218','EPSG','1070',NULL,'EPSG','8602','Longitude offset',-74.04513,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IGAC-Col',1);
INSERT INTO "other_transformation" VALUES('EPSG','1259','Lisbon (Lisbon) to Lisbon (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4803','EPSG','4207','EPSG','1294',NULL,'EPSG','8602','Longitude offset',-9.0754862,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IGC-Prt',1);
INSERT INTO "other_transformation" VALUES('EPSG','1260','Makassar (Jakarta) to Makassar (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4804','EPSG','4257','EPSG','1316',0.0,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Idn Sulawesi',0);
INSERT INTO "other_transformation" VALUES('EPSG','1261','MGI (Ferro) to MGI (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4805','EPSG','4312','EPSG','1166',NULL,'EPSG','8602','Longitude offset',-17.4,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'BEV-Aut balk',1);
INSERT INTO "other_transformation" VALUES('EPSG','1262','Monte Mario (Rome) to Monte Mario (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4806','EPSG','4265','EPSG','3343',0.0,'EPSG','8602','Longitude offset',12.27084,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Ita',0);
INSERT INTO "other_transformation" VALUES('EPSG','1263','Padang (Jakarta) to Padang (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4808','EPSG','4280','EPSG','1355',NULL,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Idn Sumatra',1);
INSERT INTO "other_transformation" VALUES('EPSG','1264','Belge 1950 (Brussels) to Belge 1950 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4809','EPSG','4215','EPSG','1347',0.0,'EPSG','8602','Longitude offset',4.220471,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Bel',0);
INSERT INTO "other_transformation" VALUES('EPSG','1265','Tananarive (Paris) to Tananarive (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4810','EPSG','4297','EPSG','3273',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Mdg',0);
INSERT INTO "other_transformation" VALUES('EPSG','1266','Voirol 1875 (Paris) to Voirol 1875 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4811','EPSG','4304','EPSG','1365',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Dza',0);
INSERT INTO "other_transformation" VALUES('EPSG','1268','Batavia (Jakarta) to Batavia (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4813','EPSG','4211','EPSG','1285',NULL,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Idn Java',1);
INSERT INTO "other_transformation" VALUES('EPSG','1269','RT38 (Stockholm) to RT38 (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4814','EPSG','4308','EPSG','1225',NULL,'EPSG','8602','Longitude offset',18.03298,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'NLS-Swe',1);
INSERT INTO "other_transformation" VALUES('EPSG','1270','Greek (Athens) to Greek (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4815','EPSG','4120','EPSG','1106',NULL,'EPSG','8602','Longitude offset',23.4258815,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'NTU-Grc',1);
INSERT INTO "other_transformation" VALUES('EPSG','1335','Tokyo to WGS 84 (6)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','4301','EPSG','4326','EPSG','2425',2.0,'EPSG','8601','Latitude offset',7.92,'EPSG','9108','EPSG','8602','Longitude offset',-13.88,'EPSG','9104','EPSG','8604','Geoid undulation',26.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 452141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1336','Tokyo + JSLD to WGS 84 (7)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2426',1.0,'EPSG','8601','Latitude offset',7.94,'EPSG','9104','EPSG','8602','Longitude offset',-13.97,'EPSG','9104','EPSG','8604','Geoid undulation',26.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 452142',1);
INSERT INTO "other_transformation" VALUES('EPSG','1337','Tokyo + JSLD to WGS 84 (8)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2427',1.0,'EPSG','8601','Latitude offset',8.1,'EPSG','9104','EPSG','8602','Longitude offset',-13.81,'EPSG','9104','EPSG','8604','Geoid undulation',27.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 444141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1338','Tokyo + JSLD to WGS 84 (9)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2428',1.0,'EPSG','8601','Latitude offset',8.15,'EPSG','9104','EPSG','8602','Longitude offset',-13.95,'EPSG','9104','EPSG','8604','Geoid undulation',28.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 444142',1);
INSERT INTO "other_transformation" VALUES('EPSG','1339','Tokyo + JSLD to WGS 84 (10)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2429',1.0,'EPSG','8601','Latitude offset',8.37,'EPSG','9104','EPSG','8602','Longitude offset',-13.65,'EPSG','9104','EPSG','8604','Geoid undulation',29.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 440141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1340','Tokyo + JSLD to WGS 84 (11)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2430',1.0,'EPSG','8601','Latitude offset',8.44,'EPSG','9104','EPSG','8602','Longitude offset',-13.87,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 440142',1);
INSERT INTO "other_transformation" VALUES('EPSG','1341','Tokyo + JSLD to WGS 84 (12)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2431',1.0,'EPSG','8601','Latitude offset',8.61,'EPSG','9104','EPSG','8602','Longitude offset',-14.08,'EPSG','9104','EPSG','8604','Geoid undulation',30.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 440143',1);
INSERT INTO "other_transformation" VALUES('EPSG','1342','Tokyo + JSLD to WGS 84 (13)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2432',1.0,'EPSG','8601','Latitude offset',8.73,'EPSG','9104','EPSG','8602','Longitude offset',-14.3,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 440144',1);
INSERT INTO "other_transformation" VALUES('EPSG','1343','Tokyo + JSLD to WGS 84 (14)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2433',1.0,'EPSG','8601','Latitude offset',8.63,'EPSG','9104','EPSG','8602','Longitude offset',-13.49,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 432141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1344','Tokyo + JSLD to WGS 84 (15)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2434',1.0,'EPSG','8601','Latitude offset',8.71,'EPSG','9104','EPSG','8602','Longitude offset',-13.73,'EPSG','9104','EPSG','8604','Geoid undulation',31.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 432142',1);
INSERT INTO "other_transformation" VALUES('EPSG','1345','Tokyo + JSLD to WGS 84 (16)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2435',1.0,'EPSG','8601','Latitude offset',8.84,'EPSG','9104','EPSG','8602','Longitude offset',-14.03,'EPSG','9104','EPSG','8604','Geoid undulation',31.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 432143',1);
INSERT INTO "other_transformation" VALUES('EPSG','1346','Tokyo + JSLD to WGS 84 (17)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2436',1.0,'EPSG','8601','Latitude offset',8.98,'EPSG','9104','EPSG','8602','Longitude offset',-14.33,'EPSG','9104','EPSG','8604','Geoid undulation',32.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 432144',1);
INSERT INTO "other_transformation" VALUES('EPSG','1347','Tokyo + JSLD to WGS 84 (18)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2437',1.0,'EPSG','8601','Latitude offset',9.1,'EPSG','9104','EPSG','8602','Longitude offset',-14.56,'EPSG','9104','EPSG','8604','Geoid undulation',32.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 432145',1);
INSERT INTO "other_transformation" VALUES('EPSG','1348','Tokyo + JSLD to WGS 84 (19)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2438',1.0,'EPSG','8601','Latitude offset',8.79,'EPSG','9104','EPSG','8602','Longitude offset',-13.0,'EPSG','9104','EPSG','8604','Geoid undulation',33.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1349','Tokyo + JSLD to WGS 84 (20)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2439',1.0,'EPSG','8601','Latitude offset',8.84,'EPSG','9104','EPSG','8602','Longitude offset',-13.31,'EPSG','9104','EPSG','8604','Geoid undulation',31.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1350','Tokyo + JSLD to WGS 84 (21)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2440',1.0,'EPSG','8601','Latitude offset',8.98,'EPSG','9104','EPSG','8602','Longitude offset',-13.59,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424142',1);
INSERT INTO "other_transformation" VALUES('EPSG','1351','Tokyo + JSLD to WGS 84 (22)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2441',1.0,'EPSG','8601','Latitude offset',9.1,'EPSG','9104','EPSG','8602','Longitude offset',-13.91,'EPSG','9104','EPSG','8604','Geoid undulation',29.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424143',1);
INSERT INTO "other_transformation" VALUES('EPSG','1352','Tokyo + JSLD to WGS 84 (23)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2442',1.0,'EPSG','8601','Latitude offset',9.17,'EPSG','9104','EPSG','8602','Longitude offset',-14.27,'EPSG','9104','EPSG','8604','Geoid undulation',31.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424144',1);
INSERT INTO "other_transformation" VALUES('EPSG','1353','Tokyo + JSLD to WGS 84 (24)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2443',1.0,'EPSG','8601','Latitude offset',9.23,'EPSG','9104','EPSG','8602','Longitude offset',-14.52,'EPSG','9104','EPSG','8604','Geoid undulation',31.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424145',1);
INSERT INTO "other_transformation" VALUES('EPSG','1354','Tokyo + JSLD to WGS 84 (25)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2444',1.0,'EPSG','8601','Latitude offset',8.9,'EPSG','9104','EPSG','8602','Longitude offset',-12.68,'EPSG','9104','EPSG','8604','Geoid undulation',34.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 420139',1);
INSERT INTO "other_transformation" VALUES('EPSG','1355','Tokyo + JSLD to WGS 84 (26)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2445',1.0,'EPSG','8601','Latitude offset',8.99,'EPSG','9104','EPSG','8602','Longitude offset',-12.8,'EPSG','9104','EPSG','8604','Geoid undulation',34.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 420140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1356','Tokyo + JSLD to WGS 84 (27)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2446',1.0,'EPSG','8601','Latitude offset',9.0,'EPSG','9104','EPSG','8602','Longitude offset',-13.07,'EPSG','9104','EPSG','8604','Geoid undulation',31.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 420141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1357','Tokyo + JSLD to WGS 84 (28)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2447',1.0,'EPSG','8601','Latitude offset',9.21,'EPSG','9104','EPSG','8602','Longitude offset',-13.51,'EPSG','9104','EPSG','8604','Geoid undulation',27.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 420142',1);
INSERT INTO "other_transformation" VALUES('EPSG','1358','Tokyo + JSLD to WGS 84 (29)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2448',1.0,'EPSG','8601','Latitude offset',9.33,'EPSG','9104','EPSG','8602','Longitude offset',-13.66,'EPSG','9104','EPSG','8604','Geoid undulation',23.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 420143',1);
INSERT INTO "other_transformation" VALUES('EPSG','1359','Tokyo + JSLD to WGS 84 (30)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2449',1.0,'EPSG','8601','Latitude offset',9.25,'EPSG','9104','EPSG','8602','Longitude offset',-12.72,'EPSG','9104','EPSG','8604','Geoid undulation',34.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 412140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1360','Tokyo + JSLD to WGS 84 (31)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2450',1.0,'EPSG','8601','Latitude offset',9.39,'EPSG','9104','EPSG','8602','Longitude offset',-12.91,'EPSG','9104','EPSG','8604','Geoid undulation',31.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 412141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1361','Tokyo + JSLD to WGS 84 (32)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2451',1.0,'EPSG','8601','Latitude offset',9.55,'EPSG','9104','EPSG','8602','Longitude offset',-12.63,'EPSG','9104','EPSG','8604','Geoid undulation',35.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 404140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1362','Tokyo + JSLD to WGS 84 (33)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2452',1.0,'EPSG','8601','Latitude offset',9.62,'EPSG','9104','EPSG','8602','Longitude offset',-12.82,'EPSG','9104','EPSG','8604','Geoid undulation',34.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 404141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1363','Tokyo + JSLD to WGS 84 (34)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2453',1.0,'EPSG','8601','Latitude offset',9.81,'EPSG','9104','EPSG','8602','Longitude offset',-12.29,'EPSG','9104','EPSG','8604','Geoid undulation',36.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 400139',1);
INSERT INTO "other_transformation" VALUES('EPSG','1364','Tokyo + JSLD to WGS 84 (35)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2454',1.0,'EPSG','8601','Latitude offset',9.81,'EPSG','9104','EPSG','8602','Longitude offset',-12.45,'EPSG','9104','EPSG','8604','Geoid undulation',37.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 400140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1365','Tokyo + JSLD to WGS 84 (36)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2455',1.0,'EPSG','8601','Latitude offset',9.92,'EPSG','9104','EPSG','8602','Longitude offset',-12.79,'EPSG','9104','EPSG','8604','Geoid undulation',38.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 400141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1366','Tokyo + JSLD to WGS 84 (37)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2456',1.0,'EPSG','8601','Latitude offset',9.91,'EPSG','9104','EPSG','8602','Longitude offset',-12.21,'EPSG','9104','EPSG','8604','Geoid undulation',36.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 392139',1);
INSERT INTO "other_transformation" VALUES('EPSG','1367','Tokyo + JSLD to WGS 84 (38)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2457',1.0,'EPSG','8601','Latitude offset',10.08,'EPSG','9104','EPSG','8602','Longitude offset',-12.35,'EPSG','9104','EPSG','8604','Geoid undulation',39.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 392140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1368','Tokyo + JSLD to WGS 84 (39)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2458',1.0,'EPSG','8601','Latitude offset',10.19,'EPSG','9104','EPSG','8602','Longitude offset',-12.74,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 392141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1369','Tokyo + JSLD to WGS 84 (40)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2459',1.0,'EPSG','8601','Latitude offset',10.29,'EPSG','9104','EPSG','8602','Longitude offset',-12.13,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 384139',1);
INSERT INTO "other_transformation" VALUES('EPSG','1370','Tokyo + JSLD to WGS 84 (41)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2460',1.0,'EPSG','8601','Latitude offset',10.33,'EPSG','9104','EPSG','8602','Longitude offset',-12.27,'EPSG','9104','EPSG','8604','Geoid undulation',40.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 384140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1371','Tokyo + JSLD to WGS 84 (42)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2461',1.0,'EPSG','8601','Latitude offset',10.45,'EPSG','9104','EPSG','8602','Longitude offset',-12.61,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 384141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1372','Tokyo + JSLD to WGS 84 (43)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2462',1.0,'EPSG','8601','Latitude offset',10.54,'EPSG','9104','EPSG','8602','Longitude offset',-11.96,'EPSG','9104','EPSG','8604','Geoid undulation',39.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 380139',1);
INSERT INTO "other_transformation" VALUES('EPSG','1373','Tokyo + JSLD to WGS 84 (44)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2463',1.0,'EPSG','8601','Latitude offset',10.65,'EPSG','9104','EPSG','8602','Longitude offset',-12.27,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 380140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1374','Tokyo + JSLD to WGS 84 (45)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2464',1.0,'EPSG','8601','Latitude offset',10.67,'EPSG','9104','EPSG','8602','Longitude offset',-12.5,'EPSG','9104','EPSG','8604','Geoid undulation',41.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 380141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1375','Tokyo + JSLD to WGS 84 (46)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2465',1.0,'EPSG','8601','Latitude offset',10.67,'EPSG','9104','EPSG','8602','Longitude offset',-10.86,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372136',1);
INSERT INTO "other_transformation" VALUES('EPSG','1376','Tokyo + JSLD to WGS 84 (47)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2466',1.0,'EPSG','8601','Latitude offset',10.68,'EPSG','9104','EPSG','8602','Longitude offset',-10.97,'EPSG','9104','EPSG','8604','Geoid undulation',36.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372137',1);
INSERT INTO "other_transformation" VALUES('EPSG','1377','Tokyo + JSLD to WGS 84 (48)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2467',1.0,'EPSG','8601','Latitude offset',10.8,'EPSG','9104','EPSG','8602','Longitude offset',-11.53,'EPSG','9104','EPSG','8604','Geoid undulation',39.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372138',1);
INSERT INTO "other_transformation" VALUES('EPSG','1378','Tokyo + JSLD to WGS 84 (49)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2468',1.0,'EPSG','8601','Latitude offset',10.8,'EPSG','9104','EPSG','8602','Longitude offset',-11.73,'EPSG','9104','EPSG','8604','Geoid undulation',40.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372139',1);
INSERT INTO "other_transformation" VALUES('EPSG','1379','Tokyo + JSLD to WGS 84 (50)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2469',1.0,'EPSG','8601','Latitude offset',10.92,'EPSG','9104','EPSG','8602','Longitude offset',-12.16,'EPSG','9104','EPSG','8604','Geoid undulation',42.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1380','Tokyo + JSLD to WGS 84 (51)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2470',1.0,'EPSG','8601','Latitude offset',11.0,'EPSG','9104','EPSG','8602','Longitude offset',-12.25,'EPSG','9104','EPSG','8604','Geoid undulation',41.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1381','Tokyo + JSLD to WGS 84 (52)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2471',1.0,'EPSG','8601','Latitude offset',10.83,'EPSG','9104','EPSG','8602','Longitude offset',-10.77,'EPSG','9104','EPSG','8604','Geoid undulation',36.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 364136',1);
INSERT INTO "other_transformation" VALUES('EPSG','1382','Tokyo + JSLD to WGS 84 (53)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2472',1.0,'EPSG','8601','Latitude offset',10.95,'EPSG','9104','EPSG','8602','Longitude offset',-11.0,'EPSG','9104','EPSG','8604','Geoid undulation',38.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 364137',1);
INSERT INTO "other_transformation" VALUES('EPSG','1383','Tokyo + JSLD to WGS 84 (54)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2473',1.0,'EPSG','8601','Latitude offset',10.97,'EPSG','9104','EPSG','8602','Longitude offset',-11.34,'EPSG','9104','EPSG','8604','Geoid undulation',40.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 364138',1);
INSERT INTO "other_transformation" VALUES('EPSG','1384','Tokyo + JSLD to WGS 84 (55)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2474',1.0,'EPSG','8601','Latitude offset',11.04,'EPSG','9104','EPSG','8602','Longitude offset',-11.69,'EPSG','9104','EPSG','8604','Geoid undulation',43.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 364139',1);
INSERT INTO "other_transformation" VALUES('EPSG','1385','Tokyo + JSLD to WGS 84 (56)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2475',1.0,'EPSG','8601','Latitude offset',11.17,'EPSG','9104','EPSG','8602','Longitude offset',-12.05,'EPSG','9104','EPSG','8604','Geoid undulation',42.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 364140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1386','Tokyo + JSLD to WGS 84 (57)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2476',1.0,'EPSG','8601','Latitude offset',11.11,'EPSG','9104','EPSG','8602','Longitude offset',-10.59,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 360136',1);
INSERT INTO "other_transformation" VALUES('EPSG','1387','Tokyo + JSLD to WGS 84 (58)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2477',1.0,'EPSG','8601','Latitude offset',11.16,'EPSG','9104','EPSG','8602','Longitude offset',-10.97,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 360137',1);
INSERT INTO "other_transformation" VALUES('EPSG','1388','Tokyo + JSLD to WGS 84 (59)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2478',1.0,'EPSG','8601','Latitude offset',11.29,'EPSG','9104','EPSG','8602','Longitude offset',-11.23,'EPSG','9104','EPSG','8604','Geoid undulation',42.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 360138',1);
INSERT INTO "other_transformation" VALUES('EPSG','1389','Tokyo + JSLD to WGS 84 (60)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2479',1.0,'EPSG','8601','Latitude offset',11.36,'EPSG','9104','EPSG','8602','Longitude offset',-11.59,'EPSG','9104','EPSG','8604','Geoid undulation',42.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 360139',1);
INSERT INTO "other_transformation" VALUES('EPSG','1390','Tokyo + JSLD to WGS 84 (61)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2480',1.0,'EPSG','8601','Latitude offset',11.44,'EPSG','9104','EPSG','8602','Longitude offset',-11.88,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 360140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1391','Tokyo + JSLD to WGS 84 (62)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2481',1.0,'EPSG','8601','Latitude offset',11.27,'EPSG','9104','EPSG','8602','Longitude offset',-9.31,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352132',1);
INSERT INTO "other_transformation" VALUES('EPSG','1392','Tokyo + JSLD to WGS 84 (63)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2482',1.0,'EPSG','8601','Latitude offset',11.33,'EPSG','9104','EPSG','8602','Longitude offset',-9.52,'EPSG','9104','EPSG','8604','Geoid undulation',33.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352133',1);
INSERT INTO "other_transformation" VALUES('EPSG','1393','Tokyo + JSLD to WGS 84 (64)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2483',1.0,'EPSG','8601','Latitude offset',11.38,'EPSG','9104','EPSG','8602','Longitude offset',-9.86,'EPSG','9104','EPSG','8604','Geoid undulation',34.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352134',1);
INSERT INTO "other_transformation" VALUES('EPSG','1394','Tokyo + JSLD to WGS 84 (65)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2484',1.0,'EPSG','8601','Latitude offset',11.41,'EPSG','9104','EPSG','8602','Longitude offset',-10.14,'EPSG','9104','EPSG','8604','Geoid undulation',35.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352135',1);
INSERT INTO "other_transformation" VALUES('EPSG','1395','Tokyo + JSLD to WGS 84 (66)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2485',1.0,'EPSG','8601','Latitude offset',11.39,'EPSG','9104','EPSG','8602','Longitude offset',-10.52,'EPSG','9104','EPSG','8604','Geoid undulation',37.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352136',1);
INSERT INTO "other_transformation" VALUES('EPSG','1396','Tokyo + JSLD to WGS 84 (67)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2486',1.0,'EPSG','8601','Latitude offset',11.49,'EPSG','9104','EPSG','8602','Longitude offset',-10.83,'EPSG','9104','EPSG','8604','Geoid undulation',39.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352137',1);
INSERT INTO "other_transformation" VALUES('EPSG','1397','Tokyo + JSLD to WGS 84 (68)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2487',1.0,'EPSG','8601','Latitude offset',11.58,'EPSG','9104','EPSG','8602','Longitude offset',-11.21,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352138',1);
INSERT INTO "other_transformation" VALUES('EPSG','1398','Tokyo + JSLD to WGS 84 (69)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2488',1.0,'EPSG','8601','Latitude offset',11.65,'EPSG','9104','EPSG','8602','Longitude offset',-11.53,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352139',1);
INSERT INTO "other_transformation" VALUES('EPSG','1399','Tokyo + JSLD to WGS 84 (70)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2489',1.0,'EPSG','8601','Latitude offset',11.72,'EPSG','9104','EPSG','8602','Longitude offset',-11.8,'EPSG','9104','EPSG','8604','Geoid undulation',34.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1400','Tokyo + JSLD to WGS 84 (71)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2490',1.0,'EPSG','8601','Latitude offset',11.44,'EPSG','9104','EPSG','8602','Longitude offset',-9.21,'EPSG','9104','EPSG','8604','Geoid undulation',32.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344132',1);
INSERT INTO "other_transformation" VALUES('EPSG','1401','Tokyo + JSLD to WGS 84 (72)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2491',1.0,'EPSG','8601','Latitude offset',11.47,'EPSG','9104','EPSG','8602','Longitude offset',-9.52,'EPSG','9104','EPSG','8604','Geoid undulation',35.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344133',1);
INSERT INTO "other_transformation" VALUES('EPSG','1402','Tokyo + JSLD to WGS 84 (73)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2492',1.0,'EPSG','8601','Latitude offset',11.55,'EPSG','9104','EPSG','8602','Longitude offset',-9.8,'EPSG','9104','EPSG','8604','Geoid undulation',35.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344134',1);
INSERT INTO "other_transformation" VALUES('EPSG','1403','Tokyo + JSLD to WGS 84 (74)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2493',1.0,'EPSG','8601','Latitude offset',11.61,'EPSG','9104','EPSG','8602','Longitude offset',-10.12,'EPSG','9104','EPSG','8604','Geoid undulation',35.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344135',1);
INSERT INTO "other_transformation" VALUES('EPSG','1404','Tokyo + JSLD to WGS 84 (75)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2494',1.0,'EPSG','8601','Latitude offset',11.66,'EPSG','9104','EPSG','8602','Longitude offset',-10.47,'EPSG','9104','EPSG','8604','Geoid undulation',37.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344136',1);
INSERT INTO "other_transformation" VALUES('EPSG','1405','Tokyo + JSLD to WGS 84 (76)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2495',1.0,'EPSG','8601','Latitude offset',11.78,'EPSG','9104','EPSG','8602','Longitude offset',-10.79,'EPSG','9104','EPSG','8604','Geoid undulation',39.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344137',1);
INSERT INTO "other_transformation" VALUES('EPSG','1406','Tokyo + JSLD to WGS 84 (77)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2496',1.0,'EPSG','8601','Latitude offset',11.85,'EPSG','9104','EPSG','8602','Longitude offset',-11.13,'EPSG','9104','EPSG','8604','Geoid undulation',39.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344138',1);
INSERT INTO "other_transformation" VALUES('EPSG','1407','Tokyo + JSLD to WGS 84 (78)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2497',1.0,'EPSG','8601','Latitude offset',11.9,'EPSG','9104','EPSG','8602','Longitude offset',-11.47,'EPSG','9104','EPSG','8604','Geoid undulation',36.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344139',1);
INSERT INTO "other_transformation" VALUES('EPSG','1408','Tokyo + JSLD to WGS 84 (79)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2498',1.0,'EPSG','8601','Latitude offset',11.91,'EPSG','9104','EPSG','8602','Longitude offset',-11.69,'EPSG','9104','EPSG','8604','Geoid undulation',33.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344140',1);
INSERT INTO "other_transformation" VALUES('EPSG','1409','Tokyo + JSLD to WGS 84 (80)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2499',1.0,'EPSG','8601','Latitude offset',11.65,'EPSG','9104','EPSG','8602','Longitude offset',-8.59,'EPSG','9104','EPSG','8604','Geoid undulation',29.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340130',1);
INSERT INTO "other_transformation" VALUES('EPSG','1410','Tokyo + JSLD to WGS 84 (81)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2500',1.0,'EPSG','8601','Latitude offset',11.68,'EPSG','9104','EPSG','8602','Longitude offset',-8.8,'EPSG','9104','EPSG','8604','Geoid undulation',30.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340131',1);
INSERT INTO "other_transformation" VALUES('EPSG','1411','Tokyo + JSLD to WGS 84 (82)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2501',1.0,'EPSG','8601','Latitude offset',11.73,'EPSG','9104','EPSG','8602','Longitude offset',-9.04,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340132',1);
INSERT INTO "other_transformation" VALUES('EPSG','1412','Tokyo + JSLD to WGS 84 (83)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2502',1.0,'EPSG','8601','Latitude offset',11.72,'EPSG','9104','EPSG','8602','Longitude offset',-9.48,'EPSG','9104','EPSG','8604','Geoid undulation',35.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340133',1);
INSERT INTO "other_transformation" VALUES('EPSG','1413','Tokyo + JSLD to WGS 84 (84)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2503',1.0,'EPSG','8601','Latitude offset',11.81,'EPSG','9104','EPSG','8602','Longitude offset',9.74,'EPSG','9104','EPSG','8604','Geoid undulation',35.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340134',1);
INSERT INTO "other_transformation" VALUES('EPSG','1414','Tokyo + JSLD to WGS 84 (85)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2504',1.0,'EPSG','8601','Latitude offset',11.88,'EPSG','9104','EPSG','8602','Longitude offset',-10.1,'EPSG','9104','EPSG','8604','Geoid undulation',37.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340135',1);
INSERT INTO "other_transformation" VALUES('EPSG','1415','Tokyo + JSLD to WGS 84 (86)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2505',1.0,'EPSG','8601','Latitude offset',11.91,'EPSG','9104','EPSG','8602','Longitude offset',-10.35,'EPSG','9104','EPSG','8604','Geoid undulation',37.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340136',1);
INSERT INTO "other_transformation" VALUES('EPSG','1416','Tokyo + JSLD to WGS 84 (87)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2506',1.0,'EPSG','8601','Latitude offset',11.9,'EPSG','9104','EPSG','8602','Longitude offset',-10.7,'EPSG','9104','EPSG','8604','Geoid undulation',39.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340137',1);
INSERT INTO "other_transformation" VALUES('EPSG','1417','Tokyo + JSLD to WGS 84 (88)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2507',1.0,'EPSG','8601','Latitude offset',12.02,'EPSG','9104','EPSG','8602','Longitude offset',-11.09,'EPSG','9104','EPSG','8604','Geoid undulation',38.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340138',1);
INSERT INTO "other_transformation" VALUES('EPSG','1418','Tokyo + JSLD to WGS 84 (89)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2508',1.0,'EPSG','8601','Latitude offset',11.87,'EPSG','9104','EPSG','8602','Longitude offset',-8.23,'EPSG','9104','EPSG','8604','Geoid undulation',29.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332129',1);
INSERT INTO "other_transformation" VALUES('EPSG','1419','Tokyo + JSLD to WGS 84 (90)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2509',1.0,'EPSG','8601','Latitude offset',11.84,'EPSG','9104','EPSG','8602','Longitude offset',-8.44,'EPSG','9104','EPSG','8604','Geoid undulation',30.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332130',1);
INSERT INTO "other_transformation" VALUES('EPSG','1420','Tokyo + JSLD to WGS 84 (91)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2510',1.0,'EPSG','8601','Latitude offset',11.94,'EPSG','9104','EPSG','8602','Longitude offset',-8.71,'EPSG','9104','EPSG','8604','Geoid undulation',30.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332131',1);
INSERT INTO "other_transformation" VALUES('EPSG','1421','Tokyo + JSLD to WGS 84 (92)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2511',1.0,'EPSG','8601','Latitude offset',11.99,'EPSG','9104','EPSG','8602','Longitude offset',-9.02,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332132',1);
INSERT INTO "other_transformation" VALUES('EPSG','1422','Tokyo + JSLD to WGS 84 (93)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2512',1.0,'EPSG','8601','Latitude offset',12.05,'EPSG','9104','EPSG','8602','Longitude offset',-9.36,'EPSG','9104','EPSG','8604','Geoid undulation',35.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332133',1);
INSERT INTO "other_transformation" VALUES('EPSG','1423','Tokyo + JSLD to WGS 84 (94)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2513',1.0,'EPSG','8601','Latitude offset',12.1,'EPSG','9104','EPSG','8602','Longitude offset',-9.64,'EPSG','9104','EPSG','8604','Geoid undulation',35.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332134',1);
INSERT INTO "other_transformation" VALUES('EPSG','1424','Tokyo + JSLD to WGS 84 (95)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2514',1.0,'EPSG','8601','Latitude offset',12.1,'EPSG','9104','EPSG','8602','Longitude offset',-10.08,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332135',1);
INSERT INTO "other_transformation" VALUES('EPSG','1425','Tokyo + JSLD to WGS 84 (96)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2515',1.0,'EPSG','8601','Latitude offset',12.07,'EPSG','9104','EPSG','8602','Longitude offset',-10.25,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332136',1);
INSERT INTO "other_transformation" VALUES('EPSG','1426','Tokyo + JSLD to WGS 84 (97)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2516',1.0,'EPSG','8601','Latitude offset',12.0,'EPSG','9104','EPSG','8602','Longitude offset',-8.15,'EPSG','9104','EPSG','8604','Geoid undulation',32.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324129',1);
INSERT INTO "other_transformation" VALUES('EPSG','1427','Tokyo + JSLD to WGS 84 (98)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2517',1.0,'EPSG','8601','Latitude offset',12.06,'EPSG','9104','EPSG','8602','Longitude offset',-8.38,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324130',1);
INSERT INTO "other_transformation" VALUES('EPSG','1428','Tokyo + JSLD to WGS 84 (99)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2518',1.0,'EPSG','8601','Latitude offset',12.17,'EPSG','9104','EPSG','8602','Longitude offset',-8.69,'EPSG','9104','EPSG','8604','Geoid undulation',30.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324131',1);
INSERT INTO "other_transformation" VALUES('EPSG','1429','Tokyo + JSLD to WGS 84 (100)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2519',1.0,'EPSG','8601','Latitude offset',12.23,'EPSG','9104','EPSG','8602','Longitude offset',-8.99,'EPSG','9104','EPSG','8604','Geoid undulation',31.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324132',1);
INSERT INTO "other_transformation" VALUES('EPSG','1430','Tokyo + JSLD to WGS 84 (101)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2520',1.0,'EPSG','8601','Latitude offset',12.21,'EPSG','9104','EPSG','8602','Longitude offset',-9.21,'EPSG','9104','EPSG','8604','Geoid undulation',34.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324133',1);
INSERT INTO "other_transformation" VALUES('EPSG','1431','Tokyo + JSLD to WGS 84 (102)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2521',1.0,'EPSG','8601','Latitude offset',12.28,'EPSG','9104','EPSG','8602','Longitude offset',-9.6,'EPSG','9104','EPSG','8604','Geoid undulation',33.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324134',1);
INSERT INTO "other_transformation" VALUES('EPSG','1432','Tokyo + JSLD to WGS 84 (103)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2522',1.0,'EPSG','8601','Latitude offset',12.28,'EPSG','9104','EPSG','8602','Longitude offset',-8.25,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 320130',1);
INSERT INTO "other_transformation" VALUES('EPSG','1433','Tokyo + JSLD to WGS 84 (104)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2523',1.0,'EPSG','8601','Latitude offset',12.37,'EPSG','9104','EPSG','8602','Longitude offset',-8.55,'EPSG','9104','EPSG','8604','Geoid undulation',29.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 320131',1);
INSERT INTO "other_transformation" VALUES('EPSG','1434','Tokyo + JSLD to WGS 84 (105)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2524',1.0,'EPSG','8601','Latitude offset',12.53,'EPSG','9104','EPSG','8602','Longitude offset',-8.21,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 320132',1);
INSERT INTO "other_transformation" VALUES('EPSG','1435','Tokyo + JSLD to WGS 84 (106)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2525',1.0,'EPSG','8601','Latitude offset',12.57,'EPSG','9104','EPSG','8602','Longitude offset',-8.4,'EPSG','9104','EPSG','8604','Geoid undulation',28.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 312130',1);
INSERT INTO "other_transformation" VALUES('EPSG','1436','Tokyo + JSLD to WGS 84 (107)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2526',1.0,'EPSG','8601','Latitude offset',12.71,'EPSG','9104','EPSG','8602','Longitude offset',-8.17,'EPSG','9104','EPSG','8604','Geoid undulation',29.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 312131',1);
INSERT INTO "other_transformation" VALUES('EPSG','1447','Anguilla 1957 to WGS 84 (1)',NULL,NULL,'EPSG','9619','Geographic2D offsets','EPSG','4600','EPSG','4326','EPSG','3214',10.0,'EPSG','8601','Latitude offset',-18.0,'EPSG','9104','EPSG','8602','Longitude offset',4.4,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'DOS-Aia',0);
INSERT INTO "other_transformation" VALUES('EPSG','1466','NGO 1948 (Oslo) to NGO1948 (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4817','EPSG','4273','EPSG','1352',NULL,'EPSG','8602','Longitude offset',10.43225,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'NGO-Nor',1);
INSERT INTO "other_transformation" VALUES('EPSG','1467','NTF (Paris) to NTF (Greenwich) (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4807','EPSG','4275','EPSG','1096',NULL,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Fra',1);
INSERT INTO "other_transformation" VALUES('EPSG','1468','NTF (Paris) to NTF (Greenwich) (2)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4807','EPSG','4275','EPSG','1096',NULL,'EPSG','8602','Longitude offset',2.201395,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'RGS',1);
INSERT INTO "other_transformation" VALUES('EPSG','1519','Bern 1898 (Bern) to CH1903 (Greenwich)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4801','EPSG','4149','EPSG','1286',NULL,'EPSG','8602','Longitude offset',7.26225,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'BfL-CH',1);
INSERT INTO "other_transformation" VALUES('EPSG','1755','Bogota 1975 (Bogota) to Bogota 1975 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4802','EPSG','4218','EPSG','3229',0.0,'EPSG','8602','Longitude offset',-74.04513,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IGAC-Col',0);
INSERT INTO "other_transformation" VALUES('EPSG','1756','Lisbon (Lisbon) to Lisbon (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4803','EPSG','4207','EPSG','1294',0.0,'EPSG','8602','Longitude offset',-9.0754862,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IGC-Prt',0);
INSERT INTO "other_transformation" VALUES('EPSG','1757','MGI (Ferro) to MGI (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4805','EPSG','4312','EPSG','1321',0.0,'EPSG','8602','Longitude offset',-17.4,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'BEV-Aut balk',1);
INSERT INTO "other_transformation" VALUES('EPSG','1758','Padang (Jakarta) to Padang (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4808','EPSG','4280','EPSG','1355',0.0,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Idn Sumatra',0);
INSERT INTO "other_transformation" VALUES('EPSG','1759','Batavia (Jakarta) to Batavia (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4813','EPSG','4211','EPSG','1285',0.0,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Idn Java',0);
INSERT INTO "other_transformation" VALUES('EPSG','1760','RT38 (Stockholm) to RT38 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4814','EPSG','4308','EPSG','3313',0.0,'EPSG','8602','Longitude offset',18.03298,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'NLS-Swe',0);
INSERT INTO "other_transformation" VALUES('EPSG','1761','Greek (Athens) to Greek (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4815','EPSG','4120','EPSG','3254',0.0,'EPSG','8602','Longitude offset',23.4258815,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'NTU-Grc',0);
INSERT INTO "other_transformation" VALUES('EPSG','1762','NGO 1948 (Oslo) to NGO1948 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4817','EPSG','4273','EPSG','1352',0.0,'EPSG','8602','Longitude offset',10.43225,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'NGO-Nor',0);
INSERT INTO "other_transformation" VALUES('EPSG','1763','NTF (Paris) to NTF (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4807','EPSG','4275','EPSG','3694',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Fra',0);
INSERT INTO "other_transformation" VALUES('EPSG','1764','NTF (Paris) to NTF (2)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4807','EPSG','4275','EPSG','3694',0.0,'EPSG','8602','Longitude offset',2.201395,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'RGS',0);
INSERT INTO "other_transformation" VALUES('EPSG','1765','Bern 1898 (Bern) to CH1903 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4801','EPSG','4149','EPSG','1286',0.0,'EPSG','8602','Longitude offset',7.26225,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'BfL-CH',0);
INSERT INTO "other_transformation" VALUES('EPSG','1827','Tokyo + JSLD to WGS 84 (6)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4326','EPSG','2425',1.0,'EPSG','8601','Latitude offset',7.92,'EPSG','9104','EPSG','8602','Longitude offset',-13.88,'EPSG','9104','EPSG','8604','Geoid undulation',26.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 452141',1);
INSERT INTO "other_transformation" VALUES('EPSG','1881','Carthage (Paris) to Carthage (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4816','EPSG','4223','EPSG','1618',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Fra',0);
INSERT INTO "other_transformation" VALUES('EPSG','1882','Nord Sahara 1959 (Paris) to Nord Sahara 1959 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4819','EPSG','4307','EPSG','1026',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Fra',1);
INSERT INTO "other_transformation" VALUES('EPSG','1883','Segara (Jakarta) to Segara (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4820','EPSG','4613','EPSG','1360',0.0,'EPSG','8602','Longitude offset',106.482779,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Idn Kal E',0);
INSERT INTO "other_transformation" VALUES('EPSG','1884','S-JTSK (Ferro) to S-JTSK (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4818','EPSG','4156','EPSG','1306',0.0,'EPSG','8602','Longitude offset',-17.4,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Cze',0);
INSERT INTO "other_transformation" VALUES('EPSG','1891','Greek to GGRS87 (1)',NULL,NULL,'EPSG','9619','Geographic2D offsets','EPSG','4120','EPSG','4121','EPSG','3254',5.0,'EPSG','8601','Latitude offset',-5.86,'EPSG','9104','EPSG','8602','Longitude offset',0.28,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'HGS-Grc',0);
INSERT INTO "other_transformation" VALUES('EPSG','1991','Lisbon 1890 (Lisbon) to Lisbon 1890 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4904','EPSG','4666','EPSG','1294',0.0,'EPSG','8602','Longitude offset',-9.0754862,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'CGC-Prt',0);
INSERT INTO "other_transformation" VALUES('EPSG','3895','MGI (Ferro) to MGI (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4805','EPSG','4312','EPSG','1037',0.0,'EPSG','8602','Longitude offset',-17.4,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'BEV-Aut',0);
INSERT INTO "other_transformation" VALUES('EPSG','3913','MGI (Ferro) to MGI 1901 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','4805','EPSG','3906','EPSG','2370',1.0,'EPSG','8602','Longitude offset',-17.394602,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Yug',0);
INSERT INTO "other_transformation" VALUES('EPSG','4441','NZVD2009 height to One Tree Point 1964 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5767','EPSG','3762',0.03,'EPSG','8603','Vertical Offset',0.06,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ ONTP',0);
INSERT INTO "other_transformation" VALUES('EPSG','4442','NZVD2009 height to Auckland 1946 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5759','EPSG','3764',0.05,'EPSG','8603','Vertical Offset',0.34,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ AUCK',0);
INSERT INTO "other_transformation" VALUES('EPSG','4443','NZVD2009 height to Moturiki 1953 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5764','EPSG','3768',0.06,'EPSG','8603','Vertical Offset',0.24,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ MOTU',0);
INSERT INTO "other_transformation" VALUES('EPSG','4444','NZVD2009 height to Nelson 1955 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5766','EPSG','3802',0.07,'EPSG','8603','Vertical Offset',0.29,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ NELS',0);
INSERT INTO "other_transformation" VALUES('EPSG','4445','NZVD2009 height to Gisborne 1926 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5762','EPSG','3771',0.02,'EPSG','8603','Vertical Offset',0.34,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ GISB',0);
INSERT INTO "other_transformation" VALUES('EPSG','4446','NZVD2009 height to Napier 1962 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5765','EPSG','3772',0.05,'EPSG','8603','Vertical Offset',0.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ NAPI',0);
INSERT INTO "other_transformation" VALUES('EPSG','4447','NZVD2009 height to Taranaki 1970 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5769','EPSG','3769',0.05,'EPSG','8603','Vertical Offset',0.32,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ TARA',0);
INSERT INTO "other_transformation" VALUES('EPSG','4448','NZVD2009 height to Wellington 1953 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5770','EPSG','3773',0.04,'EPSG','8603','Vertical Offset',0.44,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ WELL',0);
INSERT INTO "other_transformation" VALUES('EPSG','4449','NZVD2009 height to Lyttelton 1937 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5763','EPSG','3804',0.09,'EPSG','8603','Vertical Offset',0.47,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ LYTT',0);
INSERT INTO "other_transformation" VALUES('EPSG','4450','NZVD2009 height to Dunedin 1958 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5761','EPSG','3803',0.07,'EPSG','8603','Vertical Offset',0.49,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ DUNE',0);
INSERT INTO "other_transformation" VALUES('EPSG','4451','NZVD2009 height to Bluff 1955 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5760','EPSG','3801',0.05,'EPSG','8603','Vertical Offset',0.36,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ BLUF',0);
INSERT INTO "other_transformation" VALUES('EPSG','4452','NZVD2009 height to Stewart Island 1977 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','5772','EPSG','3338',0.15,'EPSG','8603','Vertical Offset',0.39,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ STIS',0);
INSERT INTO "other_transformation" VALUES('EPSG','4453','NZVD2009 height to Dunedin-Bluff 1960 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','4440','EPSG','4458','EPSG','3806',0.04,'EPSG','8603','Vertical Offset',0.38,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ DUBL',0);
INSERT INTO "other_transformation" VALUES('EPSG','5133','Tokyo 1892 to Tokyo (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','5132','EPSG','4301','EPSG','1364',0.0,'EPSG','8602','Longitude offset',10.405,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Jpn',0);
INSERT INTO "other_transformation" VALUES('EPSG','5134','Tokyo 1892 to Korean 1985 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','5132','EPSG','4162','EPSG','3266',0.0,'EPSG','8602','Longitude offset',10.405,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Kor',0);
INSERT INTO "other_transformation" VALUES('EPSG','5238','S-JTSK/05 (Ferro) to S-JTSK/05 (1)',NULL,NULL,'EPSG','9601','Longitude rotation','EPSG','5229','EPSG','5228','EPSG','1079',0.0,'EPSG','8602','Longitude offset',-17.4,'EPSG','9110',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Cze',0);
INSERT INTO "other_transformation" VALUES('EPSG','5241','S-JTSK to S-JTSK/05 (1)',NULL,NULL,'EPSG','9619','Geographic2D offsets','EPSG','4156','EPSG','5228','EPSG','1079',0.0,'EPSG','8601','Latitude offset',0.0,'EPSG','9104','EPSG','8602','Longitude offset',0.0,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'CUZK-Cze',0);
INSERT INTO "other_transformation" VALUES('EPSG','5400','Baltic height to Caspian depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5706','EPSG','1291',0.0,'EPSG','8603','Vertical Offset',-28.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Caspian Sea',1);
INSERT INTO "other_transformation" VALUES('EPSG','5401','Belfast to Malin Head',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5732','EPSG','5731','EPSG','1305',0.01,'EPSG','8603','Vertical Offset',-0.037,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OSNI-Gbr NI',1);
INSERT INTO "other_transformation" VALUES('EPSG','5402','Baltic height to AIOC95 depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5734','EPSG','2592',0.0,'EPSG','8603','Vertical Offset',-26.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'AIOC95-Aze',1);
INSERT INTO "other_transformation" VALUES('EPSG','5403','AIOC95 depth to Caspian depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5734','EPSG','5706','EPSG','2592',0.0,'EPSG','8603','Vertical Offset',-1.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'AIOC95-Aze',0);
INSERT INTO "other_transformation" VALUES('EPSG','5404','Baltic to Black Sea (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5735','EPSG','1102',0.0,'EPSG','8603','Vertical Offset',-0.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Black Sea',1);
INSERT INTO "other_transformation" VALUES('EPSG','5405','Hong Kong Principal height to Hong Kong Chart depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5738','EPSG','5739','EPSG','1118',0.0,'EPSG','8603','Vertical Offset',0.146,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'SMO-HK',1);
INSERT INTO "other_transformation" VALUES('EPSG','5406','Belfast to Malin Head (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5732','EPSG','5731','EPSG','1305',0.01,'EPSG','8603','Vertical Offset',0.037,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OSNI-Gbr NI',1);
INSERT INTO "other_transformation" VALUES('EPSG','5407','Poolbeg to Malin Head (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5754','EPSG','5731','EPSG','1305',0.1,'EPSG','8603','Vertical Offset',2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OSI-Ire',1);
INSERT INTO "other_transformation" VALUES('EPSG','5408','Poolbeg to Belfast (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5754','EPSG','5732','EPSG','1305',0.1,'EPSG','8603','Vertical Offset',2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OSNI-Gbr NI',1);
INSERT INTO "other_transformation" VALUES('EPSG','5412','KOC CD to Kuwait PWD (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5790','EPSG','5788','EPSG','1136',0.1,'EPSG','8603','Vertical Offset',0.49,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'KOC-Kwt',1);
INSERT INTO "other_transformation" VALUES('EPSG','5413','KOC CD height to KOC WD depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5790','EPSG','5789','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',4.74,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'KOC-Kwt',1);
INSERT INTO "other_transformation" VALUES('EPSG','5414','KOC WD to Kuwait PWD (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5789','EPSG','5788','EPSG','1136',0.1,'EPSG','8603','Vertical Offset',-4.25,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'KOC-Kwt',1);
INSERT INTO "other_transformation" VALUES('EPSG','5419','NGF IGN69 height to EVRF2000 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5720','EPSG','5730','EPSG','1326',0.1,'EPSG','8603','Vertical Offset',-0.486,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EuG-Fra',0);
INSERT INTO "other_transformation" VALUES('EPSG','5425','NAP height to EVRF2000 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5709','EPSG','5730','EPSG','1275',0.1,'EPSG','8603','Vertical Offset',-0.005,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EuG-Nld',0);
INSERT INTO "other_transformation" VALUES('EPSG','5427','Cascais height to EVRF2000 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5780','EPSG','5730','EPSG','1294',0.1,'EPSG','8603','Vertical Offset',-0.315,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EuG-Prt',0);
INSERT INTO "other_transformation" VALUES('EPSG','5432','N60 height to EVRF2000 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5717','EPSG','5730','EPSG','3333',0.1,'EPSG','8603','Vertical Offset',0.213,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'EuG-Fin',0);
INSERT INTO "other_transformation" VALUES('EPSG','5438','Baltic 1977 height to Caspian height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5611','EPSG','1291',0.0,'EPSG','8603','Vertical Offset',28.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Caspian Sea',0);
INSERT INTO "other_transformation" VALUES('EPSG','5440','Baltic 1977 depth to Caspian depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5612','EPSG','5706','EPSG','1291',0.0,'EPSG','8603','Vertical Offset',-28.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Caspian Sea',0);
INSERT INTO "other_transformation" VALUES('EPSG','5441','Baltic depth to Caspian height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5612','EPSG','5611','EPSG','1291',0.0,'EPSG','8603','Vertical Offset',28.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Caspian Sea',1);
INSERT INTO "other_transformation" VALUES('EPSG','5442','Baltic height to Baltic depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5612','EPSG','1284',0.0,'EPSG','8603','Vertical Offset',0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OGP-FSU',1);
INSERT INTO "other_transformation" VALUES('EPSG','5443','Baltic 1977 height to AIOC95 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5797','EPSG','2592',0.0,'EPSG','8603','Vertical Offset',26.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'AIOC95-Aze',0);
INSERT INTO "other_transformation" VALUES('EPSG','5445','Baltic 1977 depth to AIOC95 depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5612','EPSG','5734','EPSG','2592',0.0,'EPSG','8603','Vertical Offset',-26.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'AIOC95-Aze',0);
INSERT INTO "other_transformation" VALUES('EPSG','5446','Baltic depth to AIOC95 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5612','EPSG','5797','EPSG','2592',0.0,'EPSG','8603','Vertical Offset',26.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'AIOC95-Aze',1);
INSERT INTO "other_transformation" VALUES('EPSG','5447','Baltic 1977 height to Black Sea height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5705','EPSG','5735','EPSG','3251',0.0,'EPSG','8603','Vertical Offset',0.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Black Sea',0);
INSERT INTO "other_transformation" VALUES('EPSG','5448','Poolbeg height to Malin Head height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5754','EPSG','5731','EPSG','1305',0.1,'EPSG','8603','Vertical Offset',-2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OSI-Ire',1);
INSERT INTO "other_transformation" VALUES('EPSG','5449','Poolbeg height to Belfast height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5754','EPSG','5732','EPSG','2530',0.1,'EPSG','8603','Vertical Offset',-2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OSNI-Gbr NI',1);
INSERT INTO "other_transformation" VALUES('EPSG','5450','KOC CD height to Kuwait PWD height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5790','EPSG','5788','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',-0.49,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'KOC-Kwt',0);
INSERT INTO "other_transformation" VALUES('EPSG','5452','Belfast height to Malin Head height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5732','EPSG','5731','EPSG','2530',0.01,'EPSG','8603','Vertical Offset',-0.037,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OSNI-Gbr NI',0);
INSERT INTO "other_transformation" VALUES('EPSG','5453','KOC CD height to KOC WD depth (ft) (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5790','EPSG','5614','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',15.55,'EPSG','9002',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'KOC-Kwt',1);
INSERT INTO "other_transformation" VALUES('EPSG','5454','HKPD height to HKCD depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5738','EPSG','5739','EPSG','1118',0.0,'EPSG','8603','Vertical Offset',-0.146,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'SMO-HK',1);
INSERT INTO "other_transformation" VALUES('EPSG','5455','KOC WD depth to Kuwait PWD height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5789','EPSG','5788','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',4.25,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'KOC-Kwt',1);
INSERT INTO "other_transformation" VALUES('EPSG','6699','JGD2000 (vertical) height to JGD2011 (vertical) height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','6694','EPSG','6695','EPSG','4165',0.01,'EPSG','8603','Vertical Offset',0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Jpn ex E Honshu',0);
INSERT INTO "other_transformation" VALUES('EPSG','7653','EGM96 height to Kumul 34 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5773','EPSG','7651','EPSG','4013',0.0,'EPSG','8603','Vertical Offset',-0.87,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'QC-Png Kumul34',0);
INSERT INTO "other_transformation" VALUES('EPSG','7654','EGM2008 height to Kiunga height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','3855','EPSG','7652','EPSG','4383',0.0,'EPSG','8603','Vertical Offset',-3.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'QC-Png Kiunga',0);
INSERT INTO "other_transformation" VALUES('EPSG','7873','EGM96 height to POM96 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5773','EPSG','7832','EPSG','4425',0.0,'EPSG','8603','Vertical Offset',-1.58,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'QC-Png Gulf-Cen',0);
INSERT INTO "other_transformation" VALUES('EPSG','7874','EGM2008 height to POM08 height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','3855','EPSG','7841','EPSG','4425',0.0,'EPSG','8603','Vertical Offset',-0.93,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'QC-Png Gulf-Cen',0);
INSERT INTO "other_transformation" VALUES('EPSG','7964','Poolbeg height (m) to Malin Head height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','7962','EPSG','5731','EPSG','1305',0.1,'EPSG','8603','Vertical Offset',-2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OSI-Ire',0);
INSERT INTO "other_transformation" VALUES('EPSG','7966','Poolbeg height (m) to Belfast height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','7962','EPSG','5732','EPSG','1305',0.1,'EPSG','8603','Vertical Offset',-2.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'OSI-Ire',0);
INSERT INTO "other_transformation" VALUES('EPSG','7977','HKPD depth to HKCD depth (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','7976','EPSG','5739','EPSG','3335',0.0,'EPSG','8603','Vertical Offset',-0.146,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'SMO-HK',0);
INSERT INTO "other_transformation" VALUES('EPSG','7980','KOC CD height to KOC WD height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5790','EPSG','7979','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',-4.74,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'KOC-Kwt',0);
INSERT INTO "other_transformation" VALUES('EPSG','7981','Kuwait PWD height to KOC WD height (1)',NULL,NULL,'EPSG','9616','Vertical Offset','EPSG','5788','EPSG','7979','EPSG','3267',0.1,'EPSG','8603','Vertical Offset',-4.25,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'KOC-Kwt',0);
INSERT INTO "other_transformation" VALUES('EPSG','10087','Jamaica 1875 / Jamaica (Old Grid) to JAD69 / Jamaica National Grid (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','24100','EPSG','24200','EPSG','3342',1.5,'EPSG','8623','A0',82357.457,'EPSG','9001','EPSG','8624','A1',0.304794369,'EPSG','9203','EPSG','8625','A2',1.5417425e-05,'EPSG','9203','EPSG','8639','B0',28091.324,'EPSG','9001','EPSG','8640','B1',-1.5417425e-05,'EPSG','9203','EPSG','8641','B2',0.304794369,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,'SD-Jam',0);
INSERT INTO "other_transformation" VALUES('EPSG','10088','JAD69 / Jamaica National Grid to Jamaica 1875 / Jamaica (Old Grid) (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','24200','EPSG','24100','EPSG','3342',1.5,'EPSG','8623','A0',-270201.96,'EPSG','9005','EPSG','8624','A1',0.00016595792,'EPSG','9203','EPSG','8625','A2',3.2809005,'EPSG','9203','EPSG','8639','B0',-92178.51,'EPSG','9005','EPSG','8640','B1',3.2809005,'EPSG','9203','EPSG','8641','B2',-0.00016595792,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,'SD-Jam',1);
INSERT INTO "other_transformation" VALUES('EPSG','10095','Mauritania 1999 / UTM zone 28N to WGS 84 / UTM zone 28N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3103','EPSG','32628','EPSG','2971',40.0,'EPSG','8623','A0',NULL,'EPSG',NULL,'EPSG','8624','A1',NULL,'EPSG',NULL,'EPSG','8625','A2',NULL,'EPSG',NULL,'EPSG','8639','B0',NULL,'EPSG',NULL,'EPSG','8640','B1',NULL,'EPSG',NULL,'EPSG','8641','B2',NULL,'EPSG',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'MMI-Mau W',1);
INSERT INTO "other_transformation" VALUES('EPSG','10096','Mauritania 1999 / UTM zone 29N to WGS 84 / UTM zone 29N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3104','EPSG','32629','EPSG','2970',40.0,'EPSG','8623','A0',NULL,'EPSG',NULL,'EPSG','8624','A1',NULL,'EPSG',NULL,'EPSG','8625','A2',NULL,'EPSG',NULL,'EPSG','8639','B0',NULL,'EPSG',NULL,'EPSG','8640','B1',NULL,'EPSG',NULL,'EPSG','8641','B2',NULL,'EPSG',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'MMI-Mau C',1);
INSERT INTO "other_transformation" VALUES('EPSG','10097','Mauritania 1999 / UTM zone 30N to WGS 84 / UTM zone 30N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3105','EPSG','32630','EPSG','2969',40.0,'EPSG','8623','A0',NULL,'EPSG',NULL,'EPSG','8624','A1',NULL,'EPSG',NULL,'EPSG','8625','A2',NULL,'EPSG',NULL,'EPSG','8639','B0',NULL,'EPSG',NULL,'EPSG','8640','B1',NULL,'EPSG',NULL,'EPSG','8641','B2',NULL,'EPSG',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'MMI-Mau E',1);
INSERT INTO "other_transformation" VALUES('EPSG','15596','Tokyo + JSLD height to WGS 84 (7)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2426',1.0,'EPSG','8601','Latitude offset',7.94,'EPSG','9104','EPSG','8602','Longitude offset',-13.97,'EPSG','9104','EPSG','8604','Geoid undulation',26.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 452142',0);
INSERT INTO "other_transformation" VALUES('EPSG','15597','Tokyo + JSLD height to WGS 84 (8)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2427',1.0,'EPSG','8601','Latitude offset',8.1,'EPSG','9104','EPSG','8602','Longitude offset',-13.81,'EPSG','9104','EPSG','8604','Geoid undulation',27.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 444141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15598','Tokyo + JSLD height to WGS 84 (9)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2428',1.0,'EPSG','8601','Latitude offset',8.15,'EPSG','9104','EPSG','8602','Longitude offset',-13.95,'EPSG','9104','EPSG','8604','Geoid undulation',28.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 444142',0);
INSERT INTO "other_transformation" VALUES('EPSG','15599','Tokyo + JSLD height to WGS 84 (10)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2429',1.0,'EPSG','8601','Latitude offset',8.37,'EPSG','9104','EPSG','8602','Longitude offset',-13.65,'EPSG','9104','EPSG','8604','Geoid undulation',29.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 440141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15600','Tokyo + JSLD height to WGS 84 (11)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2430',1.0,'EPSG','8601','Latitude offset',8.44,'EPSG','9104','EPSG','8602','Longitude offset',-13.87,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 440142',0);
INSERT INTO "other_transformation" VALUES('EPSG','15601','Tokyo + JSLD height to WGS 84 (12)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2431',1.0,'EPSG','8601','Latitude offset',8.61,'EPSG','9104','EPSG','8602','Longitude offset',-14.08,'EPSG','9104','EPSG','8604','Geoid undulation',30.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 440143',0);
INSERT INTO "other_transformation" VALUES('EPSG','15602','Tokyo + JSLD height to WGS 84 (13)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2432',1.0,'EPSG','8601','Latitude offset',8.73,'EPSG','9104','EPSG','8602','Longitude offset',-14.3,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 440144',0);
INSERT INTO "other_transformation" VALUES('EPSG','15603','Tokyo + JSLD height to WGS 84 (14)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2433',1.0,'EPSG','8601','Latitude offset',8.63,'EPSG','9104','EPSG','8602','Longitude offset',-13.49,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 432141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15604','Tokyo + JSLD height to WGS 84 (15)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2434',1.0,'EPSG','8601','Latitude offset',8.71,'EPSG','9104','EPSG','8602','Longitude offset',-13.73,'EPSG','9104','EPSG','8604','Geoid undulation',31.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 432142',0);
INSERT INTO "other_transformation" VALUES('EPSG','15605','Tokyo + JSLD height to WGS 84 (16)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2435',1.0,'EPSG','8601','Latitude offset',8.84,'EPSG','9104','EPSG','8602','Longitude offset',-14.03,'EPSG','9104','EPSG','8604','Geoid undulation',31.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 432143',0);
INSERT INTO "other_transformation" VALUES('EPSG','15606','Tokyo + JSLD height to WGS 84 (17)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2436',1.0,'EPSG','8601','Latitude offset',8.98,'EPSG','9104','EPSG','8602','Longitude offset',-14.33,'EPSG','9104','EPSG','8604','Geoid undulation',32.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 432144',0);
INSERT INTO "other_transformation" VALUES('EPSG','15607','Tokyo + JSLD height to WGS 84 (18)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2437',1.0,'EPSG','8601','Latitude offset',9.1,'EPSG','9104','EPSG','8602','Longitude offset',-14.56,'EPSG','9104','EPSG','8604','Geoid undulation',32.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 432145',0);
INSERT INTO "other_transformation" VALUES('EPSG','15608','Tokyo + JSLD height to WGS 84 (19)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2438',1.0,'EPSG','8601','Latitude offset',8.79,'EPSG','9104','EPSG','8602','Longitude offset',-13.0,'EPSG','9104','EPSG','8604','Geoid undulation',33.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15609','Tokyo + JSLD height to WGS 84 (20)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2439',1.0,'EPSG','8601','Latitude offset',8.84,'EPSG','9104','EPSG','8602','Longitude offset',-13.31,'EPSG','9104','EPSG','8604','Geoid undulation',31.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15610','Tokyo + JSLD height to WGS 84 (21)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2440',1.0,'EPSG','8601','Latitude offset',8.98,'EPSG','9104','EPSG','8602','Longitude offset',-13.59,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424142',0);
INSERT INTO "other_transformation" VALUES('EPSG','15611','Tokyo + JSLD height to WGS 84 (22)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2441',1.0,'EPSG','8601','Latitude offset',9.1,'EPSG','9104','EPSG','8602','Longitude offset',-13.91,'EPSG','9104','EPSG','8604','Geoid undulation',29.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424143',0);
INSERT INTO "other_transformation" VALUES('EPSG','15612','Tokyo + JSLD height to WGS 84 (23)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2442',1.0,'EPSG','8601','Latitude offset',9.17,'EPSG','9104','EPSG','8602','Longitude offset',-14.27,'EPSG','9104','EPSG','8604','Geoid undulation',31.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424144',0);
INSERT INTO "other_transformation" VALUES('EPSG','15613','Tokyo + JSLD height to WGS 84 (24)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2443',1.0,'EPSG','8601','Latitude offset',9.23,'EPSG','9104','EPSG','8602','Longitude offset',-14.52,'EPSG','9104','EPSG','8604','Geoid undulation',31.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 424145',0);
INSERT INTO "other_transformation" VALUES('EPSG','15614','Tokyo + JSLD height to WGS 84 (25)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2444',1.0,'EPSG','8601','Latitude offset',8.9,'EPSG','9104','EPSG','8602','Longitude offset',-12.68,'EPSG','9104','EPSG','8604','Geoid undulation',34.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 420139',0);
INSERT INTO "other_transformation" VALUES('EPSG','15615','Tokyo + JSLD height to WGS 84 (26)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2445',1.0,'EPSG','8601','Latitude offset',8.99,'EPSG','9104','EPSG','8602','Longitude offset',-12.8,'EPSG','9104','EPSG','8604','Geoid undulation',34.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 420140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15616','Tokyo + JSLD height to WGS 84 (27)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2446',1.0,'EPSG','8601','Latitude offset',9.0,'EPSG','9104','EPSG','8602','Longitude offset',-13.07,'EPSG','9104','EPSG','8604','Geoid undulation',31.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 420141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15617','Tokyo + JSLD height to WGS 84 (28)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2447',1.0,'EPSG','8601','Latitude offset',9.21,'EPSG','9104','EPSG','8602','Longitude offset',-13.51,'EPSG','9104','EPSG','8604','Geoid undulation',27.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 420142',0);
INSERT INTO "other_transformation" VALUES('EPSG','15618','Tokyo + JSLD height to WGS 84 (29)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2448',1.0,'EPSG','8601','Latitude offset',9.33,'EPSG','9104','EPSG','8602','Longitude offset',-13.66,'EPSG','9104','EPSG','8604','Geoid undulation',23.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 420143',0);
INSERT INTO "other_transformation" VALUES('EPSG','15619','Tokyo + JSLD height to WGS 84 (30)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2449',1.0,'EPSG','8601','Latitude offset',9.25,'EPSG','9104','EPSG','8602','Longitude offset',-12.72,'EPSG','9104','EPSG','8604','Geoid undulation',34.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 412140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15620','Tokyo + JSLD height to WGS 84 (31)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2450',1.0,'EPSG','8601','Latitude offset',9.39,'EPSG','9104','EPSG','8602','Longitude offset',-12.91,'EPSG','9104','EPSG','8604','Geoid undulation',31.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 412141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15621','Tokyo + JSLD height to WGS 84 (32)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2451',1.0,'EPSG','8601','Latitude offset',9.55,'EPSG','9104','EPSG','8602','Longitude offset',-12.63,'EPSG','9104','EPSG','8604','Geoid undulation',35.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 404140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15622','Tokyo + JSLD height to WGS 84 (33)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2452',1.0,'EPSG','8601','Latitude offset',9.62,'EPSG','9104','EPSG','8602','Longitude offset',-12.82,'EPSG','9104','EPSG','8604','Geoid undulation',34.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 404141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15623','Tokyo + JSLD height to WGS 84 (34)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2453',1.0,'EPSG','8601','Latitude offset',9.81,'EPSG','9104','EPSG','8602','Longitude offset',-12.29,'EPSG','9104','EPSG','8604','Geoid undulation',36.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 400139',0);
INSERT INTO "other_transformation" VALUES('EPSG','15624','Tokyo + JSLD height to WGS 84 (35)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2454',1.0,'EPSG','8601','Latitude offset',9.81,'EPSG','9104','EPSG','8602','Longitude offset',-12.45,'EPSG','9104','EPSG','8604','Geoid undulation',37.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 400140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15625','Tokyo + JSLD height to WGS 84 (36)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2455',1.0,'EPSG','8601','Latitude offset',9.92,'EPSG','9104','EPSG','8602','Longitude offset',-12.79,'EPSG','9104','EPSG','8604','Geoid undulation',38.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 400141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15626','Tokyo + JSLD height to WGS 84 (37)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2456',1.0,'EPSG','8601','Latitude offset',9.91,'EPSG','9104','EPSG','8602','Longitude offset',-12.21,'EPSG','9104','EPSG','8604','Geoid undulation',36.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 392139',0);
INSERT INTO "other_transformation" VALUES('EPSG','15627','Tokyo + JSLD height to WGS 84 (38)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2457',1.0,'EPSG','8601','Latitude offset',10.08,'EPSG','9104','EPSG','8602','Longitude offset',-12.35,'EPSG','9104','EPSG','8604','Geoid undulation',39.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 392140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15628','Tokyo + JSLD height to WGS 84 (39)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2458',1.0,'EPSG','8601','Latitude offset',10.19,'EPSG','9104','EPSG','8602','Longitude offset',-12.74,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 392141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15629','Tokyo + JSLD height to WGS 84 (40)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2459',1.0,'EPSG','8601','Latitude offset',10.29,'EPSG','9104','EPSG','8602','Longitude offset',-12.13,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 384139',0);
INSERT INTO "other_transformation" VALUES('EPSG','15630','Tokyo + JSLD height to WGS 84 (41)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2460',1.0,'EPSG','8601','Latitude offset',10.33,'EPSG','9104','EPSG','8602','Longitude offset',-12.27,'EPSG','9104','EPSG','8604','Geoid undulation',40.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 384140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15631','Tokyo + JSLD height to WGS 84 (42)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2461',1.0,'EPSG','8601','Latitude offset',10.45,'EPSG','9104','EPSG','8602','Longitude offset',-12.61,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 384141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15632','Tokyo + JSLD height to WGS 84 (43)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2462',1.0,'EPSG','8601','Latitude offset',10.54,'EPSG','9104','EPSG','8602','Longitude offset',-11.96,'EPSG','9104','EPSG','8604','Geoid undulation',39.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 380139',0);
INSERT INTO "other_transformation" VALUES('EPSG','15633','Tokyo + JSLD height to WGS 84 (44)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2463',1.0,'EPSG','8601','Latitude offset',10.65,'EPSG','9104','EPSG','8602','Longitude offset',-12.27,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 380140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15634','Tokyo + JSLD height to WGS 84 (45)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2464',1.0,'EPSG','8601','Latitude offset',10.67,'EPSG','9104','EPSG','8602','Longitude offset',-12.5,'EPSG','9104','EPSG','8604','Geoid undulation',41.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 380141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15635','Tokyo + JSLD height to WGS 84 (46)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2465',1.0,'EPSG','8601','Latitude offset',10.67,'EPSG','9104','EPSG','8602','Longitude offset',-10.86,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372136',0);
INSERT INTO "other_transformation" VALUES('EPSG','15636','Tokyo + JSLD height to WGS 84 (47)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2466',1.0,'EPSG','8601','Latitude offset',10.68,'EPSG','9104','EPSG','8602','Longitude offset',-10.97,'EPSG','9104','EPSG','8604','Geoid undulation',36.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372137',0);
INSERT INTO "other_transformation" VALUES('EPSG','15637','Tokyo + JSLD height to WGS 84 (48)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2467',1.0,'EPSG','8601','Latitude offset',10.8,'EPSG','9104','EPSG','8602','Longitude offset',-11.53,'EPSG','9104','EPSG','8604','Geoid undulation',39.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372138',0);
INSERT INTO "other_transformation" VALUES('EPSG','15638','Tokyo + JSLD height to WGS 84 (49)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2468',1.0,'EPSG','8601','Latitude offset',10.8,'EPSG','9104','EPSG','8602','Longitude offset',-11.73,'EPSG','9104','EPSG','8604','Geoid undulation',40.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372139',0);
INSERT INTO "other_transformation" VALUES('EPSG','15639','Tokyo + JSLD height to WGS 84 (50)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2469',1.0,'EPSG','8601','Latitude offset',10.92,'EPSG','9104','EPSG','8602','Longitude offset',-12.16,'EPSG','9104','EPSG','8604','Geoid undulation',42.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15640','Tokyo + JSLD height to WGS 84 (51)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2470',1.0,'EPSG','8601','Latitude offset',11.0,'EPSG','9104','EPSG','8602','Longitude offset',-12.25,'EPSG','9104','EPSG','8604','Geoid undulation',41.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 372141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15641','Tokyo + JSLD height to WGS 84 (52)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2471',1.0,'EPSG','8601','Latitude offset',10.83,'EPSG','9104','EPSG','8602','Longitude offset',-10.77,'EPSG','9104','EPSG','8604','Geoid undulation',36.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 364136',0);
INSERT INTO "other_transformation" VALUES('EPSG','15642','Tokyo + JSLD height to WGS 84 (53)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2472',1.0,'EPSG','8601','Latitude offset',10.95,'EPSG','9104','EPSG','8602','Longitude offset',-11.0,'EPSG','9104','EPSG','8604','Geoid undulation',38.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 364137',0);
INSERT INTO "other_transformation" VALUES('EPSG','15643','Tokyo + JSLD height to WGS 84 (54)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2473',1.0,'EPSG','8601','Latitude offset',10.97,'EPSG','9104','EPSG','8602','Longitude offset',-11.34,'EPSG','9104','EPSG','8604','Geoid undulation',40.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 364138',0);
INSERT INTO "other_transformation" VALUES('EPSG','15644','Tokyo + JSLD height to WGS 84 (55)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2474',1.0,'EPSG','8601','Latitude offset',11.04,'EPSG','9104','EPSG','8602','Longitude offset',-11.69,'EPSG','9104','EPSG','8604','Geoid undulation',43.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 364139',0);
INSERT INTO "other_transformation" VALUES('EPSG','15645','Tokyo + JSLD height to WGS 84 (56)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2475',1.0,'EPSG','8601','Latitude offset',11.17,'EPSG','9104','EPSG','8602','Longitude offset',-12.05,'EPSG','9104','EPSG','8604','Geoid undulation',42.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 364140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15646','Tokyo + JSLD height to WGS 84 (57)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2476',1.0,'EPSG','8601','Latitude offset',11.11,'EPSG','9104','EPSG','8602','Longitude offset',-10.59,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 360136',0);
INSERT INTO "other_transformation" VALUES('EPSG','15647','Tokyo + JSLD height to WGS 84 (58)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2477',1.0,'EPSG','8601','Latitude offset',11.16,'EPSG','9104','EPSG','8602','Longitude offset',-10.97,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 360137',0);
INSERT INTO "other_transformation" VALUES('EPSG','15648','Tokyo + JSLD height to WGS 84 (59)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2478',1.0,'EPSG','8601','Latitude offset',11.29,'EPSG','9104','EPSG','8602','Longitude offset',-11.23,'EPSG','9104','EPSG','8604','Geoid undulation',42.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 360138',0);
INSERT INTO "other_transformation" VALUES('EPSG','15649','Tokyo + JSLD height to WGS 84 (60)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2479',1.0,'EPSG','8601','Latitude offset',11.36,'EPSG','9104','EPSG','8602','Longitude offset',-11.59,'EPSG','9104','EPSG','8604','Geoid undulation',42.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 360139',0);
INSERT INTO "other_transformation" VALUES('EPSG','15650','Tokyo + JSLD height to WGS 84 (61)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2480',1.0,'EPSG','8601','Latitude offset',11.44,'EPSG','9104','EPSG','8602','Longitude offset',-11.88,'EPSG','9104','EPSG','8604','Geoid undulation',40.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 360140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15651','Tokyo + JSLD height to WGS 84 (62)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2481',1.0,'EPSG','8601','Latitude offset',11.27,'EPSG','9104','EPSG','8602','Longitude offset',-9.31,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352132',0);
INSERT INTO "other_transformation" VALUES('EPSG','15652','Tokyo + JSLD height to WGS 84 (63)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2482',1.0,'EPSG','8601','Latitude offset',11.33,'EPSG','9104','EPSG','8602','Longitude offset',-9.52,'EPSG','9104','EPSG','8604','Geoid undulation',33.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352133',0);
INSERT INTO "other_transformation" VALUES('EPSG','15653','Tokyo + JSLD height to WGS 84 (64)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2483',1.0,'EPSG','8601','Latitude offset',11.38,'EPSG','9104','EPSG','8602','Longitude offset',-9.86,'EPSG','9104','EPSG','8604','Geoid undulation',34.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352134',0);
INSERT INTO "other_transformation" VALUES('EPSG','15654','Tokyo + JSLD height to WGS 84 (65)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2484',1.0,'EPSG','8601','Latitude offset',11.41,'EPSG','9104','EPSG','8602','Longitude offset',-10.14,'EPSG','9104','EPSG','8604','Geoid undulation',35.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352135',0);
INSERT INTO "other_transformation" VALUES('EPSG','15655','Tokyo + JSLD height to WGS 84 (66)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2485',1.0,'EPSG','8601','Latitude offset',11.39,'EPSG','9104','EPSG','8602','Longitude offset',-10.52,'EPSG','9104','EPSG','8604','Geoid undulation',37.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352136',0);
INSERT INTO "other_transformation" VALUES('EPSG','15656','Tokyo + JSLD height to WGS 84 (67)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2486',1.0,'EPSG','8601','Latitude offset',11.49,'EPSG','9104','EPSG','8602','Longitude offset',-10.83,'EPSG','9104','EPSG','8604','Geoid undulation',39.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352137',0);
INSERT INTO "other_transformation" VALUES('EPSG','15657','Tokyo + JSLD height to WGS 84 (68)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2487',1.0,'EPSG','8601','Latitude offset',11.58,'EPSG','9104','EPSG','8602','Longitude offset',-11.21,'EPSG','9104','EPSG','8604','Geoid undulation',41.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352138',0);
INSERT INTO "other_transformation" VALUES('EPSG','15658','Tokyo + JSLD height to WGS 84 (69)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2488',1.0,'EPSG','8601','Latitude offset',11.65,'EPSG','9104','EPSG','8602','Longitude offset',-11.53,'EPSG','9104','EPSG','8604','Geoid undulation',38.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352139',0);
INSERT INTO "other_transformation" VALUES('EPSG','15659','Tokyo + JSLD height to WGS 84 (70)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2489',1.0,'EPSG','8601','Latitude offset',11.72,'EPSG','9104','EPSG','8602','Longitude offset',-11.8,'EPSG','9104','EPSG','8604','Geoid undulation',34.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 352140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15660','Tokyo + JSLD height to WGS 84 (71)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2490',1.0,'EPSG','8601','Latitude offset',11.44,'EPSG','9104','EPSG','8602','Longitude offset',-9.21,'EPSG','9104','EPSG','8604','Geoid undulation',32.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344132',0);
INSERT INTO "other_transformation" VALUES('EPSG','15661','Tokyo + JSLD height to WGS 84 (72)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2491',1.0,'EPSG','8601','Latitude offset',11.47,'EPSG','9104','EPSG','8602','Longitude offset',-9.52,'EPSG','9104','EPSG','8604','Geoid undulation',35.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344133',0);
INSERT INTO "other_transformation" VALUES('EPSG','15662','Tokyo + JSLD height to WGS 84 (73)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2492',1.0,'EPSG','8601','Latitude offset',11.55,'EPSG','9104','EPSG','8602','Longitude offset',-9.8,'EPSG','9104','EPSG','8604','Geoid undulation',35.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344134',0);
INSERT INTO "other_transformation" VALUES('EPSG','15663','Tokyo + JSLD height to WGS 84 (74)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2493',1.0,'EPSG','8601','Latitude offset',11.61,'EPSG','9104','EPSG','8602','Longitude offset',-10.12,'EPSG','9104','EPSG','8604','Geoid undulation',35.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344135',0);
INSERT INTO "other_transformation" VALUES('EPSG','15664','Tokyo + JSLD height to WGS 84 (75)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2494',1.0,'EPSG','8601','Latitude offset',11.66,'EPSG','9104','EPSG','8602','Longitude offset',-10.47,'EPSG','9104','EPSG','8604','Geoid undulation',37.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344136',0);
INSERT INTO "other_transformation" VALUES('EPSG','15665','Tokyo + JSLD height to WGS 84 (76)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2495',1.0,'EPSG','8601','Latitude offset',11.78,'EPSG','9104','EPSG','8602','Longitude offset',-10.79,'EPSG','9104','EPSG','8604','Geoid undulation',39.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344137',0);
INSERT INTO "other_transformation" VALUES('EPSG','15666','Tokyo + JSLD height to WGS 84 (77)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2496',1.0,'EPSG','8601','Latitude offset',11.85,'EPSG','9104','EPSG','8602','Longitude offset',-11.13,'EPSG','9104','EPSG','8604','Geoid undulation',39.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344138',0);
INSERT INTO "other_transformation" VALUES('EPSG','15667','Tokyo + JSLD height to WGS 84 (78)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2497',1.0,'EPSG','8601','Latitude offset',11.9,'EPSG','9104','EPSG','8602','Longitude offset',-11.47,'EPSG','9104','EPSG','8604','Geoid undulation',36.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344139',0);
INSERT INTO "other_transformation" VALUES('EPSG','15668','Tokyo + JSLD height to WGS 84 (79)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2498',1.0,'EPSG','8601','Latitude offset',11.91,'EPSG','9104','EPSG','8602','Longitude offset',-11.69,'EPSG','9104','EPSG','8604','Geoid undulation',33.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 344140',0);
INSERT INTO "other_transformation" VALUES('EPSG','15669','Tokyo + JSLD height to WGS 84 (80)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2499',1.0,'EPSG','8601','Latitude offset',11.65,'EPSG','9104','EPSG','8602','Longitude offset',-8.59,'EPSG','9104','EPSG','8604','Geoid undulation',29.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340130',0);
INSERT INTO "other_transformation" VALUES('EPSG','15670','Tokyo + JSLD height to WGS 84 (81)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2500',1.0,'EPSG','8601','Latitude offset',11.68,'EPSG','9104','EPSG','8602','Longitude offset',-8.8,'EPSG','9104','EPSG','8604','Geoid undulation',30.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340131',0);
INSERT INTO "other_transformation" VALUES('EPSG','15671','Tokyo + JSLD height to WGS 84 (82)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2501',1.0,'EPSG','8601','Latitude offset',11.73,'EPSG','9104','EPSG','8602','Longitude offset',-9.04,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340132',0);
INSERT INTO "other_transformation" VALUES('EPSG','15672','Tokyo + JSLD height to WGS 84 (83)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2502',1.0,'EPSG','8601','Latitude offset',11.72,'EPSG','9104','EPSG','8602','Longitude offset',-9.48,'EPSG','9104','EPSG','8604','Geoid undulation',35.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340133',0);
INSERT INTO "other_transformation" VALUES('EPSG','15673','Tokyo + JSLD height to WGS 84 (84)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2503',1.0,'EPSG','8601','Latitude offset',11.81,'EPSG','9104','EPSG','8602','Longitude offset',9.74,'EPSG','9104','EPSG','8604','Geoid undulation',35.8,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340134',0);
INSERT INTO "other_transformation" VALUES('EPSG','15674','Tokyo + JSLD height to WGS 84 (85)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2504',1.0,'EPSG','8601','Latitude offset',11.88,'EPSG','9104','EPSG','8602','Longitude offset',-10.1,'EPSG','9104','EPSG','8604','Geoid undulation',37.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340135',0);
INSERT INTO "other_transformation" VALUES('EPSG','15675','Tokyo + JSLD height to WGS 84 (86)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2505',1.0,'EPSG','8601','Latitude offset',11.91,'EPSG','9104','EPSG','8602','Longitude offset',-10.35,'EPSG','9104','EPSG','8604','Geoid undulation',37.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340136',0);
INSERT INTO "other_transformation" VALUES('EPSG','15676','Tokyo + JSLD height to WGS 84 (87)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2506',1.0,'EPSG','8601','Latitude offset',11.9,'EPSG','9104','EPSG','8602','Longitude offset',-10.7,'EPSG','9104','EPSG','8604','Geoid undulation',39.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340137',0);
INSERT INTO "other_transformation" VALUES('EPSG','15677','Tokyo + JSLD height to WGS 84 (88)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2507',1.0,'EPSG','8601','Latitude offset',12.02,'EPSG','9104','EPSG','8602','Longitude offset',-11.09,'EPSG','9104','EPSG','8604','Geoid undulation',38.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 340138',0);
INSERT INTO "other_transformation" VALUES('EPSG','15678','Tokyo + JSLD height to WGS 84 (89)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2508',1.0,'EPSG','8601','Latitude offset',11.87,'EPSG','9104','EPSG','8602','Longitude offset',-8.23,'EPSG','9104','EPSG','8604','Geoid undulation',29.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332129',0);
INSERT INTO "other_transformation" VALUES('EPSG','15679','Tokyo + JSLD height to WGS 84 (90)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2509',1.0,'EPSG','8601','Latitude offset',11.84,'EPSG','9104','EPSG','8602','Longitude offset',-8.44,'EPSG','9104','EPSG','8604','Geoid undulation',30.6,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332130',0);
INSERT INTO "other_transformation" VALUES('EPSG','15680','Tokyo + JSLD height to WGS 84 (91)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2510',1.0,'EPSG','8601','Latitude offset',11.94,'EPSG','9104','EPSG','8602','Longitude offset',-8.71,'EPSG','9104','EPSG','8604','Geoid undulation',30.2,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332131',0);
INSERT INTO "other_transformation" VALUES('EPSG','15681','Tokyo + JSLD height to WGS 84 (92)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2511',1.0,'EPSG','8601','Latitude offset',11.99,'EPSG','9104','EPSG','8602','Longitude offset',-9.02,'EPSG','9104','EPSG','8604','Geoid undulation',30.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332132',0);
INSERT INTO "other_transformation" VALUES('EPSG','15682','Tokyo + JSLD height to WGS 84 (93)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2512',1.0,'EPSG','8601','Latitude offset',12.05,'EPSG','9104','EPSG','8602','Longitude offset',-9.36,'EPSG','9104','EPSG','8604','Geoid undulation',35.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332133',0);
INSERT INTO "other_transformation" VALUES('EPSG','15683','Tokyo + JSLD height to WGS 84 (94)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2513',1.0,'EPSG','8601','Latitude offset',12.1,'EPSG','9104','EPSG','8602','Longitude offset',-9.64,'EPSG','9104','EPSG','8604','Geoid undulation',35.5,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332134',0);
INSERT INTO "other_transformation" VALUES('EPSG','15684','Tokyo + JSLD height to WGS 84 (95)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2514',1.0,'EPSG','8601','Latitude offset',12.1,'EPSG','9104','EPSG','8602','Longitude offset',-10.08,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332135',0);
INSERT INTO "other_transformation" VALUES('EPSG','15685','Tokyo + JSLD height to WGS 84 (96)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2515',1.0,'EPSG','8601','Latitude offset',12.07,'EPSG','9104','EPSG','8602','Longitude offset',-10.25,'EPSG','9104','EPSG','8604','Geoid undulation',37.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 332136',0);
INSERT INTO "other_transformation" VALUES('EPSG','15686','Tokyo + JSLD height to WGS 84 (97)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2516',1.0,'EPSG','8601','Latitude offset',12.0,'EPSG','9104','EPSG','8602','Longitude offset',-8.15,'EPSG','9104','EPSG','8604','Geoid undulation',32.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324129',0);
INSERT INTO "other_transformation" VALUES('EPSG','15687','Tokyo + JSLD height to WGS 84 (98)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2517',1.0,'EPSG','8601','Latitude offset',12.06,'EPSG','9104','EPSG','8602','Longitude offset',-8.38,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324130',0);
INSERT INTO "other_transformation" VALUES('EPSG','15688','Tokyo + JSLD height to WGS 84 (99)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2518',1.0,'EPSG','8601','Latitude offset',12.17,'EPSG','9104','EPSG','8602','Longitude offset',-8.69,'EPSG','9104','EPSG','8604','Geoid undulation',30.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324131',0);
INSERT INTO "other_transformation" VALUES('EPSG','15689','Tokyo + JSLD height to WGS 84 (100)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2519',1.0,'EPSG','8601','Latitude offset',12.23,'EPSG','9104','EPSG','8602','Longitude offset',-8.99,'EPSG','9104','EPSG','8604','Geoid undulation',31.7,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324132',0);
INSERT INTO "other_transformation" VALUES('EPSG','15690','Tokyo + JSLD height to WGS 84 (101)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2520',1.0,'EPSG','8601','Latitude offset',12.21,'EPSG','9104','EPSG','8602','Longitude offset',-9.21,'EPSG','9104','EPSG','8604','Geoid undulation',34.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324133',0);
INSERT INTO "other_transformation" VALUES('EPSG','15691','Tokyo + JSLD height to WGS 84 (102)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2521',1.0,'EPSG','8601','Latitude offset',12.28,'EPSG','9104','EPSG','8602','Longitude offset',-9.6,'EPSG','9104','EPSG','8604','Geoid undulation',33.3,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 324134',0);
INSERT INTO "other_transformation" VALUES('EPSG','15692','Tokyo + JSLD height to WGS 84 (103)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2522',1.0,'EPSG','8601','Latitude offset',12.28,'EPSG','9104','EPSG','8602','Longitude offset',-8.25,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 320130',0);
INSERT INTO "other_transformation" VALUES('EPSG','15693','Tokyo + JSLD height to WGS 84 (104)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2523',1.0,'EPSG','8601','Latitude offset',12.37,'EPSG','9104','EPSG','8602','Longitude offset',-8.55,'EPSG','9104','EPSG','8604','Geoid undulation',29.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 320131',0);
INSERT INTO "other_transformation" VALUES('EPSG','15694','Tokyo + JSLD height to WGS 84 (105)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2524',1.0,'EPSG','8601','Latitude offset',12.53,'EPSG','9104','EPSG','8602','Longitude offset',-8.21,'EPSG','9104','EPSG','8604','Geoid undulation',31.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 320132',0);
INSERT INTO "other_transformation" VALUES('EPSG','15695','Tokyo + JSLD height to WGS 84 (106)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2525',1.0,'EPSG','8601','Latitude offset',12.57,'EPSG','9104','EPSG','8602','Longitude offset',-8.4,'EPSG','9104','EPSG','8604','Geoid undulation',28.4,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 312130',0);
INSERT INTO "other_transformation" VALUES('EPSG','15696','Tokyo + JSLD height to WGS 84 (107)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2526',1.0,'EPSG','8601','Latitude offset',12.71,'EPSG','9104','EPSG','8602','Longitude offset',-8.17,'EPSG','9104','EPSG','8604','Geoid undulation',29.9,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 312131',0);
INSERT INTO "other_transformation" VALUES('EPSG','15697','Tokyo + JSLD height to WGS 84 (6)',NULL,NULL,'EPSG','9618','Geographic2D with Height Offsets','EPSG','7414','EPSG','4979','EPSG','2425',1.0,'EPSG','8601','Latitude offset',7.92,'EPSG','9104','EPSG','8602','Longitude offset',-13.88,'EPSG','9104','EPSG','8604','Geoid undulation',26.1,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'GSI-Jpn 452141',0);
INSERT INTO "other_transformation" VALUES('EPSG','15857','IGN Astro 1960 / UTM zone 28N to Mauritania 1999 / UTM zone 28N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3367','EPSG','3343','EPSG','2971',40.0,'EPSG','8623','A0',-532.876,'EPSG','9001','EPSG','8624','A1',1.00017216658401,'EPSG','9203','EPSG','8625','A2',9.029305555e-05,'EPSG','9203','EPSG','8639','B0',-34.015,'EPSG','9001','EPSG','8640','B1',-9.029305555e-05,'EPSG','9203','EPSG','8641','B2',1.00017216658401,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,'MMI-Mau W',0);
INSERT INTO "other_transformation" VALUES('EPSG','15858','IGN Astro 1960 / UTM zone 29N to Mauritania 1999 / UTM zone 29N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3368','EPSG','3344','EPSG','2970',40.0,'EPSG','8623','A0',-409.264,'EPSG','9001','EPSG','8624','A1',1.00017432259949,'EPSG','9203','EPSG','8625','A2',9.14562824e-05,'EPSG','9203','EPSG','8639','B0',-88.803,'EPSG','9001','EPSG','8640','B1',-9.14562824e-05,'EPSG','9203','EPSG','8641','B2',1.00017432259949,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,'MMI-Mau C',0);
INSERT INTO "other_transformation" VALUES('EPSG','15859','IGN Astro 1960 / UTM zone 30N to Mauritania 1999 / UTM zone 30N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3369','EPSG','3345','EPSG','2969',40.0,'EPSG','8623','A0',-286.351,'EPSG','9001','EPSG','8624','A1',1.0001754456884,'EPSG','9203','EPSG','8625','A2',9.270672363e-05,'EPSG','9203','EPSG','8639','B0',-146.722,'EPSG','9001','EPSG','8640','B1',-9.270672363e-05,'EPSG','9203','EPSG','8641','B2',1.0001754456884,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,'MMI-Mau E',0);
INSERT INTO "other_transformation" VALUES('EPSG','15861','IGN Astro 1960 / UTM zone 28N to WGS 84 / UTM zone 28N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3367','EPSG','32628','EPSG','2971',40.0,'EPSG','8623','A0',-532.876,'EPSG','9001','EPSG','8624','A1',1.00017216658401,'EPSG','9203','EPSG','8625','A2',9.029305555e-05,'EPSG','9203','EPSG','8639','B0',-34.015,'EPSG','9001','EPSG','8640','B1',-9.029305555e-05,'EPSG','9203','EPSG','8641','B2',1.00017216658401,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Mau W',0);
INSERT INTO "other_transformation" VALUES('EPSG','15862','IGN Astro 1960 / UTM zone 29N to WGS 84 / UTM zone 29N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3368','EPSG','32629','EPSG','2970',1.0,'EPSG','8623','A0',-409.264,'EPSG','9001','EPSG','8624','A1',1.00017432259949,'EPSG','9203','EPSG','8625','A2',9.14562824e-05,'EPSG','9203','EPSG','8639','B0',-88.803,'EPSG','9001','EPSG','8640','B1',-9.14562824e-05,'EPSG','9203','EPSG','8641','B2',1.00017432259949,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Mau C',0);
INSERT INTO "other_transformation" VALUES('EPSG','15863','IGN Astro 1960 / UTM zone 30N to WGS 84 / UTM zone 30N (1)',NULL,NULL,'EPSG','9624','Affine parametric transformation','EPSG','3369','EPSG','32630','EPSG','2969',1.0,'EPSG','8623','A0',-286.351,'EPSG','9001','EPSG','8624','A1',1.0001754456884,'EPSG','9203','EPSG','8625','A2',9.270672363e-05,'EPSG','9203','EPSG','8639','B0',-146.722,'EPSG','9001','EPSG','8640','B1',-9.270672363e-05,'EPSG','9203','EPSG','8641','B2',1.0001754456884,'EPSG','9203',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Mau E',0);
+8
View File
@@ -558,6 +558,8 @@ CREATE TABLE helmert_transformation(
pivot_uom_auth_name TEXT,
pivot_uom_code TEXT,
operation_version TEXT, -- normally mandatory in OGC Topic 2 but optional here
deprecated BOOLEAN NOT NULL CHECK (deprecated IN (0, 1)),
CONSTRAINT pk_helmert_transformation PRIMARY KEY (auth_name, code),
@@ -634,6 +636,8 @@ CREATE TABLE grid_transformation(
interpolation_crs_auth_name TEXT,
interpolation_crs_code TEXT,
operation_version TEXT, -- normally mandatory in OGC Topic 2 but optional here
deprecated BOOLEAN NOT NULL CHECK (deprecated IN (0, 1)),
CONSTRAINT pk_grid_transformation PRIMARY KEY (auth_name, code),
@@ -790,6 +794,8 @@ CREATE TABLE other_transformation(
param7_uom_auth_name TEXT,
param7_uom_code TEXT,
operation_version TEXT, -- normally mandatory in OGC Topic 2 but optional here
deprecated BOOLEAN NOT NULL CHECK (deprecated IN (0, 1)),
CONSTRAINT pk_other_transformation PRIMARY KEY (auth_name, code),
@@ -852,6 +858,8 @@ CREATE TABLE concatenated_operation(
step3_auth_name TEXT,
step3_code TEXT,
operation_version TEXT, -- normally mandatory in OGC Topic 2 but optional here
deprecated BOOLEAN NOT NULL CHECK (deprecated IN (0, 1)),
CONSTRAINT pk_concatenated_operation PRIMARY KEY (auth_name, code),
+4
View File
@@ -3567,6 +3567,10 @@ INSERT INTO "projected_crs" VALUES('EPSG','8840','MTRF-2000 / UTM zone 40N',NULL
INSERT INTO "projected_crs" VALUES('EPSG','8857','WGS 84 / Equal Earth Greenwich',NULL,NULL,'EPSG','4400','EPSG','4326','EPSG','8854','EPSG','1262',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','8858','WGS 84 / Equal Earth Americas',NULL,NULL,'EPSG','4400','EPSG','4326','EPSG','8855','EPSG','1262',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','8859','WGS 84 / Equal Earth Asia-Pacific',NULL,NULL,'EPSG','4400','EPSG','4326','EPSG','8856','EPSG','1262',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','8903','RGWF96 / UTM zone 1S',NULL,NULL,'EPSG','4400','EPSG','8900','EPSG','16101','EPSG','1255',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','8908','CR-SIRGAS / CRTM05',NULL,NULL,'EPSG','4400','EPSG','8907','EPSG','5366','EPSG','3232',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','8909','CR-SIRGAS / UTM zone 16N',NULL,NULL,'EPSG','4400','EPSG','8907','EPSG','16016','EPSG','4532',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','8910','CR-SIRGAS / UTM zone 17N',NULL,NULL,'EPSG','4400','EPSG','8907','EPSG','16017','EPSG','4531',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','20004','Pulkovo 1995 / Gauss-Kruger zone 4',NULL,NULL,'EPSG','4530','EPSG','4200','EPSG','16204','EPSG','1763',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','20005','Pulkovo 1995 / Gauss-Kruger zone 5',NULL,NULL,'EPSG','4530','EPSG','4200','EPSG','16205','EPSG','1764',NULL,0);
INSERT INTO "projected_crs" VALUES('EPSG','20006','Pulkovo 1995 / Gauss-Kruger zone 6',NULL,NULL,'EPSG','4530','EPSG','4200','EPSG','16206','EPSG','1765',NULL,0);
+2
View File
@@ -213,3 +213,5 @@ INSERT INTO "vertical_crs" VALUES('EPSG','8690','SVS2010 height',NULL,NULL,'EPSG
INSERT INTO "vertical_crs" VALUES('EPSG','8691','SRB_VRS12 height',NULL,NULL,'EPSG','6499','EPSG','1216','EPSG','3534',0);
INSERT INTO "vertical_crs" VALUES('EPSG','8841','MVGC height',NULL,NULL,'EPSG','6499','EPSG','1219','EPSG','3303',0);
INSERT INTO "vertical_crs" VALUES('EPSG','8897','EPSG example wellbore local vertical CRS (ft)',NULL,NULL,'EPSG','1050','EPSG','1205','EPSG','4393',0);
INSERT INTO "vertical_crs" VALUES('EPSG','8904','TWVD 2001 height',NULL,NULL,'EPSG','6499','EPSG','1224','EPSG','3982',0);
INSERT INTO "vertical_crs" VALUES('EPSG','8911','DACR52 height',NULL,NULL,'EPSG','6499','EPSG','1226','EPSG','3232',0);
+2
View File
@@ -76,6 +76,8 @@ INSERT INTO "vertical_datum" VALUES('EPSG','1213','Helsinki 1943',NULL,NULL,'EPS
INSERT INTO "vertical_datum" VALUES('EPSG','1215','Slovenian Vertical System 2010',NULL,NULL,'EPSG','3307',0);
INSERT INTO "vertical_datum" VALUES('EPSG','1216','Serbian Vertical Reference System 2012',NULL,NULL,'EPSG','3534',0);
INSERT INTO "vertical_datum" VALUES('EPSG','1219','MOMRA Vertical Geodetic Control',NULL,NULL,'EPSG','3303',0);
INSERT INTO "vertical_datum" VALUES('EPSG','1224','Taiwan Vertical Datum 2001',NULL,NULL,'EPSG','3982',0);
INSERT INTO "vertical_datum" VALUES('EPSG','1226','Datum Altimetrico de Costa Rica 1952',NULL,NULL,'EPSG','3232',0);
INSERT INTO "vertical_datum" VALUES('EPSG','5100','Mean Sea Level',NULL,NULL,'EPSG','1262',0);
INSERT INTO "vertical_datum" VALUES('EPSG','5101','Ordnance Datum Newlyn',NULL,NULL,'EPSG','2792',0);
INSERT INTO "vertical_datum" VALUES('EPSG','5102','National Geodetic Vertical Datum 1929',NULL,NULL,'EPSG','1323',0);
+30
View File
@@ -0,0 +1,30 @@
# Cirrus CI configuration
task:
name: FreeBSD
freebsd_instance:
matrix:
image: freebsd-12-0-release-amd64
# image: freebsd-11-2-release-amd64
# image: freebsd-10-4-release-amd64
env:
CIRRUS_CLONE_DEPTH: 1
MAKE_FLAGS: -j 2
cache:
folder: $HOME/.ccache
pkginstall_script:
- pkg install -y autoconf automake libtool pkgconf sqlite3 wget unzip ccache gmake
download_grid_script:
- wget http://download.osgeo.org/proj/proj-datumgrid-1.8.zip
- (cd data && unzip -o ../proj-datumgrid-1.8.zip)
configure_script:
- ./autogen.sh
- CC="ccache cc" CXX="ccache c++" ./configure --disable-static
compile_script:
- gmake $(MAKE_FLAGS)
test_script:
- gmake check $(MAKE_FLAGS)
@@ -1,6 +1,10 @@
# This is the config file for building proj.4 and running its test suite
# with Travis-ci.org
branches:
except:
- /^(cherry-pick-)?backport-\d+-to-/
cache:
directories:
- $HOME/.ccache
@@ -2,6 +2,10 @@ platform:
- x64
- x86
branches:
except:
- /(cherry-pick-)?backport-\d+-to-/
environment:
matrix:
+17
View File
@@ -0,0 +1,17 @@
name: proj
channels:
- conda-forge
dependencies:
- descartes
- doxygen <= 1.8.14
- geojson
- matplotlib
- shapely < 1.8
- pip
- pip:
- breathe < 4.15
- Jinja2 < 3.1
- pybtex
- sphinx < 3
- sphinx-rtd-theme < 1.0
- sphinxcontrib-bibtex
-86
View File
@@ -1,86 +0,0 @@
name: proj
channels:
- defaults
dependencies:
- blas=1.0=mkl
- bzip2=1.0.6=h1de35cc_5
- ca-certificates=2018.03.07=0
- cairo=1.14.12=hc4e6be7_4
- certifi=2018.8.24=py37_1
- click=6.7=py37_0
- click-plugins=1.0.3=py37_1
- cligj=0.4.0=py37_1
- curl=7.61.0=ha441bb4_0
- cycler=0.10.0=py37_0
- descartes=1.1.0=py37_0
- expat=2.2.6=h0a44026_0
- fiona=1.7.12=py37h0dff353_0
- fontconfig=2.13.0=h5d5b041_1
- freetype=2.9.1=hb4e5f40_0
- freexl=1.0.5=h1de35cc_0
- gdal=2.2.4=py37h6440ff4_1
- geos=3.6.2=h5470d99_2
- gettext=0.19.8.1=h15daf44_3
- giflib=5.1.4=h1de35cc_1
- glib=2.56.2=hd9629dc_0
- hdf4=4.2.13=h39711bb_2
- hdf5=1.10.2=hfa1e0ec_1
- icu=58.2=h4b95b61_1
- intel-openmp=2019.0=118
- jpeg=9b=he5867d9_2
- json-c=0.13.1=h3efe00b_0
- kealib=1.4.7=h40e48e4_6
- kiwisolver=1.0.1=py37h0a44026_0
- krb5=1.16.1=h24a3359_6
- libboost=1.67.0=hebc422b_4
- libcurl=7.61.0=hf30b1f0_0
- libcxx=4.0.1=h579ed51_0
- libcxxabi=4.0.1=hebd6815_0
- libdap4=3.19.1=h3d3e54a_0
- libedit=3.1.20170329=hb402a30_2
- libffi=3.2.1=h475c297_4
- libgdal=2.2.4=h7b1ea53_1
- libgfortran=3.0.1=h93005f0_2
- libiconv=1.15=hdd342a3_7
- libkml=1.3.0=hbe12b63_4
- libnetcdf=4.6.1=h4e6abe9_1
- libpng=1.6.34=he12f830_0
- libpq=10.5=hf30b1f0_0
- libspatialite=4.3.0a=ha12ebda_19
- libssh2=1.8.0=h322a93b_4
- libtiff=4.0.9=hcb84e12_2
- libuuid=1.0.3=h6bb4b03_2
- libxml2=2.9.8=hab757c2_1
- matplotlib=2.2.3=py37h54f8f79_0
- mkl=2019.0=118
- mkl_fft=1.0.4=py37h5d10147_1
- mkl_random=1.0.1=py37h5d10147_1
- munch=2.3.2=py37_0
- ncurses=6.1=h0a44026_0
- numpy=1.15.1=py37h6a91979_0
- numpy-base=1.15.1=py37h8a80b8c_0
- openjpeg=2.3.0=hb95cd4c_1
- openssl=1.0.2p=h1de35cc_0
- pcre=8.42=h378b8a2_0
- pip=10.0.1=py37_0
- pixman=0.34.0=hca0a616_3
- poppler=0.65.0=ha097c24_1
- poppler-data=0.4.9=0
- proj4=5.0.1=h1de35cc_0
- pyparsing=2.2.0=py37_1
- python=3.7.0=hc167b69_0
- python-dateutil=2.7.3=py37_0
- pytz=2018.5=py37_0
- readline=7.0=h1de35cc_5
- setuptools=40.2.0=py37_0
- shapely=1.6.4=py37h20de77a_0
- six=1.11.0=py37_1
- sqlite=3.24.0=ha441bb4_0
- tk=8.6.8=ha441bb4_0
- tornado=5.1=py37h1de35cc_0
- wheel=0.31.1=py37_0
- xerces-c=3.2.1=h44e365a_0
- xz=5.2.4=h1de35cc_4
- zlib=1.2.11=hf3cbc9b_2
prefix: /usr/local/miniconda3/envs/proj
Regular → Executable
+110 -58
View File
@@ -1,5 +1,6 @@
#!/usr/bin/env python3
'''
Plot map data in different projections supported by PROJ.4
Plot map data in different projections supported by PROJ.
Call with:
@@ -41,28 +42,31 @@ or "line". The rest of the inputs are fairly free form.
Change PROJ to path on your local system before running the script.
'''
from __future__ import print_function
from __future__ import division
import argparse
import os
import os.path
import shutil
import sys
import json
import subprocess
import functools
from pathlib import Path
import geojson
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.patches import Polygon
import fiona
from shapely.geometry import Polygon
from shapely.geometry import MultiPolygon
from shapely.geometry import MultiPolygon, Polygon, box as Box
from shapely.geometry import shape
from shapely.ops import transform
from descartes import PolygonPatch
PROJ = '../../src/proj'
PROJ_LIB = '../../data'
PROJ_COMMAND = os.environ.get('PROJ_EXE', '../../src/proj')
if not os.path.exists(PROJ_COMMAND):
PROJ = shutil.which('proj')
if PROJ is None:
raise ValueError("specify PROJ_EXE or modify PATH to find proj")
else:
PROJ = PROJ_COMMAND
PROJ_LIB = os.environ.get('PROJ_LIB', '../../data')
LINE_LOW = 'data/coastline.geojson'
LINE_MED = 'data/coastline50.geojson'
@@ -160,9 +164,9 @@ def project(coordinates, proj_string, in_radians=False):
try:
proc = subprocess.Popen(args, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
env={'PROJ_LIB': os.path.abspath(PROJ_LIB)})
except FileNotFoundError:
print("'proj' binary not found, please update PROJ constant in plot.py "
"to point to your local 'proj' binary")
except FileNotFoundError as e:
print("'proj' binary not found, set the PROJ_EXE environment variable "
"to point to your local 'proj' binary --%s--" % e)
exit(1)
stdout, _ = proc.communicate(coordinates.tobytes(order='C'))
@@ -223,7 +227,10 @@ def resample_polygon(polygon):
'''
Use interp_coords() to resample (multi)polygons.
'''
xy = polygon.exterior.coords.xy
try:
xy = polygon.exterior.coords.xy
except AttributeError: #no xy's
return polygon
ext = interp_coords(xy, 2)
# interiors
rings = []
@@ -232,27 +239,46 @@ def resample_polygon(polygon):
return Polygon(ext, rings)
def plot_with_interruptions(axes, x, y, delta_cut=1e100, **kwargs):
"""
Plot x/y with proper splitting for interrupted projections.
"""
_x = np.atleast_1d(x)
_y = np.atleast_1d(y)
dx = np.nan_to_num(_x[1: ]) - np.nan_to_num(_x[0: -1])
dy = np.nan_to_num(_y[1: ]) - np.nan_to_num(_y[0: -1])
split, = ((np.abs(dx) > delta_cut) | (np.abs(dy) > delta_cut)).nonzero()
split = np.append(split, _x.size - 1)
split += 1
last_part = 0
for part in split:
axes.plot(x[last_part: part],
y[last_part: part],
**kwargs)
last_part = part
def plotproj(plotdef, data, outdir):
'''
Plot map.
'''
axes = plt.axes()
bounds = (plotdef['lonmin'], plotdef['latmin'], plotdef['lonmax'], plotdef['latmax'])
for geom in data.filter(bbox=bounds):
temp_pol = shape(geom['geometry'])
box = Box(
plotdef['lonmin'], plotdef['latmin'],
plotdef['lonmax'], plotdef['latmax'])
for feat in data["features"]:
geom = shape(feat["geometry"])
if not geom.intersects(box):
continue
box = Polygon([
(plotdef['lonmin'], plotdef['latmin']),
(plotdef['lonmin'], plotdef['latmax']),
(plotdef['lonmax'], plotdef['latmax']),
(plotdef['lonmax'], plotdef['latmin']),
])
temp_pol = temp_pol.intersection(box)
temp_pol = geom.intersection(box)
if plotdef['type'] == 'poly':
if isinstance(temp_pol, MultiPolygon):
polys = [resample_polygon(polygon) for polygon in temp_pol]
polys = [resample_polygon(polygon) for polygon in temp_pol.geoms]
pol = MultiPolygon(polys)
else:
pol = resample_polygon(temp_pol)
@@ -263,11 +289,15 @@ def plotproj(plotdef, data, outdir):
proj_geom = transform(trans, pol)
if plotdef['type'] == 'poly':
patch = PolygonPatch(proj_geom, fc=COLOR_LAND, zorder=0)
axes.add_patch(patch)
try:
patch = PolygonPatch(proj_geom, fc=COLOR_LAND, zorder=0)
axes.add_patch(patch)
except TypeError:
pass
else:
x, y = proj_geom.xy
axes.plot(x, y, color=COLOR_COAST, linewidth=0.5)
plot_with_interruptions(axes, x, y, color=COLOR_COAST, linewidth=0.5,
delta_cut=plotdef.get('delta_cut', 1e100))
# Plot frame
frame = [
@@ -278,7 +308,8 @@ def plotproj(plotdef, data, outdir):
line = project(line, plotdef['projstring'])
x = line[:, 0]
y = line[:, 1]
axes.plot(x, y, '-k')
plot_with_interruptions(axes, x, y, color='black', linestyle='-',
delta_cut=plotdef.get('delta_cut', 1e6))
graticule = build_graticule(
plotdef['lonmin'],
@@ -292,7 +323,28 @@ def plotproj(plotdef, data, outdir):
feature = project(feature, plotdef['projstring'])
x = feature[:, 0]
y = feature[:, 1]
axes.plot(x, y, color=COLOR_GRAT, linewidth=0.4)
plot_with_interruptions(axes, x, y, color=COLOR_GRAT, linewidth=0.4,
delta_cut=plotdef.get('delta_cut', 1e6))
# Plot interrupted boundaries if necessary
interrupted_lines = []
if 'top_interrupted_lons' in plotdef:
for lon in plotdef['top_interrupted_lons']:
for delta in [-0.0001, 0.0001]:
merid = meridian(lon + delta, 0.0, plotdef['latmax'])
interrupted_lines.append(project(merid, plotdef['projstring']))
if 'bottom_interrupted_lons' in plotdef:
for lon in plotdef['bottom_interrupted_lons']:
for delta in [-0.0001, 0.0001]:
merid = meridian(lon + delta, plotdef['latmin'], 0)
interrupted_lines.append(project(merid, plotdef['projstring']))
for line in interrupted_lines:
x = line[:, 0]
y = line[:, 1]
plot_with_interruptions(axes, x, y, color=COLOR_GRAT, linewidth=0.4,
delta_cut=plotdef.get('delta_cut', 1e100))
# Switch off the axis lines...
plt.axis('off')
@@ -311,9 +363,12 @@ def plotproj(plotdef, data, outdir):
# Make sure the plot is not stretched
axes.set_aspect('equal')
if not os.path.exists(outdir):
os.makedirs(outdir)
plt.savefig(outdir + '/' + plotdef['filename'],
outdir = Path(outdir)
if not outdir.exists():
outdir.mkdir(parents=True)
if not outdir.is_dir():
raise OSError("outdir is not a directory")
plt.savefig(outdir / plotdef['filename'],
dpi=400,
bbox_inches='tight')
@@ -323,36 +378,22 @@ def plotproj(plotdef, data, outdir):
plt.close()
def main():
def main(plotdefs, outdir, plots=[]):
'''
Main function of plotting script.
Parses json-file with plot setups and runs the plotting
for each plot setup.
'''
plotdefs = json.loads(Path(plotdefs).read_text())
data = {
('line', 'low'): fiona.open(LINE_LOW),
('line', 'med'): fiona.open(LINE_MED),
('poly', 'low'): fiona.open(POLY_LOW),
('poly', 'med'): fiona.open(POLY_MED),
('line', 'low'): geojson.loads(Path(LINE_LOW).read_text()),
('line', 'med'): geojson.loads(Path(LINE_MED).read_text()),
('poly', 'low'): geojson.loads(Path(POLY_LOW).read_text()),
('poly', 'med'): geojson.loads(Path(POLY_MED).read_text()),
}
if os.path.exists(sys.argv[1]):
# first argument is the JSON plot definition setup file
with open(sys.argv[1]) as plotsetup:
plotdefs = json.load(plotsetup)
else:
raise ValueError('No plot definition file entered')
plots = []
# second argument is the output dir
outdir = sys.argv[2]
# subsecond arguments are (optional) names of plot in plotdef.json
if len(sys.argv) > 3:
plots = sys.argv[3:len(sys.argv)]
for i, plotdef in enumerate(plotdefs):
if plots != [] and plotdef['name'] not in plots:
continue
@@ -364,9 +405,20 @@ def main():
plotproj(plotdef, data[(plotdef['type'], plotdef['res'])], outdir)
for key in data:
data[key].close()
if __name__ == "__main__":
sys.exit(main())
parser = argparse.ArgumentParser(
description=__doc__,
formatter_class=argparse.RawDescriptionHelpFormatter)
parser.add_argument(
'plotdefs',
help='A JSON file with setup for each auto-generated plot')
parser.add_argument(
'outdir',
help='Directory to put the plots in.')
parser.add_argument(
'plots', nargs='*',
help='A list of plot names within the plotdefs file. '
'More than one plotname can be given at once.')
args = parser.parse_args()
sys.exit(main(**vars(args)))
-2
View File
@@ -1,2 +0,0 @@
python3 plot.py plotdefs.json images/
+12
View File
@@ -0,0 +1,12 @@
#!/bin/sh
set -e
export PATH="$HOME/.local/bin:$PATH"
export PROJ_LIB="$HOME/.local/share/proj"
cd docs/plot
python plot.py plotdefs.json images
cd ../..
mkdir -p docs/source/operations/projections/images/
cp -r docs/plot/images/* docs/source/operations/projections/images/
+15
View File
@@ -0,0 +1,15 @@
#!/bin/sh
set -e
# https://github.com/readthedocs/readthedocs.org/pull/9888
READTHEDOCS_OUTPUT="_readthedocs"
find ${READTHEDOCS_OUTPUT} -type d
READTHEDOCS_OUTPUT_HTML="${READTHEDOCS_OUTPUT}/html"
# Undoes the hack done in scripts/doxygen.sh
sed "s/io::Convention_/io::Convention/g" < ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/io.html | sed "s/>Convention_/>Convention/g" | sed "s/_WKT2/WKT2/g" | sed "s/_WKT1/WKT1/g" > ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/io.html.tmp
mv ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/io.html.tmp ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/io.html
# Undoes the hacks of scripts/generate_breathe_friendly_general_doc.py
sed "s/<em class=\"property\">namespace <\/em>//g" < ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/cpp_general.html > ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/cpp_general.html.tmp
mv ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/cpp_general.html.tmp ${READTHEDOCS_OUTPUT_HTML}/development/reference/cpp/cpp_general.html
+9
View File
@@ -0,0 +1,9 @@
#!/bin/sh
set -e
mkdir build
cd build
cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DPROJ_TESTS=OFF -DCMAKE_INSTALL_PREFIX=$HOME/.local ..
ninja install
+3 -3
View File
@@ -2,7 +2,7 @@
About
###############################################################################
PROJ is a generic coordinate transformation software, that transforms geospatial
PROJ is a generic coordinate transformation software that transforms geospatial
coordinates from one coordinate reference system (CRS) to another. This
includes cartographic projections as well as geodetic transformations.
@@ -10,13 +10,13 @@ PROJ includes :ref:`command line applications<apps>` for easy conversion of
coordinates from text files or directly from user input. In addition to the
command line utilities PROJ also exposes an
:ref:`application programming interface<reference>`, or API in short. The API
let developers use the functionality of PROJ in their own software without having
lets developers use the functionality of PROJ in their own software without having
to implement similar functionality themselves.
PROJ started purely as a cartography application letting users convert geodetic
coordinates into projected coordinates using a number of different cartographic
projections. Over the years, as the need has become apparent, support for datum
shifts has slowly worked it's way into PROJ as well. Today PROJ support more
shifts has slowly worked its way into PROJ as well. Today PROJ supports more
than a hundred different map projections and can transform coordinates between
datums using all but the most obscure geodetic techniques.
+2 -2
View File
@@ -13,7 +13,7 @@ cct
Synopsis
********
**cct** [ **-cIostvz** [ args ] ] *+opts[=arg]* file[s]
**cct** [**-cIostvz** [args]] *+opt[=arg]* ... file ...
Description
***********
@@ -70,7 +70,7 @@ The following control parameters can appear in any order:
Print version number.
The *+args* arguments are associated with coordinate operation parameters.
The *+opt* arguments are associated with coordinate operation parameters.
Usage varies with operation.
.. only:: html
+5 -5
View File
@@ -11,11 +11,11 @@ cs2cs
Synopsis
********
**cs2cs** [ **-eEfIlrstvwW** [ args ] ] [ *+opts[=arg]* ] [ +to [*+opts[=arg]*] ] file[s]
**cs2cs** [**-eEfIlrstvwW** [args]] [*+opt[=arg]* ...] [+to *+opt[=arg]* ...] file ...
or
**cs2cs** [ **-eEfIlrstvwW** [ args ] ] {source_crs} +to {target_crs} file[s]
**cs2cs** [**-eEfIlrstvwW** [args]] {source_crs} +to {target_crs} file ...
where {source_crs} or {target_crs} is a PROJ string, a WKT string or a AUTHORITY:CODE
(where AUTHORITY is the name of a CRS authority and CODE the code of a CRS
@@ -25,7 +25,7 @@ or
or
**cs2cs** [ **-eEfIlrstvwW** [ args ] ] {source_crs} {target_crs}
**cs2cs** [**-eEfIlrstvwW** [args]] {source_crs} {target_crs}
.. versionadded:: 6.0.0
@@ -132,12 +132,12 @@ The following control parameters can appear in any order:
.. only:: man
The *+args* run-line arguments are associated with cartographic
The *+opt* run-line arguments are associated with cartographic
parameters.
.. only:: html
The *+args* run-line arguments are associated with cartographic
The *+opt* run-line arguments are associated with cartographic
parameters. Usage varies with projection and for a complete description
consult the :ref:`projection pages <projections>`.
+3 -3
View File
@@ -7,9 +7,9 @@ geod
Synopsis
********
**geod** *+ellps=<ellipse>* [ **-afFIlptwW** [ args ] ] [ *+args* ] file[s]
**geod** *+ellps=<ellipse>* [**-afFIlptwW** [args]] [*+opt[=arg]* ...] file ...
**invgeod** *+ellps=<ellipse>* [ **-afFIlptwW** [ args ] ] [ *+args* ] file[s]
**invgeod** *+ellps=<ellipse>* [**-afFIlptwW** [args]] [*+opt[=arg]* ...] file ...
Description
***********
@@ -85,7 +85,7 @@ The following command-line options can appear in any order:
This option causes the azimuthal values to be output as unsigned DMS
numbers between 0 and 360 degrees. Also note :option:`-f`.
The *+args* command-line options are associated with geodetic
The *+opt* command-line options are associated with geodetic
parameters for specifying the ellipsoidal or sphere to use.
controls. The options are processed in left to right order
from the command line. Reentry of an option is ignored with
+2 -2
View File
@@ -172,7 +172,7 @@ gie command language
proj=urm5 n=0.5 inv
expect failure pjd_err_malformed_pipeline
See ``gie -l`` for a list of error codes that can be expected.
See :option:`gie --list<--list>` for a list of error codes that can be expected.
.. option:: tolerance <tolerance>
@@ -273,7 +273,7 @@ gie command language
expect 173 -45
See ``gie -l`` for a list of error codes that can be ignored.
See :option:`gie --list<--list>` for a list of error codes that can be ignored.
.. option:: require_grid <grid_name>
+8 -7
View File
@@ -4,15 +4,16 @@
Applications
================================================================================
Bundled with PROJ comes a set of small command line utilities. The ``proj``
Bundled with PROJ comes a set of small command line utilities. The :program:`proj`
program is limited to converting between geographic and projection coordinates
within one datum. The ``cs2cs`` program operates similarly, but allows
within one datum. The :program:`cs2cs` program operates similarly, but allows
translation between any pair of definable coordinate systems, including support
for datum transformation. The ``geod`` program provides the ability to do
geodesic (great circle) computations. ``gie`` is the program used for
regression tests in PROJ. ``cct`` a 4D equivalent to the ``proj`` program,
performs transformation coordinate systems on a set of input points.
``projinfo`` performs queries for geodetic objects and coordinate operations.
for datum transformation. The :program:`geod` program provides the ability to do
geodesic (great circle) computations. :program:`gie` is the program used for
regression tests in PROJ. :program:`cct`, a 4D equivalent to the :program:`proj`
program, performs transformation coordinate systems on a set of input points.
:program:`projinfo` performs queries for geodetic objects and coordinate
operations.
.. toctree::
:maxdepth: 1
+4 -4
View File
@@ -12,9 +12,9 @@ proj
Synopsis
********
**proj** [ **-beEfiIlmorsStTvVwW** ] [ args ] ] [ *+args* ] file[s]
**proj** [**-beEfiIlmorsStTvVwW**] [args]] [*+opt[=arg]* ...] file ...
**invproj** [ **-beEfiIlmorsStTvVwW** ] [ args ] ] [ *+args* ] file[s]
**invproj** [**-beEfiIlmorsStTvVwW**] [args]] [*+opt[=arg]* ...] file ...
Description
@@ -156,7 +156,7 @@ The following control parameters can appear in any order
the projected point. :option:`-v` is implied with this option.
The *+args* run-line arguments are associated with cartographic parameters.
The *+opt* run-line arguments are associated with cartographic parameters.
Additional projection control parameters may be contained in two auxiliary
control files: the first is optionally referenced with the
*+init=file:id* and the second is always processed after the name of the
@@ -167,7 +167,7 @@ also used for supporting files like datum shift files.
.. only:: html
Usage of *+args* varies with projection and for a complete description
Usage of *+opt* varies with projection and for a complete description
consult the :ref:`projection pages <projections>`.
+14 -2
View File
@@ -30,9 +30,11 @@ Synopsis
|
where {object_definition} or {object_definition} is a PROJ string, a
WKT string, an object name or a AUTHORITY:CODE
WKT string, an object name, AUTHORITY:CODE
(where AUTHORITY is the name of a CRS authority and CODE the code of a CRS
found in the proj.db database).
found in the proj.db database) or a OGC URN (such as "urn:ogc:def:crs:EPSG::4326",
"urn:ogc:def:coordinateOperation:EPSG::1671", "urn:ogc:def:ellipsoid:EPSG::7001"
or "urn:ogc:def:datum:EPSG::6326")
Description
***********
@@ -191,6 +193,16 @@ The following control parameters can appear in any order:
and their entries can refer to entries of the main database.
The option may be repeated to specify several auxiliary databases.
.. option:: --identify
When used with an object definition, this queries the PROJ database to find
known objects, typically CRS, that are close or identical to the object.
Each candidate object is associated with an approximate likelihood percentage.
This is useful when used with a WKT string that lacks a EPSG identifier,
such as ESRI WKT1. This might also be used with PROJ strings.
For example, `+proj=utm +zone=31 +datum=WGS84 +type=crs` will be identified
with a likelihood of 70% to EPSG:32631
.. option:: --c-ify
For developers only. Modify the string output of the utility so that it
+6 -1
View File
@@ -1,5 +1,6 @@
###############################################################################
#
# Project: PROJ
# Purpose: Configure custom bibliography style for sphinxcontrib-bibtex
# Author: Mike Toews <mwtoews at gmail.com>
#
@@ -53,11 +54,15 @@ class LinkLabelStyle(LabelStyle):
class CustomStyle(UnsrtStyle):
"""Citation style in the References section"""
# TODO: Make more Harvard-like, i.e. year after name(s)
default_label_style = 'linklabel'
default_name_style = 'lastfirst'
default_sorting_style = 'author_year_title'
# TODO: Make more Harvard-like, i.e. year after name(s)
def __init__(self, **kwargs):
kwargs['abbreviate_names'] = True
UnsrtStyle.__init__(self, **kwargs)
register_plugin('pybtex.style.labels', 'linklabel', LinkLabelStyle)
+2
View File
@@ -36,6 +36,8 @@ the place to go. Please *do not* use the GitHub issue tracker as a
support forum. Your question is much more likely to be answered on the
mailing list, as many more people follow that than the issue tracker.
.. _add_bug_report:
Adding bug reports
------------------
+21 -14
View File
@@ -14,7 +14,6 @@
import sys
import os
import datetime
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
@@ -40,6 +39,9 @@ extensions = [
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# BibTeX configuration
bibtex_bibfiles = ['references.bib']
# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
# source_suffix = ['.rst', '.md']
@@ -59,28 +61,24 @@ project = 'PROJ.4'
# See CITATION file
title = 'PROJ coordinate transformation software library'
author = 'PROJ contributors'
now = datetime.datetime.now()
copyright = u'1983-{0}'.format(now.year)
copyright = u'1983-2019'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
version = '6.0.0'
# use same |release| as |version|
release = version
version = '6.0'
release = '6.0.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = None
# language = 'en'
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
#today = ''
today = 'March 2019'
# Else, today_fmt is used as the format for a strftime call.
#today_fmt = '%B %d, %Y'
@@ -156,10 +154,16 @@ html_theme_options = {}
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
htm_css_files = [
'theme_overrides.css', # override wide tables in RTD theme
]
html_context = {
'css_files': [
'_static/theme_overrides.css', # override wide tables in RTD theme
],
'display_github': True,
'theme_vcs_pageview_mode': 'edit',
'github_user': 'OSGeo',
'github_repo': 'PROJ',
'github_version': '/6.0/docs/source/',
}
# Add any extra paths that contain custom files (such as robots.txt or
@@ -232,6 +236,8 @@ preamble = r"""
\ifdefined\DeclareUnicodeCharacter
\DeclareUnicodeCharacter{2032}{$'$}% prime
\fi
\usepackage[notbib]{tocbibind}
"""
latex_elements = {
@@ -243,7 +249,8 @@ latex_elements = {
# Additional stuff for the LaTeX preamble.
'preamble': preamble,
'inputenc':'\usepackage[utf8]{inputenc}'
'inputenc': r'\usepackage[utf8]{inputenc}',
'makeindex': r'\usepackage[columns=1]{idxlayout}\makeindex',
# Latex figure (float) alignment
#'figure_align': 'htbp',
+168 -19
View File
@@ -1,5 +1,150 @@
.. _API_migration:
================================================================================
Version 4 to 6 API Migration
================================================================================
This is a transition guide for developers wanting to migrate their code to use
PROJ version 6.
Code example
###############################################################################
The difference between the old and new API is shown here with a few examples. Below
we implement the same program with the two different API's. The program reads
input longitude and latitude from the command line and convert them to
projected coordinates with the Mercator projection.
We start by writing the program for PROJ 4:
.. code-block:: C
#include <proj_api.h>
main(int argc, char **argv) {
projPJ pj_merc, pj_latlong;
double x, y;
if (!(pj_longlat = pj_init_plus("+proj=longlat +ellps=clrk66")) )
return 1;
if (!(pj_merc = pj_init_plus("+proj=merc +datum=clrk66 +lat_ts=33")) )
return 1;
while (scanf("%lf %lf", &x, &y) == 2) {
x *= DEG_TO_RAD; /* longitude */
y *= DEG_TO_RAD; /* latitude */
p = pj_transform(pj_longlat, pj_merc, 1, 1, &x, &y, NULL );
printf("%.2f\t%.2f\n", x, y);
}
pj_free(pj_longlat);
pj_free(pj_merc);
return 0;
}
The same program implemented using PROJ 6:
.. code-block:: C
#include <proj.h>
main(int argc, char **argv) {
PJ *P;
PJ_COORD c;
/* NOTE: the use of PROJ strings to describe CRS is strongly discouraged */
/* in PROJ 6, as PROJ strings are a poor way of describing a CRS, and */
/* more precise its geodetic datum. */
/* Use of codes provided by authorities (such as "EPSG:4326", etc...) */
/* or WKT strings will bring the full power of the "transformation */
/* engine" used by PROJ to determine the best transformation(s) between */
/* two CRS. */
P = proj_create_crs_to_crs(PJ_DEFAULT_CTX,
"+proj=longlat +ellps=clrs66",
"+proj=merc +ellps=clrk66 +lat_ts=33",
NULL);
if (P==0)
return 1;
{
/* For that particular use case, this is not needed. */
/* proj_normalize_for_visualization() ensures that the coordinate */
/* order expected and returned by proj_trans() will be longitude, */
/* latitude for geographic CRS, and easting, northing for projected */
/* CRS. If instead of using PROJ strings as above, "EPSG:XXXX" codes */
/* had been used, this might had been necessary. */
PJ* P_for_GIS = proj_normalize_for_visualization(C, P);
if( 0 == P_for_GIS ) {
proj_destroy(P);
return 1;
}
proj_destroy(P);
P = P_for_GIS;
}
while (scanf("%lf %lf", &c.lp.lam, &c.lp.phi) == 2) {
/* No need to convert to radian */
c = proj_trans(P, PJ_FWD, c);
printf("%.2f\t%.2f\n", c.xy.x, c.xy.y);
}
proj_destroy(P);
}
Function mapping from old to new API
###############################################################################
+---------------------------------------+-------------------------------------------------+
| Old API functions | New API functions |
+=======================================+=================================================+
| pj_fwd | :c:func:`proj_trans` |
+---------------------------------------+-------------------------------------------------+
| pj_inv | :c:func:`proj_trans` |
+---------------------------------------+-------------------------------------------------+
| pj_fwd3 | :c:func:`proj_trans` |
+---------------------------------------+-------------------------------------------------+
| pj_inv3 | :c:func:`proj_trans` |
+---------------------------------------+-------------------------------------------------+
| pj_transform | :c:func:`proj_create_crs_to_crs` + |
| | (:c:func:`proj_normalize_for_visualization` +) |
| | :c:func:`proj_trans`, |
| | :c:func:`proj_trans_array` or |
| | :c:func:`proj_trans_generic` |
+---------------------------------------+-------------------------------------------------+
| pj_init | :c:func:`proj_create` / |
| | :c:func:`proj_create_crs_to_crs` |
+---------------------------------------+-------------------------------------------------+
| pj_init | :c:func:`proj_create` / |
| | :c:func:`proj_create_crs_to_crs` |
+---------------------------------------+-------------------------------------------------+
| pj_free | :c:func:`proj_destroy` |
+---------------------------------------+-------------------------------------------------+
| pj_is_latlong | :c:func:`proj_get_type` |
+---------------------------------------+-------------------------------------------------+
| pj_is_geocent | :c:func:`proj_get_type` |
+---------------------------------------+-------------------------------------------------+
| pj_get_def | :c:func:`proj_pj_info` |
+---------------------------------------+-------------------------------------------------+
| pj_latlong_from_proj | *No direct equivalent*, but can be accomplished |
| | by chaining :c:func:`proj_create`, |
| | :c:func:`proj_crs_get_horizontal_datum` and |
| | :c:func:`proj_create_geographic_crs_from_datum` |
+---------------------------------------+-------------------------------------------------+
| pj_set_finder | :c:func:`proj_context_set_file_finder` |
+---------------------------------------+-------------------------------------------------+
| pj_set_searchpath | :c:func:`proj_context_set_search_paths` |
+---------------------------------------+-------------------------------------------------+
| pj_deallocate_grids | *No equivalent* |
+---------------------------------------+-------------------------------------------------+
| pj_strerrno | *No equivalent* |
+---------------------------------------+-------------------------------------------------+
| pj_get_errno_ref | :c:func:`proj_errno` |
+---------------------------------------+-------------------------------------------------+
| pj_get_release | :c:func:`proj_info` |
+---------------------------------------+-------------------------------------------------+
================================================================================
Version 4 to 5 API Migration
================================================================================
@@ -66,7 +211,7 @@ Code example
The difference between the old and new API is shown here with a few examples. Below
we implement the same program with the two different API's. The program reads
input latitude and longitude from the command line and convert them to
input longitude and latitude from the command line and convert them to
projected coordinates with the Mercator projection.
We start by writing the program for PROJ v. 4:
@@ -76,21 +221,24 @@ We start by writing the program for PROJ v. 4:
#include <proj_api.h>
main(int argc, char **argv) {
projPJ pj_merc, pj_latlong;
projPJ pj_merc, pj_longlat;
double x, y;
if (!(pj_merc = pj_init_plus("+proj=merc +ellps=clrk66 +lat_ts=33")) )
if (!(pj_longlat = pj_init_plus("+proj=longlat +ellps=clrk66")) )
return 1;
if (!(pj_latlong = pj_init_plus("+proj=latlong +ellps=clrk66")) )
if (!(pj_merc = pj_init_plus("+proj=merc +ellps=clrk66 +lat_ts=33")) )
return 1;
while (scanf("%lf %lf", &x, &y) == 2) {
x *= DEG_TO_RAD;
y *= DEG_TO_RAD;
p = pj_transform(pj_latlong, pj_merc, 1, 1, &x, &y, NULL );
x *= DEG_TO_RAD; /* longitude */
y *= DEG_TO_RAD; /* latitude */
p = pj_transform(pj_longlat, pj_merc, 1, 1, &x, &y, NULL );
printf("%.2f\t%.2f\n", x, y);
}
pj_free(pj_longlat);
pj_free(pj_merc);
return 0;
}
@@ -115,6 +263,7 @@ The same program implemented using PROJ v. 5:
printf("%.2f\t%.2f\n", c.xy.x, c.xy.y);
}
proj_destroy(P);
}
Looking at the two different programs, there's a few immediate
@@ -155,27 +304,27 @@ Function mapping from old to new API
+---------------------------------------+---------------------------------------+
| Old API functions | New API functions |
+=======================================+=======================================+
| pj_fwd | proj_trans |
| pj_fwd | :c:func:`proj_trans` |
+---------------------------------------+---------------------------------------+
| pj_inv | proj_trans |
| pj_inv | :c:func:`proj_trans` |
+---------------------------------------+---------------------------------------+
| pj_fwd3 | proj_trans |
| pj_fwd3 | :c:func:`proj_trans` |
+---------------------------------------+---------------------------------------+
| pj_inv3 | proj_trans |
| pj_inv3 | :c:func:`proj_trans` |
+---------------------------------------+---------------------------------------+
| pj_transform | proj_trans_array or proj_trans_generic|
+---------------------------------------+---------------------------------------+
| pj_init | proj_create |
| pj_init | :c:func:`proj_create` |
+---------------------------------------+---------------------------------------+
| pj_init_plus | proj_create |
| pj_init_plus | :c:func:`proj_create` |
+---------------------------------------+---------------------------------------+
| pj_free | proj_destroy |
| pj_free | :c:func:`proj_destroy` |
+---------------------------------------+---------------------------------------+
| pj_is_latlong | proj_angular_output |
| pj_is_latlong | :c:func:`proj_angular_output` |
+---------------------------------------+---------------------------------------+
| pj_is_geocent | proj_angular_outout |
| pj_is_geocent | :c:func:`proj_angular_output` |
+---------------------------------------+---------------------------------------+
| pj_get_def | proj_pj_info |
| pj_get_def | :c:func:`proj_pj_info` |
+---------------------------------------+---------------------------------------+
| pj_latlong_from_proj | *No equivalent* |
+---------------------------------------+---------------------------------------+
@@ -187,7 +336,7 @@ Function mapping from old to new API
+---------------------------------------+---------------------------------------+
| pj_strerrno | *No equivalent* |
+---------------------------------------+---------------------------------------+
| pj_get_errno_ref | proj_errno |
| pj_get_errno_ref | :c:func:`proj_errno` |
+---------------------------------------+---------------------------------------+
| pj_get_release | proj_info |
| pj_get_release | :c:func:`proj_info` |
+---------------------------------------+---------------------------------------+
+86 -27
View File
@@ -25,69 +25,128 @@ See the :doc:`reference for more info on data types <reference/datatypes>`.
.. literalinclude:: ../../../examples/pj_obs_api_mini_demo.c
:language: c
:lines: 43-45
:lines: 43-46
:dedent: 4
For use in multi-threaded programs the ``PJ_CONTEXT`` threading-context is used.
For use in multi-threaded programs the :c:type:`PJ_CONTEXT` threading-context is used.
In this particular example it is not needed, but for the sake of completeness
it created here. The section on :doc:`threads <threads>` discusses
this in detail.
.. literalinclude:: ../../../examples/pj_obs_api_mini_demo.c
:language: c
:lines: 48
:lines: 50
:dedent: 4
Next we create the ``PJ`` transformation object ``P`` with the function
``proj_create``. ``proj_create`` takes the threading context ``C`` created above,
and a proj-string that defines the desired transformation. Here we transform
from geodetic coordinate to UTM zone 32N.
Next we create the :c:type:`PJ` transformation object ``P`` with the function
:c:func:`proj_create_crs_to_crs`. :c:func:`proj_create_crs_to_crs` takes the threading context ``C``
created above, a string that describes the source coordinate reference system (CRS),
a string that describes the target CRS and an optional description of the area of
use.
The strings for the source or target CRS may be PROJ strings (``+proj=longlat +datum=WGS84``),
CRS identified by their code (``EPSG:4326`` or ``urn:ogc:def:crs:EPSG::4326``) or
by a well-known text (WKT) string (
::
GEOGCRS["WGS 84",
DATUM["World Geodetic System 1984",
ELLIPSOID["WGS 84",6378137,298.257223563,
LENGTHUNIT["metre",1]]],
PRIMEM["Greenwich",0,
ANGLEUNIT["degree",0.0174532925199433]],
CS[ellipsoidal,2],
AXIS["geodetic latitude (Lat)",north,
ORDER[1],
ANGLEUNIT["degree",0.0174532925199433]],
AXIS["geodetic longitude (Lon)",east,
ORDER[2],
ANGLEUNIT["degree",0.0174532925199433]],
USAGE[
SCOPE["unknown"],
AREA["World"],
BBOX[-90,-180,90,180]],
ID["EPSG",4326]]
).
The use of PROJ strings to describe a CRS is considered as legacy (one of the
main weakness of PROJ strings is their inability to describe a geodetic datum,
other than the few ones hardcoded in the ``+datum`` parameter).
Here we transform from geographic coordinates to UTM zone 32N.
It is recommended to create one threading-context per thread used by the program.
This ensures that all ``PJ`` objects created in the same context will be sharing
resources such as error-numbers and loaded grids.
In case the creation of the ``PJ`` object fails an error message is displayed and
the program returns. See :doc:`errorhandling` for further
This ensures that all :c:type:`PJ` objects created in the same context will be
sharing resources such as error-numbers and loaded grids.
In case the creation of the :c:type:`PJ` object fails an error message is
displayed and the program returns. See :doc:`errorhandling` for further
details.
.. literalinclude:: ../../../examples/pj_obs_api_mini_demo.c
:language: c
:lines: 50-52
:lines: 52-60
:dedent: 4
PROJ uses it's own data structures for handling coordinates. Here we use a
``PJ_COORD`` which is easily assigned with the function ``proj_coord``. Note
that the input values are converted to radians with ``proj_torad``. This is
necessary since PROJ is using radians internally. See :doc:`transformations`
for further details.
:c:func:`proj_create_crs_to_crs` creates a transformation object, which accepts
coordinates expressed in the units and axis order of the definition of the
source CRS, and return transformed coordinates in the units and axis order of
the definition of the target CRS.
For almost most geographic CRS, the units will be in most cases degrees (in
rare cases, such as EPSG:4807 / NTF (Paris), this can be grads). For geographic
CRS defined by the EPSG authority, the order of coordinates is latitude first,
longitude second. When using a PROJ string, on contrary the order will be
longitude first, latitude second.
For projected CRS, the units may vary (metre, us-foot, etc..). For projected
CRS defined by the EPSG authority, and with EAST / NORTH directions, the order
might be easting first, northing second, or the reverse. When using a PROJ string,
the order will be easting first, northing second, except if the ``+axis``
parameter modifies it.
If for the needs of your software, you want
a uniform axis order (and thus do not care about axis order mandated by the
authority defining the CRS), the :c:func:`proj_normalize_for_visualization`
function can be used to modify the PJ* object returned by
:c:func:`proj_create_crs_to_crs` so that it accepts as input and returns as
output coordinates using the traditional GIS order, that is longitude, latitude
(followed by elevation, time) for geographic CRS and easting, northing for most
projected CRS.
.. literalinclude:: ../../../examples/pj_obs_api_mini_demo.c
:language: c
:lines: 56
:lines: 65-71
:dedent: 4
The coordinate defined above is transformed with ``proj_trans_coord``. For this
a ``PJ`` object, a transformation direction (either forward or inverse) and the
coordinate is needed. The transformed coordinate is returned in ``b``.
Here the forward (``PJ_FWD``) transformation from geodetic to UTM is made.
PROJ uses its own data structures for handling coordinates. Here we use a
:c:type:`PJ_COORD` which is easily assigned with the function :c:func:`proj_coord`.
When using +proj=longlat, the order of coordinates is longitude, latitude,
and values are expressed in degrees. If you used instead a EPSG geographic CRS,
like EPSG:4326 (WGS84), it would be latitude, longitude.
.. literalinclude:: ../../../examples/pj_obs_api_mini_demo.c
:language: c
:lines: 59-60
:lines: 76
:dedent: 4
The inverse transformation (UTM to geodetic) is done similar to above,
this time using ``PJ_INV`` as the direction.
The coordinate defined above is transformed with :c:func:`proj_trans`. For this
a :c:type:`PJ` object, a transformation direction (either forward or inverse)
and the coordinate is needed. The transformed coordinate is returned in ``b``.
Here the forward (:c:type:`PJ_FWD`) transformation from geographic to UTM is made.
.. literalinclude:: ../../../examples/pj_obs_api_mini_demo.c
:language: c
:lines: 61-62
:lines: 79-80
:dedent: 4
The inverse transformation (UTM to geographic) is done similar to above,
this time using :c:type:`PJ_INV` as the direction.
.. literalinclude:: ../../../examples/pj_obs_api_mini_demo.c
:language: c
:lines: 81-82
:dedent: 4
Before ending the program the allocated memory needs to be released again:
.. literalinclude:: ../../../examples/pj_obs_api_mini_demo.c
:language: c
:lines: 65-66
:lines: 85-86
:dedent: 4
+39 -13
View File
@@ -144,6 +144,25 @@ paragraph for more details.
:type `area`: PJ_AREA
:returns: :c:type:`PJ*`
.. c:function:: PJ *proj_normalize_for_visualization(PJ_CONTEXT *ctx, const PJ* obj)
.. versionadded:: 6.1.0
Returns a PJ* object whose axis order is the one expected for
visualization purposes.
The input object must be a coordinate operation, that has been created with
proj_create_crs_to_crs().
If the axis order of its source or target CRS is northing,easting, then an
axis swap operation will be inserted.
The returned :c:type:`PJ`-pointer should be deallocated with :c:func:`proj_destroy`.
:param PJ_CONTEXT* ctx: Threading context.
:param `obj`: Object of type CoordinateOperation
:returns: :c:type:`PJ*`
.. c:function:: PJ* proj_destroy(PJ *P)
Deallocate a :c:type:`PJ` transformation object.
@@ -221,10 +240,16 @@ Coordinate transformation
3. of length one, i.e. a constant, which will be treated as a fully
populated array of that constant value
.. note:: Even though he coordinate components are named :c:data:`x`, :c:data:`y`,
:c:data:`z` and :c:data:`t`, axis ordering of the to and from CRS
is respected. Transformations exhibit the same behaviour
as if they were gathered in a :c:type:`PJ_COORD` struct.
The strides, :c:data:`sx`, :c:data:`sy`, :c:data:`sz`, :c:data:`st`,
represent the step length, in bytes, between
consecutive elements of the corresponding array. This makes it possible for
:c:func:`proj_transform` to handle transformation of a large class of application
:c:func:`proj_trans_generic` to handle transformation of a large class of application
specific data structures, without necessarily understanding the data structure
format, as in:
@@ -250,21 +275,22 @@ Coordinate transformation
0, 0 /* and the time is the constant 0.00 s */
);
This is similar to the inner workings of the deprecated pj_transform function, but the
stride functionality has been generalized to work for any size of basic unit,
not just a fixed number of doubles.
This is similar to the inner workings of the deprecated :c:func:`pj_transform`
function, but the stride functionality has been generalized to work for any
size of basic unit, not just a fixed number of doubles.
In most cases, the stride will be identical for x, y, z, and t, since they will
typically be either individual arrays (stride = sizeof(double)), or strided
views into an array of application specific data structures (stride = sizeof (...)).
typically be either individual arrays (``stride = sizeof(double)``), or strided
views into an array of application specific data structures (``stride = sizeof (...)``).
But in order to support cases where :c:data:`x`, :c:data:`y`, :c:data:`z`,
and :c:data:`t` come from heterogeneous sources, individual strides,
:c:data:`sx`, :c:data:`sy`, :c:data:`sz`, :c:data:`st`, are used.
.. note:: Since :c:func:`proj_transform` does its work *in place*, this means that even the
supposedly constants (i.e. length 1 arrays) will return from the call in altered
state. Hence, remember to reinitialize between repeated calls.
.. note:: Since :c:func:`proj_trans_generic` does its work *in place*,
this means that even the supposedly constants (i.e. length 1 arrays)
will return from the call in altered state. Hence, remember to
reinitialize between repeated calls.
:param PJ* P: Transformation object
:param `direction`: Transformation direction
@@ -631,23 +657,23 @@ Various
.. c:function:: int proj_angular_input (PJ *P, enum PJ_DIRECTION dir)
Check if a operation expects angular input.
Check if a operation expects input in radians or not.
:param `P`: Transformation object
:type `P`: const PJ*
:param `direction`: Starting direction of transformation
:type `direction`: PJ_DIRECTION
:returns: :c:type:`int` 1 if angular input is expected, otherwise 0
:returns: :c:type:`int` 1 if input units is expected in radians, otherwise 0
.. c:function:: int proj_angular_output (PJ *P, enum PJ_DIRECTION dir)
Check if an operation returns angular output.
Check if an operation returns output in radians or not.
:param `P`: Transformation object
:type `P`: const PJ*
:param `direction`: Starting direction of transformation
:type `direction`: PJ_DIRECTION
:returns: :c:type:`int` 1 if angular output is returned, otherwise 0
:returns: :c:type:`int` 1 if output units is expected in radians, otherwise 0
C API for ISO-19111 functionality
+++++++++++++++++++++++++++++++++
+16 -10
View File
@@ -5,7 +5,7 @@ Download
================================================================================
Here you can download current and previous releases of PROJ. We only supply a
distribution of the source code and various resource files archives. See
distribution of the source code and various resource file archives. See
:ref:`install` for information on how to get pre-built packages of PROJ.
.. _current_release:
@@ -13,28 +13,32 @@ distribution of the source code and various resource files archives. See
Current Release
--------------------------------------------------------------------------------
* **2018-09-15** `proj-5.2.0.tar.gz`_ (`md5`_)
* **2019-03-01** `proj-6.0.0.tar.gz`_ (`md5`_)
* **2018-09-15** `proj-datumgrid-1.8.zip`_
* **2018-09-15** `proj-datumgrid-europe-1.1.zip`_
* **2018-09-15** `proj-datumgrid-north-america-1.1.zip`_
* **2019-03-01** `proj-datumgrid-europe-1.2.zip`_
* **2019-03-01** `proj-datumgrid-north-america-1.2.zip`_
* **2018-03-01** `proj-datumgrid-oceania-1.0.zip`_
* **PDF Manual** `proj.pdf`_
* **2019-03-01** `proj-datumgrid-world-1.0.zip`_
Past Releases
--------------------------------------------------------------------------------
* **2018-06-01** `proj-5.1.0.tar.gz`_ (`md5`_)
* **2018-04-01** `proj-5.0.1.tar.gz`_ (`md5`_)
* **2018-09-15** `proj-5.2.0.tar.gz`_
* **2018-06-01** `proj-5.1.0.tar.gz`_
* **2018-04-01** `proj-5.0.1.tar.gz`_
* **2018-03-01** `proj-5.0.0.tar.gz`_
* **2016-09-02** `proj-4.9.3.tar.gz`_
* **2015-09-13** `proj-4.9.2.tar.gz`_
* **2015-03-04** `proj-4.9.1.tar.gz`_
* **2016-09-11** `proj-datumgrid-1.6.zip`_
* **2018-03-01** `proj-datumgrid-1.7.zip`_
* **2016-09-11** `proj-datumgrid-1.6.zip`_
* **2018-09-15** `proj-datumgrid-europe-1.1.zip`_
* **2018-09-15** `proj-datumgrid-north-america-1.1.zip`_
* **2018-03-01** `proj-datumgrid-europe-1.0.zip`_
* **2018-03-01** `proj-datumgrid-north-america-1.0.zip`_
.. _`proj-6.0.0.tar.gz`: http://download.osgeo.org/proj/proj-6.0.0.tar.gz
.. _`proj-5.2.0.tar.gz`: http://download.osgeo.org/proj/proj-5.2.0.tar.gz
.. _`proj-5.1.0.tar.gz`: http://download.osgeo.org/proj/proj-5.1.0.tar.gz
.. _`proj-5.0.1.tar.gz`: http://download.osgeo.org/proj/proj-5.0.1.tar.gz
@@ -47,8 +51,10 @@ Past Releases
.. _`proj-datumgrid-1.8.zip`: http://download.osgeo.org/proj/proj-datumgrid-1.8.zip
.. _`proj-datumgrid-europe-1.0.zip`: http://download.osgeo.org/proj/proj-datumgrid-europe-1.0.zip
.. _`proj-datumgrid-europe-1.1.zip`: http://download.osgeo.org/proj/proj-datumgrid-europe-1.1.zip
.. _`proj-datumgrid-europe-1.2.zip`: http://download.osgeo.org/proj/proj-datumgrid-europe-1.2.zip
.. _`proj-datumgrid-north-america-1.0.zip`: http://download.osgeo.org/proj/proj-datumgrid-north-america-1.0.zip
.. _`proj-datumgrid-north-america-1.1.zip`: http://download.osgeo.org/proj/proj-datumgrid-north-america-1.1.zip
.. _`proj-datumgrid-north-america-1.2.zip`: http://download.osgeo.org/proj/proj-datumgrid-north-america-1.2.zip
.. _`proj-datumgrid-oceania-1.0.zip`: http://download.osgeo.org/proj/proj-datumgrid-oceania-1.0.zip
.. _`md5`: http://download.osgeo.org/proj/proj-5.2.0.tar.gz.md5
.. _`proj.pdf`: https://raw.githubusercontent.com/OSGeo/proj.4/gh-pages/proj.pdf
.. _`proj-datumgrid-world-1.0.zip`: http://download.osgeo.org/proj/proj-datumgrid-world-1.0.zip
.. _`md5`: http://download.osgeo.org/proj/proj-6.0.0.tar.gz.md5
+108 -200
View File
@@ -10,208 +10,73 @@ FAQ
:depth: 3
:backlinks: none
Where can I find the list of projections and their arguments?
Which file formats does PROJ support?
--------------------------------------------------------------------------------
:doc:`Here<../operations/projections/index>`.
Additinoally, the ``proj`` command itself can report the list of projections
using the ``-lp`` option, the list of ellipsoids with the ``-le`` option,
the list of units with the ``-lu`` option, and the list of built-in datums with
the ``-ld`` option.
How do I do datum shifts between NAD27 and NAD83?
--------------------------------------------------------------------------------
Using the ``cs2cs`` application. The following example demonstrates using the
default shift parameters for NAD27 to NAD83:
::
% cs2cs +proj=latlong +datum=NAD27 +to +proj=latlong +datum=NAD83 -117 30
producing:
::
117d0'2.901"W 30d0'0.407"N 0.000
In order for datum shifting to work properly the various grid shift files must
be available. See below. More details are available in the
section on :doc:`resource files<resource_files>`.
How do I build/configure PROJ to support datum shifting?
--------------------------------------------------------------------------------
After downloading and unpacking the PROJ source, also download and unpack the
set of datum shift files. See :ref:`download` for instructions how to fetch
and install these files
A default build and install on Unix will normally build knowledge of the
directory where the grid shift files are installed into the PROJ library
(usually ``/usr/local/share/proj``). On Windows the library is normally built
thinking that C:\PROJ\NAD is the installed directory for the grid shift files.
If the built in concept of the PROJ data directory is incorrect, the ``PROJ_LIB``
environment can be defined with the correct directory.
How do I debug problems with NAD27/NAD83 datum shifting?
--------------------------------------------------------------------------------
1. Verify that you have the binary files (eg. ``/usr/local/share/proj/conus``)
installed on your system. If not, see the previous question.
2. Try a datum shifting operation in relative isolation, such as with the :program:`cs2cs`
command listed above. Do you get reasonable results? If not it is likely
the grid shift files aren't being found. Perhaps you need to define
:envvar:`PROJ_LIB`?
3. The :program:`cs2cs` command and the underlying :c:func:`pj_transform()` API know how to do a
grid shift as part of a more complex coordinate transformation; however, it
is imperative that both the source and destination coordinate system be
defined with appropriate datum information. That means that implicitly or
explicitly there must be a ``+datum=`` clause, a ``+nadgrids=`` clause or a
``+towgs84=`` clause. For instance
``cs2cs +proj=latlong +datum=NAD27 +to +proj=latlong +ellps=WGS84`` won't work because defining the output
coordinate system as using the ellipse WGS84 isn't the same as defining it
to use the datum WGS84 (use ``+datum=WGS84``). If either the input or output
are not identified as having a datum, the datum shifting (and ellipsoid
change) step is just quietly skipped!
4. The :envvar:`PROJ_DEBUG` environment can be defined (any value) to force extra output
from the PROJ library to stderr (the text console normally) with
information on what data files are being opened and in some cases why a
transformation fails.
::
export PROJ_DEBUG=ON
cs2cs ...
.. note::
``PROJ_DEBUG`` support is not yet very mature in the PROJ library.
5. The :option:`-v` flag to :program:`cs2cs` can be useful in establishing more detail on what
parameters being used internally for a coordinate system. This will include
expanding the definition of ``+datum`` clause.
How do I use EPSG coordinate system codes with PROJ?
--------------------------------------------------------------------------------
There is somewhat imperfect translation between 2D geographic and projected
coordinate system codes and PROJ descriptions of the coordinate system
available in the ``epsg`` definition file that normally lives in the ``proj/data``
directory. If installed (it is installed by default on Unix), it is possible
to use EPSG numbers like this:
::
% cs2cs -v +init=epsg:26711
# ---- From Coordinate System ----
#Universal Transverse Mercator (UTM)
# Cyl, Sph
# zone= south
# +init=epsg:26711 +proj=utm +zone=11 +ellps=clrk66 +datum=NAD27 +units=m
# +no_defs +nadgrids=conus,ntv1_can.dat
#--- following specified but NOT used
# +ellps=clrk66
# ---- To Coordinate System ----
#Lat/long (Geodetic)
#
# +proj=latlong +datum=NAD27 +ellps=clrk66 +nadgrids=conus,ntv1_can.dat
The ``proj/data/epsg`` file can be browsed and searched in a text editor for
coordinate systems. There are known to be problems with some coordinate
systems, and any coordinate systems with odd axes, a non-greenwich prime
meridian or other quirkiness are unlikely to work properly. Caveat Emptor!
How do I use 3 parameter and 7 parameter datum shifting
--------------------------------------------------------------------------------
Datum shifts can be approximated with 3 and 7 parameter transformations. Their
use with :program:`cs2cs` is more fully described in the
:ref:`geodetic transformation<cs2cs_specific_options>` section.
More generically, the :ref:`helmert` can be used with :program:`cct`.
Does PROJ work in different international numeric locales?
--------------------------------------------------------------------------------
No. PROJ makes extensive use of the :c:func:`sprintf()` and :c:func:`atof()` C functions
internally to translate numeric values. If a locale is in effect that modifies
formatting of numbers, altering the role of commas and periods in numbers, then
PROJ will not work. This problem is common in some European locales.
On UNIX-like platforms, this problem can be avoided by forcing the use of the
default numeric locale by setting the :envvar:`LC_NUMERIC` environment variable to C.
::
$ export LC_NUMERIC=C
$ proj ...
The :ref:`command line applications <apps>` that come with PROJ only support text
input and output (apart from :program:`proj` which accepts a simple binary data
stream as well). :program:`proj`, :program:`cs2cs` and :program:`cct` expects
text files with one coordinate per line with each coordinate dimension in a
separate column.
.. note::
NOTE: Per ticket #49, in PROJ 4.7.0 and later pj_init() operates with locale
overridden to "C" to avoid most locale specific processing for applications
using the API. Command line tools may still have issues.
If your data is stored in a common geodata file format chances are that
you can use `GDAL <https://gdal.org/>`_ as a frontend to PROJ and transform your data with the
:program:`ogr2ogr` application.
Changing Ellipsoid / Why can't I convert from WGS84 to Google Earth / Virtual Globe Mercator?
----------------------------------------------------------------------------------------------
Can I transform from *abc* to *xyz*?
--------------------------------------------------------------------------------
The coordinate system definition for Google Earth, and Virtual Globe Mercator
is as follows, which uses a sphere as the earth model for the Mercator
projection.
Probably. PROJ supports transformations between most coordinate reference systems
registered in the EPSG registry, as well as a number of other coordinate reference
systems. The best way to find out is to test it with the :program:`projinfo`
application. Here's an example checking if there's a transformation between
ETRS89/UTM32N (EPSG:25832) and ETRS89/DKTM1 (EPSG:4093):
::
.. code-block:: console
+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0
+x_0=0.0 +y_0=0 +k=1.0 +units=m +no_defs
$ ./projinfo -s EPSG:25832 -t EPSG:4093 -o PROJ
Candidate operations found: 1
-------------------------------------
Operation n°1:
But, if you do something like:
unknown id, Inverse of UTM zone 32N + DKTM1, 0 m, World
::
PROJ string:
+proj=pipeline +step +inv +proj=utm +zone=32 +ellps=GRS80
+step +proj=tmerc +lat_0=0 +lon_0=9 +k=0.99998 +x_0=200000 +y_0=-5000000 +ellps=GRS80
cs2cs +proj=latlong +datum=WGS84
+to +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0
+x_0=0.0 +y_0=0 +k=1.0 +units=m +no_defs
See the :program:`projinfo` :ref:`documentation <projinfo>` for more info on
how to use it.
to convert between WGS84 and mercator on the sphere there will be substantial
shifts in the Y mercator coordinates. This is because internally :program:`cs2cs` is
having to adjust the lat/long coordinates from being on the sphere to being on
the WGS84 datum which has a quite differently shaped ellipsoid.
Coordinate reference system *xyz* is not in the EPSG registry, what do I do?
--------------------------------------------------------------------------------
In this case, and many other cases using spherical projections, the desired
approach is to actually treat the lat/long locations on the sphere as if they
were on WGS84 without any adjustments when using them for converting to other
coordinate systems. The solution is to "trick" PROJ into applying no change
to the lat/long values when going to (and through) WGS84. This can be
accomplished by asking PROJ to use a null grid shift file for switching from
your spherical lat/long coordinates to WGS84.
Generally PROJ will accept coordinate reference system descriptions in the form
of WKT, WKT2 and PROJ strings. If you are able to describe your desired CRS
in either of those formats there's a good chance that PROJ will be able to make
sense of it.
::
If it is important to you that a given CRS is added to the EPSG registry, you
should contact your local geodetic authority and ask them to submit the CRS for
inclusion in the registry.
cs2cs +proj=latlong +datum=WGS84 \
+to +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 \
+x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs
I found a bug in PROJ, how do I get it fixed?
--------------------------------------------------------------------------------
Note the strategic addition of ``+nadgrids=@null`` to the spherical projection
definition.
Please report bugs that you find to the issue tracker on GitHub. :ref:`Here's how
<add_bug_report>`.
Similar issues apply with many other datasets distributed with projections
based on a spherical earth model - such as many NASA datasets. This coordinate
system is now known by the EPSG code 3857 and has in the past been known as
EPSG:3785 and EPSG:900913. When using this coordinate system with GDAL/OGR it
is helpful to include the +wktext so the exact PROJ string will be preserved
in the WKT representation (otherwise key parameters like ``+nadgrids=@null`` will
be dropped):
If you know how to program you can also try to fix it yourself. You are welcome
to ask for guidance on one of the :ref:`communication channels <channels>` used
by the project.
::
+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0
+units=m +nadgrids=@null +wktext +no_defs
How do I contribute to PROJ?
--------------------------------------------------------------------------------
Any contributions from the PROJ community is welcome. See :ref:`contributing` for
more details.
How do I calculate distances/directions on the surface of the earth?
--------------------------------------------------------------------------------
@@ -219,32 +84,75 @@ How do I calculate distances/directions on the surface of the earth?
These are called geodesic calculations. There is a page about it here:
:ref:`geodesic`.
What options does PROJ allow for the shape of the Earth (geodesy)?
What is the best format for describing coordinate reference systems?
--------------------------------------------------------------------------------
See https://github.com/OSGeo/proj.4/blob/master/src/pj_ellps.c
for possible ellipse options. For example, putting ``+ellps=WGS84`` uses
the ``WGS84`` Earth shape.
A coordinate reference system (CRS) can in PROJ be described in several ways:
As PROJ strings, Well-Known Text (WKT) and as spatial reference ID's (such as EPSG
codes). Generally, WKT or SRID's are preferred over PROJ strings as they can
contain more information about a given CRS. Conversions between WKT and PROJ
strings will in most cases cause a loss of information, potentially leading to
erroneous transformations.
What if I want a spherical Earth?
For compatibility reasons PROJ supports several WKT dialects
(see :option:`projinfo -o`). If possible WKT2 should be used.
Why is the axis ordering in PROJ not consistent?
--------------------------------------------------------------------------------
Use ``+ellps=sphere``. See https://github.com/OSGeo/proj.4/blob/master/src/pj_ellps.c
for the radius used in this case.
PROJ respects the axis ordering as it was defined by the authority in charge of
a given coordinate reference system. This is in accordance to the ISO19111 standard
:cite:`ISO19111`. Unfortunately most GIS software on the market doesn't follow this
standard. Before version 6, PROJ did not respect the standard either. This causes
some problems while the rest of the industry conforms to the standard. PROJ intends
to spearhead this effort, hopefully setting a good example for the rest of the
geospatial industry.
How do I change the radius of the Earth? How do I use PROJ for work on Mars?
--------------------------------------------------------------------------------
Customarily in GIS the first component in a coordinate tuple has been aligned with
the east/west direction and the second component with the north/south direction.
For many coordinate reference systems this is also what is defined by the authority.
There are however exceptions, especially when dealing with coordinate systems that
don't align with the cardinal directions of a compass. For example it is not
obvious which coordinate component aligns to which axis in a skewed coordinate
system with a 45 degrees angle against the north direction. Similarly, a geocentric
cartesain coordinate system usually has the z-component aligned with the rotational
axis of the earth and hence the axis points towards north. Both cases are
incompatible with the convention of always having the x-component be the east/west
axis, the y-component the north/south axis and the z-component the up/down axis.
You can supply explicit values for the semi minor and semi major axes instead
of using the symbolic "sphere" value. Eg, if the radius were 2000000m:
In most cases coordinate reference systems with geodetic coordinates expect the
input ordered as latitude/longitude (typically with the EPSG dataset), however,
internally PROJ expects an longitude/latitude ordering for all projections. This
is generally hidden for users but in a few cases it is exposed at the surface
level of PROJ, most prominently in the :program:`proj` utility which expects
longitude/latitude ordering of input date (unless :program:`proj -r` is used).
::
In case of doubt about the axis order of a specific CRS :program:`projinfo` is
able to provide an answer. Simply look up the CRS and examine the axis specification
of the Well-Known Text output:
+proj=laea +lon_0=-40.000000 +lat_0=74.000000 +x_0=1000000 +y_0=1700000 +a=2000000 +b=2000000"
.. code-block:: console
How do I do False Eastings and False Northings?
--------------------------------------------------------------------------------
Use ``+x_0`` and ``+y_0`` in the projection string.
projinfo EPSG:4326
PROJ.4 string:
+proj=longlat +datum=WGS84 +no_defs +type=crs
WKT2_2018 string:
GEOGCRS["WGS 84",
DATUM["World Geodetic System 1984",
ELLIPSOID["WGS 84",6378137,298.257223563,
LENGTHUNIT["metre",1]]],
PRIMEM["Greenwich",0,
ANGLEUNIT["degree",0.0174532925199433]],
CS[ellipsoidal,2],
AXIS["geodetic latitude (Lat)",north,
ORDER[1],
ANGLEUNIT["degree",0.0174532925199433]],
AXIS["geodetic longitude (Lon)",east,
ORDER[2],
ANGLEUNIT["degree",0.0174532925199433]],
USAGE[
SCOPE["unknown"],
AREA["World"],
BBOX[-90,-180,90,180]],
ID["EPSG",4326]]
+3 -8
View File
@@ -24,7 +24,7 @@ PROJ
.. only:: html
PROJ is a generic coordinate transformation software, that transforms geospatial
PROJ is a generic coordinate transformation software that transforms geospatial
coordinates from one coordinate reference system (CRS) to another. This
includes cartographic projections as well as geodetic transformations.
@@ -32,21 +32,16 @@ PROJ
coordinates from text files or directly from user input. In addition to the
command line utilities PROJ also exposes an
:ref:`application programming interface<reference>`, or API in short. The API
let developers use the functionality of PROJ in their own software without having
lets developers use the functionality of PROJ in their own software without having
to implement similar functionality themselves.
PROJ started purely as a cartography application letting users convert geodetic
coordinates into projected coordinates using a number of different cartographic
projections. Over the years, as the need has become apparent, support for datum
shifts has slowly worked it's way into PROJ as well. Today PROJ support more
shifts has slowly worked its way into PROJ as well. Today PROJ supports more
than a hundred different map projections and can transform coordinates between
datums using all but the most obscure geodetic techniques.
You can download the source code for PROJ on the :ref:`download section<download>`
and find links to prepackaged executables in the
:ref:`installation section<install>`.
In addition to this website the PROJ documentation is also available in `PDF`_
form.
.. _`PDF`: https://raw.githubusercontent.com/OSGeo/proj.4/gh-pages/proj.pdf
+2 -2
View File
@@ -54,9 +54,9 @@ To install PROJ do the following:
3. Select "Advanced Install" and press Next.
4. Select "Install from Internet" and press Next.
5. Select a installation directory. The default suggestion is fine in most cases. Press Next.
6. Select "Local packacke directory". The suggestions is fine in most cases. Press Next.
6. Select "Local package directory". The default suggestion is fine in most cases. Press Next.
7. Select "Direct connection" and press Next.
8. Choose the download.osgeo.org and press Next.
8. Choose the download.osgeo.org server and press Next.
9. Find "proj" under "Commandline_Utilities" and click the package in the "New" column until the version you want to install appears.
10. Press next to install PROJ.
+131
View File
@@ -3,6 +3,137 @@
News
###############################################################################
6.0.0 Release Notes
++++++++++++++++++++++++++++++++++++++++
*March 1st 2019*
PROJ 6 has undergone extensive changes to increase its functional scope from a
cartographic projection engine with so-called "early-binding" geodetic datum
transformation capabilities to a more complete library supporting coordinate
transformations and coordinate reference systems.
As a foundation for other enhancements, PROJ now includes a C++ implementation
of the modelisation propopsed by the ISO-19111:2019 standard / OGC Abstract
Specification Topic 2: "Referencing By Coordinates", for geodetic reference
frames (datums), coordinate reference systems and coordinate operations.
Construction and query of those geodetic objects is available through a new C++
API, and also accessible for the most part from bindings in the C API.
Those geodetic objects can be imported and exported from and into the OGC
Well-Known Text format (WKT) in its different variants: ESRI WKT, GDAL WKT 1,
WKT2:2015 (ISO 19162:2015) and WKT2:2018 (ISO 19162:2018). Import and export of
CRS objects from and into PROJ strings is also supported. This functionality
was previously available in the GDAL software library (except WKT2 support
which is a new feature), and is now an integral part of PROJ.
A unified database of geodetic objects, coordinate reference systems and their
metadata, and coordinate operations between those CRS is now available in a
SQLite3 database file, proj.db. This includes definitions imported from the
IOGP EPSG dataset (v9.6.0 release), the IGNF (French national mapping agency)
geodetic registry and the ESRI projection engine database. PROJ is now the
reference software in the "OSGeo C stack" for this CRS and coordinate operation
database, whereas previously this functionality was spread over PROJ, GDAL and
libgeotiff, and used CSV or other adhoc text-based formats.
Late-binding coordinate operation capabilities, that takes metadata such as
area of use and accuracy into account, has been added. This can avoid in a
number of situations the past requirement of using WGS84 as a pivot system,
which could cause unneeded accuracy loss, or was not doable at all sometimes
when transformation to WGS84 was not available. Those late-binding capabilities
are now used by the proj_create_crs_to_crs() function and the cs2cs utility.
A new command line utility, projinfo, has been added to query information about
a geodetic object of the database, import and export geodetic objects from/into
WKT and PROJ strings, and display coordinate operations available between two
CRSs.
UPDATES
-------
* Removed projects.h as a public interface (`#835 <https://github.com/OSGeo/proj.4/issues/835>`_)
* Deprecated the proj_api.h interface. The header file is still available
but will be removed with the next major version release of PROJ. It is
now required to define :c:macro:`ACCEPT_USE_OF_DEPRECATED_PROJ_API_H`
before the interface can be used (`#836 <https://github.com/OSGeo/proj.4/issues/836>`_)
* Removed support for the nmake build system (`#838 <https://github.com/OSGeo/proj.4/issues/838>`_)
* Removed support for the ``proj_def.dat`` defaults file (`#201 <https://github.com/OSGeo/proj.4/issues/201>`_)
* C++11 required for building PROJ (`#1203 <https://github.com/OSGeo/proj.4/issues/1203>`_)
* Added build dependency on SQLite 3.7 (`#1175 <https://github.com/OSGeo/proj.4/issues/1175>`_)
* Added :program:`projinfo` command line application (`#1189 <https://github.com/OSGeo/proj.4/issues/1189>`_)
* Added many functions to ``proj.h`` for handling ISO19111 functionality (`#1175 <https://github.com/OSGeo/proj.4/issues/1175>`_)
* Added C++ API exposing ISO19111 functionality (`#1175 <https://github.com/OSGeo/proj.4/issues/1175>`_)
* Updated :program:`cs2cs` to use late-binding features (`#1182 <https://github.com/OSGeo/proj.4/issues/1182>`_)
* Removed the ``nad2bin`` application. Now available in the
`proj-datumgrid <https://github.com/OSGeo/proj-datumgrid>`_
git repository (`#1236 <https://github.com/OSGeo/proj.4/issues/1236>`_)
* Removed support for Chebyshev polynomials in :program:`proj`
(`#1226 <https://github.com/OSGeo/proj.4/issues/1226>`_)
* Removed :c:func:`proj_geocentric_latitude` from `proj.h` API
(`#1170 <https://github.com/OSGeo/proj.4/issues/1170>`_)
* Changed behaviour of :program:`proj`: Now only allow initialization of
projections (`#1162 <https://github.com/OSGeo/proj.4/issues/1162>`_)
* Changed behaviour of :ref:`tmerc <tmerc>`: Now defaults to the Extended
Transverse Mercator algorithm (``etmerc``). Old implementation available
by adding ``+approx``
(`#404 <https://github.com/OSGeo/proj.4/issues/404>`_)
* Chaged behaviour: Default ellipsoid now set to GRS80 (was WGS84) (`#1210 <https://github.com/OSGeo/proj.4/issues/1210>`_)
* Allow multiple directories in :envvar:`PROJ_LIB` environment variable (`#1281 <https://github.com/OSGeo/proj.4/issues/1281>`_)
* Added :ref:`Lambert Conic Conformal (2SP Michigan) <lcc>` projection (`#1142 <https://github.com/OSGeo/proj.4/issues/1142>`_)
* Added :ref:`Bertin1953 <bertin1953>` projection (`#1133 <https://github.com/OSGeo/proj.4/issues/1133>`_)
* Added :ref:`Tobler-Mercator <tobmerc>` projection (`#1153 <https://github.com/OSGeo/proj.4/issues/1153>`_)
* Added :ref:`Molodensky-Badekas <molobadekas>` transform (`#1160 <https://github.com/OSGeo/proj.4/issues/1160>`_)
* Added :ref:`push <push>` and :ref:`pop <pop>` coordinate operations (`#1250 <https://github.com/OSGeo/proj.4/issues/1250>`_)
* Removed ``+t_obs`` parameter from helmert and deformation (`#1264 <https://github.com/OSGeo/proj.4/issues/1264>`_)
* Added :option:`+dt` parameter to deformation as replacement for
removed ``+t_obs`` (`#1264 <https://github.com/OSGeo/proj.4/issues/1264>`_)
BUG FIXES
---------
* Read :option:`+towgs84` values correctly on locales not using dot as comma separator (`#1136 <https://github.com/OSGeo/proj.4/issues/1136>`_)
* Fixed file offset for reading of shift values in NTv1 files (`#1144 <https://github.com/OSGeo/proj.4/issues/1144>`_)
* Avoid problems with :c:macro:`PTHREAD_MUTEX_RECURSIVE` when using CMake (`#1158 <https://github.com/OSGeo/proj.4/issues/1158>`_)
* Avoid raising errors when setting ellipsoid flattening to zero (`#1191 <https://github.com/OSGeo/proj.4/issues/1191>`_)
* Fixed lower square calculations in :ref:`rHealpix <rhealpix>` projection (`#1206 <https://github.com/OSGeo/proj.4/issues/1206>`_)
* Allow :ref:`Molodensky <molodensky>` transform parameters to be zero (`#1194 <https://github.com/OSGeo/proj.4/issues/1194>`_)
* Fixed wrong parameter in ``ITRF2000`` init file (`#1240 <https://github.com/OSGeo/proj.4/issues/1240>`_)
* Fixed use of grid paths including spaces (`#1152 <https://github.com/OSGeo/proj.4/issues/1152>`_)
* :ref:`Robinson <robin>`: fix wrong values for forward path for latitudes >= 87.5,
and fix inaccurate inverse method (`#1172 <https://github.com/OSGeo/proj.4/issues/1172>`_)
PROJ 5.2.0
++++++++++++++++++++++++++++++++++++++++
*September 15th 2018*
@@ -17,7 +17,7 @@ Usage
All of the projections of spherical library can be used as an
oblique projection by means of the General Oblique Transformation. The user
performs the oblique transformation by selecting the oblique projection
``+proj=obt_ran``, specifying the translation factors, :option:`+o_lat_p`, and
``+proj=ob_tran``, specifying the translation factors, :option:`+o_lat_p`, and
:option:`+o_lon_p`, and the projection to be used, :option:`+o_proj`. In the
example of the Fairgrieve projection the latitude and longitude of the pole of
the new coordinates, :math:`\alpha` and :math:`\beta` respectively, are to be placed
+1 -1
View File
@@ -100,7 +100,7 @@ Parameters
Mathematical definition
#######################
The formulas describing the Transverse Mercator below are quoted from Evenden's [Evenden2005]_.
The formulas describing the Transverse Mercator below are quoted from :cite:`Evenden2005`.
:math:`\phi_0` is the latitude of origin that match the center of the map. It can be set with ``+lat_0``.
@@ -66,7 +66,7 @@ Mathematical definition
#######################
The formulas describing the Tobler-Mercator are taken from Waldo Tobler's
article :cite:`Tobler2017`
article :cite:`Tobler2018`
Spherical form
**************
+4 -2
View File
@@ -14,12 +14,14 @@ Urmaev V
Parameters
################################################################################
.. note:: All parameters are optional for the projection.
Required parameters
--------------------------------------------------------------------------------
.. option:: +n=<value>
Set the :math:`n` constant. Value between 0 and 1.
Optional parameters
--------------------------------------------------------------------------------
.. option:: +q=<value>
Set the :math:`q` constant.
+1 -1
View File
@@ -37,7 +37,7 @@ to which specific parameters, such as central meridians, have been applied.
The Earth is divided into 60 zones each generally 6° wide in longitude.
Bounding meridians are evenly divisible by 6°, and zones are
numbered from 1 to 60 proceeding east from the 180th meridian from Greenwich
with minor exceptions [Snyder1987]_.
with minor exceptions :cite:`Snyder1987`.
Usage
#####
@@ -64,7 +64,7 @@ Parameters
Mathematical definition
#######################
The formulas describing the Mercator projection are all taken from G. Evenden's libproj manuals [Evenden2005]_.
The formulas describing the Mercator projection are all taken from G. Evenden's libproj manuals :cite:`Evenden2005`.
Forward projection
==================
@@ -21,11 +21,11 @@ latitude coordinates, and an offset to the ellipsoidal height.
This method is normally only used when low accuracy is tolerated. It is documented
as coordinate operation method code 9619 (for geographic 2D) and 9660 (for
geographic 3D) in the EPSG dataset (:cite:`EPSGGuidanceNumber7Part2`)
geographic 3D) in the EPSG dataset (:cite:`IOGP2018`)
It can also be used to implement the method Geographic2D with Height Offsets
(code 9618) by noting that the input vertical component is a gravity-related
height and the output vertical component is the ellispoid height (dh being
height and the output vertical component is the ellipsoid height (dh being
the geoid undulation).
It can also be used to implement the method Vertical offset (code 9616)
@@ -28,7 +28,7 @@ space used.
PROJ implements two versions of the Horner evaluation scheme: Real and complex
polynomial evaluation. Below both are briefly described. For more details consult
:cite:`Ruffhead2016` and :cite:`EPSGGuidanceNumber7Part2`.
:cite:`Ruffhead2016` and :cite:`IOGP2018`.
The polynomial evaluation in real number space is defined by the following equations:
@@ -23,7 +23,7 @@ a specific amount determined by the loaded grids. The simplest use case of the
horizontal grid shift is applying a single grid. Here we change the vertical
reference from the ellipsoid to the global geoid model, EGM96::
+proj=vgridshift +grids=egm96_16.gtx
+proj=vgridshift +grids=egm96_15.gtx
More than one grid can be loaded at the same time, for instance in the case where
@@ -31,7 +31,7 @@ a better geoid model than the global is available for a certain area. Here the
gridshift is set up so that the local DVR90 geoid model takes precedence over
the global model::
+proj=vgridshift +grids=@dvr90.gtx,egm96_16.gtx
+proj=vgridshift +grids=@dvr90.gtx,egm96_15.gtx
The ``@`` in the above example states that the grid is optional, in case the grid
is not found in the PROJ search path. The list of grids is prioritized so that
+62 -38
View File
@@ -4,7 +4,7 @@
@Article{Altamimi2002,
Title = {{ITRF2000}: A new release of the {International Terrestrial Reference Frame} for earth science applications},
Author = {Z. Altamimi and P. Sillard and C. Boucher},
Author = {Zuheir Altamimi and Patrick Sillard and Claude Boucher},
Journal = {Journal of Geophysical Research: Solid Earth},
Year = {2002},
Number = {B10},
@@ -22,12 +22,13 @@
Pages = {241--254},
Volume = {4},
Url = {https://arxiv.org/abs/0908.1824}
Archiveprefix = {arXiv},
Eprint = {0908.1824}
}
@Article{CalabrettaGreisen2002,
Title = {Representations of celestial coordinates in {FITS}},
Author = {Calabretta, M. R. and Greisen, E. W.},
Author = {M. R. Calabretta and E. W. Greisen},
Journal = {Astronomy \& Astrophysics},
Year = {2002},
Number = {3},
@@ -39,7 +40,7 @@
@TechReport{ChanONeil1975,
Title = {Feasibility Study of a Quadrilateralized Spherical Cube Earth Data Base},
Author = {Chan, F. K. and O'Neill, E. M.},
Author = {F. K. Chan and E. M. O'Neill},
Institution = {Computer Sciences Corporation, System Sciences Division},
Year = {1975},
@@ -68,12 +69,14 @@
Institution = {Department of Mathematical and Geospatial Sciences, RMIT University},
Year = {2004},
Address = {Melborne, Australia},
Url = {http://www.mygeodesy.id.au/documents/Molodensky%20V2.pdf}
}
@Article{EberHewitt1979,
Title = {Conversion algorithms for the {CalCOFI} station grid},
Author = {L. E. Eber and R. P. Hewitt},
Author = {L. E. Eber and Roger P. Hewitt},
Journal = {California Cooperative Oceanic Fisheries Investigations Reports},
Year = {1979},
Pages = {135--137},
@@ -84,7 +87,7 @@
@Manual{Evenden2005,
Title = {libproj4: A Comprehensive Library of Cartographic Projection Functions (Preliminary Draft)},
Author = {G. I. Evenden},
Author = {Gerald I. Evenden},
Year = {2005},
Url = {https://github.com/OSGeo/proj.4/blob/master/docs/old/libproj.pdf}
@@ -92,7 +95,7 @@
@Manual{Evenden1995,
Title = {Cartographic Projection Procedures for the {UNIX} Environment --- {A} User's Manual},
Author = {G. I. Evenden},
Author = {Gerald I. Evenden},
Year = {1995},
Url = {https://pubs.usgs.gov/of/1990/of90-284/ofr90-284.pdf}
@@ -100,10 +103,12 @@
@InProceedings{EversKnudsen2017,
Title = {Transformation pipelines for {PROJ.4}},
Author = {K. Evers and T. Knudsen},
Author = {Kristian Evers and Thomas Knudsen},
Booktitle = {FIG Working Week 2017 Proceedings},
Year = {2017},
Address = {Helsinki, Finland},
Url = {http://www.fig.net/resources/proceedings/fig_proceedings/fig2017/papers/iss6b/ISS6B_evers_knudsen_9156.pdf}
}
@@ -134,17 +139,43 @@
@InProceedings{Hensley2002,
Title = {Improved Processing of {AIRSAR} Data Based on the {GeoSAR} Processor},
Author = {S. Hensley and E. Chapin and A. Freedman and T. Michel},
Author = {Scott Hensley and Elaine Chapin and Adam Freedman and Thierry Michel},
Booktitle = {AIRSAR Earth Science and Application Workshop},
Year = {2002},
Address = {Pasadena, California},
Organization = {Jet Propulsion Laboratory},
Url = {https://airsar.jpl.nasa.gov/documents/workshop2002/papers/T3.pdf}
}
@TechReport{IOGP2018,
Title = {Geomatics Guidance Note 7, part 2: Coordinate Conversions \& Transformations including Formulas},
Author = {IOGP},
Institution = {International Association For Oil And Gas Producers},
Year = {2018},
Number = {373-7-2},
Type = {IOGP Publication},
Url = {https://www.iogp.org/bookstore/product/coordinate-conversions-and-transformation-including-formulas/}
}
@TechReport{ISO19111,
Title = {{Geographic information -- Referencing by coordinates}},
Author = {ISO},
Year = {2019},
Type = {Standard},
Key = {ISO 19111:2019},
Month = Jan,
Volume = {2019},
Address = {Geneva, CH},
Institution = {International Organization for Standardization},
Url = {http://docs.opengeospatial.org/as/18-005r4/18-005r4.html}
}
@Article{Jenny2015,
Title = {A compromise aspect-adaptive cylindrical projection for world maps},
Author = {B. Jenny and B. Šavrič and T. Patterson},
Author = {Bernhard Jenny and Bojan Šavrič and Tom Patterson},
Journal = {International Journal of Geographical Information Science},
Year = {2015},
Number = {6},
@@ -157,7 +188,7 @@
@Article{Karney2013,
Title = {Algorithms for geodesics},
Author = {C. F. F. Karney},
Author = {Charles F. F. Karney},
Journal = {Journal of Geodesy},
Year = {2013},
Number = {1},
@@ -169,7 +200,7 @@
@Article{Karney2011,
Title = {Geodesics on an ellipsoid of revolution},
Author = {C. F. F. Karney},
Author = {Charles F. F. Karney},
Journal = {ArXiv e-prints},
Year = {2011},
@@ -180,7 +211,7 @@
@Article{Komsta2016,
Title = {{ATPOL} geobotanical grid revisited -- a proposal of coordinate conversion algorithms},
Author = {Ł. Komsta},
Author = {Łukasz Komsta},
Journal = {Annales UMCS Sectio E Agricultura},
Year = {2016},
Number = {1},
@@ -190,10 +221,10 @@
@InProceedings{LambersKolb2012,
Title = {Ellipsoidal Cube Maps for Accurate Rendering of Planetary-Scale Terrain Data},
Author = {M. Lambers and A. Kolb},
Author = {Lambers, Martin and Kolb, Andreas},
Booktitle = {Pacific Graphics Short Papers},
Year = {2012},
Editor = {C. Bregler and P. Sander and M. Wimmer},
Editor = {Chris Bregler and Pedro Sander and Michael Wimmer},
Publisher = {The Eurographics Association},
Doi = {10.2312/PE/PG/PG2012short/005-010}
@@ -214,7 +245,7 @@
@Article{Patterson2014,
Title = {Introducing the {Patterson} Cylindrical Projection},
Author = {T. Patterson and B. Šavrič and B. Jenny},
Author = {Tom Patterson and Bojan Šavrič and Bernhard Jenny},
Journal = {Cartographic Perspectives},
Year = {2014},
Volume = {78},
@@ -224,7 +255,7 @@
@TechReport{Poder1998,
Title = {Some Conformal Mappings and Transformations for Geodesy and Topographic Cartography},
Author = {K. Poder and K. Engsager},
Author = {Knud Poder and Karsten Engsager},
Institution = {National Survey and Cadastre},
Year = {1998},
@@ -240,7 +271,7 @@
@Misc{Rittri2012,
Title = {New omerc approximations of {Denmark System 34}},
Author = {M. Rittri},
Author = {Mikael Rittri},
HowPublished = {e-mail},
Year = {2012},
@@ -253,7 +284,7 @@
Journal = {Survey Review},
Year = {2016},
Number = {358},
Pages = {82-90},
Pages = {82--90},
Volume = {50},
Doi = {10.1080/00396265.2016.1244143},
@@ -262,10 +293,11 @@
@Article{Savric2018,
Title = {The {Equal Earth} map projection},
Author = {B. Šavrič and T. Patterson and B. Jenny},
Author = {Bojan Šavrič and Tom Patterson and Bernhard Jenny},
Journal = {International Journal of Geographical Information Science},
Year = {2018},
Number = {3},
Pages = {454--465},
Volume = {33},
Doi = {10.1080/13658816.2018.1504949},
@@ -274,8 +306,8 @@
@Article{Savric2015,
Title = {The {Natural Earth II} world map projection},
Author = {B. Šavrič and T. Patterson and B. Jenny},
Journal = {International Journal of Geographical Information Science},
Author = {Bojan Šavrič and Tom Patterson and Bernhard Jenny},
Journal = {International Journal of Cartography},
Year = {2015},
Number = {2},
Pages = {123--133},
@@ -287,14 +319,14 @@
@Book{Snyder1993,
Title = {Flattening the Earth},
Author = {J. P. Snyder},
Author = {John P. Snyder},
Publisher = {University of Chicago Press},
Year = {1993}
}
@Article{Snyder1988,
Title = {New Equal-Area Map Projections For Noncircular Regions},
Author = {J. P. Snyder},
Author = {John P. Snyder},
Journal = {The American Cartographer},
Year = {1988},
Number = {4},
@@ -307,7 +339,7 @@
@TechReport{Snyder1987,
Title = {Map Projections --- {A} Working Manual},
Author = {J. P. Snyder},
Author = {John P. Snyder},
Institution = {U.S. Geological Survey},
Year = {1987},
Number = {1395},
@@ -324,11 +356,11 @@
Edition = {15th}
}
@Article{Tobler2017,
@Article{Tobler2018,
Title = {A new companion for {Mercator}},
Author = {W. Tobler},
Author = {Waldo Tobler},
Journal = {Cartography and Geographic Information Science},
Year = {2017},
Year = {2018},
Number = {3},
Pages = {284--285},
Volume = {45},
@@ -363,7 +395,7 @@
@Article{WeberMoore2013,
Title = {Corrected Conversion Algorithms For The {CalCOFI} Station Grid And Their Implementation In Several Computer Languages},
Author = {E. D. Weber and T. J. Moore},
Author = {Edward D. Weber and Thomas J. Moore},
Journal = {California Cooperative Oceanic Fisheries Investigations Reports},
Year = {2013},
Pages = {1--10},
@@ -374,7 +406,7 @@
@Article{Zajac1978,
Title = {Atlas of Distribution of Vascular Plants in {Poland} ({ATPOL})},
Author = {A. Zajaç},
Author = {Adam Zajaç},
Journal = {Taxon},
Year = {1978},
Number = {5/6},
@@ -384,11 +416,3 @@
Doi = {10.2307/1219899}
}
@Manual{EPSGGuidanceNumber7Part2,
Title = {Geomatics Guidance Note 7, part 2 - Coordinate Conversions \& Transformations including Formulas},
Year = {2018},
Institution = {International Association For Oil And Gas Producers},
Url = {https://www.iogp.org/bookstore/product/coordinate-conversions-and-transformation-including-formulas/}
}
+1 -1
View File
@@ -106,7 +106,7 @@ Brazil
Netherlands
................................................................................
`Dutch grid <https://www.kadaster.nl/web/Themas/Registraties/Rijksdriehoeksmeting/Transformatie-van-coordinaten.htm>`__ (Registration required before download)
`Dutch grid <https://zakelijk.kadaster.nl/transformatie-van-coordinaten>`__ (Registration required before download)
Portugal
................................................................................
+3 -3
View File
@@ -97,8 +97,8 @@ Effectively this means that the direction of the operation has been reversed,
so that what in PROJ 5 was a forward operation is now an inverse operation and
vice versa.
Pipelines written for PROJ 5 can be migrated to PROJ 6 by adding :option:`
+inv` to forward steps involving the deformation operation. Similarly
Pipelines written for PROJ 5 can be migrated to PROJ 6 by adding :option:`+inv`
to forward steps involving the deformation operation. Similarly
:option:`+inv` should be removed from inverse steps to be compatible with
PROJ 6.
@@ -113,4 +113,4 @@ the time span for which they wish to apply a given deformation. The parameter
exclusive with :option:`+t_epoch`. :option:`+dt` is used when deformation
for a set amount of time is needed and :option:`+t_epoch` is used (in
conjunction with the observation time of the input coordinate) when
deformation from a specific epoch to the observation time is needed.
deformation from a specific epoch to the observation time is needed.
+25 -6
View File
@@ -42,23 +42,42 @@
int main (void) {
PJ_CONTEXT *C;
PJ *P;
PJ* P_for_GIS;
PJ_COORD a, b;
/* or you may set C=PJ_DEFAULT_CTX if you are sure you will */
/* use PJ objects from only one thread */
C = proj_context_create();
P = proj_create (C, "+proj=utm +zone=32 +ellps=GRS80");
if (0==P)
return puts ("Oops"), 0;
P = proj_create_crs_to_crs (C,
"EPSG:4326",
"+proj=utm +zone=32 +datum=WGS84", /* or EPSG:32632 */
NULL);
if (0==P) {
fprintf(stderr, "Oops\n");
return 1;
}
/* This will ensure that the order of coordinates for the input CRS */
/* will be longitude, latitude, whereas EPSG:4326 mandates latitude, */
/* longitude */
P_for_GIS = proj_normalize_for_visualization(C, P);
if( 0 == P_for_GIS ) {
fprintf(stderr, "Oops\n");
return 1;
}
proj_destroy(P);
P = P_for_GIS;
/* a coordinate union representing Copenhagen: 55d N, 12d E */
/* note: PROJ.4 works in radians, hence the proj_torad() calls */
a = proj_coord (proj_torad(12), proj_torad(55), 0, 0);
/* Given that we have used proj_normalize_for_visualization(), the order of
/* coordinates is longitude, latitude, and values are expressed in degrees. */
a = proj_coord (12, 55, 0, 0);
/* transform to UTM zone 32, then back to geographical */
b = proj_trans (P, PJ_FWD, a);
printf ("easting: %g, northing: %g\n", b.enu.e, b.enu.n);
printf ("easting: %.3f, northing: %.3f\n", b.enu.e, b.enu.n);
b = proj_trans (P, PJ_INV, b);
printf ("longitude: %g, latitude: %g\n", b.lp.lam, b.lp.phi);
+15 -9
View File
@@ -63,15 +63,15 @@ namespace operation {
/** \brief Grid description */
struct GridDescription {
std::string shortName{}; /**< Grid short filename */
std::string fullName{}; /**< Grid full path name (if found) */
std::string packageName{}; /**< Package name (or empty) */
std::string url{}; /**< Grid URL (if packageName is empty), or package
URL (or empty) */
bool directDownload = false; /**< Whether url can be fetched directly. */
bool openLicense =
false; /**< Whether the grid is released with an open license. */
bool available = false; /**< Whether GRID is available. */
std::string shortName; /**< Grid short filename */
std::string fullName; /**< Grid full path name (if found) */
std::string packageName; /**< Package name (or empty) */
std::string url; /**< Grid URL (if packageName is empty), or package
URL (or empty) */
bool directDownload; /**< Whether url can be fetched directly. */
/** Whether the grid is released with an open license. */
bool openLicense;
bool available; /**< Whether GRID is available. */
//! @cond Doxygen_Suppress
bool operator<(const GridDescription &other) const {
@@ -150,6 +150,8 @@ class PROJ_GCC_DLL CoordinateOperation : public common::ObjectUsage,
PROJ_DLL bool hasBallparkTransformation() const;
PROJ_DLL static const std::string OPERATION_VERSION_KEY;
protected:
PROJ_INTERNAL CoordinateOperation();
PROJ_INTERNAL CoordinateOperation(const CoordinateOperation &other);
@@ -171,6 +173,10 @@ class PROJ_GCC_DLL CoordinateOperation : public common::ObjectUsage,
const std::vector<metadata::PositionalAccuracyNNPtr> &accuracies);
PROJ_INTERNAL void setHasBallparkTransformation(bool b);
PROJ_INTERNAL void
setProperties(const util::PropertyMap
&properties); // throw(InvalidValueTypeException)
private:
PROJ_OPAQUE_PRIVATE_DATA
CoordinateOperation &operator=(const CoordinateOperation &other) = delete;
+15 -15
View File
@@ -503,7 +503,7 @@ class PROJ_GCC_DLL DerivedCRS : virtual public SingleCRS {
PROJ_INTERNAL void setDerivingConversionCRS();
PROJ_INTERNAL void baseExportToWKT(
io::WKTFormatter *&formatter, const std::string &keyword,
io::WKTFormatter *formatter, const std::string &keyword,
const std::string &baseKeyword) const; // throw(FormattingException)
PROJ_INTERNAL bool
@@ -1205,23 +1205,23 @@ class PROJ_GCC_DLL DerivedCRSTemplate final : public DerivedCRSTraits::BaseType,
typedef util::nn<std::shared_ptr<CSType>> CSNNPtr;
/** \brief Return the base CRS of a DerivedCRSTemplate.
*
* @return the base CRS.
*/
*
* @return the base CRS.
*/
PROJ_DLL const BaseNNPtr baseCRS() const;
/** \brief Instantiate a DerivedCRSTemplate from a base CRS, a deriving
* conversion and a cs::CoordinateSystem.
*
* @param properties See \ref general_properties.
* At minimum the name should be defined.
* @param baseCRSIn base CRS.
* @param derivingConversionIn the deriving conversion from the base CRS to
* this
* CRS.
* @param csIn the coordinate system.
* @return new DerivedCRSTemplate.
*/
* conversion and a cs::CoordinateSystem.
*
* @param properties See \ref general_properties.
* At minimum the name should be defined.
* @param baseCRSIn base CRS.
* @param derivingConversionIn the deriving conversion from the base CRS to
* this
* CRS.
* @param csIn the coordinate system.
* @return new DerivedCRSTemplate.
*/
PROJ_DLL static NNPtr
create(const util::PropertyMap &properties, const BaseNNPtr &baseCRSIn,
const operation::ConversionNNPtr &derivingConversionIn,
+1
View File
@@ -133,6 +133,7 @@ class WKTConstants {
static const std::string BASEENGCRS;
static const std::string BASEPARAMCRS;
static const std::string BASETIMECRS;
static const std::string VERSION;
// WKT2 alternate (longer or shorter)
static const std::string GEODETICCRS;
+27 -15
View File
@@ -195,8 +195,7 @@ class PROJ_GCC_DLL WKTFormatter {
WKT2_2018_SIMPLIFIED,
/** WKT1 as traditionally output by GDAL, deriving from OGC 01-009.
A notable departuPROJ_GCC_DLLre from WKT1_GDAL with respect to OGC
01-009 is
A notable departure from WKT1_GDAL with respect to OGC 01-009 is
that in WKT1_GDAL, the unit of the PRIMEM value is always degrees.
*/
WKT1_GDAL,
@@ -262,6 +261,13 @@ class PROJ_GCC_DLL WKTFormatter {
PROJ_INTERNAL void popOutputId();
PROJ_INTERNAL bool outputId() const;
PROJ_INTERNAL void pushHasId(bool hasId);
PROJ_INTERNAL void popHasId();
PROJ_INTERNAL void pushDisableUsage();
PROJ_INTERNAL void popDisableUsage();
PROJ_INTERNAL bool outputUsage() const;
PROJ_INTERNAL void
pushAxisLinearUnit(const common::UnitOfMeasureNNPtr &unit);
PROJ_INTERNAL void popAxisLinearUnit();
@@ -303,6 +309,8 @@ class PROJ_GCC_DLL WKTFormatter {
PROJ_INTERNAL bool primeMeridianOrParameterUnitOmittedIfSameAsAxis() const;
PROJ_INTERNAL bool primeMeridianInDegree() const;
PROJ_INTERNAL bool outputCSUnitOnlyOnceIfSame() const;
PROJ_INTERNAL bool idOnTopLevelOnly() const;
PROJ_INTERNAL bool topLevelHasId() const;
/** WKT version. */
enum class Version {
@@ -891,31 +899,35 @@ class PROJ_GCC_DLL AuthorityFactory {
/** CRS information */
struct CRSInfo {
/** Authority name */
std::string authName{};
std::string authName;
/** Code */
std::string code{};
std::string code;
/** Name */
std::string name{};
std::string name;
/** Type */
ObjectType type{ObjectType::CRS};
ObjectType type;
/** Whether the object is deprecated */
bool deprecated{};
bool deprecated;
/** Whereas the west_lon_degree, south_lat_degree, east_lon_degree and
* north_lat_degree fields are valid. */
bool bbox_valid{};
* north_lat_degree fields are valid. */
bool bbox_valid;
/** Western-most longitude of the area of use, in degrees. */
double west_lon_degree{};
double west_lon_degree;
/** Southern-most latitude of the area of use, in degrees. */
double south_lat_degree{};
double south_lat_degree;
/** Eastern-most longitude of the area of use, in degrees. */
double east_lon_degree{};
double east_lon_degree;
/** Northern-most latitude of the area of use, in degrees. */
double north_lat_degree{};
double north_lat_degree;
/** Name of the area of use. */
std::string areaName{};
std::string areaName;
/** Name of the projection method for a projected CRS. Might be empty
* even for projected CRS in some cases. */
std::string projectionMethodName{};
std::string projectionMethodName;
//! @cond Doxygen_Suppress
CRSInfo();
//! @endcond
};
PROJ_DLL std::list<CRSInfo> getCRSInfoList() const;
+7 -1
View File
@@ -1,4 +1,10 @@
install (FILES man1/proj.1 man1/cs2cs.1 man1/geod.1 man1/cct.1 man1/gie.1
install(FILES
man1/proj.1
man1/cs2cs.1
man1/geod.1
man1/cct.1
man1/gie.1
man1/projinfo.1
DESTINATION share/man/man1)
install (FILES man3/pj_init.3 man3/geodesic.3
+16 -12
View File
@@ -240,8 +240,8 @@ def fill_compound_crs(proj_db_cursor):
raise
def fill_helmert_transformation(proj_db_cursor):
proj_db_cursor.execute("SELECT coord_op_code, coord_op_name, coord_op_method_code, coord_op_method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, epsg_coordoperation.deprecated FROM epsg.epsg_coordoperation LEFT JOIN epsg.epsg_coordoperationmethod USING (coord_op_method_code) WHERE coord_op_type = 'transformation' AND coord_op_method_code IN (1031, 1032, 1033, 1034, 1035, 1037, 1038, 1039, 1053, 1054, 1055, 1056, 1057, 1058, 1061, 1062, 1063, 1065, 1066, 9603, 9606, 9607, 9636) ")
for (code, name, method_code, method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, deprecated) in proj_db_cursor.fetchall():
proj_db_cursor.execute("SELECT coord_op_code, coord_op_name, coord_op_method_code, coord_op_method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, coord_tfm_version, epsg_coordoperation.deprecated FROM epsg.epsg_coordoperation LEFT JOIN epsg.epsg_coordoperationmethod USING (coord_op_method_code) WHERE coord_op_type = 'transformation' AND coord_op_method_code IN (1031, 1032, 1033, 1034, 1035, 1037, 1038, 1039, 1053, 1054, 1055, 1056, 1057, 1058, 1061, 1062, 1063, 1065, 1066, 9603, 9606, 9607, 9636) ")
for (code, name, method_code, method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, coord_tfm_version, deprecated) in proj_db_cursor.fetchall():
expected_order = 1
max_n_params = 15
param_auth_name = [None for i in range(max_n_params)]
@@ -334,16 +334,17 @@ def fill_helmert_transformation(proj_db_cursor):
param_value[13], EPSG_AUTHORITY if param_uom_code[13] else None, param_uom_code[13],
param_value[14], EPSG_AUTHORITY if param_uom_code[14] else None, param_uom_code[14],
px, py, pz, EPSG_AUTHORITY if px else None, pivot_uom_code,
coord_tfm_version,
deprecated
)
#proj_db_cursor.execute("INSERT INTO coordinate_operation VALUES (?,?,'helmert_transformation')", (EPSG_AUTHORITY, code))
proj_db_cursor.execute('INSERT INTO helmert_transformation VALUES (' +
'?,?,?, ?,?, ?,?,?, ?,?, ?,?, ?,?, ?, ?,?,?,?,?, ?,?,?,?,?, ?,?,?, ?,?,?,?,?, ?,?,?,?,?, ?,?,?, ?,?,?, ?,?,?,?,?, ?)', arg)
'?,?,?, ?,?, ?,?,?, ?,?, ?,?, ?,?, ?, ?,?,?,?,?, ?,?,?,?,?, ?,?,?, ?,?,?,?,?, ?,?,?,?,?, ?,?,?, ?,?,?, ?,?,?,?,?, ?,?)', arg)
def fill_grid_transformation(proj_db_cursor):
proj_db_cursor.execute("SELECT coord_op_code, coord_op_name, coord_op_method_code, coord_op_method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, epsg_coordoperation.deprecated FROM epsg.epsg_coordoperation LEFT JOIN epsg.epsg_coordoperationmethod USING (coord_op_method_code) WHERE coord_op_type = 'transformation' AND (coord_op_method_name LIKE 'Geographic3D to%' OR coord_op_method_name LIKE 'Geog3D to%' OR coord_op_method_name LIKE 'Point motion by grid%' OR coord_op_method_name LIKE 'Vertical Offset by Grid Interpolation%' OR coord_op_method_name IN ('NADCON', 'NTv1', 'NTv2', 'VERTCON'))")
for (code, name, method_code, method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, deprecated) in proj_db_cursor.fetchall():
proj_db_cursor.execute("SELECT coord_op_code, coord_op_name, coord_op_method_code, coord_op_method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, coord_tfm_version, epsg_coordoperation.deprecated FROM epsg.epsg_coordoperation LEFT JOIN epsg.epsg_coordoperationmethod USING (coord_op_method_code) WHERE coord_op_type = 'transformation' AND (coord_op_method_name LIKE 'Geographic3D to%' OR coord_op_method_name LIKE 'Geog3D to%' OR coord_op_method_name LIKE 'Point motion by grid%' OR coord_op_method_name LIKE 'Vertical Offset by Grid Interpolation%' OR coord_op_method_name IN ('NADCON', 'NTv1', 'NTv2', 'VERTCON'))")
for (code, name, method_code, method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, coord_tfm_version, deprecated) in proj_db_cursor.fetchall():
expected_order = 1
max_n_params = 2
param_auth_name = [None for i in range(max_n_params)]
@@ -401,12 +402,13 @@ def fill_grid_transformation(proj_db_cursor):
EPSG_AUTHORITY, param_code[0], param_name[0], param_value[0],
grid2_param_auth_name, grid2_param_code, grid2_param_name, grid2_value,
interpolation_crs_auth_name, interpolation_crs_code,
coord_tfm_version,
deprecated
)
#proj_db_cursor.execute("INSERT INTO coordinate_operation VALUES (?,?,'grid_transformation')", (EPSG_AUTHORITY, code))
proj_db_cursor.execute('INSERT INTO grid_transformation VALUES (' +
'?,?,?, ?,?, ?,?,?, ?,?, ?,?, ?,?, ?, ?,?,?,?, ?,?,?,?, ?,?, ?)', arg)
'?,?,?, ?,?, ?,?,?, ?,?, ?,?, ?,?, ?, ?,?,?,?, ?,?,?,?, ?,?, ?,?)', arg)
def fill_other_transformation(proj_db_cursor):
# 9601: Longitude rotation
@@ -415,8 +417,8 @@ def fill_other_transformation(proj_db_cursor):
# 9619: Geographic2D offsets
# 9624: Affine Parametric Transformation
# 9660: Geographic3D offsets
proj_db_cursor.execute("SELECT coord_op_code, coord_op_name, coord_op_method_code, coord_op_method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, epsg_coordoperation.deprecated FROM epsg.epsg_coordoperation LEFT JOIN epsg.epsg_coordoperationmethod USING (coord_op_method_code) WHERE coord_op_type = 'transformation' AND coord_op_method_code IN (9601, 9616, 9618, 9619, 9624, 9660)")
for (code, name, method_code, method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, deprecated) in proj_db_cursor.fetchall():
proj_db_cursor.execute("SELECT coord_op_code, coord_op_name, coord_op_method_code, coord_op_method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, coord_tfm_version, epsg_coordoperation.deprecated FROM epsg.epsg_coordoperation LEFT JOIN epsg.epsg_coordoperationmethod USING (coord_op_method_code) WHERE coord_op_type = 'transformation' AND coord_op_method_code IN (9601, 9616, 9618, 9619, 9624, 9660)")
for (code, name, method_code, method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, coord_tfm_version, deprecated) in proj_db_cursor.fetchall():
expected_order = 1
max_n_params = 7
param_auth_name = [None for i in range(max_n_params)]
@@ -459,16 +461,17 @@ def fill_other_transformation(proj_db_cursor):
param_uom_auth_name[5], param_uom_code[5], param_auth_name[6],
param_code[6], param_name[6], param_value[6],
param_uom_auth_name[6], param_uom_code[6],
coord_tfm_version,
deprecated)
#proj_db_cursor.execute("INSERT INTO coordinate_operation VALUES (?,?,'other_transformation')", (EPSG_AUTHORITY, code))
proj_db_cursor.execute('INSERT INTO other_transformation VALUES (' +
'?,?,?, ?,?, ?,?,?, ?,?, ?,?, ?,?, ?, ?,?,?,?,?,?, ?,?,?,?,?,?, ?,?,?,?,?,?, ' +
'?,?,?,?,?,?, ?,?,?,?,?,?, ?,?,?,?,?,?, ?,?,?,?,?,?, ?)', arg)
'?,?,?,?,?,?, ?,?,?,?,?,?, ?,?,?,?,?,?, ?,?,?,?,?,?, ?,?)', arg)
def fill_concatenated_operation(proj_db_cursor):
proj_db_cursor.execute("SELECT coord_op_code, coord_op_name, coord_op_method_code, coord_op_method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, epsg_coordoperation.deprecated FROM epsg.epsg_coordoperation LEFT JOIN epsg.epsg_coordoperationmethod USING (coord_op_method_code) WHERE coord_op_type = 'concatenated operation'")
for (code, name, method_code, method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, deprecated) in proj_db_cursor.fetchall():
proj_db_cursor.execute("SELECT coord_op_code, coord_op_name, coord_op_method_code, coord_op_method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, coord_tfm_version, epsg_coordoperation.deprecated FROM epsg.epsg_coordoperation LEFT JOIN epsg.epsg_coordoperationmethod USING (coord_op_method_code) WHERE coord_op_type = 'concatenated operation'")
for (code, name, method_code, method_name, source_crs_code, target_crs_code, area_of_use_code, coord_op_accuracy, coord_tfm_version, deprecated) in proj_db_cursor.fetchall():
expected_order = 1
max_n_params = 3
step_code = [None for i in range(max_n_params)]
@@ -493,6 +496,7 @@ def fill_concatenated_operation(proj_db_cursor):
EPSG_AUTHORITY, step_code[0],
EPSG_AUTHORITY, step_code[1],
EPSG_AUTHORITY if step_code[2] else None, step_code[2],
coord_tfm_version,
deprecated
)
@@ -510,7 +514,7 @@ def fill_concatenated_operation(proj_db_cursor):
if step1_exists and step2_exists and step3_exists:
#proj_db_cursor.execute("INSERT INTO coordinate_operation VALUES (?,?,'concatenated_operation')", (EPSG_AUTHORITY, code))
proj_db_cursor.execute('INSERT INTO concatenated_operation VALUES (' +
'?,?,?, ?,?, ?,?, ?,?, ?,?, ?, ?,?, ?,?, ?,?, ?)', arg)
'?,?,?, ?,?, ?,?, ?,?, ?,?, ?, ?,?, ?,?, ?,?, ?,?)', arg)
def fill_alias(proj_db_cursor):
proj_db_cursor.execute("SELECT object_code, alias FROM epsg.epsg_alias WHERE object_table_name = 'epsg_datum'")
+20 -16
View File
@@ -485,6 +485,9 @@ for node in root.iterfind('.//Transformation'):
print('Skipping ' + name + ', missing targetCRS')
continue
operation_version = node.find('operationVersion').text
scope = node.find('scope').text
area_of_use = get_area_of_use(node.find('domainOfValidity'))
usesMethod = extract_id_from_href(node.find('usesMethod').attrib['href'])
@@ -501,9 +504,10 @@ for node in root.iterfind('.//Transformation'):
print('Fixing URL of ' + filename + ' to ' + mapGridURLs[filename])
filename = mapGridURLs[filename]
r = requests.head(filename, allow_redirects = True )
if r.status_code not in (200, 302):
assert False, (r.status_code, id, name, filename)
if not filename.endswith('RAF09.mnt'): # no longer available
r = requests.head(filename, allow_redirects = True )
if r.status_code not in (200, 302):
assert False, (r.status_code, id, name, filename)
setVerticalGrids.add(filename)
@@ -515,7 +519,7 @@ for node in root.iterfind('.//Transformation'):
name_components = name.split(' vers ')
name_inverted = name_components[1] + ' vers ' + name_components[0]
sql = """INSERT INTO "grid_transformation" VALUES('IGNF','%s','%s',NULL,NULL,'EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','%s','%s','%s','%s','%s','%s',NULL,'EPSG','8666','Geoid (height correction) model file','%s',NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (id, name_inverted, mapCrsId[targetCRS][0], mapCrsId[targetCRS][1], mapCrsId[sourceCRS][0], mapCrsId[sourceCRS][1], area_of_use[0], area_of_use[1], filename)
sql = """INSERT INTO "grid_transformation" VALUES('IGNF','%s','%s',NULL,'%s','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','%s','%s','%s','%s','%s','%s',NULL,'EPSG','8666','Geoid (height correction) model file','%s',NULL,NULL,NULL,NULL,NULL,NULL,'%s',0);""" % (id, name_inverted, scope, mapCrsId[targetCRS][0], mapCrsId[targetCRS][1], mapCrsId[sourceCRS][0], mapCrsId[sourceCRS][1], area_of_use[0], area_of_use[1], filename, operation_version)
all_sql.append(sql)
continue
@@ -542,7 +546,7 @@ for node in root.iterfind('.//Transformation'):
#sql = """INSERT INTO "coordinate_operation" VALUES('IGNF','%s','other_transformation');""" % custom_id
#all_sql.append(sql)
sql = """INSERT INTO "other_transformation" VALUES('IGNF','%s','%s',NULL,NULL,'EPSG','9601','Longitude rotation','%s','%s','%s','%s','%s','%s',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);"""% (custom_id, name, src[0], src[1], target[0], target[1], area_of_use[0], area_of_use[1])
sql = """INSERT INTO "other_transformation" VALUES('IGNF','%s','%s',NULL,'%s','EPSG','9601','Longitude rotation','%s','%s','%s','%s','%s','%s',0.0,'EPSG','8602','Longitude offset',2.5969213,'EPSG','9105',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'%s',0);"""% (custom_id, name, scope, src[0], src[1], target[0], target[1], area_of_use[0], area_of_use[1], operation_version)
all_sql.append(sql)
continue
@@ -570,7 +574,7 @@ for node in root.iterfind('.//Transformation'):
#sql = """INSERT INTO "coordinate_operation" VALUES('IGNF','%s','grid_transformation');""" % (custom_id)
#all_sql.append(sql)
sql = """INSERT INTO "grid_transformation" VALUES('IGNF','%s','%s',NULL,NULL,'EPSG','9615','NTv2','%s','%s','%s','%s','%s','%s',NULL,'EPSG','8656','Latitude and longitude difference file','ntf_r93.gsb',NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (custom_id, name, src[0], src[1], target[0], target[1], area_of_use[0], area_of_use[1])
sql = """INSERT INTO "grid_transformation" VALUES('IGNF','%s','%s',NULL,'%s','EPSG','9615','NTv2','%s','%s','%s','%s','%s','%s',NULL,'EPSG','8656','Latitude and longitude difference file','ntf_r93.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'%s',0);""" % (custom_id, name, scope, src[0], src[1], target[0], target[1], area_of_use[0], area_of_use[1], operation_version)
all_sql.append(sql)
continue
@@ -586,7 +590,7 @@ for node in root.iterfind('.//Transformation'):
uom = paramValue.find('value').attrib['uom']
assert uom == 'm'
sql = """INSERT INTO "other_transformation" VALUES('IGNF','%s','%s',NULL,NULL,'EPSG','9616','Vertical Offset','%s','%s','%s','%s','%s','%s',NULL,'EPSG','8603','Vertical Offset',%s,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);"""% (id, name, mapCrsId[sourceCRS][0], mapCrsId[sourceCRS][1], mapCrsId[targetCRS][0], mapCrsId[targetCRS][1], area_of_use[0], area_of_use[1], value)
sql = """INSERT INTO "other_transformation" VALUES('IGNF','%s','%s',NULL,'%s','EPSG','9616','Vertical Offset','%s','%s','%s','%s','%s','%s',NULL,'EPSG','8603','Vertical Offset',%s,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'%s',0);"""% (id, name, scope, mapCrsId[sourceCRS][0], mapCrsId[sourceCRS][1], mapCrsId[targetCRS][0], mapCrsId[targetCRS][1], area_of_use[0], area_of_use[1], value, operation_version)
all_sql.append(sql)
continue
@@ -655,7 +659,7 @@ for node in root.iterfind('.//Transformation'):
#sql = """INSERT INTO "coordinate_operation" VALUES('IGNF','%s','helmert_transformation');""" % (custom_id)
#all_sql.append(sql)
sql = """INSERT INTO "helmert_transformation" VALUES('IGNF','%s','%s',NULL,NULL,'EPSG',%s,%s,'%s','%s','%s','%s','%s','%s',NULL,%s,%s,%s,'EPSG','9001',%s,%s,%s,%s,%s,%s,%s, %s,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (custom_id, name, method_code, method_name, src[0], src[1], target[0], target[1], area_of_use[0], area_of_use[1], x, y, z, rx, ry, rz, r_uom_auth_name, r_uom_code, s, s_uom_auth_name, s_uom_code)
sql = """INSERT INTO "helmert_transformation" VALUES('IGNF','%s','%s',NULL,'%s','EPSG',%s,%s,'%s','%s','%s','%s','%s','%s',NULL,%s,%s,%s,'EPSG','9001',%s,%s,%s,%s,%s,%s,%s, %s,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'%s',0);""" % (custom_id, name, scope, method_code, method_name, src[0], src[1], target[0], target[1], area_of_use[0], area_of_use[1], x, y, z, rx, ry, rz, r_uom_auth_name, r_uom_code, s, s_uom_auth_name, s_uom_code, operation_version)
all_sql.append(sql)
@@ -677,7 +681,7 @@ for node in root.iterfind('.//Transformation'):
#sql = """INSERT INTO "coordinate_operation" VALUES('IGNF','%s','helmert_transformation');""" % (id_geog)
#all_sql.append(sql)
sql = """INSERT INTO "helmert_transformation" VALUES('IGNF','%s','%s',NULL,NULL,'EPSG',%s,%s,'%s','%s','%s','%s','%s','%s',NULL,%s,%s,%s,'EPSG','9001',%s,%s,%s,%s,%s,%s,%s, %s,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (id_geog, name, method_geog_code, method_geog_name, src[0], src[1], target[0], target[1], area_of_use[0], area_of_use[1], x, y, z, rx, ry, rz, r_uom_auth_name, r_uom_code, s, s_uom_auth_name, s_uom_code)
sql = """INSERT INTO "helmert_transformation" VALUES('IGNF','%s','%s',NULL,'%s','EPSG',%s,%s,'%s','%s','%s','%s','%s','%s',NULL,%s,%s,%s,'EPSG','9001',%s,%s,%s,%s,%s,%s,%s, %s,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'%s',0);""" % (id_geog, name, scope, method_geog_code, method_geog_name, src[0], src[1], target[0], target[1], area_of_use[0], area_of_use[1], x, y, z, rx, ry, rz, r_uom_auth_name, r_uom_code, s, s_uom_auth_name, s_uom_code, operation_version)
all_sql.append(sql)
if src[1] == 'NTFG':
@@ -689,7 +693,7 @@ for node in root.iterfind('.//Transformation'):
#sql = """INSERT INTO "coordinate_operation" VALUES('IGNF','%s','concatenated_operation');""" % (id_concat)
#all_sql_concat.append(sql)
sql = """INSERT INTO "concatenated_operation" VALUES('IGNF','%s','Nouvelle Triangulation Francaise Paris grades to %s',NULL,NULL,'IGNF','%s','%s','%s','%s','%s',NULL,'IGNF','%s','IGNF','%s',NULL,NULL,0);""" % (id_concat, target[1], NTFPalias, target[0], target[1], area_of_use[0], area_of_use[1], idFirstOp, id_geog)
sql = """INSERT INTO "concatenated_operation" VALUES('IGNF','%s','Nouvelle Triangulation Francaise Paris grades to %s',NULL,'%s','IGNF','%s','%s','%s','%s','%s',NULL,'IGNF','%s','IGNF','%s',NULL,NULL,'%s',0);""" % (id_concat, target[1], scope, NTFPalias, target[0], target[1], area_of_use[0], area_of_use[1], idFirstOp, id_geog, operation_version)
all_sql_concat.append(sql)
@@ -1099,11 +1103,11 @@ area_of_use_name = 'ANTILLES FRANCAISES'
assert area_of_use_name in areaOfUseMap
area_of_use = areaOfUseMap[area_of_use_name]
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RRAF_TO_EPSG_4978','RRAF to WGS 84',NULL,NULL,'EPSG','1031','Geocentric translations (geocentric domain)','IGNF','RRAF','EPSG','4978','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RRAF_TO_EPSG_4978','RRAF to WGS 84',NULL,NULL,'EPSG','1031','Geocentric translations (geocentric domain)','IGNF','RRAF','EPSG','4978','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RRAFG_TO_EPSG_4326','RRAFG to WGS 84',NULL,NULL,'EPSG','9603','Geocentric translations (geog2D domain)','IGNF','RRAFG','EPSG','4326','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RRAFG_TO_EPSG_4326','RRAFG to WGS 84',NULL,NULL,'EPSG','9603','Geocentric translations (geog2D domain)','IGNF','RRAFG','EPSG','4326','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RRAFGDD_TO_EPSG_4326','RRAFGDD to WGS 84',NULL,NULL,'EPSG','9603','Geocentric translations (geog2D domain)','IGNF','RRAFGDD','EPSG','4326','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RRAFGDD_TO_EPSG_4326','RRAFGDD to WGS 84',NULL,NULL,'EPSG','9603','Geocentric translations (geog2D domain)','IGNF','RRAFGDD','EPSG','4326','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append('')
all_sql.append("""--- Null transformations between RGF93 and WGS84 adapted from EPSG""")
@@ -1113,11 +1117,11 @@ area_of_use_name = 'FRANCE METROPOLITAINE (CORSE COMPRISE)'
assert area_of_use_name in areaOfUseMap
area_of_use = areaOfUseMap[area_of_use_name]
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RGF93_TO_EPSG_4978','RGF93 to WGS 84',NULL,NULL,'EPSG','1031','Geocentric translations (geocentric domain)','IGNF','RGF93','EPSG','4978','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RGF93_TO_EPSG_4978','RGF93 to WGS 84',NULL,NULL,'EPSG','1031','Geocentric translations (geocentric domain)','IGNF','RGF93','EPSG','4978','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RGF93G_TO_EPSG_4326','RGF93G to WGS 84',NULL,NULL,'EPSG','9603','Geocentric translations (geog2D domain)','IGNF','RGF93G','EPSG','4326','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RGF93G_TO_EPSG_4326','RGF93G to WGS 84',NULL,NULL,'EPSG','9603','Geocentric translations (geog2D domain)','IGNF','RGF93G','EPSG','4326','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RGF93GDD_TO_EPSG_4326','RGF93GDD to WGS 84',NULL,NULL,'EPSG','9603','Geocentric translations (geog2D domain)','IGNF','RGF93GDD','EPSG','4326','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
all_sql.append("""INSERT INTO "helmert_transformation" VALUES('PROJ','IGNF_RGF93GDD_TO_EPSG_4326','RGF93GDD to WGS 84',NULL,NULL,'EPSG','9603','Geocentric translations (geog2D domain)','IGNF','RGF93GDD','EPSG','4326','%s','%s',1.0,0.0,0.0,0.0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);""" % (area_of_use[0], area_of_use[1]))
script_dir_name = os.path.dirname(os.path.realpath(__file__))
sql_dir_name = os.path.join(os.path.dirname(script_dir_name), 'data', 'sql')
+17 -17
View File
@@ -51,10 +51,10 @@ cursor = conn.cursor()
all_sql = []
# TODO: update this !
version = 'ArcMap 10.6.1 / ArcGISPro 2.2'
version = 'ArcMap 10.7.0'
all_sql.append(
"""INSERT INTO "metadata" VALUES('ESRI.VERSION', '%s');""" % (version))
date = '2018-09-19'
date = '2019-03-25'
all_sql.append(
"""INSERT INTO "metadata" VALUES('ESRI.DATE', '%s');""" % (date))
@@ -247,7 +247,7 @@ def import_spheroid():
deprecated = 1 if row[idx_deprecated] == 'yes' else 0
map_spheroid_esri_name_to_auth_code[esri_name] = [
'ESRI', latestWkid]
'ESRI', code]
if abs(float(a) - 6375000) > 0.01 * 6375000:
pos = esri_name.find('_19')
@@ -267,7 +267,7 @@ def import_spheroid():
body_code = 'EARTH'
sql = """INSERT INTO ellipsoid VALUES('ESRI','%s','%s','%s','%s','%s',%s,'EPSG','9001',%s,NULL,%d);""" % (
latestWkid, esri_name, description, body_auth, body_code, a, rf, deprecated)
code, esri_name, description, body_auth, body_code, a, rf, deprecated)
all_sql.append(sql)
########################
@@ -341,10 +341,10 @@ def import_prime_meridian():
deprecated = 1 if row[idx_deprecated] == 'yes' else 0
map_pm_esri_name_to_auth_code[esri_name] = ['ESRI', latestWkid]
map_pm_esri_name_to_auth_code[esri_name] = ['ESRI', code]
sql = """INSERT INTO "prime_meridian" VALUES('ESRI','%s','%s',%s,'EPSG','9110',%d);""" % (
latestWkid, esri_name, value, deprecated)
code, esri_name, value, deprecated)
all_sql.append(sql)
@@ -411,7 +411,7 @@ def import_datum():
assert authority.upper() == 'ESRI', row
map_datum_esri_name_to_auth_code[esri_name] = [
'ESRI', latestWkid]
'ESRI', code]
wkt = row[idx_wkt]
pos = wkt.find('SPHEROID["')
@@ -429,7 +429,7 @@ def import_datum():
description = row[idx_description]
deprecated = 1 if row[idx_deprecated] == 'yes' else 0
map_datum_esri_to_parameters[latestWkid] = {
map_datum_esri_to_parameters[code] = {
'esri_name': esri_name,
'description': description,
'ellps_auth_name': ellps_auth_name,
@@ -568,6 +568,7 @@ def import_geogcs():
assert map_datum_esri_to_parameters[datum_code]['pm_auth_name'] == pm_auth_name, (
row, map_datum_esri_to_parameters[datum_code]['pm_auth_name'], pm_auth_name)
if map_datum_esri_to_parameters[datum_code]['pm_code'] != pm_code:
p = map_datum_esri_to_parameters[datum_code]
# Case of GCS_Voirol_Unifie_1960 and GCS_Voirol_Unifie_1960_Paris which use the same
# datum D_Voirol_Unifie_1960 but with different prime meridian
@@ -585,7 +586,6 @@ def import_geogcs():
'ellps_code': p['ellps_code'],
'deprecated': p['deprecated']
}
p = map_datum_esri_to_parameters[datum_code]
sql = """INSERT INTO "geodetic_datum" VALUES('ESRI','%s','%s',NULL,'%s','%s','%s','%s','%s','%s','%s',%d);""" % (
datum_code, p['esri_name'], p['description'], p['ellps_auth_name'], p['ellps_code'], pm_auth_name, pm_code, area_auth_name, area_code, p['deprecated'])
@@ -603,11 +603,11 @@ def import_geogcs():
code, esri_name, cs_code, datum_auth_name, datum_code, area_auth_name, area_code, deprecated)
all_sql.append(sql)
if deprecated and code != latestWkid:
if deprecated and code != latestWkid and code not in ('4305', '4812'): # Voirol 1960 no longer in EPSG
cursor.execute(
"SELECT name FROM geodetic_crs WHERE auth_name = 'EPSG' AND code = ?", (latestWkid,))
src_row = cursor.fetchone()
assert src_row
assert src_row, (code, latestWkid)
sql = """INSERT INTO "supersession" VALUES('geodetic_crs','ESRI','%s','geodetic_crs','EPSG','%s','ESRI');""" % (
code, latestWkid)
@@ -1210,7 +1210,7 @@ def import_geogtran():
method_code = '9606'
method_name = 'Position Vector transformation (geog2D domain)'
sql = """INSERT INTO "helmert_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','%s','%s','%s','%s','%s','%s','%s','%s',%s,%s,%s,%s,'EPSG','9001',%s,%s,%s,'EPSG','9104',%s,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,%d);""" % (
sql = """INSERT INTO "helmert_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','%s','%s','%s','%s','%s','%s','%s','%s',%s,%s,%s,%s,'EPSG','9001',%s,%s,%s,'EPSG','9104',%s,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,%d);""" % (
wkid, esri_name, method_code, method_name, src_crs_auth_name, src_crs_code, dst_crs_auth_name, dst_crs_code, area_auth_name, area_code, accuracy, x, y, z, rx, ry, rz, s, deprecated)
all_sql.append(sql)
@@ -1232,7 +1232,7 @@ def import_geogtran():
method_code = '9636'
method_name = 'Molodensky-Badekas (CF geog2D domain)'
sql = """INSERT INTO "helmert_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','%s','%s','%s','%s','%s','%s','%s','%s',%s,%s,%s,%s,'EPSG','9001',%s,%s,%s,'EPSG','9104',%s,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,%s,%s,%s,'EPSG','9001',%d);""" % (
sql = """INSERT INTO "helmert_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','%s','%s','%s','%s','%s','%s','%s','%s',%s,%s,%s,%s,'EPSG','9001',%s,%s,%s,'EPSG','9104',%s,'EPSG','9202',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,%s,%s,%s,'EPSG','9001',NULL,%d);""" % (
wkid, esri_name, method_code, method_name, src_crs_auth_name, src_crs_code, dst_crs_auth_name, dst_crs_code, area_auth_name, area_code, accuracy, x, y, z, rx, ry, rz, s, px, py, pz, deprecated)
all_sql.append(sql)
@@ -1245,7 +1245,7 @@ def import_geogtran():
method_code = '9603'
method_name = 'Geocentric translations (geog2D domain)'
sql = """INSERT INTO "helmert_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','%s','%s','%s','%s','%s','%s','%s','%s',%s,%s,%s,%s,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,%d);""" % (
sql = """INSERT INTO "helmert_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','%s','%s','%s','%s','%s','%s','%s','%s',%s,%s,%s,%s,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,%d);""" % (
wkid, esri_name, method_code, method_name, src_crs_auth_name, src_crs_code, dst_crs_auth_name, dst_crs_code, area_auth_name, area_code, accuracy, x, y, z, deprecated)
all_sql.append(sql)
@@ -1260,7 +1260,7 @@ def import_geogtran():
lat_offset = get_parameter(wkt, 'Latitude_Offset')
assert wkt.count('PARAMETER[') == 2
sql = """INSERT INTO "other_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','9619','Geographic2D offsets','%s','%s','%s','%s','%s','%s',%s,'EPSG','8601','Latitude offset',%s,'EPSG','9104','EPSG','8602','Longitude offset',%s,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,%d);""" % (
sql = """INSERT INTO "other_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','9619','Geographic2D offsets','%s','%s','%s','%s','%s','%s',%s,'EPSG','8601','Latitude offset',%s,'EPSG','9104','EPSG','8602','Longitude offset',%s,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,%d);""" % (
wkid, esri_name, src_crs_auth_name, src_crs_code, dst_crs_auth_name, dst_crs_code, area_auth_name, area_code, accuracy, lat_offset, long_offset, deprecated)
all_sql.append(sql)
@@ -1269,7 +1269,7 @@ def import_geogtran():
lat_offset = '0'
assert wkt.count('PARAMETER[') == 0
sql = """INSERT INTO "other_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','9619','Geographic2D offsets','%s','%s','%s','%s','%s','%s',%s,'EPSG','8601','Latitude offset',%s,'EPSG','9104','EPSG','8602','Longitude offset',%s,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,%d);""" % (
sql = """INSERT INTO "other_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','9619','Geographic2D offsets','%s','%s','%s','%s','%s','%s',%s,'EPSG','8601','Latitude offset',%s,'EPSG','9104','EPSG','8602','Longitude offset',%s,'EPSG','9104',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,%d);""" % (
wkid, esri_name, src_crs_auth_name, src_crs_code, dst_crs_auth_name, dst_crs_code, area_auth_name, area_code, accuracy, lat_offset, long_offset, deprecated)
all_sql.append(sql)
@@ -1299,7 +1299,7 @@ def import_geogtran():
print('A grid_transformation (%s, using grid %s) is already known for the equivalent of %s (%s:%s --> %s:%s) for area %s, which uses grid %s. Skipping it' % (src_row[0], src_row[1], esri_name, src_crs_auth_name, src_crs_code, dst_crs_auth_name, dst_crs_code, row[idx_areaname], filename))
continue
sql = """INSERT INTO "grid_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','9615','NTv2','%s','%s','%s','%s','%s','%s',%s,'EPSG','8656','Latitude and longitude difference file','%s',NULL,NULL,NULL,NULL,NULL,NULL,%d);""" % (
sql = """INSERT INTO "grid_transformation" VALUES('ESRI','%s','%s',NULL,NULL,'EPSG','9615','NTv2','%s','%s','%s','%s','%s','%s',%s,'EPSG','8656','Latitude and longitude difference file','%s',NULL,NULL,NULL,NULL,NULL,NULL,NULL,%d);""" % (
wkid, esri_name, src_crs_auth_name, src_crs_code, dst_crs_auth_name, dst_crs_code, area_auth_name, area_code, accuracy, filename, deprecated)
all_sql.append(sql)
+9
View File
@@ -18,6 +18,15 @@ TOPDIR="$SCRIPT_DIR/.."
pushd "${TOPDIR}" > /dev/null || exit
doxygen_version_cmd=$(doxygen --version)
# remove extra info after space
doxygen_version=${doxygen_version_cmd%% *}
echo "Doxygen version $doxygen_version"
if test $doxygen_version = "1.8.17" ; then
echo "Doxygen 1.8.17 is incompatible" && /bin/false;
fi
# HTML generation
# Check that doxygen runs warning free
rm -rf docs/build/html/
+32
View File
@@ -51,6 +51,7 @@
#include "proj/common.hpp"
#include "proj/coordinateoperation.hpp"
#include "proj/internal/internal.hpp"
#include "proj/internal/io_internal.hpp"
using namespace NS_PROJ::internal;
@@ -192,6 +193,8 @@ similarly, but prefers the 2D resp. 3D interfaces if available.
direction = opposite_direction(direction);
if( !P->alternativeCoordinateOperations.empty() ) {
// Do a first pass and select the first coordinate operation whose area
// of use is compatible with the input coordinate
int i = 0;
for( const auto &alt: P->alternativeCoordinateOperations ) {
if( direction == PJ_FWD ) {
@@ -223,6 +226,35 @@ similarly, but prefers the 2D resp. 3D interfaces if available.
}
i ++;
}
// In case we did not find an operation whose area of use is compatible
// with the input coordinate, then goes through again the list, and
// use the first operation that does not require grids.
i = 0;
for( const auto &alt: P->alternativeCoordinateOperations ) {
auto coordOperation = dynamic_cast<
NS_PROJ::operation::CoordinateOperation*>(alt.pj->iso_obj.get());
if( coordOperation ) {
if( coordOperation->gridsNeeded(P->ctx->cpp_context ?
P->ctx->cpp_context->databaseContext.as_nullable() :
nullptr).empty() ) {
if( P->iCurCoordOp != i ) {
std::string msg("Using coordinate operation ");
msg += alt.name;
pj_log(P->ctx, PJ_LOG_TRACE, msg.c_str());
P->iCurCoordOp = i;
}
if( direction == PJ_FWD ) {
return pj_fwd4d( coord, alt.pj );
}
else {
return pj_inv4d( coord, alt.pj );
}
}
}
i++;
}
proj_errno_set (P, EINVAL);
return proj_coord_error ();
}
+17 -6
View File
@@ -68,8 +68,8 @@ static const char *oform =
static char oform_buffer[16]; /* buffer for oform when using -d */
static const char *oterr = "*\t*"; /* output line for unprojectable input */
static const char *usage =
"%s\nusage: %s [ -dDeEfIlrstvwW [args] ] [ +opts[=arg] ]\n"
" [+to [+opts[=arg] [ files ]\n";
"%s\nusage: %s [-dDeEfIlrstvwW [args]] [+opt[=arg] ...]\n"
" [+to +opt[=arg] ...] [file ...]\n";
static double (*informat)(const char *,
char **); /* input data deformatter function */
@@ -113,6 +113,17 @@ static void process(FILE *fid)
z = strtod(s, &s);
/* To avoid breaking existing tests, we read what is a possible t */
/* component of the input and rewind the s-pointer so that the final */
/* output has consistant behaviour, with or without t values. */
/* This is a bit of a hack, in most cases 4D coordinates will be */
/* written to STDOUT (except when using -E) but the output format */
/* speficied with -f is not respected for the t component, rather it */
/* is forward verbatim from the input. */
char *before_time = s;
double t = strtod(s, &s);
s = before_time;
if (data.v == HUGE_VAL)
data.u = HUGE_VAL;
@@ -120,11 +131,11 @@ static void process(FILE *fid)
--s; /* assumed we gobbled \n */
if (echoin) {
char t;
t = *s;
char temp;
temp = *s;
*s = '\0';
(void)fputs(line, stdout);
*s = t;
*s = temp;
putchar('\t');
}
@@ -141,7 +152,7 @@ static void process(FILE *fid)
coord.xyzt.x = data.u;
coord.xyzt.y = data.v;
coord.xyzt.z = z;
coord.xyzt.t = HUGE_VAL;
coord.xyzt.t = t;
coord = proj_trans(transformation, PJ_FWD, coord);
data.u = coord.xyz.x;
data.v = coord.xyz.y;
+1
View File
@@ -20,6 +20,7 @@
#include <string.h>
#include "proj_api.h"
#include "proj_config.h"
#define EMESS_ROUTINE
#include "emess.h"
+1 -1
View File
@@ -22,7 +22,7 @@ static const char *osform = "%.3f"; /* output format for S */
static char pline[50]; /* work string */
static const char *usage =
"%s\nusage: %s [ -afFIlptwW [args] ] [ +opts[=arg] ] [ files ]\n";
"%s\nusage: %s [-afFIlptwW [args]] [+opt[=arg] ...] [file ...]\n";
static void
printLL(double p, double l) {
+17 -12
View File
@@ -300,6 +300,20 @@ int main (int argc, char **argv) {
return 1;
}
for (i = 0; i < o->fargc; i++ ) {
FILE* f = fopen (o->fargv[i], "rt");
if (f == nullptr) {
fprintf (
T.fout,
"%sCannot open specified input file '%s' - bye!\n",
delim,
o->fargv[i]
);
return 1;
}
fclose(f);
}
for (i = 0; i < o->fargc; i++)
process_file (o->fargv[i]);
@@ -370,8 +384,6 @@ static int another_failing_roundtrip (void) {
}
static int process_file (const char *fname) {
FILE *f;
F->lineno = F->next_lineno = F->level = 0;
T.op_ok = T.total_ok = 0;
T.op_ko = T.total_ko = 0;
@@ -383,15 +395,8 @@ static int process_file (const char *fname) {
return 0;
}
f = fopen (fname, "rt");
if (nullptr==f) {
if (T.verbosity > 0) {
fprintf (T.fout, "%sCannot open spec'd input file '%s' - bye!\n", delim, fname);
return 2;
}
errmsg (2, "Cannot open spec'd input file '%s' - bye!\n", fname);
}
F->f = f;
/* We have already tested in main that the file exists */
F->f = fopen (fname, "rt");
if (T.verbosity > 0)
fprintf (T.fout, "%sReading file '%s'\n", delim, fname);
@@ -405,7 +410,7 @@ static int process_file (const char *fname) {
}
}
fclose (f);
fclose (F->f);
F->lineno = F->next_lineno = 0;
T.grand_ok += T.total_ok;
+1 -1
View File
@@ -46,7 +46,7 @@ static char oform_buffer[16]; /* Buffer for oform when using -d */
static const char
*oterr = "*\t*", /* output line for unprojectable input */
*usage = "%s\nusage: %s [ -bdeEfiIlmorsStTvVwW [args] ] [ +opts[=arg] ] [ files ]\n";
*usage = "%s\nusage: %s [-bdeEfiIlmorsStTvVwW [args]] [+opt[=arg] ...] [file ...]\n";
static PJ_FACTORS facs;
+12 -12
View File
@@ -473,11 +473,11 @@ PJ *CONVERSION(unitconvert,0) {
if (f != 0.0) {
proj_log_debug(P, "xy_in unit: %s", normalized_name);
} else {
if ( (f = pj_param (P->ctx, P->params, "dxy_in").f) == 0.0)
f = pj_param (P->ctx, P->params, "dxy_in").f;
if (f == 0.0 || 1.0 / f == 0.0)
return pj_default_destructor(P, PJD_ERR_UNKNOWN_UNIT_ID);
}
if (f != 0.0)
Q->xy_factor *= f;
Q->xy_factor = f;
if (normalized_name != nullptr && strcmp(normalized_name, "Radian") == 0)
P->left = PJ_IO_UNITS_RADIANS;
}
@@ -488,11 +488,11 @@ PJ *CONVERSION(unitconvert,0) {
if (f != 0.0) {
proj_log_debug(P, "xy_out unit: %s", normalized_name);
} else {
if ( (f = pj_param (P->ctx, P->params, "dxy_out").f) == 0.0)
f = pj_param (P->ctx, P->params, "dxy_out").f;
if (f == 0.0 || 1.0 / f == 0.0)
return pj_default_destructor(P, PJD_ERR_UNKNOWN_UNIT_ID);
}
if (f != 0.0)
Q->xy_factor /= f;
Q->xy_factor /= f;
if (normalized_name != nullptr && strcmp(normalized_name, "Radian") == 0)
P->right= PJ_IO_UNITS_RADIANS;
}
@@ -509,11 +509,11 @@ PJ *CONVERSION(unitconvert,0) {
if (f != 0.0) {
proj_log_debug(P, "z_in unit: %s", normalized_name);
} else {
if ( (f = pj_param (P->ctx, P->params, "dz_in").f) == 0.0)
f = pj_param (P->ctx, P->params, "dz_in").f;
if (f == 0.0 || 1.0 / f == 0.0)
return pj_default_destructor(P, PJD_ERR_UNKNOWN_UNIT_ID);
}
if (f != 0.0)
Q->z_factor *= f;
Q->z_factor = f;
}
if ((name = pj_param (P->ctx, P->params, "sz_out").s) != nullptr) {
@@ -522,11 +522,11 @@ PJ *CONVERSION(unitconvert,0) {
if (f != 0.0) {
proj_log_debug(P, "z_out unit: %s", normalized_name);
} else {
if ( (f = pj_param (P->ctx, P->params, "dz_out").f) == 0.0)
f = pj_param (P->ctx, P->params, "dz_out").f;
if (f == 0.0 || 1.0 / f == 0.0)
return pj_default_destructor(P, PJD_ERR_UNKNOWN_UNIT_ID);
}
if (f != 0.0)
Q->z_factor /= f;
Q->z_factor /= f;
}
if( z_in_is_linear >= 0 && z_out_is_linear >= 0 &&
+20 -8
View File
@@ -280,8 +280,8 @@ static int ellps_shape (PJ *P) {
P->es = pj_atof (pj_param_value (par));
if (HUGE_VAL==P->es)
return proj_errno_set (P, PJD_ERR_INVALID_ARG);
if (1==P->es)
return proj_errno_set (P, PJD_ERR_ECCENTRICITY_IS_ONE);
if (P->es >= 1)
return proj_errno_set (P, PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER);
break;
/* eccentricity, e */
@@ -291,8 +291,8 @@ static int ellps_shape (PJ *P) {
return proj_errno_set (P, PJD_ERR_INVALID_ARG);
if (0==P->e)
return proj_errno_set (P, PJD_ERR_INVALID_ARG);
if (1==P->e)
return proj_errno_set (P, PJD_ERR_ECCENTRICITY_IS_ONE);
if (P->e >= 1)
return proj_errno_set (P, PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER);
P->es = P->e * P->e;
break;
@@ -301,8 +301,8 @@ static int ellps_shape (PJ *P) {
P->b = pj_atof (pj_param_value (par));
if (HUGE_VAL==P->b)
return proj_errno_set (P, PJD_ERR_INVALID_ARG);
if (0==P->b)
return proj_errno_set (P, PJD_ERR_ECCENTRICITY_IS_ONE);
if (P->b <= 0)
return proj_errno_set (P, PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER);
if (P->b==P->a)
break;
P->f = (P->a - P->b) / P->a;
@@ -399,6 +399,10 @@ static int ellps_spherification (PJ *P) {
break;
}
if (P->a <= 0.) {
return proj_errno_set(P, PJD_ERR_MAJOR_AXIS_NOT_GIVEN);
}
/* Clean up the ellipsoidal parameters to reflect the sphere */
P->es = P->e = P->f = 0;
P->rf = HUGE_VAL;
@@ -538,6 +542,10 @@ int pj_calc_ellipsoid_params (PJ *P, double a, double es) {
/* flattening */
if (0==P->f)
P->f = 1 - cos (P->alpha); /* = 1 - sqrt (1 - PIN->es); */
if (P->f == 1.0) {
pj_ctx_set_errno( P->ctx, PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER);
return PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER;
}
P->rf = P->f != 0.0 ? 1.0/P->f: HUGE_VAL;
/* second flattening */
@@ -556,8 +564,8 @@ int pj_calc_ellipsoid_params (PJ *P, double a, double es) {
P->one_es = 1. - P->es;
if (P->one_es == 0.) {
pj_ctx_set_errno( P->ctx, PJD_ERR_ECCENTRICITY_IS_ONE);
return PJD_ERR_ECCENTRICITY_IS_ONE;
pj_ctx_set_errno( P->ctx, PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER);
return PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER;
}
P->rone_es = 1./P->one_es;
@@ -712,6 +720,10 @@ bomb:
pj_ctx_set_errno(ctx, PJD_ERR_ES_LESS_THAN_ZERO);
return 1;
}
if (*es >= 1.) {
pj_ctx_set_errno(ctx, PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER);
return 1;
}
if (*a <= 0.) {
pj_ctx_set_errno(ctx, PJD_ERR_MAJOR_AXIS_NOT_GIVEN);
return 1;
+13 -3
View File
@@ -65,9 +65,19 @@ void *pj_gauss_ini(double e, double phi0, double *chi, double *rc) {
}
*chi = asin(sphi / en->C);
en->ratexp = 0.5 * en->C * e;
en->K = tan(.5 * *chi + M_FORTPI) / (
pow(tan(.5 * phi0 + M_FORTPI), en->C) *
srat(en->e * sphi, en->ratexp) );
double srat_val = srat(en->e * sphi, en->ratexp);
if (srat_val == 0.0) {
free(en);
return nullptr;
}
if( .5 * phi0 + M_FORTPI < 1e-10 ) {
en->K = 1.0 / srat_val;
}
else {
en->K = tan(.5 * *chi + M_FORTPI) / (
pow(tan(.5 * phi0 + M_FORTPI), en->C) *
srat_val );
}
return ((void *)en);
}
+1 -1
View File
@@ -680,7 +680,7 @@ pj_init_ctx_with_allow_init_epsg(projCtx ctx, int argc, char **argv, int allow_i
PIN->a_orig = PIN->a;
PIN->es_orig = PIN->es;
if (pj_calc_ellipsoid_params (PIN, PIN->a, PIN->es))
return pj_default_destructor (PIN, PJD_ERR_ECCENTRICITY_IS_ONE);
return pj_default_destructor (PIN, PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER);
/* Now that we have ellipse information check for WGS84 datum */
if( PIN->datum_type == PJD_3PARAM
+29 -26
View File
@@ -1365,7 +1365,7 @@ static const GeodeticCRS *extractGeodeticCRS(PJ_CONTEXT *ctx, const PJ *crs,
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param crs Objet of type CRS (must not be NULL)
* @param crs Object of type CRS (must not be NULL)
* @return Object that must be unreferenced with proj_destroy(), or NULL
* in case of error.
*/
@@ -1389,7 +1389,7 @@ PJ *proj_crs_get_geodetic_crs(PJ_CONTEXT *ctx, const PJ *crs) {
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param crs Objet of type CRS (must not be NULL)
* @param crs Object of type CRS (must not be NULL)
* @param index Index of the CRS component (typically 0 = horizontal, 1 =
* vertical)
* @return Object that must be unreferenced with proj_destroy(), or NULL
@@ -1471,7 +1471,7 @@ PJ *proj_crs_create_bound_crs(PJ_CONTEXT *ctx, const PJ *base_crs,
* osgeo::proj::crs::CRS::createBoundCRSToWGS84IfPossible()
*
* @param ctx PROJ context, or NULL for default context
* @param crs Objet of type CRS (must not be NULL)
* @param crs Object of type CRS (must not be NULL)
* @param options null-terminated list of options, or NULL. Currently
* supported options are:
* <ul>
@@ -1530,7 +1530,7 @@ PJ *proj_crs_create_bound_crs_to_WGS84(PJ_CONTEXT *ctx, const PJ *crs,
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param obj Objet of type CRS or GeodeticReferenceFrame (must not be NULL)
* @param obj Object of type CRS or GeodeticReferenceFrame (must not be NULL)
* @return Object that must be unreferenced with proj_destroy(), or NULL
* in case of error.
*/
@@ -1562,7 +1562,7 @@ PJ *proj_get_ellipsoid(PJ_CONTEXT *ctx, const PJ *obj) {
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param crs Objet of type CRS (must not be NULL)
* @param crs Object of type CRS (must not be NULL)
* @return Object that must be unreferenced with proj_destroy(), or NULL
* in case of error.
*/
@@ -1645,7 +1645,7 @@ int proj_ellipsoid_get_parameters(PJ_CONTEXT *ctx, const PJ *ellipsoid,
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param obj Objet of type CRS or GeodeticReferenceFrame (must not be NULL)
* @param obj Object of type CRS or GeodeticReferenceFrame (must not be NULL)
* @return Object that must be unreferenced with proj_destroy(), or NULL
* in case of error.
*/
@@ -1720,7 +1720,7 @@ int proj_prime_meridian_get_parameters(PJ_CONTEXT *ctx,
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param obj Objet of type BoundCRS or CoordinateOperation (must not be NULL)
* @param obj Object of type BoundCRS or CoordinateOperation (must not be NULL)
* @return Object that must be unreferenced with proj_destroy(), or NULL
* in case of error, or missing source CRS.
*/
@@ -1763,7 +1763,7 @@ PJ *proj_get_source_crs(PJ_CONTEXT *ctx, const PJ *obj) {
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param obj Objet of type BoundCRS or CoordinateOperation (must not be NULL)
* @param obj Object of type BoundCRS or CoordinateOperation (must not be NULL)
* @return Object that must be unreferenced with proj_destroy(), or NULL
* in case of error, or missing target CRS.
*/
@@ -2167,7 +2167,7 @@ void proj_crs_info_list_destroy(PROJ_CRS_INFO **list) {
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param crs Objet of type DerivedCRS or BoundCRSs (must not be NULL)
* @param crs Object of type DerivedCRS or BoundCRSs (must not be NULL)
* @return Object of type SingleOperation that must be unreferenced with
* proj_destroy(), or NULL in case of error.
*/
@@ -2198,7 +2198,7 @@ PJ *proj_crs_get_coordoperation(PJ_CONTEXT *ctx, const PJ *crs) {
/** \brief Return information on the operation method of the SingleOperation.
*
* @param ctx PROJ context, or NULL for default context
* @param coordoperation Objet of type SingleOperation (typically a Conversion
* @param coordoperation Object of type SingleOperation (typically a Conversion
* or Transformation) (must not be NULL)
* @param out_method_name Pointer to a string value to store the method
* (projection) name. or NULL
@@ -5729,7 +5729,7 @@ PJ *proj_create_conversion_equal_earth(PJ_CONTEXT *ctx, double center_long,
* available.
*
* @param ctx PROJ context, or NULL for default context
* @param coordoperation Objet of type CoordinateOperation or derived classes
* @param coordoperation Object of type CoordinateOperation or derived classes
* (must not be NULL)
* @return TRUE or FALSE.
*/
@@ -5764,7 +5764,7 @@ int proj_coordoperation_is_instantiable(PJ_CONTEXT *ctx,
* compared to more accurate transformations.
*
* @param ctx PROJ context, or NULL for default context
* @param coordoperation Objet of type CoordinateOperation or derived classes
* @param coordoperation Object of type CoordinateOperation or derived classes
* (must not be NULL)
* @return TRUE or FALSE.
*/
@@ -5787,7 +5787,7 @@ int proj_coordoperation_has_ballpark_transformation(PJ_CONTEXT *ctx,
/** \brief Return the number of parameters of a SingleOperation
*
* @param ctx PROJ context, or NULL for default context
* @param coordoperation Objet of type SingleOperation or derived classes
* @param coordoperation Object of type SingleOperation or derived classes
* (must not be NULL)
*/
@@ -5809,7 +5809,7 @@ int proj_coordoperation_get_param_count(PJ_CONTEXT *ctx,
/** \brief Return the index of a parameter of a SingleOperation
*
* @param ctx PROJ context, or NULL for default context
* @param coordoperation Objet of type SingleOperation or derived classes
* @param coordoperation Object of type SingleOperation or derived classes
* (must not be NULL)
* @param name Parameter name. Must not be NULL
* @return index (>=0), or -1 in case of error.
@@ -5842,7 +5842,7 @@ int proj_coordoperation_get_param_index(PJ_CONTEXT *ctx,
/** \brief Return a parameter of a SingleOperation
*
* @param ctx PROJ context, or NULL for default context
* @param coordoperation Objet of type SingleOperation or derived classes
* @param coordoperation Object of type SingleOperation or derived classes
* (must not be NULL)
* @param index Parameter index.
* @param out_name Pointer to a string value to store the parameter name. or
@@ -5982,10 +5982,13 @@ int proj_coordoperation_get_param(
* values.
*
* @param ctx PROJ context, or NULL for default context
* @param coordoperation Objet of type Transformation, that can be represented
* @param coordoperation Object of type Transformation, that can be represented
* as a WKT1 TOWGS84 node (must not be NULL)
* @param out_values Pointer to an array of value_count double values.
* @param value_count Size of out_values array.
* @param value_count Size of out_values array. The suggested size is 7 to get
* translation, rotation and scale difference parameters. Rotation and scale
* difference terms might be zero if the transformation only includes translation
* parameters. In that case, value_count could be set to 3.
* @param emit_error_if_incompatible Boolean to inicate if an error must be
* logged if coordoperation is not compatible with a WKT1 TOWGS84
* representation.
@@ -6027,7 +6030,7 @@ int proj_coordoperation_get_towgs84_values(PJ_CONTEXT *ctx,
/** \brief Return the number of grids used by a CoordinateOperation
*
* @param ctx PROJ context, or NULL for default context
* @param coordoperation Objet of type CoordinateOperation or derived classes
* @param coordoperation Object of type CoordinateOperation or derived classes
* (must not be NULL)
*/
@@ -6063,7 +6066,7 @@ int proj_coordoperation_get_grid_used_count(PJ_CONTEXT *ctx,
/** \brief Return a parameter of a SingleOperation
*
* @param ctx PROJ context, or NULL for default context
* @param coordoperation Objet of type SingleOperation or derived classes
* @param coordoperation Object of type SingleOperation or derived classes
* (must not be NULL)
* @param index Parameter index.
* @param out_short_name Pointer to a string value to store the grid short name.
@@ -6538,7 +6541,7 @@ proj_create_operations(PJ_CONTEXT *ctx, const PJ *source_crs,
/** \brief Return the number of objects in the result set
*
* @param result Objet of type PJ_OBJ_LIST (must not be NULL)
* @param result Object of type PJ_OBJ_LIST (must not be NULL)
*/
int proj_list_get_count(const PJ_OBJ_LIST *result) {
assert(result);
@@ -6554,7 +6557,7 @@ int proj_list_get_count(const PJ_OBJ_LIST *result) {
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param result Objet of type PJ_OBJ_LIST (must not be NULL)
* @param result Object of type PJ_OBJ_LIST (must not be NULL)
* @param index Index
* @return a new object that must be unreferenced with proj_destroy(),
* or nullptr in case of error.
@@ -6620,7 +6623,7 @@ double proj_coordoperation_get_accuracy(PJ_CONTEXT *ctx,
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param crs Objet of type SingleCRS (must not be NULL)
* @param crs Object of type SingleCRS (must not be NULL)
* @return Object that must be unreferenced with proj_destroy(), or NULL
* in case of error (or if there is no datum)
*/
@@ -6648,7 +6651,7 @@ PJ *proj_crs_get_datum(PJ_CONTEXT *ctx, const PJ *crs) {
* It should be used by at most one thread at a time.
*
* @param ctx PROJ context, or NULL for default context
* @param crs Objet of type SingleCRS (must not be NULL)
* @param crs Object of type SingleCRS (must not be NULL)
* @return Object that must be unreferenced with proj_destroy(), or NULL
* in case of error.
*/
@@ -6668,7 +6671,7 @@ PJ *proj_crs_get_coordinate_system(PJ_CONTEXT *ctx, const PJ *crs) {
/** \brief Returns the type of the coordinate system.
*
* @param ctx PROJ context, or NULL for default context
* @param cs Objet of type CoordinateSystem (must not be NULL)
* @param cs Object of type CoordinateSystem (must not be NULL)
* @return type, or PJ_CS_TYPE_UNKNOWN in case of error.
*/
PJ_COORDINATE_SYSTEM_TYPE proj_cs_get_type(PJ_CONTEXT *ctx, const PJ *cs) {
@@ -6714,7 +6717,7 @@ PJ_COORDINATE_SYSTEM_TYPE proj_cs_get_type(PJ_CONTEXT *ctx, const PJ *cs) {
/** \brief Returns the number of axis of the coordinate system.
*
* @param ctx PROJ context, or NULL for default context
* @param cs Objet of type CoordinateSystem (must not be NULL)
* @param cs Object of type CoordinateSystem (must not be NULL)
* @return number of axis, or -1 in case of error.
*/
int proj_cs_get_axis_count(PJ_CONTEXT *ctx, const PJ *cs) {
@@ -6733,7 +6736,7 @@ int proj_cs_get_axis_count(PJ_CONTEXT *ctx, const PJ *cs) {
/** \brief Returns information on an axis
*
* @param ctx PROJ context, or NULL for default context
* @param cs Objet of type CoordinateSystem (must not be NULL)
* @param cs Object of type CoordinateSystem (must not be NULL)
* @param index Index of the coordinate system (between 0 and
* proj_cs_get_axis_count() - 1)
* @param out_name Pointer to a string value to store the axis name. or NULL
+1 -1
View File
@@ -1073,7 +1073,7 @@ void ObjectUsage::setProperties(
void ObjectUsage::baseExportToWKT(WKTFormatter *formatter) const {
const bool isWKT2 = formatter->version() == WKTFormatter::Version::WKT2;
if (isWKT2 && formatter->outputId()) {
if (isWKT2 && formatter->outputUsage()) {
auto l_domains = domains();
if (!l_domains.empty()) {
if (formatter->use2018Keywords()) {
+438 -56
View File
@@ -552,7 +552,9 @@ struct CoordinateOperation::Private {
// ---------------------------------------------------------------------------
GridDescription::GridDescription() = default;
GridDescription::GridDescription()
: shortName{}, fullName{}, packageName{}, url{}, directDownload(false),
openLicense(false), available(false) {}
GridDescription::~GridDescription() = default;
@@ -754,6 +756,15 @@ void CoordinateOperation::setHasBallparkTransformation(bool b) {
// ---------------------------------------------------------------------------
void CoordinateOperation::setProperties(
const util::PropertyMap &properties) // throw(InvalidValueTypeException)
{
ObjectUsage::setProperties(properties);
properties.getStringValue(OPERATION_VERSION_KEY, d->operationVersion_);
}
// ---------------------------------------------------------------------------
//! @cond Doxygen_Suppress
struct OperationMethod::Private {
util::optional<std::string> formula_{};
@@ -4814,7 +4825,7 @@ ConversionPtr Conversion::convertToOtherMethod(int targetEPSGCode) const {
common::Length(
parameterValueMeasure(EPSG_CODE_PARAMETER_FALSE_NORTHING)));
conv->setCRSs(this, false);
return std::move(conv);
return conv.as_nullable();
}
if (current_epsg_code == EPSG_CODE_METHOD_MERCATOR_VARIANT_B &&
@@ -4835,7 +4846,7 @@ ConversionPtr Conversion::convertToOtherMethod(int targetEPSGCode) const {
common::Length(
parameterValueMeasure(EPSG_CODE_PARAMETER_FALSE_NORTHING)));
conv->setCRSs(this, false);
return std::move(conv);
return conv.as_nullable();
}
if (current_epsg_code == EPSG_CODE_METHOD_LAMBERT_CONIC_CONFORMAL_1SP &&
@@ -4870,7 +4881,7 @@ ConversionPtr Conversion::convertToOtherMethod(int targetEPSGCode) const {
common::Length(
parameterValueMeasure(EPSG_CODE_PARAMETER_FALSE_NORTHING)));
conv->setCRSs(this, false);
return std::move(conv);
return conv.as_nullable();
} else {
const double K = k0 * m0 / std::pow(t0, n);
const double phi1 =
@@ -4926,7 +4937,7 @@ ConversionPtr Conversion::convertToOtherMethod(int targetEPSGCode) const {
EPSG_CODE_PARAMETER_FALSE_EASTING)),
common::Length(FN_corrected_rounded));
conv->setCRSs(this, false);
return std::move(conv);
return conv.as_nullable();
}
}
@@ -4940,7 +4951,7 @@ ConversionPtr Conversion::convertToOtherMethod(int targetEPSGCode) const {
parameterValueMeasure(EPSG_CODE_PARAMETER_FALSE_EASTING)),
common::Length(FN));
conv->setCRSs(this, false);
return std::move(conv);
return conv.as_nullable();
}
}
@@ -5004,7 +5015,7 @@ ConversionPtr Conversion::convertToOtherMethod(int targetEPSGCode) const {
EPSG_CODE_PARAMETER_NORTHING_FALSE_ORIGIN) +
(std::fabs(FN_correction) > 1e-8 ? FN_correction : 0)));
conv->setCRSs(this, false);
return std::move(conv);
return conv.as_nullable();
}
return nullptr;
@@ -6173,17 +6184,17 @@ TransformationNNPtr Transformation::create(
throw InvalidOperation(
"Inconsistent number of parameters and parameter values");
}
auto conv = Transformation::nn_make_shared<Transformation>(
auto transf = Transformation::nn_make_shared<Transformation>(
sourceCRSIn, targetCRSIn, interpolationCRSIn, methodIn, values,
accuracies);
conv->assignSelf(conv);
conv->setProperties(properties);
transf->assignSelf(transf);
transf->setProperties(properties);
std::string name;
if (properties.getStringValue(common::IdentifiedObject::NAME_KEY, name) &&
ci_find(name, "ballpark") != std::string::npos) {
conv->setHasBallparkTransformation(true);
transf->setHasBallparkTransformation(true);
}
return conv;
return transf;
}
// ---------------------------------------------------------------------------
@@ -7628,6 +7639,53 @@ void Transformation::_exportToWKT(io::WKTFormatter *formatter) const {
// ---------------------------------------------------------------------------
static void exportSourceCRSAndTargetCRSToWKT(const CoordinateOperation *co,
io::WKTFormatter *formatter) {
auto l_sourceCRS = co->sourceCRS();
assert(l_sourceCRS);
auto l_targetCRS = co->targetCRS();
assert(l_targetCRS);
const bool isWKT2 = formatter->version() == io::WKTFormatter::Version::WKT2;
const bool canExportCRSId =
(isWKT2 && formatter->use2018Keywords() &&
!(formatter->idOnTopLevelOnly() && formatter->topLevelHasId()));
const bool hasDomains = !co->domains().empty();
if (hasDomains) {
formatter->pushDisableUsage();
}
formatter->startNode(io::WKTConstants::SOURCECRS, false);
if (canExportCRSId && !l_sourceCRS->identifiers().empty()) {
// fake that top node has no id, so that the sourceCRS id is
// considered
formatter->pushHasId(false);
l_sourceCRS->_exportToWKT(formatter);
formatter->popHasId();
} else {
l_sourceCRS->_exportToWKT(formatter);
}
formatter->endNode();
formatter->startNode(io::WKTConstants::TARGETCRS, false);
if (canExportCRSId && !l_targetCRS->identifiers().empty()) {
// fake that top node has no id, so that the targetCRS id is
// considered
formatter->pushHasId(false);
l_targetCRS->_exportToWKT(formatter);
formatter->popHasId();
} else {
l_targetCRS->_exportToWKT(formatter);
}
formatter->endNode();
if (hasDomains) {
formatter->popDisableUsage();
}
}
// ---------------------------------------------------------------------------
void SingleOperation::exportTransformationToWKT(
io::WKTFormatter *formatter) const {
const bool isWKT2 = formatter->version() == io::WKTFormatter::Version::WKT2;
@@ -7636,11 +7694,6 @@ void SingleOperation::exportTransformationToWKT(
"Transformation can only be exported to WKT2");
}
auto l_sourceCRS = sourceCRS();
assert(l_sourceCRS);
auto l_targetCRS = targetCRS();
assert(l_targetCRS);
if (formatter->abridgedTransformation()) {
formatter->startNode(io::WKTConstants::ABRIDGEDTRANSFORMATION,
!identifiers().empty());
@@ -7651,14 +7704,17 @@ void SingleOperation::exportTransformationToWKT(
formatter->addQuotedString(nameStr());
if (!formatter->abridgedTransformation()) {
formatter->startNode(io::WKTConstants::SOURCECRS, false);
l_sourceCRS->_exportToWKT(formatter);
formatter->endNode();
if (isWKT2 && formatter->use2018Keywords()) {
const auto &version = operationVersion();
if (version.has_value()) {
formatter->startNode(io::WKTConstants::VERSION, false);
formatter->addQuotedString(*version);
formatter->endNode();
}
}
formatter->startNode(io::WKTConstants::TARGETCRS, false);
l_targetCRS->_exportToWKT(formatter);
formatter->endNode();
if (!formatter->abridgedTransformation()) {
exportSourceCRSAndTargetCRSToWKT(this, formatter);
}
method()->_exportToWKT(formatter);
@@ -8722,13 +8778,25 @@ void Transformation::_exportToPROJString(
if (fileParameter &&
fileParameter->type() == ParameterValue::Type::FILENAME) {
auto filename = fileParameter->valueFile();
if (isMethodInverseOf) {
bool doInversion = isMethodInverseOf;
if (!identifiers().empty() &&
*identifiers().front()->codeSpace() ==
metadata::Identifier::EPSG &&
method()->nameStr() ==
"Geographic3D to GravityRelatedHeight (US .gtx)" &&
ends_with(filename, ".gtx")) {
// gtx files, from straight EPSG definition, must be applied in
// reverse order for "Geographic3D to GravityRelatedHeight"
// method
doInversion = !doInversion;
}
if (doInversion) {
formatter->startInversion();
}
formatter->addStep("vgridshift");
formatter->addParam("grids", filename);
formatter->addParam("multiplier", 1.0);
if (isMethodInverseOf) {
if (doInversion) {
formatter->stopInversion();
}
return;
@@ -9308,20 +9376,43 @@ void ConcatenatedOperation::_exportToWKT(io::WKTFormatter *formatter) const {
!identifiers().empty());
formatter->addQuotedString(nameStr());
formatter->startNode(io::WKTConstants::SOURCECRS, false);
sourceCRS()->_exportToWKT(formatter);
formatter->endNode();
if (isWKT2 && formatter->use2018Keywords()) {
const auto &version = operationVersion();
if (version.has_value()) {
formatter->startNode(io::WKTConstants::VERSION, false);
formatter->addQuotedString(*version);
formatter->endNode();
}
}
formatter->startNode(io::WKTConstants::TARGETCRS, false);
targetCRS()->_exportToWKT(formatter);
formatter->endNode();
exportSourceCRSAndTargetCRSToWKT(this, formatter);
const bool canExportOperationId =
!(formatter->idOnTopLevelOnly() && formatter->topLevelHasId());
const bool hasDomains = !domains().empty();
if (hasDomains) {
formatter->pushDisableUsage();
}
for (const auto &operation : operations()) {
formatter->startNode(io::WKTConstants::STEP, false);
operation->_exportToWKT(formatter);
if (canExportOperationId && !operation->identifiers().empty()) {
// fake that top node has no id, so that the operation id is
// considered
formatter->pushHasId(false);
operation->_exportToWKT(formatter);
formatter->popHasId();
} else {
operation->_exportToWKT(formatter);
}
formatter->endNode();
}
if (hasDomains) {
formatter->popDisableUsage();
}
ObjectUsage::baseExportToWKT(formatter);
formatter->endNode();
}
@@ -10802,7 +10893,7 @@ struct MyPROJStringExportableHorizVerticalHorizPROJBased final
MyPROJStringExportableHorizVerticalHorizPROJBased::
~MyPROJStringExportableHorizVerticalHorizPROJBased() = default;
}
} // namespace operation
NS_PROJ_END
#if 0
@@ -11181,16 +11272,37 @@ static bool hasIdentifiers(const CoordinateOperationNNPtr &op) {
static std::vector<crs::CRSNNPtr>
findCandidateGeodCRSForDatum(const io::AuthorityFactoryPtr &authFactory,
const datum::GeodeticReferenceFramePtr &datum) {
const datum::GeodeticReferenceFrame *datum) {
std::vector<crs::CRSNNPtr> candidates;
for (const auto &id : datum->identifiers()) {
const auto &authName = *(id->codeSpace());
const auto &code = id->code();
if (!authName.empty()) {
auto l_candidates = authFactory->createGeodeticCRSFromDatum(
authName, code, std::string());
for (const auto &candidate : l_candidates) {
candidates.emplace_back(candidate);
assert(datum);
const auto &ids = datum->identifiers();
const auto &datumName = datum->nameStr();
if (!ids.empty()) {
for (const auto &id : ids) {
const auto &authName = *(id->codeSpace());
const auto &code = id->code();
if (!authName.empty()) {
auto l_candidates = authFactory->createGeodeticCRSFromDatum(
authName, code, std::string());
for (const auto &candidate : l_candidates) {
candidates.emplace_back(candidate);
}
}
}
} else if (datumName != "unknown" && datumName != "unnamed") {
auto matches = authFactory->createObjectsFromName(
datumName,
{io::AuthorityFactory::ObjectType::GEODETIC_REFERENCE_FRAME}, false,
2);
if (matches.size() == 1) {
const auto &match = matches.front();
if (datum->_isEquivalentTo(
match.get(), util::IComparable::Criterion::EQUIVALENT) &&
!match->identifiers().empty()) {
return findCandidateGeodCRSForDatum(
authFactory,
dynamic_cast<const datum::GeodeticReferenceFrame *>(
match.get()));
}
}
}
@@ -11232,9 +11344,9 @@ void CoordinateOperationFactory::Private::createOperationsWithDatumPivot(
const auto &authFactory = context.context->getAuthorityFactory();
const auto candidatesSrcGeod(
findCandidateGeodCRSForDatum(authFactory, geodSrc->datum()));
findCandidateGeodCRSForDatum(authFactory, geodSrc->datum().get()));
const auto candidatesDstGeod(
findCandidateGeodCRSForDatum(authFactory, geodDst->datum()));
findCandidateGeodCRSForDatum(authFactory, geodDst->datum().get()));
auto createTransformations = [&](const crs::CRSNNPtr &candidateSrcGeod,
const crs::CRSNNPtr &candidateDstGeod,
@@ -11475,12 +11587,8 @@ CoordinateOperationFactory::Private::createOperations(
// but transformations are only available between their
// corresponding geocentric CRS.
const auto &srcDatum = geodSrc->datum();
const bool srcHasDatumWithId =
srcDatum && !srcDatum->identifiers().empty();
const auto &dstDatum = geodDst->datum();
const bool dstHasDatumWithId =
dstDatum && !dstDatum->identifiers().empty();
if (srcHasDatumWithId && dstHasDatumWithId &&
if (srcDatum != nullptr && dstDatum != nullptr &&
!srcDatum->_isEquivalentTo(
dstDatum.get(), util::IComparable::Criterion::EQUIVALENT)) {
createOperationsWithDatumPivot(res, sourceCRS, targetCRS,
@@ -11599,7 +11707,6 @@ CoordinateOperationFactory::Private::createOperations(
return applyInverse(createOperations(targetCRS, sourceCRS, context));
}
// boundCRS to a geogCRS that is the same as the hubCRS
auto boundSrc = dynamic_cast<const crs::BoundCRS *>(sourceCRS.get());
auto geogDst = dynamic_cast<const crs::GeographicCRS *>(targetCRS.get());
if (boundSrc && geogDst) {
@@ -11608,6 +11715,7 @@ CoordinateOperationFactory::Private::createOperations(
dynamic_cast<const crs::GeographicCRS *>(hubSrc.get());
auto geogCRSOfBaseOfBoundSrc =
boundSrc->baseCRS()->extractGeographicCRS();
// Is it: boundCRS to a geogCRS that is the same as the hubCRS ?
if (hubSrcGeog && geogCRSOfBaseOfBoundSrc &&
(hubSrcGeog->_isEquivalentTo(
geogDst, util::IComparable::Criterion::EQUIVALENT) ||
@@ -11725,6 +11833,35 @@ CoordinateOperationFactory::Private::createOperations(
return res;
}
if (hubSrcGeog && geogCRSOfBaseOfBoundSrc) {
// This one should go to the above 'Is it: boundCRS to a geogCRS
// that is the same as the hubCRS ?' case
auto opsFirst = createOperations(sourceCRS, hubSrc, context);
auto opsLast = createOperations(hubSrc, targetCRS, context);
if (!opsFirst.empty() && !opsLast.empty()) {
for (const auto &opFirst : opsFirst) {
for (const auto &opLast : opsLast) {
// Exclude artificial transformations from the hub
// to the target CRS
if (!opLast->hasBallparkTransformation()) {
try {
res.emplace_back(
ConcatenatedOperation::
createComputeMetadata(
{opFirst, opLast},
!allowEmptyIntersection));
} catch (
const InvalidOperationEmptyIntersection &) {
}
}
}
}
if (!res.empty()) {
return res;
}
}
}
return createOperations(boundSrc->baseCRS(), targetCRS, context);
}
@@ -11796,6 +11933,31 @@ CoordinateOperationFactory::Private::createOperations(
// A bit odd case as we are comparing apples to oranges, but in case
// the vertical unit differ, do something useful.
if (vertSrc && geogDst) {
if (vertSrc->identifiers().empty()) {
const auto &authFactory = context.context->getAuthorityFactory();
const auto &vertSrcName = vertSrc->nameStr();
if (authFactory != nullptr && vertSrcName != "unnamed" &&
vertSrcName != "unknown") {
auto matches = authFactory->createObjectsFromName(
vertSrcName,
{io::AuthorityFactory::ObjectType::VERTICAL_CRS}, false, 2);
if (matches.size() == 1) {
const auto &match = matches.front();
if (vertSrc->_isEquivalentTo(
match.get(),
util::IComparable::Criterion::EQUIVALENT) &&
!match->identifiers().empty()) {
return createOperations(
NN_NO_CHECK(
util::nn_dynamic_pointer_cast<crs::VerticalCRS>(
match)),
targetCRS, context);
}
}
}
}
const double convSrc =
vertSrc->coordinateSystem()->axisList()[0]->unit().conversionToSI();
double convDst = 1.0;
@@ -11877,6 +12039,34 @@ CoordinateOperationFactory::Private::createOperations(
}
}
auto vertCRSOfBaseOfBoundSrc =
boundSrc->baseCRS()->extractVerticalCRS();
auto vertCRSOfBaseOfBoundDst =
boundDst->baseCRS()->extractVerticalCRS();
if (hubSrcGeog && hubDstGeog &&
hubSrcGeog->_isEquivalentTo(
hubDstGeog, util::IComparable::Criterion::EQUIVALENT) &&
vertCRSOfBaseOfBoundSrc && vertCRSOfBaseOfBoundDst) {
auto opsFirst = createOperations(sourceCRS, hubSrc, context);
auto opsLast = createOperations(hubSrc, targetCRS, context);
if (!opsFirst.empty() && !opsLast.empty()) {
for (const auto &opFirst : opsFirst) {
for (const auto &opLast : opsLast) {
try {
res.emplace_back(
ConcatenatedOperation::createComputeMetadata(
{opFirst, opLast},
!allowEmptyIntersection));
} catch (const InvalidOperationEmptyIntersection &) {
}
}
}
if (!res.empty()) {
return res;
}
}
}
return createOperations(boundSrc->baseCRS(), boundDst->baseCRS(),
context);
}
@@ -11912,11 +12102,40 @@ CoordinateOperationFactory::Private::createOperations(
return horizTransforms;
}
}
} else if (compoundSrc && geodDst) {
auto datum = geodDst->datum();
if (datum) {
auto cs =
cs::EllipsoidalCS::createLatitudeLongitudeEllipsoidalHeight(
common::UnitOfMeasure::DEGREE,
common::UnitOfMeasure::METRE);
auto intermGeog3DCRS = util::nn_static_pointer_cast<crs::CRS>(
crs::GeographicCRS::create(
util::PropertyMap()
.set(common::IdentifiedObject::NAME_KEY,
geodDst->nameStr())
.set(common::ObjectUsage::DOMAIN_OF_VALIDITY_KEY,
metadata::Extent::WORLD),
NN_NO_CHECK(datum), cs));
auto sourceToGeog3DOps =
createOperations(sourceCRS, intermGeog3DCRS, context);
auto geog3DToTargetOps =
createOperations(intermGeog3DCRS, targetCRS, context);
if (!geog3DToTargetOps.empty()) {
for (const auto &op : sourceToGeog3DOps) {
res.emplace_back(
ConcatenatedOperation::createComputeMetadata(
{op, geog3DToTargetOps.front()},
!allowEmptyIntersection));
}
return res;
}
}
}
// reverse of previous case
auto compoundDst = dynamic_cast<const crs::CompoundCRS *>(targetCRS.get());
if (geogSrc && compoundDst) {
if (geodSrc && compoundDst) {
return applyInverse(createOperations(targetCRS, sourceCRS, context));
}
@@ -11956,6 +12175,21 @@ CoordinateOperationFactory::Private::createOperations(
nn_interpTransformCRS));
}
}
} else {
auto compSrc0BoundCrs = dynamic_cast<crs::BoundCRS *>(
componentsSrc[0].get());
auto compDst0BoundCrs = dynamic_cast<crs::BoundCRS *>(
componentsDst[0].get());
if (compSrc0BoundCrs && compDst0BoundCrs &&
dynamic_cast<crs::GeographicCRS *>(
compSrc0BoundCrs->hubCRS().get()) &&
compSrc0BoundCrs->hubCRS()->_isEquivalentTo(
compDst0BoundCrs->hubCRS().get())) {
interpolationGeogCRS =
NN_NO_CHECK(util::nn_dynamic_pointer_cast<
crs::GeographicCRS>(
compSrc0BoundCrs->hubCRS()));
}
}
auto opSrcCRSToGeogCRS = createOperations(
componentsSrc[0], interpolationGeogCRS, context);
@@ -11980,12 +12214,156 @@ CoordinateOperationFactory::Private::createOperations(
}
}
// '+proj=longlat +ellps=GRS67 +nadgrids=@foo.gsb +type=crs' to
// '+proj=longlat +ellps=GRS80 +nadgrids=@bar.gsb +geoidgrids=@bar.gtx
// +type=crs'
if (boundSrc && compoundDst) {
const auto &componentsDst = compoundDst->componentReferenceSystems();
if (!componentsDst.empty()) {
auto compDst0BoundCrs =
dynamic_cast<crs::BoundCRS *>(componentsDst[0].get());
if (compDst0BoundCrs) {
auto boundSrcHubAsGeogCRS = dynamic_cast<crs::GeographicCRS *>(
boundSrc->hubCRS().get());
auto compDst0BoundCrsHubAsGeogCRS =
dynamic_cast<crs::GeographicCRS *>(
compDst0BoundCrs->hubCRS().get());
if (boundSrcHubAsGeogCRS && compDst0BoundCrsHubAsGeogCRS) {
const auto &boundSrcHubAsGeogCRSDatum =
boundSrcHubAsGeogCRS->datum();
const auto &compDst0BoundCrsHubAsGeogCRSDatum =
compDst0BoundCrsHubAsGeogCRS->datum();
if (boundSrcHubAsGeogCRSDatum &&
compDst0BoundCrsHubAsGeogCRSDatum &&
boundSrcHubAsGeogCRSDatum->_isEquivalentTo(
compDst0BoundCrsHubAsGeogCRSDatum.get())) {
auto cs = cs::EllipsoidalCS::
createLatitudeLongitudeEllipsoidalHeight(
common::UnitOfMeasure::DEGREE,
common::UnitOfMeasure::METRE);
auto intermGeog3DCRS = util::nn_static_pointer_cast<
crs::CRS>(crs::GeographicCRS::create(
util::PropertyMap()
.set(common::IdentifiedObject::NAME_KEY,
boundSrcHubAsGeogCRS->nameStr())
.set(
common::ObjectUsage::DOMAIN_OF_VALIDITY_KEY,
metadata::Extent::WORLD),
NN_NO_CHECK(boundSrcHubAsGeogCRSDatum), cs));
auto sourceToGeog3DOps = createOperations(
sourceCRS, intermGeog3DCRS, context);
auto geog3DToTargetOps = createOperations(
intermGeog3DCRS, targetCRS, context);
for (const auto &opSrc : sourceToGeog3DOps) {
for (const auto &opDst : geog3DToTargetOps) {
if (opSrc->targetCRS() && opDst->sourceCRS() &&
!opSrc->targetCRS()->_isEquivalentTo(
opDst->sourceCRS().get())) {
// Shouldn't happen normally, but typically
// one of them can be 2D and the other 3D
// due to above createOperations() not
// exactly setting the expected source and
// target CRS.
// So create an adapter operation...
auto intermOps = createOperations(
NN_NO_CHECK(opSrc->targetCRS()),
NN_NO_CHECK(opDst->sourceCRS()),
context);
if (!intermOps.empty()) {
res.emplace_back(
ConcatenatedOperation::
createComputeMetadata(
{opSrc, intermOps.front(),
opDst},
!allowEmptyIntersection));
}
} else {
res.emplace_back(
ConcatenatedOperation::
createComputeMetadata(
{opSrc, opDst},
!allowEmptyIntersection));
}
}
}
}
}
}
}
}
// reverse of previous case
if (boundDst && compoundSrc) {
return applyInverse(createOperations(targetCRS, sourceCRS, context));
}
return res;
}
//! @endcond
// ---------------------------------------------------------------------------
static crs::CRSNNPtr
getResolvedCRS(const crs::CRSNNPtr &crs,
const CoordinateOperationContextNNPtr &context) {
const auto &authFactory = context->getAuthorityFactory();
auto projectedCrs = dynamic_cast<crs::ProjectedCRS *>(crs.get());
if (projectedCrs && authFactory) {
const auto &ids = projectedCrs->identifiers();
if (!ids.empty() && projectedCrs->baseCRS()->identifiers().empty()) {
const auto tmpAuthFactory = io::AuthorityFactory::create(
authFactory->databaseContext(), *ids.front()->codeSpace());
try {
crs::CRSNNPtr resolvedCrs(
tmpAuthFactory->createProjectedCRS(ids.front()->code()));
if (resolvedCrs->_isEquivalentTo(
crs.get(), util::IComparable::Criterion::EQUIVALENT)) {
return resolvedCrs;
}
} catch (const std::exception &) {
}
}
}
auto compoundCrs = dynamic_cast<crs::CompoundCRS *>(crs.get());
// If we get a CompoundCRS that has an EPSG code, but whose component CRS
// lack one, typically from WKT2, this might be an issue to get proper
// results in createOperations(), so import the CompoundCRS from the
// registry, and if equivalent to the original one, then use the version
// from the registry.
if (compoundCrs && authFactory) {
const auto &ids = compoundCrs->identifiers();
if (!ids.empty()) {
const auto &components = compoundCrs->componentReferenceSystems();
bool hasMissingId = false;
for (const auto &comp : components) {
if (comp->identifiers().empty()) {
hasMissingId = true;
break;
}
}
if (hasMissingId) {
const auto tmpAuthFactory = io::AuthorityFactory::create(
authFactory->databaseContext(), *ids.front()->codeSpace());
try {
crs::CRSNNPtr resolvedCrs(
tmpAuthFactory->createCompoundCRS(ids.front()->code()));
if (resolvedCrs->_isEquivalentTo(
crs.get(),
util::IComparable::Criterion::EQUIVALENT)) {
return resolvedCrs;
}
} catch (const std::exception &) {
}
}
}
}
return crs;
}
// ---------------------------------------------------------------------------
/** \brief Find a list of CoordinateOperation from sourceCRS to targetCRS.
*
* The operations are sorted with the most relevant ones first: by
@@ -12014,10 +12392,14 @@ CoordinateOperationFactory::createOperations(
auto l_sourceCRS = srcBoundCRS ? NN_NO_CHECK(srcBoundCRS) : sourceCRS;
auto l_targetCRS = targetBoundCRS ? NN_NO_CHECK(targetBoundCRS) : targetCRS;
Private::Context contextPrivate(sourceCRS, targetCRS, context);
return filterAndSort(
Private::createOperations(l_sourceCRS, l_targetCRS, contextPrivate),
context, l_sourceCRS, l_targetCRS);
auto l_resolvedSourceCRS = getResolvedCRS(l_sourceCRS, context);
auto l_resolvedTargetCRS = getResolvedCRS(l_targetCRS, context);
Private::Context contextPrivate(l_resolvedSourceCRS, l_resolvedTargetCRS,
context);
return filterAndSort(Private::createOperations(l_resolvedSourceCRS,
l_resolvedTargetCRS,
contextPrivate),
context, l_resolvedSourceCRS, l_resolvedTargetCRS);
}
// ---------------------------------------------------------------------------
+13 -4
View File
@@ -2422,16 +2422,21 @@ void DerivedCRS::setDerivingConversionCRS() {
// ---------------------------------------------------------------------------
void DerivedCRS::baseExportToWKT(io::WKTFormatter *&formatter,
void DerivedCRS::baseExportToWKT(io::WKTFormatter *formatter,
const std::string &keyword,
const std::string &baseKeyword) const {
formatter->startNode(keyword, !identifiers().empty());
formatter->addQuotedString(nameStr());
const auto &l_baseCRS = d->baseCRS_;
formatter->startNode(baseKeyword, !l_baseCRS->identifiers().empty());
formatter->startNode(baseKeyword, formatter->use2018Keywords() &&
!l_baseCRS->identifiers().empty());
formatter->addQuotedString(l_baseCRS->nameStr());
l_baseCRS->exportDatumOrDatumEnsembleToWkt(formatter);
if (formatter->use2018Keywords() &&
!(formatter->idOnTopLevelOnly() && formatter->topLevelHasId())) {
l_baseCRS->formatID(formatter);
}
formatter->endNode();
formatter->setUseDerivingConversion(true);
@@ -2659,7 +2664,7 @@ void ProjectedCRS::_exportToWKT(io::WKTFormatter *formatter) const {
dynamic_cast<const GeographicCRS *>(l_baseCRS.get()))
? io::WKTConstants::BASEGEOGCRS
: io::WKTConstants::BASEGEODCRS,
!l_baseCRS->identifiers().empty());
formatter->use2018Keywords() && !l_baseCRS->identifiers().empty());
formatter->addQuotedString(l_baseCRS->nameStr());
l_baseCRS->exportDatumOrDatumEnsembleToWkt(formatter);
// insert ellipsoidal cs unit when the units of the map
@@ -2670,6 +2675,10 @@ void ProjectedCRS::_exportToWKT(io::WKTFormatter *formatter) const {
geodeticCRSAxisList[0]->unit()._exportToWKT(formatter);
}
l_baseCRS->primeMeridian()->_exportToWKT(formatter);
if (formatter->use2018Keywords() &&
!(formatter->idOnTopLevelOnly() && formatter->topLevelHasId())) {
l_baseCRS->formatID(formatter);
}
formatter->endNode();
} else {
const auto oldAxisOutputRule = formatter->outputAxis();
@@ -4849,7 +4858,7 @@ DerivedCRSTemplate<DerivedCRSTraits>::create(
// ---------------------------------------------------------------------------
static void DerivedCRSTemplateCheckExportToWKT(io::WKTFormatter *&formatter,
static void DerivedCRSTemplateCheckExportToWKT(io::WKTFormatter *formatter,
const std::string &crsName,
bool wkt2_2018_only) {
const bool isWKT2 = formatter->version() == io::WKTFormatter::Version::WKT2;
+36 -8
View File
@@ -1024,8 +1024,8 @@ bool DatabaseContext::lookForGridInfo(const std::string &projFilename,
info.url = url;
info.directDownload = directDownload;
info.openLicense = openLicense;
info.gridAvailable = gridAvailable;
}
info.gridAvailable = gridAvailable;
info.found = ret;
d->cache(projFilename, info);
return ret;
@@ -1359,6 +1359,15 @@ const DatabaseContextNNPtr &AuthorityFactory::databaseContext() const {
// ---------------------------------------------------------------------------
//! @cond Doxygen_Suppress
AuthorityFactory::CRSInfo::CRSInfo()
: authName{}, code{}, name{}, type{ObjectType::CRS}, deprecated{},
bbox_valid{}, west_lon_degree{}, south_lat_degree{}, east_lon_degree{},
north_lat_degree{}, areaName{}, projectionMethodName{} {}
//! @endcond
// ---------------------------------------------------------------------------
/** \brief Returns an arbitrary object from a code.
*
* The returned object will typically be an instance of Datum,
@@ -2588,7 +2597,7 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
"rate_scale_difference, rate_scale_difference_uom_auth_name, "
"rate_scale_difference_uom_code, epoch, epoch_uom_auth_name, "
"epoch_uom_code, px, py, pz, pivot_uom_auth_name, pivot_uom_code, "
"deprecated FROM "
"operation_version, deprecated FROM "
"helmert_transformation WHERE auth_name = ? AND code = ?",
code);
if (res.empty()) {
@@ -2649,6 +2658,7 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
const auto &pivot_uom_auth_name = row[idx++];
const auto &pivot_uom_code = row[idx++];
const auto &operation_version = row[idx++];
const auto &deprecated_str = row[idx++];
const bool deprecated = deprecated_str == "1";
assert(idx == row.size());
@@ -2789,6 +2799,10 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
auto props =
d->createProperties(code, name, deprecated,
area_of_use_auth_name, area_of_use_code);
if (!operation_version.empty()) {
props.set(operation::CoordinateOperation::OPERATION_VERSION_KEY,
operation_version);
}
auto propsMethod =
util::PropertyMap()
@@ -2819,8 +2833,8 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
"grid_name, "
"grid2_param_auth_name, grid2_param_code, grid2_param_name, "
"grid2_name, "
"interpolation_crs_auth_name, interpolation_crs_code, deprecated "
"FROM "
"interpolation_crs_auth_name, interpolation_crs_code, "
"operation_version, deprecated FROM "
"grid_transformation WHERE auth_name = ? AND code = ?",
code);
if (res.empty()) {
@@ -2852,7 +2866,7 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
const auto &grid2_name = row[idx++];
const auto &interpolation_crs_auth_name = row[idx++];
const auto &interpolation_crs_code = row[idx++];
const auto &operation_version = row[idx++];
const auto &deprecated_str = row[idx++];
const bool deprecated = deprecated_str == "1";
assert(idx == row.size());
@@ -2898,6 +2912,10 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
auto props =
d->createProperties(code, name, deprecated,
area_of_use_auth_name, area_of_use_code);
if (!operation_version.empty()) {
props.set(operation::CoordinateOperation::OPERATION_VERSION_KEY,
operation_version);
}
auto propsMethod =
util::PropertyMap()
.set(metadata::Identifier::CODESPACE_KEY, method_auth_name)
@@ -2939,8 +2957,8 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
buffer << ", param" << i << "_uom_auth_name";
buffer << ", param" << i << "_uom_code";
}
buffer << ", deprecated FROM other_transformation WHERE auth_name = ? "
"AND code = ?";
buffer << ", operation_version, deprecated FROM other_transformation "
"WHERE auth_name = ? AND code = ?";
auto res = d->runWithCodeParam(buffer.str(), code);
if (res.empty()) {
@@ -2993,6 +3011,7 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
}
idx = base_param_idx + 6 * N_MAX_PARAMS;
const auto &operation_version = row[idx++];
const auto &deprecated_str = row[idx++];
const bool deprecated = deprecated_str == "1";
assert(idx == row.size());
@@ -3007,6 +3026,10 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
auto props =
d->createProperties(code, name, deprecated,
area_of_use_auth_name, area_of_use_code);
if (!operation_version.empty()) {
props.set(operation::CoordinateOperation::OPERATION_VERSION_KEY,
operation_version);
}
std::vector<metadata::PositionalAccuracyNNPtr> accuracies;
if (!accuracy.empty()) {
@@ -3060,7 +3083,7 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
"target_crs_auth_name, target_crs_code, "
"area_of_use_auth_name, area_of_use_code, accuracy, "
"step1_auth_name, step1_code, step2_auth_name, step2_code, "
"step3_auth_name, step3_code, deprecated FROM "
"step3_auth_name, step3_code, operation_version, deprecated FROM "
"concatenated_operation WHERE auth_name = ? AND code = ?",
code);
if (res.empty()) {
@@ -3085,6 +3108,7 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
const auto &step2_code = row[idx++];
const auto &step3_auth_name = row[idx++];
const auto &step3_code = row[idx++];
const auto &operation_version = row[idx++];
const auto &deprecated_str = row[idx++];
const bool deprecated = deprecated_str == "1";
@@ -3118,6 +3142,10 @@ operation::CoordinateOperationNNPtr AuthorityFactory::createCoordinateOperation(
auto props =
d->createProperties(code, name, deprecated,
area_of_use_auth_name, area_of_use_code);
if (!operation_version.empty()) {
props.set(operation::CoordinateOperation::OPERATION_VERSION_KEY,
operation_version);
}
std::vector<metadata::PositionalAccuracyNNPtr> accuracies;
if (!accuracy.empty()) {
+79 -8
View File
@@ -141,6 +141,7 @@ struct WKTFormatter::Private {
std::vector<bool> stackHasChild_{};
std::vector<bool> stackHasId_{false};
std::vector<bool> stackEmptyKeyword_{};
std::vector<bool> stackDisableUsage_{};
std::vector<bool> outputUnitStack_{true};
std::vector<bool> outputIdStack_{true};
std::vector<UnitOfMeasureNNPtr> axisLinearUnitStack_{
@@ -272,6 +273,11 @@ const std::string &WKTFormatter::toString() const {
if (d->outputUnitStack_.size() != 1)
throw FormattingException(
"Unbalanced pushOutputUnit() / popOutputUnit()");
if (d->stackHasId_.size() != 1)
throw FormattingException("Unbalanced pushHasId() / popHasId()");
if (!d->stackDisableUsage_.empty())
throw FormattingException(
"Unbalanced pushDisableUsage() / popDisableUsage()");
return d->result_;
}
@@ -556,6 +562,28 @@ bool WKTFormatter::outputId() const {
// ---------------------------------------------------------------------------
void WKTFormatter::pushHasId(bool hasId) { d->stackHasId_.push_back(hasId); }
// ---------------------------------------------------------------------------
void WKTFormatter::popHasId() { d->stackHasId_.pop_back(); }
// ---------------------------------------------------------------------------
void WKTFormatter::pushDisableUsage() { d->stackDisableUsage_.push_back(true); }
// ---------------------------------------------------------------------------
void WKTFormatter::popDisableUsage() { d->stackDisableUsage_.pop_back(); }
// ---------------------------------------------------------------------------
bool WKTFormatter::outputUsage() const {
return outputId() && d->stackDisableUsage_.empty();
}
// ---------------------------------------------------------------------------
void WKTFormatter::pushAxisLinearUnit(const UnitOfMeasureNNPtr &unit) {
d->axisLinearUnitStack_.push_back(unit);
}
@@ -634,6 +662,18 @@ bool WKTFormatter::primeMeridianInDegree() const {
// ---------------------------------------------------------------------------
bool WKTFormatter::idOnTopLevelOnly() const {
return d->params_.idOnTopLevelOnly_;
}
// ---------------------------------------------------------------------------
bool WKTFormatter::topLevelHasId() const {
return d->stackHasId_.size() >= 2 && d->stackHasId_[1];
}
// ---------------------------------------------------------------------------
WKTFormatter::Version WKTFormatter::version() const {
return d->params_.version_;
}
@@ -1581,6 +1621,17 @@ PropertyMap &WKTParser::Private::buildProperties(const WKTNodeNNPtr &node,
}
}
auto &versionNode = nodeP->lookForChild(WKTConstants::VERSION);
if (!isNull(versionNode)) {
const auto &versionChildren = versionNode->GP()->children();
if (versionChildren.size() == 1) {
properties->set(CoordinateOperation::OPERATION_VERSION_KEY,
stripQuotes(versionChildren[0]));
} else {
ThrowNotRequiredNumberOfChildren(versionNode->GP()->value());
}
}
return *properties;
}
@@ -4455,9 +4506,11 @@ static BaseObjectNNPtr createFromUserInput(const std::string &text,
* <li>WKT string</li>
* <li>PROJ string</li>
* <li>database code, prefixed by its authoriy. e.g. "EPSG:4326"</li>
* <li>URN. e.g. "urn:ogc:def:crs:EPSG::4326",
* "urn:ogc:def:coordinateOperation:EPSG::1671"</li>
* <li>an objet name. e.g "WGS 84", "WGS 84 / UTM zone 31N". In that case as
* <li>OGC URN. e.g. "urn:ogc:def:crs:EPSG::4326",
* "urn:ogc:def:coordinateOperation:EPSG::1671",
* "urn:ogc:def:ellipsoid:EPSG::7001"
* or "urn:ogc:def:datum:EPSG::6326"</li>
* <li>an Object name. e.g "WGS 84", "WGS 84 / UTM zone 31N". In that case as
* uniqueness is not guaranteed, the function may apply heuristics to
* determine the appropriate best match.</li>
* </ul>
@@ -4489,9 +4542,11 @@ BaseObjectNNPtr createFromUserInput(const std::string &text,
* <li>WKT string</li>
* <li>PROJ string</li>
* <li>database code, prefixed by its authoriy. e.g. "EPSG:4326"</li>
* <li>URN. e.g. "urn:ogc:def:crs:EPSG::4326",
* "urn:ogc:def:coordinateOperation:EPSG::1671"</li>
* <li>an objet name. e.g "WGS 84", "WGS 84 / UTM zone 31N". In that case as
* <li>OGC URN. e.g. "urn:ogc:def:crs:EPSG::4326",
* "urn:ogc:def:coordinateOperation:EPSG::1671",
* "urn:ogc:def:ellipsoid:EPSG::7001"
* or "urn:ogc:def:datum:EPSG::6326"</li>
* <li>an Object name. e.g "WGS 84", "WGS 84 / UTM zone 31N". In that case as
* uniqueness is not guaranteed, the function may apply heuristics to
* determine the appropriate best match.</li>
* </ul>
@@ -5049,7 +5104,7 @@ const std::string &PROJStringFormatter::toString() const {
first.paramValues[1].keyEquals("z_in") &&
first.paramValues[2].keyEquals("xy_out") &&
first.paramValues[3].keyEquals("z_out") &&
second.paramValues[0].keyEquals("xy_in=") &&
second.paramValues[0].keyEquals("xy_in") &&
second.paramValues[1].keyEquals("xy_out") &&
first.paramValues[0].value == second.paramValues[1].value &&
first.paramValues[2].value == second.paramValues[0].value) {
@@ -5074,6 +5129,22 @@ const std::string &PROJStringFormatter::toString() const {
break;
}
// unitconvert (1), axisswap order=2,1, unitconvert(2) ==>
// axisswap order=2,1, unitconvert (1), unitconvert(2) which
// will get further optimized by previous case
if (i + 1 < d->steps_.size() && prevStep.name == "unitconvert" &&
curStep.name == "axisswap" && curStepParamCount == 1 &&
curStep.paramValues[0].equals("order", "2,1")) {
auto iterNext = iterCur;
++iterNext;
auto &nextStep = *iterNext;
if (nextStep.name == "unitconvert") {
std::swap(*iterPrev, *iterCur);
changeDone = true;
break;
}
}
// axisswap order=2,1 followed by itself is a no-op
if (curStep.name == "axisswap" && prevStep.name == "axisswap" &&
curStepParamCount == 1 && prevStepParamCount == 1 &&
@@ -6707,7 +6778,7 @@ PROJStringParser::Private::buildGeocentricCRS(int iStep, int iUnitConvert) {
auto datum = buildDatum(step, title);
UnitOfMeasure unit = UnitOfMeasure::METRE;
UnitOfMeasure unit = buildUnit(step, "units", "");
if (iUnitConvert >= 0) {
auto &stepUnitConvert = steps_[iUnitConvert];
const std::string *xy_in = &getParamValue(stepUnitConvert, "xy_in");
+12
View File
@@ -31,6 +31,7 @@
#endif
#include "proj/common.hpp"
#include "proj/coordinateoperation.hpp"
#include "proj/coordinatesystem.hpp"
#include "proj/crs.hpp"
#include "proj/datum.hpp"
@@ -57,6 +58,7 @@ using namespace NS_PROJ::crs;
using namespace NS_PROJ::datum;
using namespace NS_PROJ::io;
using namespace NS_PROJ::metadata;
using namespace NS_PROJ::operation;
using namespace NS_PROJ::util;
NS_PROJ_START
@@ -271,6 +273,7 @@ DEFINE_WKT_CONSTANT(BASEVERTCRS);
DEFINE_WKT_CONSTANT(BASEENGCRS);
DEFINE_WKT_CONSTANT(BASEPARAMCRS);
DEFINE_WKT_CONSTANT(BASETIMECRS);
DEFINE_WKT_CONSTANT(VERSION);
DEFINE_WKT_CONSTANT(GEODETICCRS);
DEFINE_WKT_CONSTANT(GEODETICDATUM);
@@ -641,4 +644,13 @@ const GeographicCRSNNPtr
// ---------------------------------------------------------------------------
/** \brief Key to set the operation version of a operation::CoordinateOperation
*
* The value is to be provided as a string.
*/
const std::string
operation::CoordinateOperation::OPERATION_VERSION_KEY("operationVersion");
// ---------------------------------------------------------------------------
NS_PROJ_END
+1 -1
View File
@@ -624,7 +624,7 @@ struct FACTORS {
#define PJD_ERR_NO_COLON_IN_INIT_STRING -3
#define PJD_ERR_PROJ_NOT_NAMED -4
#define PJD_ERR_UNKNOWN_PROJECTION_ID -5
#define PJD_ERR_ECCENTRICITY_IS_ONE -6
#define PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER -6
#define PJD_ERR_UNKNOWN_UNIT_ID -7
#define PJD_ERR_INVALID_BOOLEAN_PARAM -8
#define PJD_ERR_UNKNOWN_ELLP_PARAM -9
+6
View File
@@ -155,6 +155,8 @@ static PJ *setup(PJ *P) {
P->inv = e_inverse;
P->fwd = e_forward;
if (fabs(Q->phi1) > M_HALFPI || fabs(Q->phi2) > M_HALFPI)
return destructor(P, PJD_ERR_LAT_LARGER_THAN_90);
if (fabs(Q->phi1 + Q->phi2) < EPS10)
return destructor(P, PJD_ERR_CONIC_LAT_EQUAL);
Q->n = sinphi = sin(Q->phi1);
@@ -178,6 +180,10 @@ static PJ *setup(PJ *P) {
return destructor(P, 0);
Q->n = (m1 * m1 - m2 * m2) / (ml2 - ml1);
if (Q->n == 0) {
// Not quite, but es is very close to 1...
return destructor(P, PJD_ERR_ECCENTRICITY_IS_ONE_OR_GREATER);
}
}
Q->ec = 1. - .5 * P->one_es * log((1. - P->e) /
(1. + P->e)) / P->e;
+8 -3
View File
@@ -26,9 +26,14 @@ static PJ_XY e_forward (PJ_LP lp, PJ *P) { /* Ellipsoidal, forward */
double rh, E, c;
rh = Q->am1 + Q->m1 - pj_mlfn(lp.phi, E = sin(lp.phi), c = cos(lp.phi), Q->en);
E = c * lp.lam / (rh * sqrt(1. - P->es * E * E));
xy.x = rh * sin(E);
xy.y = Q->am1 - rh * cos(E);
if (fabs(rh) > EPS10) {
E = c * lp.lam / (rh * sqrt(1. - P->es * E * E));
xy.x = rh * sin(E);
xy.y = Q->am1 - rh * cos(E);
} else {
xy.x = 0.;
xy.y = 0.;
}
return xy;
}
+8 -1
View File
@@ -24,7 +24,14 @@ static PJ_XY s_forward (PJ_LP lp, PJ *P) { /* Spheroidal, forward */
struct pj_opaque *Q = static_cast<struct pj_opaque*>(P->opaque);
double cosphi, d;
d = sqrt(2./(1. + (cosphi = cos(lp.phi)) * cos(lp.lam *= Q->w)));
cosphi = cos(lp.phi);
lp.lam *= Q->w;
double denom = 1. + cosphi * cos(lp.lam);
if( denom == 0.0 ) {
proj_errno_set(P, PJD_ERR_TOLERANCE_CONDITION);
return proj_coord_error().xy;
}
d = sqrt(2./denom);
xy.x = Q->m * d * cosphi * sin(lp.lam);
xy.y = Q->rm * d * sin(lp.phi);
return xy;
+8 -2
View File
@@ -116,7 +116,12 @@ static PJ_LP e_inverse (PJ_XY xy, PJ *P) { /* Ellipsoidal, inverse */
lp.lam = xy.x / cos(lp.phi);
do {
t = loc_for(lp, P, &yc);
lp.phi = ((lp.phi - Q->phi_1) * (xy.y - yc) / (t.y - yc)) + Q->phi_1;
const double denom = t.y - yc;
if( denom == 0 ) {
proj_errno_set(P, PJD_ERR_NON_CONVERGENT);
return proj_coord_error().lp;
}
lp.phi = ((lp.phi - Q->phi_1) * (xy.y - yc) / denom) + Q->phi_1;
lp.lam = lp.lam * xy.x / t.x;
i ++;
} while (i < N_MAX_ITER &&
@@ -124,7 +129,8 @@ static PJ_LP e_inverse (PJ_XY xy, PJ *P) { /* Ellipsoidal, inverse */
if( i == N_MAX_ITER )
{
lp.lam = lp.phi = HUGE_VAL;
proj_errno_set(P, PJD_ERR_NON_CONVERGENT);
return proj_coord_error().lp;
}
return lp;

Some files were not shown because too many files have changed in this diff Show More