Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | RSS feed

  1. /*
  2.  * TIFF data tables
  3.  * Copyright (c) 2011 Thomas Kuehnel
  4.  *
  5.  * This file is part of FFmpeg.
  6.  *
  7.  * FFmpeg is free software; you can redistribute it and/or
  8.  * modify it under the terms of the GNU Lesser General Public
  9.  * License as published by the Free Software Foundation; either
  10.  * version 2.1 of the License, or (at your option) any later version.
  11.  *
  12.  * FFmpeg is distributed in the hope that it will be useful,
  13.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  15.  * Lesser General Public License for more details.
  16.  *
  17.  * You should have received a copy of the GNU Lesser General Public
  18.  * License along with FFmpeg; if not, write to the Free Software
  19.  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  20.  */
  21.  
  22. /**
  23.  * @file
  24.  * TIFF data tables
  25.  * @author Thomas Kuehnel
  26.  * @see GeoTIFF specification at
  27.  * http://www.remotesensing.org/geotiff/spec/geotiffhome.html
  28.  */
  29.  
  30. #include "tiff_data.h"
  31.  
  32. const TiffGeoTagNameType ff_tiff_conf_name_type_map[] = {
  33.     {"GTModelTypeGeoKey",              GEOTIFF_SHORT },
  34.     {"GTRasterTypeGeoKey",             GEOTIFF_SHORT },
  35.     {"GTCitationGeoKey",               GEOTIFF_STRING}
  36. };
  37.  
  38. const TiffGeoTagNameType ff_tiff_geog_name_type_map[] = {
  39.     {"GeographicTypeGeoKey",           GEOTIFF_SHORT },
  40.     {"GeogCitationGeoKey",             GEOTIFF_STRING},
  41.     {"GeogGeodeticDatumGeoKey",        GEOTIFF_SHORT },
  42.     {"GeogPrimeMeridianGeoKey",        GEOTIFF_SHORT },
  43.     {"GeogLinearUnitsGeoKey",          GEOTIFF_SHORT },
  44.     {"GeogLinearUnitSizeGeoKey",       GEOTIFF_DOUBLE},
  45.     {"GeogAngularUnitsGeoKey",         GEOTIFF_SHORT },
  46.     {"GeogAngularUnitSizeGeoKey",      GEOTIFF_DOUBLE},
  47.     {"GeogEllipsoidGeoKey",            GEOTIFF_SHORT },
  48.     {"GeogSemiMajorAxisGeoKey",        GEOTIFF_DOUBLE},
  49.     {"GeogSemiMinorAxisGeoKey",        GEOTIFF_DOUBLE},
  50.     {"GeogInvFlatteningGeoKey",        GEOTIFF_DOUBLE},
  51.     {"GeogAzimuthUnitsGeoKey",         GEOTIFF_SHORT },
  52.     {"GeogPrimeMeridianLongGeoKey",    GEOTIFF_DOUBLE}
  53. };
  54.  
  55. const TiffGeoTagNameType ff_tiff_proj_name_type_map[] = {
  56.     {"ProjectedCSTypeGeoKey",          GEOTIFF_SHORT },
  57.     {"PCSCitationGeoKey",              GEOTIFF_STRING},
  58.     {"ProjectionGeoKey",               GEOTIFF_SHORT },
  59.     {"ProjCoordTransGeoKey",           GEOTIFF_SHORT },
  60.     {"ProjLinearUnitsGeoKey",          GEOTIFF_SHORT },
  61.     {"ProjLinearUnitSizeGeoKey",       GEOTIFF_DOUBLE},
  62.     {"ProjStdParallel1GeoKey",         GEOTIFF_DOUBLE},
  63.     {"ProjStdParallel2GeoKey",         GEOTIFF_DOUBLE},
  64.     {"ProjNatOriginLongGeoKey",        GEOTIFF_DOUBLE},
  65.     {"ProjNatOriginLatGeoKey",         GEOTIFF_DOUBLE},
  66.     {"ProjFalseEastingGeoKey",         GEOTIFF_DOUBLE},
  67.     {"ProjFalseNorthingGeoKey",        GEOTIFF_DOUBLE},
  68.     {"ProjFalseOriginLongGeoKey",      GEOTIFF_DOUBLE},
  69.     {"ProjFalseOriginLatGeoKey",       GEOTIFF_DOUBLE},
  70.     {"ProjFalseOriginEastingGeoKey",   GEOTIFF_DOUBLE},
  71.     {"ProjFalseOriginNorthingGeoKey",  GEOTIFF_DOUBLE},
  72.     {"ProjCenterLongGeoKey",           GEOTIFF_DOUBLE},
  73.     {"ProjCenterLatGeoKey",            GEOTIFF_DOUBLE},
  74.     {"ProjCenterEastingGeoKey",        GEOTIFF_DOUBLE},
  75.     {"ProjCenterNorthingGeoKey",       GEOTIFF_DOUBLE},
  76.     {"ProjScaleAtNatOriginGeoKey",     GEOTIFF_DOUBLE},
  77.     {"ProjScaleAtCenterGeoKey",        GEOTIFF_DOUBLE},
  78.     {"ProjAzimuthAngleGeoKey",         GEOTIFF_DOUBLE},
  79.     {"ProjStraightVertPoleLongGeoKey", GEOTIFF_DOUBLE}
  80. };
  81.  
  82. const TiffGeoTagNameType ff_tiff_vert_name_type_map[] = {
  83.     {"VerticalCSTypeGeoKey",           GEOTIFF_SHORT },
  84.     {"VerticalCitationGeoKey",         GEOTIFF_STRING},
  85.     {"VerticalDatumGeoKey",            GEOTIFF_SHORT },
  86.     {"VerticalUnitsGeoKey",            GEOTIFF_SHORT }
  87. };
  88.  
  89. const char *const ff_tiff_gt_model_type_codes[] = {
  90.     "ModelTypeProjected",
  91.     "ModelTypeGeographic",
  92.     "ModelTypeGeocentric"
  93. };
  94.  
  95. const char *const ff_tiff_gt_raster_type_codes[] = {
  96.     "RasterPixelIsArea",
  97.     "RasterPixelIsPoint"
  98. };
  99.  
  100. const char *const ff_tiff_linear_unit_codes[] = {
  101.     "Linear_Meter",
  102.     "Linear_Foot",
  103.     "Linear_Foot_US_Survey",
  104.     "Linear_Foot_Modified_American",
  105.     "Linear_Foot_Clarke",
  106.     "Linear_Foot_Indian",
  107.     "Linear_Link",
  108.     "Linear_Link_Benoit",
  109.     "Linear_Link_Sears",
  110.     "Linear_Chain_Benoit",
  111.     "Linear_Chain_Sears",
  112.     "Linear_Yard_Sears",
  113.     "Linear_Yard_Indian",
  114.     "Linear_Fathom",
  115.     "Linear_Mile_International_Nautical"
  116. };
  117.  
  118. const char *const ff_tiff_angular_unit_codes[] = {
  119.     "Angular_Radian",
  120.     "Angular_Degree",
  121.     "Angular_Arc_Minute",
  122.     "Angular_Arc_Second",
  123.     "Angular_Grad",
  124.     "Angular_Gon",
  125.     "Angular_DMS",
  126.     "Angular_DMS_Hemisphere"
  127. };
  128.  
  129. const char *const ff_tiff_gcs_type_codes[] = {
  130.     "GCS_Adindan",
  131.     "GCS_AGD66",
  132.     "GCS_AGD84",
  133.     "GCS_Ain_el_Abd",
  134.     "GCS_Afgooye",
  135.     "GCS_Agadez",
  136.     "GCS_Lisbon",
  137.     "GCS_Aratu",
  138.     "GCS_Arc_1950",
  139.     "GCS_Arc_1960",
  140.     "GCS_Batavia",
  141.     "GCS_Barbados",
  142.     "GCS_Beduaram",
  143.     "GCS_Beijing_1954",
  144.     "GCS_Belge_1950",
  145.     "GCS_Bermuda_1957",
  146.     "GCS_Bern_1898",
  147.     "GCS_Bogota",
  148.     "GCS_Bukit_Rimpah",
  149.     "GCS_Camacupa",
  150.     "GCS_Campo_Inchauspe",
  151.     "GCS_Cape",
  152.     "GCS_Carthage",
  153.     "GCS_Chua",
  154.     "GCS_Corrego_Alegre",
  155.     "GCS_Cote_d_Ivoire",
  156.     "GCS_Deir_ez_Zor",
  157.     "GCS_Douala",
  158.     "GCS_Egypt_1907",
  159.     "GCS_ED50",
  160.     "GCS_ED87",
  161.     "GCS_Fahud",
  162.     "GCS_Gandajika_1970",
  163.     "GCS_Garoua",
  164.     "GCS_Guyane_Francaise",
  165.     "GCS_Hu_Tzu_Shan",
  166.     "GCS_HD72",
  167.     "GCS_ID74",
  168.     "GCS_Indian_1954",
  169.     "GCS_Indian_1975",
  170.     "GCS_Jamaica_1875",
  171.     "GCS_JAD69",
  172.     "GCS_Kalianpur",
  173.     "GCS_Kandawala",
  174.     "GCS_Kertau",
  175.     "GCS_KOC",
  176.     "GCS_La_Canoa",
  177.     "GCS_PSAD56",
  178.     "GCS_Lake",
  179.     "GCS_Leigon",
  180.     "GCS_Liberia_1964",
  181.     "GCS_Lome",
  182.     "GCS_Luzon_1911",
  183.     "GCS_Hito_XVIII_1963",
  184.     "GCS_Herat_North",
  185.     "GCS_Mahe_1971",
  186.     "GCS_Makassar",
  187.     "GCS_EUREF89",
  188.     "GCS_Malongo_1987",
  189.     "GCS_Manoca",
  190.     "GCS_Merchich",
  191.     "GCS_Massawa",
  192.     "GCS_Minna",
  193.     "GCS_Mhast",
  194.     "GCS_Monte_Mario",
  195.     "GCS_M_poraloko",
  196.     "GCS_NAD27",
  197.     "GCS_NAD_Michigan",
  198.     "GCS_NAD83",
  199.     "GCS_Nahrwan_1967",
  200.     "GCS_Naparima_1972",
  201.     "GCS_GD49",
  202.     "GCS_NGO_1948",
  203.     "GCS_Datum_73",
  204.     "GCS_NTF",
  205.     "GCS_NSWC_9Z_2",
  206.     "GCS_OSGB_1936",
  207.     "GCS_OSGB70",
  208.     "GCS_OS_SN80",
  209.     "GCS_Padang",
  210.     "GCS_Palestine_1923",
  211.     "GCS_Pointe_Noire",
  212.     "GCS_GDA94",
  213.     "GCS_Pulkovo_1942",
  214.     "GCS_Qatar",
  215.     "GCS_Qatar_1948",
  216.     "GCS_Qornoq",
  217.     "GCS_Loma_Quintana",
  218.     "GCS_Amersfoort",
  219.     "GCS_RT38",
  220.     "GCS_SAD69",
  221.     "GCS_Sapper_Hill_1943",
  222.     "GCS_Schwarzeck",
  223.     "GCS_Segora",
  224.     "GCS_Serindung",
  225.     "GCS_Sudan",
  226.     "GCS_Tananarive",
  227.     "GCS_Timbalai_1948",
  228.     "GCS_TM65",
  229.     "GCS_TM75",
  230.     "GCS_Tokyo",
  231.     "GCS_Trinidad_1903",
  232.     "GCS_TC_1948",
  233.     "GCS_Voirol_1875",
  234.     "GCS_Voirol_Unifie",
  235.     "GCS_Bern_1938",
  236.     "GCS_Nord_Sahara_1959",
  237.     "GCS_Stockholm_1938",
  238.     "GCS_Yacare",
  239.     "GCS_Yoff",
  240.     "GCS_Zanderij",
  241.     "GCS_MGI",
  242.     "GCS_Belge_1972",
  243.     "GCS_DHDN",
  244.     "GCS_Conakry_1905",
  245.     "GCS_WGS_72",
  246.     "GCS_WGS_72BE",
  247.     "GCS_WGS_84",
  248.     "GCS_Bern_1898_Bern",
  249.     "GCS_Bogota_Bogota",
  250.     "GCS_Lisbon_Lisbon",
  251.     "GCS_Makassar_Jakarta",
  252.     "GCS_MGI_Ferro",
  253.     "GCS_Monte_Mario_Rome",
  254.     "GCS_NTF_Paris",
  255.     "GCS_Padang_Jakarta",
  256.     "GCS_Belge_1950_Brussels",
  257.     "GCS_Tananarive_Paris",
  258.     "GCS_Voirol_1875_Paris",
  259.     "GCS_Voirol_Unifie_Paris",
  260.     "GCS_Batavia_Jakarta",
  261.     "GCS_ATF_Paris",
  262.     "GCS_NDG_Paris"
  263. };
  264.  
  265. const char *const ff_tiff_gcse_type_codes[] = {
  266.     "GCSE_Airy1830",
  267.     "GCSE_AiryModified1849",
  268.     "GCSE_AustralianNationalSpheroid",
  269.     "GCSE_Bessel1841",
  270.     "GCSE_BesselModified",
  271.     "GCSE_BesselNamibia",
  272.     "GCSE_Clarke1858",
  273.     "GCSE_Clarke1866",
  274.     "GCSE_Clarke1866Michigan",
  275.     "GCSE_Clarke1880_Benoit",
  276.     "GCSE_Clarke1880_IGN",
  277.     "GCSE_Clarke1880_RGS",
  278.     "GCSE_Clarke1880_Arc",
  279.     "GCSE_Clarke1880_SGA1922",
  280.     "GCSE_Everest1830_1937Adjustment",
  281.     "GCSE_Everest1830_1967Definition",
  282.     "GCSE_Everest1830_1975Definition",
  283.     "GCSE_Everest1830Modified",
  284.     "GCSE_GRS1980",
  285.     "GCSE_Helmert1906",
  286.     "GCSE_IndonesianNationalSpheroid",
  287.     "GCSE_International1924",
  288.     "GCSE_International1967",
  289.     "GCSE_Krassowsky1940",
  290.     "GCSE_NWL9D",
  291.     "GCSE_NWL10D",
  292.     "GCSE_Plessis1817",
  293.     "GCSE_Struve1860",
  294.     "GCSE_WarOffice",
  295.     "GCSE_WGS84",
  296.     "GCSE_GEM10C",
  297.     "GCSE_OSU86F",
  298.     "GCSE_OSU91A",
  299.     "GCSE_Clarke1880",
  300.     "GCSE_Sphere"
  301. };
  302.  
  303. const char *const ff_tiff_geodetic_datum_codes[] = {
  304.     "Datum_Adindan",
  305.     "Datum_Australian_Geodetic_Datum_1966",
  306.     "Datum_Australian_Geodetic_Datum_1984",
  307.     "Datum_Ain_el_Abd_1970",
  308.     "Datum_Afgooye",
  309.     "Datum_Agadez",
  310.     "Datum_Lisbon",
  311.     "Datum_Aratu",
  312.     "Datum_Arc_1950",
  313.     "Datum_Arc_1960",
  314.     "Datum_Batavia",
  315.     "Datum_Barbados",
  316.     "Datum_Beduaram",
  317.     "Datum_Beijing_1954",
  318.     "Datum_Reseau_National_Belge_1950",
  319.     "Datum_Bermuda_1957",
  320.     "Datum_Bern_1898",
  321.     "Datum_Bogota",
  322.     "Datum_Bukit_Rimpah",
  323.     "Datum_Camacupa",
  324.     "Datum_Campo_Inchauspe",
  325.     "Datum_Cape",
  326.     "Datum_Carthage",
  327.     "Datum_Chua",
  328.     "Datum_Corrego_Alegre",
  329.     "Datum_Cote_d_Ivoire",
  330.     "Datum_Deir_ez_Zor",
  331.     "Datum_Douala",
  332.     "Datum_Egypt_1907",
  333.     "Datum_European_Datum_1950",
  334.     "Datum_European_Datum_1987",
  335.     "Datum_Fahud",
  336.     "Datum_Gandajika_1970",
  337.     "Datum_Garoua",
  338.     "Datum_Guyane_Francaise",
  339.     "Datum_Hu_Tzu_Shan",
  340.     "Datum_Hungarian_Datum_1972",
  341.     "Datum_Indonesian_Datum_1974",
  342.     "Datum_Indian_1954",
  343.     "Datum_Indian_1975",
  344.     "Datum_Jamaica_1875",
  345.     "Datum_Jamaica_1969",
  346.     "Datum_Kalianpur",
  347.     "Datum_Kandawala",
  348.     "Datum_Kertau",
  349.     "Datum_Kuwait_Oil_Company",
  350.     "Datum_La_Canoa",
  351.     "Datum_Provisional_S_American_Datum_1956",
  352.     "Datum_Lake",
  353.     "Datum_Leigon",
  354.     "Datum_Liberia_1964",
  355.     "Datum_Lome",
  356.     "Datum_Luzon_1911",
  357.     "Datum_Hito_XVIII_1963",
  358.     "Datum_Herat_North",
  359.     "Datum_Mahe_1971",
  360.     "Datum_Makassar",
  361.     "Datum_European_Reference_System_1989",
  362.     "Datum_Malongo_1987",
  363.     "Datum_Manoca",
  364.     "Datum_Merchich",
  365.     "Datum_Massawa",
  366.     "Datum_Minna",
  367.     "Datum_Mhast",
  368.     "Datum_Monte_Mario",
  369.     "Datum_M_poraloko",
  370.     "Datum_North_American_Datum_1927",
  371.     "Datum_NAD_Michigan",
  372.     "Datum_North_American_Datum_1983",
  373.     "Datum_Nahrwan_1967",
  374.     "Datum_Naparima_1972",
  375.     "Datum_New_Zealand_Geodetic_Datum_1949",
  376.     "Datum_NGO_1948",
  377.     "Datum_Datum_73",
  378.     "Datum_Nouvelle_Triangulation_Francaise",
  379.     "Datum_NSWC_9Z_2",
  380.     "Datum_OSGB_1936",
  381.     "Datum_OSGB_1970_SN",
  382.     "Datum_OS_SN_1980",
  383.     "Datum_Padang_1884",
  384.     "Datum_Palestine_1923",
  385.     "Datum_Pointe_Noire",
  386.     "Datum_Geocentric_Datum_of_Australia_1994",
  387.     "Datum_Pulkovo_1942",
  388.     "Datum_Qatar",
  389.     "Datum_Qatar_1948",
  390.     "Datum_Qornoq",
  391.     "Datum_Loma_Quintana",
  392.     "Datum_Amersfoort",
  393.     "Datum_RT38",
  394.     "Datum_South_American_Datum_1969",
  395.     "Datum_Sapper_Hill_1943",
  396.     "Datum_Schwarzeck",
  397.     "Datum_Segora",
  398.     "Datum_Serindung",
  399.     "Datum_Sudan",
  400.     "Datum_Tananarive_1925",
  401.     "Datum_Timbalai_1948",
  402.     "Datum_TM65",
  403.     "Datum_TM75",
  404.     "Datum_Tokyo",
  405.     "Datum_Trinidad_1903",
  406.     "Datum_Trucial_Coast_1948",
  407.     "Datum_Voirol_1875",
  408.     "Datum_Voirol_Unifie_1960",
  409.     "Datum_Bern_1938",
  410.     "Datum_Nord_Sahara_1959",
  411.     "Datum_Stockholm_1938",
  412.     "Datum_Yacare",
  413.     "Datum_Yoff",
  414.     "Datum_Zanderij",
  415.     "Datum_Militar_Geographische_Institut",
  416.     "Datum_Reseau_National_Belge_1972",
  417.     "Datum_Deutsche_Hauptdreiecksnetz",
  418.     "Datum_Conakry_1905",
  419.     "Datum_WGS72",
  420.     "Datum_WGS72_Transit_Broadcast_Ephemeris",
  421.     "Datum_WGS84",
  422.     "Datum_Ancienne_Triangulation_Francaise",
  423.     "Datum_Nord_de_Guerre"
  424. };
  425.  
  426. const char *const ff_tiff_geodetic_datum_e_codes[] = {
  427.     "DatumE_Airy1830",
  428.     "DatumE_AiryModified1849",
  429.     "DatumE_AustralianNationalSpheroid",
  430.     "DatumE_Bessel1841",
  431.     "DatumE_BesselModified",
  432.     "DatumE_BesselNamibia",
  433.     "DatumE_Clarke1858",
  434.     "DatumE_Clarke1866",
  435.     "DatumE_Clarke1866Michigan",
  436.     "DatumE_Clarke1880_Benoit",
  437.     "DatumE_Clarke1880_IGN",
  438.     "DatumE_Clarke1880_RGS",
  439.     "DatumE_Clarke1880_Arc",
  440.     "DatumE_Clarke1880_SGA1922",
  441.     "DatumE_Everest1830_1937Adjustment",
  442.     "DatumE_Everest1830_1967Definition",
  443.     "DatumE_Everest1830_1975Definition",
  444.     "DatumE_Everest1830Modified",
  445.     "DatumE_GRS1980",
  446.     "DatumE_Helmert1906",
  447.     "DatumE_IndonesianNationalSpheroid",
  448.     "DatumE_International1924",
  449.     "DatumE_International1967",
  450.     "DatumE_Krassowsky1960",
  451.     "DatumE_NWL9D",
  452.     "DatumE_NWL10D",
  453.     "DatumE_Plessis1817",
  454.     "DatumE_Struve1860",
  455.     "DatumE_WarOffice",
  456.     "DatumE_WGS84",
  457.     "DatumE_GEM10C",
  458.     "DatumE_OSU86F",
  459.     "DatumE_OSU91A",
  460.     "DatumE_Clarke1880",
  461.     "DatumE_Sphere"
  462. };
  463.  
  464. const char *const ff_tiff_ellipsoid_codes[] = {
  465.     "Ellipse_Airy_1830",
  466.     "Ellipse_Airy_Modified_1849",
  467.     "Ellipse_Australian_National_Spheroid",
  468.     "Ellipse_Bessel_1841",
  469.     "Ellipse_Bessel_Modified",
  470.     "Ellipse_Bessel_Namibia",
  471.     "Ellipse_Clarke_1858",
  472.     "Ellipse_Clarke_1866",
  473.     "Ellipse_Clarke_1866_Michigan",
  474.     "Ellipse_Clarke_1880_Benoit",
  475.     "Ellipse_Clarke_1880_IGN",
  476.     "Ellipse_Clarke_1880_RGS",
  477.     "Ellipse_Clarke_1880_Arc",
  478.     "Ellipse_Clarke_1880_SGA_1922",
  479.     "Ellipse_Everest_1830_1937_Adjustment",
  480.     "Ellipse_Everest_1830_1967_Definition",
  481.     "Ellipse_Everest_1830_1975_Definition",
  482.     "Ellipse_Everest_1830_Modified",
  483.     "Ellipse_GRS_1980",
  484.     "Ellipse_Helmert_1906",
  485.     "Ellipse_Indonesian_National_Spheroid",
  486.     "Ellipse_International_1924",
  487.     "Ellipse_International_1967",
  488.     "Ellipse_Krassowsky_1940",
  489.     "Ellipse_NWL_9D",
  490.     "Ellipse_NWL_10D",
  491.     "Ellipse_Plessis_1817",
  492.     "Ellipse_Struve_1860",
  493.     "Ellipse_War_Office",
  494.     "Ellipse_WGS_84",
  495.     "Ellipse_GEM_10C",
  496.     "Ellipse_OSU86F",
  497.     "Ellipse_OSU91A",
  498.     "Ellipse_Clarke_1880",
  499.     "Ellipse_Sphere"
  500. };
  501.  
  502. const char *const ff_tiff_prime_meridian_codes[] = {
  503.     "PM_Greenwich",
  504.     "PM_Lisbon",
  505.     "PM_Paris",
  506.     "PM_Bogota",
  507.     "PM_Madrid",
  508.     "PM_Rome",
  509.     "PM_Bern",
  510.     "PM_Jakarta",
  511.     "PM_Ferro",
  512.     "PM_Brussels",
  513.     "PM_Stockholm"
  514. };
  515.  
  516. const TiffGeoTagKeyName ff_tiff_proj_cs_type_codes[] = {
  517.     {20137, "PCS_Adindan_UTM_zone_37N"},
  518.     {20138, "PCS_Adindan_UTM_zone_38N"},
  519.     {20248, "PCS_AGD66_AMG_zone_48"},
  520.     {20249, "PCS_AGD66_AMG_zone_49"},
  521.     {20250, "PCS_AGD66_AMG_zone_50"},
  522.     {20251, "PCS_AGD66_AMG_zone_51"},
  523.     {20252, "PCS_AGD66_AMG_zone_52"},
  524.     {20253, "PCS_AGD66_AMG_zone_53"},
  525.     {20254, "PCS_AGD66_AMG_zone_54"},
  526.     {20255, "PCS_AGD66_AMG_zone_55"},
  527.     {20256, "PCS_AGD66_AMG_zone_56"},
  528.     {20257, "PCS_AGD66_AMG_zone_57"},
  529.     {20258, "PCS_AGD66_AMG_zone_58"},
  530.     {20348, "PCS_AGD84_AMG_zone_48"},
  531.     {20349, "PCS_AGD84_AMG_zone_49"},
  532.     {20350, "PCS_AGD84_AMG_zone_50"},
  533.     {20351, "PCS_AGD84_AMG_zone_51"},
  534.     {20352, "PCS_AGD84_AMG_zone_52"},
  535.     {20353, "PCS_AGD84_AMG_zone_53"},
  536.     {20354, "PCS_AGD84_AMG_zone_54"},
  537.     {20355, "PCS_AGD84_AMG_zone_55"},
  538.     {20356, "PCS_AGD84_AMG_zone_56"},
  539.     {20357, "PCS_AGD84_AMG_zone_57"},
  540.     {20358, "PCS_AGD84_AMG_zone_58"},
  541.     {20437, "PCS_Ain_el_Abd_UTM_zone_37N"},
  542.     {20438, "PCS_Ain_el_Abd_UTM_zone_38N"},
  543.     {20439, "PCS_Ain_el_Abd_UTM_zone_39N"},
  544.     {20499, "PCS_Ain_el_Abd_Bahrain_Grid"},
  545.     {20538, "PCS_Afgooye_UTM_zone_38N"},
  546.     {20539, "PCS_Afgooye_UTM_zone_39N"},
  547.     {20700, "PCS_Lisbon_Portugese_Grid"},
  548.     {20822, "PCS_Aratu_UTM_zone_22S"},
  549.     {20823, "PCS_Aratu_UTM_zone_23S"},
  550.     {20824, "PCS_Aratu_UTM_zone_24S"},
  551.     {20973, "PCS_Arc_1950_Lo13"},
  552.     {20975, "PCS_Arc_1950_Lo15"},
  553.     {20977, "PCS_Arc_1950_Lo17"},
  554.     {20979, "PCS_Arc_1950_Lo19"},
  555.     {20981, "PCS_Arc_1950_Lo21"},
  556.     {20983, "PCS_Arc_1950_Lo23"},
  557.     {20985, "PCS_Arc_1950_Lo25"},
  558.     {20987, "PCS_Arc_1950_Lo27"},
  559.     {20989, "PCS_Arc_1950_Lo29"},
  560.     {20991, "PCS_Arc_1950_Lo31"},
  561.     {20993, "PCS_Arc_1950_Lo33"},
  562.     {20995, "PCS_Arc_1950_Lo35"},
  563.     {21100, "PCS_Batavia_NEIEZ"},
  564.     {21148, "PCS_Batavia_UTM_zone_48S"},
  565.     {21149, "PCS_Batavia_UTM_zone_49S"},
  566.     {21150, "PCS_Batavia_UTM_zone_50S"},
  567.     {21413, "PCS_Beijing_Gauss_zone_13"},
  568.     {21414, "PCS_Beijing_Gauss_zone_14"},
  569.     {21415, "PCS_Beijing_Gauss_zone_15"},
  570.     {21416, "PCS_Beijing_Gauss_zone_16"},
  571.     {21417, "PCS_Beijing_Gauss_zone_17"},
  572.     {21418, "PCS_Beijing_Gauss_zone_18"},
  573.     {21419, "PCS_Beijing_Gauss_zone_19"},
  574.     {21420, "PCS_Beijing_Gauss_zone_20"},
  575.     {21421, "PCS_Beijing_Gauss_zone_21"},
  576.     {21422, "PCS_Beijing_Gauss_zone_22"},
  577.     {21423, "PCS_Beijing_Gauss_zone_23"},
  578.     {21473, "PCS_Beijing_Gauss_13N"},
  579.     {21474, "PCS_Beijing_Gauss_14N"},
  580.     {21475, "PCS_Beijing_Gauss_15N"},
  581.     {21476, "PCS_Beijing_Gauss_16N"},
  582.     {21477, "PCS_Beijing_Gauss_17N"},
  583.     {21478, "PCS_Beijing_Gauss_18N"},
  584.     {21479, "PCS_Beijing_Gauss_19N"},
  585.     {21480, "PCS_Beijing_Gauss_20N"},
  586.     {21481, "PCS_Beijing_Gauss_21N"},
  587.     {21482, "PCS_Beijing_Gauss_22N"},
  588.     {21483, "PCS_Beijing_Gauss_23N"},
  589.     {21500, "PCS_Belge_Lambert_50"},
  590.     {21790, "PCS_Bern_1898_Swiss_Old"},
  591.     {21817, "PCS_Bogota_UTM_zone_17N"},
  592.     {21818, "PCS_Bogota_UTM_zone_18N"},
  593.     {21891, "PCS_Bogota_Colombia_3W"},
  594.     {21892, "PCS_Bogota_Colombia_Bogota"},
  595.     {21893, "PCS_Bogota_Colombia_3E"},
  596.     {21894, "PCS_Bogota_Colombia_6E"},
  597.     {22032, "PCS_Camacupa_UTM_32S"},
  598.     {22033, "PCS_Camacupa_UTM_33S"},
  599.     {22191, "PCS_C_Inchauspe_Argentina_1"},
  600.     {22192, "PCS_C_Inchauspe_Argentina_2"},
  601.     {22193, "PCS_C_Inchauspe_Argentina_3"},
  602.     {22194, "PCS_C_Inchauspe_Argentina_4"},
  603.     {22195, "PCS_C_Inchauspe_Argentina_5"},
  604.     {22196, "PCS_C_Inchauspe_Argentina_6"},
  605.     {22197, "PCS_C_Inchauspe_Argentina_7"},
  606.     {22332, "PCS_Carthage_UTM_zone_32N"},
  607.     {22391, "PCS_Carthage_Nord_Tunisie"},
  608.     {22392, "PCS_Carthage_Sud_Tunisie"},
  609.     {22523, "PCS_Corrego_Alegre_UTM_23S"},
  610.     {22524, "PCS_Corrego_Alegre_UTM_24S"},
  611.     {22832, "PCS_Douala_UTM_zone_32N"},
  612.     {22992, "PCS_Egypt_1907_Red_Belt"},
  613.     {22993, "PCS_Egypt_1907_Purple_Belt"},
  614.     {22994, "PCS_Egypt_1907_Ext_Purple"},
  615.     {23028, "PCS_ED50_UTM_zone_28N"},
  616.     {23029, "PCS_ED50_UTM_zone_29N"},
  617.     {23030, "PCS_ED50_UTM_zone_30N"},
  618.     {23031, "PCS_ED50_UTM_zone_31N"},
  619.     {23032, "PCS_ED50_UTM_zone_32N"},
  620.     {23033, "PCS_ED50_UTM_zone_33N"},
  621.     {23034, "PCS_ED50_UTM_zone_34N"},
  622.     {23035, "PCS_ED50_UTM_zone_35N"},
  623.     {23036, "PCS_ED50_UTM_zone_36N"},
  624.     {23037, "PCS_ED50_UTM_zone_37N"},
  625.     {23038, "PCS_ED50_UTM_zone_38N"},
  626.     {23239, "PCS_Fahud_UTM_zone_39N"},
  627.     {23240, "PCS_Fahud_UTM_zone_40N"},
  628.     {23433, "PCS_Garoua_UTM_zone_33N"},
  629.     {23846, "PCS_ID74_UTM_zone_46N"},
  630.     {23847, "PCS_ID74_UTM_zone_47N"},
  631.     {23848, "PCS_ID74_UTM_zone_48N"},
  632.     {23849, "PCS_ID74_UTM_zone_49N"},
  633.     {23850, "PCS_ID74_UTM_zone_50N"},
  634.     {23851, "PCS_ID74_UTM_zone_51N"},
  635.     {23852, "PCS_ID74_UTM_zone_52N"},
  636.     {23853, "PCS_ID74_UTM_zone_53N"},
  637.     {23886, "PCS_ID74_UTM_zone_46S"},
  638.     {23887, "PCS_ID74_UTM_zone_47S"},
  639.     {23888, "PCS_ID74_UTM_zone_48S"},
  640.     {23889, "PCS_ID74_UTM_zone_49S"},
  641.     {23890, "PCS_ID74_UTM_zone_50S"},
  642.     {23891, "PCS_ID74_UTM_zone_51S"},
  643.     {23892, "PCS_ID74_UTM_zone_52S"},
  644.     {23893, "PCS_ID74_UTM_zone_53S"},
  645.     {23894, "PCS_ID74_UTM_zone_54S"},
  646.     {23947, "PCS_Indian_1954_UTM_47N"},
  647.     {23948, "PCS_Indian_1954_UTM_48N"},
  648.     {24047, "PCS_Indian_1975_UTM_47N"},
  649.     {24048, "PCS_Indian_1975_UTM_48N"},
  650.     {24100, "PCS_Jamaica_1875_Old_Grid"},
  651.     {24200, "PCS_JAD69_Jamaica_Grid"},
  652.     {24370, "PCS_Kalianpur_India_0"},
  653.     {24371, "PCS_Kalianpur_India_I"},
  654.     {24372, "PCS_Kalianpur_India_IIa"},
  655.     {24373, "PCS_Kalianpur_India_IIIa"},
  656.     {24374, "PCS_Kalianpur_India_IVa"},
  657.     {24382, "PCS_Kalianpur_India_IIb"},
  658.     {24383, "PCS_Kalianpur_India_IIIb"},
  659.     {24384, "PCS_Kalianpur_India_IVb"},
  660.     {24500, "PCS_Kertau_Singapore_Grid"},
  661.     {24547, "PCS_Kertau_UTM_zone_47N"},
  662.     {24548, "PCS_Kertau_UTM_zone_48N"},
  663.     {24720, "PCS_La_Canoa_UTM_zone_20N"},
  664.     {24721, "PCS_La_Canoa_UTM_zone_21N"},
  665.     {24818, "PCS_PSAD56_UTM_zone_18N"},
  666.     {24819, "PCS_PSAD56_UTM_zone_19N"},
  667.     {24820, "PCS_PSAD56_UTM_zone_20N"},
  668.     {24821, "PCS_PSAD56_UTM_zone_21N"},
  669.     {24877, "PCS_PSAD56_UTM_zone_17S"},
  670.     {24878, "PCS_PSAD56_UTM_zone_18S"},
  671.     {24879, "PCS_PSAD56_UTM_zone_19S"},
  672.     {24880, "PCS_PSAD56_UTM_zone_20S"},
  673.     {24891, "PCS_PSAD56_Peru_west_zone"},
  674.     {24892, "PCS_PSAD56_Peru_central"},
  675.     {24893, "PCS_PSAD56_Peru_east_zone"},
  676.     {25000, "PCS_Leigon_Ghana_Grid"},
  677.     {25231, "PCS_Lome_UTM_zone_31N"},
  678.     {25391, "PCS_Luzon_Philippines_I"},
  679.     {25392, "PCS_Luzon_Philippines_II"},
  680.     {25393, "PCS_Luzon_Philippines_III"},
  681.     {25394, "PCS_Luzon_Philippines_IV"},
  682.     {25395, "PCS_Luzon_Philippines_V"},
  683.     {25700, "PCS_Makassar_NEIEZ"},
  684.     {25932, "PCS_Malongo_1987_UTM_32S"},
  685.     {26191, "PCS_Merchich_Nord_Maroc"},
  686.     {26192, "PCS_Merchich_Sud_Maroc"},
  687.     {26193, "PCS_Merchich_Sahara"},
  688.     {26237, "PCS_Massawa_UTM_zone_37N"},
  689.     {26331, "PCS_Minna_UTM_zone_31N"},
  690.     {26332, "PCS_Minna_UTM_zone_32N"},
  691.     {26391, "PCS_Minna_Nigeria_West"},
  692.     {26392, "PCS_Minna_Nigeria_Mid_Belt"},
  693.     {26393, "PCS_Minna_Nigeria_East"},
  694.     {26432, "PCS_Mhast_UTM_zone_32S"},
  695.     {26591, "PCS_Monte_Mario_Italy_1"},
  696.     {26592, "PCS_Monte_Mario_Italy_2"},
  697.     {26632, "PCS_M_poraloko_UTM_32N"},
  698.     {26692, "PCS_M_poraloko_UTM_32S"},
  699.     {26703, "PCS_NAD27_UTM_zone_3N"},
  700.     {26704, "PCS_NAD27_UTM_zone_4N"},
  701.     {26705, "PCS_NAD27_UTM_zone_5N"},
  702.     {26706, "PCS_NAD27_UTM_zone_6N"},
  703.     {26707, "PCS_NAD27_UTM_zone_7N"},
  704.     {26708, "PCS_NAD27_UTM_zone_8N"},
  705.     {26709, "PCS_NAD27_UTM_zone_9N"},
  706.     {26710, "PCS_NAD27_UTM_zone_10N"},
  707.     {26711, "PCS_NAD27_UTM_zone_11N"},
  708.     {26712, "PCS_NAD27_UTM_zone_12N"},
  709.     {26713, "PCS_NAD27_UTM_zone_13N"},
  710.     {26714, "PCS_NAD27_UTM_zone_14N"},
  711.     {26715, "PCS_NAD27_UTM_zone_15N"},
  712.     {26716, "PCS_NAD27_UTM_zone_16N"},
  713.     {26717, "PCS_NAD27_UTM_zone_17N"},
  714.     {26718, "PCS_NAD27_UTM_zone_18N"},
  715.     {26719, "PCS_NAD27_UTM_zone_19N"},
  716.     {26720, "PCS_NAD27_UTM_zone_20N"},
  717.     {26721, "PCS_NAD27_UTM_zone_21N"},
  718.     {26722, "PCS_NAD27_UTM_zone_22N"},
  719.     {26729, "PCS_NAD27_Alabama_East"},
  720.     {26730, "PCS_NAD27_Alabama_West"},
  721.     {26731, "PCS_NAD27_Alaska_zone_1"},
  722.     {26732, "PCS_NAD27_Alaska_zone_2"},
  723.     {26733, "PCS_NAD27_Alaska_zone_3"},
  724.     {26734, "PCS_NAD27_Alaska_zone_4"},
  725.     {26735, "PCS_NAD27_Alaska_zone_5"},
  726.     {26736, "PCS_NAD27_Alaska_zone_6"},
  727.     {26737, "PCS_NAD27_Alaska_zone_7"},
  728.     {26738, "PCS_NAD27_Alaska_zone_8"},
  729.     {26739, "PCS_NAD27_Alaska_zone_9"},
  730.     {26740, "PCS_NAD27_Alaska_zone_10"},
  731.     {26741, "PCS_NAD27_California_I"},
  732.     {26742, "PCS_NAD27_California_II"},
  733.     {26743, "PCS_NAD27_California_III"},
  734.     {26744, "PCS_NAD27_California_IV"},
  735.     {26745, "PCS_NAD27_California_V"},
  736.     {26746, "PCS_NAD27_California_VI"},
  737.     {26747, "PCS_NAD27_California_VII"},
  738.     {26748, "PCS_NAD27_Arizona_East"},
  739.     {26749, "PCS_NAD27_Arizona_Central"},
  740.     {26750, "PCS_NAD27_Arizona_West"},
  741.     {26751, "PCS_NAD27_Arkansas_North"},
  742.     {26752, "PCS_NAD27_Arkansas_South"},
  743.     {26753, "PCS_NAD27_Colorado_North"},
  744.     {26754, "PCS_NAD27_Colorado_Central"},
  745.     {26755, "PCS_NAD27_Colorado_South"},
  746.     {26756, "PCS_NAD27_Connecticut"},
  747.     {26757, "PCS_NAD27_Delaware"},
  748.     {26758, "PCS_NAD27_Florida_East"},
  749.     {26759, "PCS_NAD27_Florida_West"},
  750.     {26760, "PCS_NAD27_Florida_North"},
  751.     {26761, "PCS_NAD27_Hawaii_zone_1"},
  752.     {26762, "PCS_NAD27_Hawaii_zone_2"},
  753.     {26763, "PCS_NAD27_Hawaii_zone_3"},
  754.     {26764, "PCS_NAD27_Hawaii_zone_4"},
  755.     {26765, "PCS_NAD27_Hawaii_zone_5"},
  756.     {26766, "PCS_NAD27_Georgia_East"},
  757.     {26767, "PCS_NAD27_Georgia_West"},
  758.     {26768, "PCS_NAD27_Idaho_East"},
  759.     {26769, "PCS_NAD27_Idaho_Central"},
  760.     {26770, "PCS_NAD27_Idaho_West"},
  761.     {26771, "PCS_NAD27_Illinois_East"},
  762.     {26772, "PCS_NAD27_Illinois_West"},
  763.     {26773, "PCS_NAD27_Indiana_East"},
  764.     {26774, "PCS_NAD27_BLM_14N_feet"},
  765.     {26774, "PCS_NAD27_Indiana_West"},
  766.     {26775, "PCS_NAD27_BLM_15N_feet"},
  767.     {26775, "PCS_NAD27_Iowa_North"},
  768.     {26776, "PCS_NAD27_BLM_16N_feet"},
  769.     {26776, "PCS_NAD27_Iowa_South"},
  770.     {26777, "PCS_NAD27_BLM_17N_feet"},
  771.     {26777, "PCS_NAD27_Kansas_North"},
  772.     {26778, "PCS_NAD27_Kansas_South"},
  773.     {26779, "PCS_NAD27_Kentucky_North"},
  774.     {26780, "PCS_NAD27_Kentucky_South"},
  775.     {26781, "PCS_NAD27_Louisiana_North"},
  776.     {26782, "PCS_NAD27_Louisiana_South"},
  777.     {26783, "PCS_NAD27_Maine_East"},
  778.     {26784, "PCS_NAD27_Maine_West"},
  779.     {26785, "PCS_NAD27_Maryland"},
  780.     {26786, "PCS_NAD27_Massachusetts"},
  781.     {26787, "PCS_NAD27_Massachusetts_Is"},
  782.     {26788, "PCS_NAD27_Michigan_North"},
  783.     {26789, "PCS_NAD27_Michigan_Central"},
  784.     {26790, "PCS_NAD27_Michigan_South"},
  785.     {26791, "PCS_NAD27_Minnesota_North"},
  786.     {26792, "PCS_NAD27_Minnesota_Cent"},
  787.     {26793, "PCS_NAD27_Minnesota_South"},
  788.     {26794, "PCS_NAD27_Mississippi_East"},
  789.     {26795, "PCS_NAD27_Mississippi_West"},
  790.     {26796, "PCS_NAD27_Missouri_East"},
  791.     {26797, "PCS_NAD27_Missouri_Central"},
  792.     {26798, "PCS_NAD27_Missouri_West"},
  793.     {26801, "PCS_NAD_Michigan_Michigan_East"},
  794.     {26802, "PCS_NAD_Michigan_Michigan_Old_Central"},
  795.     {26803, "PCS_NAD_Michigan_Michigan_West"},
  796.     {26903, "PCS_NAD83_UTM_zone_3N"},
  797.     {26904, "PCS_NAD83_UTM_zone_4N"},
  798.     {26905, "PCS_NAD83_UTM_zone_5N"},
  799.     {26906, "PCS_NAD83_UTM_zone_6N"},
  800.     {26907, "PCS_NAD83_UTM_zone_7N"},
  801.     {26908, "PCS_NAD83_UTM_zone_8N"},
  802.     {26909, "PCS_NAD83_UTM_zone_9N"},
  803.     {26910, "PCS_NAD83_UTM_zone_10N"},
  804.     {26911, "PCS_NAD83_UTM_zone_11N"},
  805.     {26912, "PCS_NAD83_UTM_zone_12N"},
  806.     {26913, "PCS_NAD83_UTM_zone_13N"},
  807.     {26914, "PCS_NAD83_UTM_zone_14N"},
  808.     {26915, "PCS_NAD83_UTM_zone_15N"},
  809.     {26916, "PCS_NAD83_UTM_zone_16N"},
  810.     {26917, "PCS_NAD83_UTM_zone_17N"},
  811.     {26918, "PCS_NAD83_UTM_zone_18N"},
  812.     {26919, "PCS_NAD83_UTM_zone_19N"},
  813.     {26920, "PCS_NAD83_UTM_zone_20N"},
  814.     {26921, "PCS_NAD83_UTM_zone_21N"},
  815.     {26922, "PCS_NAD83_UTM_zone_22N"},
  816.     {26923, "PCS_NAD83_UTM_zone_23N"},
  817.     {26929, "PCS_NAD83_Alabama_East"},
  818.     {26930, "PCS_NAD83_Alabama_West"},
  819.     {26931, "PCS_NAD83_Alaska_zone_1"},
  820.     {26932, "PCS_NAD83_Alaska_zone_2"},
  821.     {26933, "PCS_NAD83_Alaska_zone_3"},
  822.     {26934, "PCS_NAD83_Alaska_zone_4"},
  823.     {26935, "PCS_NAD83_Alaska_zone_5"},
  824.     {26936, "PCS_NAD83_Alaska_zone_6"},
  825.     {26937, "PCS_NAD83_Alaska_zone_7"},
  826.     {26938, "PCS_NAD83_Alaska_zone_8"},
  827.     {26939, "PCS_NAD83_Alaska_zone_9"},
  828.     {26940, "PCS_NAD83_Alaska_zone_10"},
  829.     {26941, "PCS_NAD83_California_1"},
  830.     {26942, "PCS_NAD83_California_2"},
  831.     {26943, "PCS_NAD83_California_3"},
  832.     {26944, "PCS_NAD83_California_4"},
  833.     {26945, "PCS_NAD83_California_5"},
  834.     {26946, "PCS_NAD83_California_6"},
  835.     {26948, "PCS_NAD83_Arizona_East"},
  836.     {26949, "PCS_NAD83_Arizona_Central"},
  837.     {26950, "PCS_NAD83_Arizona_West"},
  838.     {26951, "PCS_NAD83_Arkansas_North"},
  839.     {26952, "PCS_NAD83_Arkansas_South"},
  840.     {26953, "PCS_NAD83_Colorado_North"},
  841.     {26954, "PCS_NAD83_Colorado_Central"},
  842.     {26955, "PCS_NAD83_Colorado_South"},
  843.     {26956, "PCS_NAD83_Connecticut"},
  844.     {26957, "PCS_NAD83_Delaware"},
  845.     {26958, "PCS_NAD83_Florida_East"},
  846.     {26959, "PCS_NAD83_Florida_West"},
  847.     {26960, "PCS_NAD83_Florida_North"},
  848.     {26961, "PCS_NAD83_Hawaii_zone_1"},
  849.     {26962, "PCS_NAD83_Hawaii_zone_2"},
  850.     {26963, "PCS_NAD83_Hawaii_zone_3"},
  851.     {26964, "PCS_NAD83_Hawaii_zone_4"},
  852.     {26965, "PCS_NAD83_Hawaii_zone_5"},
  853.     {26966, "PCS_NAD83_Georgia_East"},
  854.     {26967, "PCS_NAD83_Georgia_West"},
  855.     {26968, "PCS_NAD83_Idaho_East"},
  856.     {26969, "PCS_NAD83_Idaho_Central"},
  857.     {26970, "PCS_NAD83_Idaho_West"},
  858.     {26971, "PCS_NAD83_Illinois_East"},
  859.     {26972, "PCS_NAD83_Illinois_West"},
  860.     {26973, "PCS_NAD83_Indiana_East"},
  861.     {26974, "PCS_NAD83_Indiana_West"},
  862.     {26975, "PCS_NAD83_Iowa_North"},
  863.     {26976, "PCS_NAD83_Iowa_South"},
  864.     {26977, "PCS_NAD83_Kansas_North"},
  865.     {26978, "PCS_NAD83_Kansas_South"},
  866.     {26979, "PCS_NAD83_Kentucky_North"},
  867.     {26980, "PCS_NAD83_Kentucky_South"},
  868.     {26981, "PCS_NAD83_Louisiana_North"},
  869.     {26982, "PCS_NAD83_Louisiana_South"},
  870.     {26983, "PCS_NAD83_Maine_East"},
  871.     {26984, "PCS_NAD83_Maine_West"},
  872.     {26985, "PCS_NAD83_Maryland"},
  873.     {26986, "PCS_NAD83_Massachusetts"},
  874.     {26987, "PCS_NAD83_Massachusetts_Is"},
  875.     {26988, "PCS_NAD83_Michigan_North"},
  876.     {26989, "PCS_NAD83_Michigan_Central"},
  877.     {26990, "PCS_NAD83_Michigan_South"},
  878.     {26991, "PCS_NAD83_Minnesota_North"},
  879.     {26992, "PCS_NAD83_Minnesota_Cent"},
  880.     {26993, "PCS_NAD83_Minnesota_South"},
  881.     {26994, "PCS_NAD83_Mississippi_East"},
  882.     {26995, "PCS_NAD83_Mississippi_West"},
  883.     {26996, "PCS_NAD83_Missouri_East"},
  884.     {26997, "PCS_NAD83_Missouri_Central"},
  885.     {26998, "PCS_NAD83_Missouri_West"},
  886.     {27038, "PCS_Nahrwan_1967_UTM_38N"},
  887.     {27039, "PCS_Nahrwan_1967_UTM_39N"},
  888.     {27040, "PCS_Nahrwan_1967_UTM_40N"},
  889.     {27120, "PCS_Naparima_UTM_20N"},
  890.     {27200, "PCS_GD49_NZ_Map_Grid"},
  891.     {27291, "PCS_GD49_North_Island_Grid"},
  892.     {27292, "PCS_GD49_South_Island_Grid"},
  893.     {27429, "PCS_Datum_73_UTM_zone_29N"},
  894.     {27500, "PCS_ATF_Nord_de_Guerre"},
  895.     {27581, "PCS_NTF_France_I"},
  896.     {27582, "PCS_NTF_France_II"},
  897.     {27583, "PCS_NTF_France_III"},
  898.     {27591, "PCS_NTF_Nord_France"},
  899.     {27592, "PCS_NTF_Centre_France"},
  900.     {27593, "PCS_NTF_Sud_France"},
  901.     {27700, "PCS_British_National_Grid"},
  902.     {28232, "PCS_Point_Noire_UTM_32S"},
  903.     {28348, "PCS_GDA94_MGA_zone_48"},
  904.     {28349, "PCS_GDA94_MGA_zone_49"},
  905.     {28350, "PCS_GDA94_MGA_zone_50"},
  906.     {28351, "PCS_GDA94_MGA_zone_51"},
  907.     {28352, "PCS_GDA94_MGA_zone_52"},
  908.     {28353, "PCS_GDA94_MGA_zone_53"},
  909.     {28354, "PCS_GDA94_MGA_zone_54"},
  910.     {28355, "PCS_GDA94_MGA_zone_55"},
  911.     {28356, "PCS_GDA94_MGA_zone_56"},
  912.     {28357, "PCS_GDA94_MGA_zone_57"},
  913.     {28358, "PCS_GDA94_MGA_zone_58"},
  914.     {28404, "PCS_Pulkovo_Gauss_zone_4"},
  915.     {28405, "PCS_Pulkovo_Gauss_zone_5"},
  916.     {28406, "PCS_Pulkovo_Gauss_zone_6"},
  917.     {28407, "PCS_Pulkovo_Gauss_zone_7"},
  918.     {28408, "PCS_Pulkovo_Gauss_zone_8"},
  919.     {28409, "PCS_Pulkovo_Gauss_zone_9"},
  920.     {28410, "PCS_Pulkovo_Gauss_zone_10"},
  921.     {28411, "PCS_Pulkovo_Gauss_zone_11"},
  922.     {28412, "PCS_Pulkovo_Gauss_zone_12"},
  923.     {28413, "PCS_Pulkovo_Gauss_zone_13"},
  924.     {28414, "PCS_Pulkovo_Gauss_zone_14"},
  925.     {28415, "PCS_Pulkovo_Gauss_zone_15"},
  926.     {28416, "PCS_Pulkovo_Gauss_zone_16"},
  927.     {28417, "PCS_Pulkovo_Gauss_zone_17"},
  928.     {28418, "PCS_Pulkovo_Gauss_zone_18"},
  929.     {28419, "PCS_Pulkovo_Gauss_zone_19"},
  930.     {28420, "PCS_Pulkovo_Gauss_zone_20"},
  931.     {28421, "PCS_Pulkovo_Gauss_zone_21"},
  932.     {28422, "PCS_Pulkovo_Gauss_zone_22"},
  933.     {28423, "PCS_Pulkovo_Gauss_zone_23"},
  934.     {28424, "PCS_Pulkovo_Gauss_zone_24"},
  935.     {28425, "PCS_Pulkovo_Gauss_zone_25"},
  936.     {28426, "PCS_Pulkovo_Gauss_zone_26"},
  937.     {28427, "PCS_Pulkovo_Gauss_zone_27"},
  938.     {28428, "PCS_Pulkovo_Gauss_zone_28"},
  939.     {28429, "PCS_Pulkovo_Gauss_zone_29"},
  940.     {28430, "PCS_Pulkovo_Gauss_zone_30"},
  941.     {28431, "PCS_Pulkovo_Gauss_zone_31"},
  942.     {28432, "PCS_Pulkovo_Gauss_zone_32"},
  943.     {28464, "PCS_Pulkovo_Gauss_4N"},
  944.     {28465, "PCS_Pulkovo_Gauss_5N"},
  945.     {28466, "PCS_Pulkovo_Gauss_6N"},
  946.     {28467, "PCS_Pulkovo_Gauss_7N"},
  947.     {28468, "PCS_Pulkovo_Gauss_8N"},
  948.     {28469, "PCS_Pulkovo_Gauss_9N"},
  949.     {28470, "PCS_Pulkovo_Gauss_10N"},
  950.     {28471, "PCS_Pulkovo_Gauss_11N"},
  951.     {28472, "PCS_Pulkovo_Gauss_12N"},
  952.     {28473, "PCS_Pulkovo_Gauss_13N"},
  953.     {28474, "PCS_Pulkovo_Gauss_14N"},
  954.     {28475, "PCS_Pulkovo_Gauss_15N"},
  955.     {28476, "PCS_Pulkovo_Gauss_16N"},
  956.     {28477, "PCS_Pulkovo_Gauss_17N"},
  957.     {28478, "PCS_Pulkovo_Gauss_18N"},
  958.     {28479, "PCS_Pulkovo_Gauss_19N"},
  959.     {28480, "PCS_Pulkovo_Gauss_20N"},
  960.     {28481, "PCS_Pulkovo_Gauss_21N"},
  961.     {28482, "PCS_Pulkovo_Gauss_22N"},
  962.     {28483, "PCS_Pulkovo_Gauss_23N"},
  963.     {28484, "PCS_Pulkovo_Gauss_24N"},
  964.     {28485, "PCS_Pulkovo_Gauss_25N"},
  965.     {28486, "PCS_Pulkovo_Gauss_26N"},
  966.     {28487, "PCS_Pulkovo_Gauss_27N"},
  967.     {28488, "PCS_Pulkovo_Gauss_28N"},
  968.     {28489, "PCS_Pulkovo_Gauss_29N"},
  969.     {28490, "PCS_Pulkovo_Gauss_30N"},
  970.     {28491, "PCS_Pulkovo_Gauss_31N"},
  971.     {28492, "PCS_Pulkovo_Gauss_32N"},
  972.     {28600, "PCS_Qatar_National_Grid"},
  973.     {28991, "PCS_RD_Netherlands_Old"},
  974.     {28992, "PCS_RD_Netherlands_New"},
  975.     {29118, "PCS_SAD69_UTM_zone_18N"},
  976.     {29119, "PCS_SAD69_UTM_zone_19N"},
  977.     {29120, "PCS_SAD69_UTM_zone_20N"},
  978.     {29121, "PCS_SAD69_UTM_zone_21N"},
  979.     {29122, "PCS_SAD69_UTM_zone_22N"},
  980.     {29177, "PCS_SAD69_UTM_zone_17S"},
  981.     {29178, "PCS_SAD69_UTM_zone_18S"},
  982.     {29179, "PCS_SAD69_UTM_zone_19S"},
  983.     {29180, "PCS_SAD69_UTM_zone_20S"},
  984.     {29181, "PCS_SAD69_UTM_zone_21S"},
  985.     {29182, "PCS_SAD69_UTM_zone_22S"},
  986.     {29183, "PCS_SAD69_UTM_zone_23S"},
  987.     {29184, "PCS_SAD69_UTM_zone_24S"},
  988.     {29185, "PCS_SAD69_UTM_zone_25S"},
  989.     {29220, "PCS_Sapper_Hill_UTM_20S"},
  990.     {29221, "PCS_Sapper_Hill_UTM_21S"},
  991.     {29333, "PCS_Schwarzeck_UTM_33S"},
  992.     {29635, "PCS_Sudan_UTM_zone_35N"},
  993.     {29636, "PCS_Sudan_UTM_zone_36N"},
  994.     {29700, "PCS_Tananarive_Laborde"},
  995.     {29738, "PCS_Tananarive_UTM_38S"},
  996.     {29739, "PCS_Tananarive_UTM_39S"},
  997.     {29800, "PCS_Timbalai_1948_Borneo"},
  998.     {29849, "PCS_Timbalai_1948_UTM_49N"},
  999.     {29850, "PCS_Timbalai_1948_UTM_50N"},
  1000.     {29900, "PCS_TM65_Irish_Nat_Grid"},
  1001.     {30200, "PCS_Trinidad_1903_Trinidad"},
  1002.     {30339, "PCS_TC_1948_UTM_zone_39N"},
  1003.     {30340, "PCS_TC_1948_UTM_zone_40N"},
  1004.     {30491, "PCS_Voirol_N_Algerie_ancien"},
  1005.     {30492, "PCS_Voirol_S_Algerie_ancien"},
  1006.     {30591, "PCS_Voirol_Unifie_N_Algerie"},
  1007.     {30592, "PCS_Voirol_Unifie_S_Algerie"},
  1008.     {30600, "PCS_Bern_1938_Swiss_New"},
  1009.     {30729, "PCS_Nord_Sahara_UTM_29N"},
  1010.     {30730, "PCS_Nord_Sahara_UTM_30N"},
  1011.     {30731, "PCS_Nord_Sahara_UTM_31N"},
  1012.     {30732, "PCS_Nord_Sahara_UTM_32N"},
  1013.     {31028, "PCS_Yoff_UTM_zone_28N"},
  1014.     {31121, "PCS_Zanderij_UTM_zone_21N"},
  1015.     {31291, "PCS_MGI_Austria_West"},
  1016.     {31292, "PCS_MGI_Austria_Central"},
  1017.     {31293, "PCS_MGI_Austria_East"},
  1018.     {31300, "PCS_Belge_Lambert_72"},
  1019.     {31491, "PCS_DHDN_Germany_zone_1"},
  1020.     {31492, "PCS_DHDN_Germany_zone_2"},
  1021.     {31493, "PCS_DHDN_Germany_zone_3"},
  1022.     {31494, "PCS_DHDN_Germany_zone_4"},
  1023.     {31495, "PCS_DHDN_Germany_zone_5"},
  1024.     {32001, "PCS_NAD27_Montana_North"},
  1025.     {32002, "PCS_NAD27_Montana_Central"},
  1026.     {32003, "PCS_NAD27_Montana_South"},
  1027.     {32005, "PCS_NAD27_Nebraska_North"},
  1028.     {32006, "PCS_NAD27_Nebraska_South"},
  1029.     {32007, "PCS_NAD27_Nevada_East"},
  1030.     {32008, "PCS_NAD27_Nevada_Central"},
  1031.     {32009, "PCS_NAD27_Nevada_West"},
  1032.     {32010, "PCS_NAD27_New_Hampshire"},
  1033.     {32011, "PCS_NAD27_New_Jersey"},
  1034.     {32012, "PCS_NAD27_New_Mexico_East"},
  1035.     {32013, "PCS_NAD27_New_Mexico_Cent"},
  1036.     {32014, "PCS_NAD27_New_Mexico_West"},
  1037.     {32015, "PCS_NAD27_New_York_East"},
  1038.     {32016, "PCS_NAD27_New_York_Central"},
  1039.     {32017, "PCS_NAD27_New_York_West"},
  1040.     {32018, "PCS_NAD27_New_York_Long_Is"},
  1041.     {32019, "PCS_NAD27_North_Carolina"},
  1042.     {32020, "PCS_NAD27_North_Dakota_N"},
  1043.     {32021, "PCS_NAD27_North_Dakota_S"},
  1044.     {32022, "PCS_NAD27_Ohio_North"},
  1045.     {32023, "PCS_NAD27_Ohio_South"},
  1046.     {32024, "PCS_NAD27_Oklahoma_North"},
  1047.     {32025, "PCS_NAD27_Oklahoma_South"},
  1048.     {32026, "PCS_NAD27_Oregon_North"},
  1049.     {32027, "PCS_NAD27_Oregon_South"},
  1050.     {32028, "PCS_NAD27_Pennsylvania_N"},
  1051.     {32029, "PCS_NAD27_Pennsylvania_S"},
  1052.     {32030, "PCS_NAD27_Rhode_Island"},
  1053.     {32031, "PCS_NAD27_South_Carolina_N"},
  1054.     {32033, "PCS_NAD27_South_Carolina_S"},
  1055.     {32034, "PCS_NAD27_South_Dakota_N"},
  1056.     {32035, "PCS_NAD27_South_Dakota_S"},
  1057.     {32036, "PCS_NAD27_Tennessee"},
  1058.     {32037, "PCS_NAD27_Texas_North"},
  1059.     {32038, "PCS_NAD27_Texas_North_Cen"},
  1060.     {32039, "PCS_NAD27_Texas_Central"},
  1061.     {32040, "PCS_NAD27_Texas_South_Cen"},
  1062.     {32041, "PCS_NAD27_Texas_South"},
  1063.     {32042, "PCS_NAD27_Utah_North"},
  1064.     {32043, "PCS_NAD27_Utah_Central"},
  1065.     {32044, "PCS_NAD27_Utah_South"},
  1066.     {32045, "PCS_NAD27_Vermont"},
  1067.     {32046, "PCS_NAD27_Virginia_North"},
  1068.     {32047, "PCS_NAD27_Virginia_South"},
  1069.     {32048, "PCS_NAD27_Washington_North"},
  1070.     {32049, "PCS_NAD27_Washington_South"},
  1071.     {32050, "PCS_NAD27_West_Virginia_N"},
  1072.     {32051, "PCS_NAD27_West_Virginia_S"},
  1073.     {32052, "PCS_NAD27_Wisconsin_North"},
  1074.     {32053, "PCS_NAD27_Wisconsin_Cen"},
  1075.     {32054, "PCS_NAD27_Wisconsin_South"},
  1076.     {32055, "PCS_NAD27_Wyoming_East"},
  1077.     {32056, "PCS_NAD27_Wyoming_E_Cen"},
  1078.     {32057, "PCS_NAD27_Wyoming_W_Cen"},
  1079.     {32058, "PCS_NAD27_Wyoming_West"},
  1080.     {32059, "PCS_NAD27_Puerto_Rico"},
  1081.     {32060, "PCS_NAD27_St_Croix"},
  1082.     {32100, "PCS_NAD83_Montana"},
  1083.     {32104, "PCS_NAD83_Nebraska"},
  1084.     {32107, "PCS_NAD83_Nevada_East"},
  1085.     {32108, "PCS_NAD83_Nevada_Central"},
  1086.     {32109, "PCS_NAD83_Nevada_West"},
  1087.     {32110, "PCS_NAD83_New_Hampshire"},
  1088.     {32111, "PCS_NAD83_New_Jersey"},
  1089.     {32112, "PCS_NAD83_New_Mexico_East"},
  1090.     {32113, "PCS_NAD83_New_Mexico_Cent"},
  1091.     {32114, "PCS_NAD83_New_Mexico_West"},
  1092.     {32115, "PCS_NAD83_New_York_East"},
  1093.     {32116, "PCS_NAD83_New_York_Central"},
  1094.     {32117, "PCS_NAD83_New_York_West"},
  1095.     {32118, "PCS_NAD83_New_York_Long_Is"},
  1096.     {32119, "PCS_NAD83_North_Carolina"},
  1097.     {32120, "PCS_NAD83_North_Dakota_N"},
  1098.     {32121, "PCS_NAD83_North_Dakota_S"},
  1099.     {32122, "PCS_NAD83_Ohio_North"},
  1100.     {32123, "PCS_NAD83_Ohio_South"},
  1101.     {32124, "PCS_NAD83_Oklahoma_North"},
  1102.     {32125, "PCS_NAD83_Oklahoma_South"},
  1103.     {32126, "PCS_NAD83_Oregon_North"},
  1104.     {32127, "PCS_NAD83_Oregon_South"},
  1105.     {32128, "PCS_NAD83_Pennsylvania_N"},
  1106.     {32129, "PCS_NAD83_Pennsylvania_S"},
  1107.     {32130, "PCS_NAD83_Rhode_Island"},
  1108.     {32133, "PCS_NAD83_South_Carolina"},
  1109.     {32134, "PCS_NAD83_South_Dakota_N"},
  1110.     {32135, "PCS_NAD83_South_Dakota_S"},
  1111.     {32136, "PCS_NAD83_Tennessee"},
  1112.     {32137, "PCS_NAD83_Texas_North"},
  1113.     {32138, "PCS_NAD83_Texas_North_Cen"},
  1114.     {32139, "PCS_NAD83_Texas_Central"},
  1115.     {32140, "PCS_NAD83_Texas_South_Cen"},
  1116.     {32141, "PCS_NAD83_Texas_South"},
  1117.     {32142, "PCS_NAD83_Utah_North"},
  1118.     {32143, "PCS_NAD83_Utah_Central"},
  1119.     {32144, "PCS_NAD83_Utah_South"},
  1120.     {32145, "PCS_NAD83_Vermont"},
  1121.     {32146, "PCS_NAD83_Virginia_North"},
  1122.     {32147, "PCS_NAD83_Virginia_South"},
  1123.     {32148, "PCS_NAD83_Washington_North"},
  1124.     {32149, "PCS_NAD83_Washington_South"},
  1125.     {32150, "PCS_NAD83_West_Virginia_N"},
  1126.     {32151, "PCS_NAD83_West_Virginia_S"},
  1127.     {32152, "PCS_NAD83_Wisconsin_North"},
  1128.     {32153, "PCS_NAD83_Wisconsin_Cen"},
  1129.     {32154, "PCS_NAD83_Wisconsin_South"},
  1130.     {32155, "PCS_NAD83_Wyoming_East"},
  1131.     {32156, "PCS_NAD83_Wyoming_E_Cen"},
  1132.     {32157, "PCS_NAD83_Wyoming_W_Cen"},
  1133.     {32158, "PCS_NAD83_Wyoming_West"},
  1134.     {32161, "PCS_NAD83_Puerto_Rico_Virgin_Is"},
  1135.     {32201, "PCS_WGS72_UTM_zone_1N"},
  1136.     {32202, "PCS_WGS72_UTM_zone_2N"},
  1137.     {32203, "PCS_WGS72_UTM_zone_3N"},
  1138.     {32204, "PCS_WGS72_UTM_zone_4N"},
  1139.     {32205, "PCS_WGS72_UTM_zone_5N"},
  1140.     {32206, "PCS_WGS72_UTM_zone_6N"},
  1141.     {32207, "PCS_WGS72_UTM_zone_7N"},
  1142.     {32208, "PCS_WGS72_UTM_zone_8N"},
  1143.     {32209, "PCS_WGS72_UTM_zone_9N"},
  1144.     {32210, "PCS_WGS72_UTM_zone_10N"},
  1145.     {32211, "PCS_WGS72_UTM_zone_11N"},
  1146.     {32212, "PCS_WGS72_UTM_zone_12N"},
  1147.     {32213, "PCS_WGS72_UTM_zone_13N"},
  1148.     {32214, "PCS_WGS72_UTM_zone_14N"},
  1149.     {32215, "PCS_WGS72_UTM_zone_15N"},
  1150.     {32216, "PCS_WGS72_UTM_zone_16N"},
  1151.     {32217, "PCS_WGS72_UTM_zone_17N"},
  1152.     {32218, "PCS_WGS72_UTM_zone_18N"},
  1153.     {32219, "PCS_WGS72_UTM_zone_19N"},
  1154.     {32220, "PCS_WGS72_UTM_zone_20N"},
  1155.     {32221, "PCS_WGS72_UTM_zone_21N"},
  1156.     {32222, "PCS_WGS72_UTM_zone_22N"},
  1157.     {32223, "PCS_WGS72_UTM_zone_23N"},
  1158.     {32224, "PCS_WGS72_UTM_zone_24N"},
  1159.     {32225, "PCS_WGS72_UTM_zone_25N"},
  1160.     {32226, "PCS_WGS72_UTM_zone_26N"},
  1161.     {32227, "PCS_WGS72_UTM_zone_27N"},
  1162.     {32228, "PCS_WGS72_UTM_zone_28N"},
  1163.     {32229, "PCS_WGS72_UTM_zone_29N"},
  1164.     {32230, "PCS_WGS72_UTM_zone_30N"},
  1165.     {32231, "PCS_WGS72_UTM_zone_31N"},
  1166.     {32232, "PCS_WGS72_UTM_zone_32N"},
  1167.     {32233, "PCS_WGS72_UTM_zone_33N"},
  1168.     {32234, "PCS_WGS72_UTM_zone_34N"},
  1169.     {32235, "PCS_WGS72_UTM_zone_35N"},
  1170.     {32236, "PCS_WGS72_UTM_zone_36N"},
  1171.     {32237, "PCS_WGS72_UTM_zone_37N"},
  1172.     {32238, "PCS_WGS72_UTM_zone_38N"},
  1173.     {32239, "PCS_WGS72_UTM_zone_39N"},
  1174.     {32240, "PCS_WGS72_UTM_zone_40N"},
  1175.     {32241, "PCS_WGS72_UTM_zone_41N"},
  1176.     {32242, "PCS_WGS72_UTM_zone_42N"},
  1177.     {32243, "PCS_WGS72_UTM_zone_43N"},
  1178.     {32244, "PCS_WGS72_UTM_zone_44N"},
  1179.     {32245, "PCS_WGS72_UTM_zone_45N"},
  1180.     {32246, "PCS_WGS72_UTM_zone_46N"},
  1181.     {32247, "PCS_WGS72_UTM_zone_47N"},
  1182.     {32248, "PCS_WGS72_UTM_zone_48N"},
  1183.     {32249, "PCS_WGS72_UTM_zone_49N"},
  1184.     {32250, "PCS_WGS72_UTM_zone_50N"},
  1185.     {32251, "PCS_WGS72_UTM_zone_51N"},
  1186.     {32252, "PCS_WGS72_UTM_zone_52N"},
  1187.     {32253, "PCS_WGS72_UTM_zone_53N"},
  1188.     {32254, "PCS_WGS72_UTM_zone_54N"},
  1189.     {32255, "PCS_WGS72_UTM_zone_55N"},
  1190.     {32256, "PCS_WGS72_UTM_zone_56N"},
  1191.     {32257, "PCS_WGS72_UTM_zone_57N"},
  1192.     {32258, "PCS_WGS72_UTM_zone_58N"},
  1193.     {32259, "PCS_WGS72_UTM_zone_59N"},
  1194.     {32260, "PCS_WGS72_UTM_zone_60N"},
  1195.     {32301, "PCS_WGS72_UTM_zone_1S"},
  1196.     {32302, "PCS_WGS72_UTM_zone_2S"},
  1197.     {32303, "PCS_WGS72_UTM_zone_3S"},
  1198.     {32304, "PCS_WGS72_UTM_zone_4S"},
  1199.     {32305, "PCS_WGS72_UTM_zone_5S"},
  1200.     {32306, "PCS_WGS72_UTM_zone_6S"},
  1201.     {32307, "PCS_WGS72_UTM_zone_7S"},
  1202.     {32308, "PCS_WGS72_UTM_zone_8S"},
  1203.     {32309, "PCS_WGS72_UTM_zone_9S"},
  1204.     {32310, "PCS_WGS72_UTM_zone_10S"},
  1205.     {32311, "PCS_WGS72_UTM_zone_11S"},
  1206.     {32312, "PCS_WGS72_UTM_zone_12S"},
  1207.     {32313, "PCS_WGS72_UTM_zone_13S"},
  1208.     {32314, "PCS_WGS72_UTM_zone_14S"},
  1209.     {32315, "PCS_WGS72_UTM_zone_15S"},
  1210.     {32316, "PCS_WGS72_UTM_zone_16S"},
  1211.     {32317, "PCS_WGS72_UTM_zone_17S"},
  1212.     {32318, "PCS_WGS72_UTM_zone_18S"},
  1213.     {32319, "PCS_WGS72_UTM_zone_19S"},
  1214.     {32320, "PCS_WGS72_UTM_zone_20S"},
  1215.     {32321, "PCS_WGS72_UTM_zone_21S"},
  1216.     {32322, "PCS_WGS72_UTM_zone_22S"},
  1217.     {32323, "PCS_WGS72_UTM_zone_23S"},
  1218.     {32324, "PCS_WGS72_UTM_zone_24S"},
  1219.     {32325, "PCS_WGS72_UTM_zone_25S"},
  1220.     {32326, "PCS_WGS72_UTM_zone_26S"},
  1221.     {32327, "PCS_WGS72_UTM_zone_27S"},
  1222.     {32328, "PCS_WGS72_UTM_zone_28S"},
  1223.     {32329, "PCS_WGS72_UTM_zone_29S"},
  1224.     {32330, "PCS_WGS72_UTM_zone_30S"},
  1225.     {32331, "PCS_WGS72_UTM_zone_31S"},
  1226.     {32332, "PCS_WGS72_UTM_zone_32S"},
  1227.     {32333, "PCS_WGS72_UTM_zone_33S"},
  1228.     {32334, "PCS_WGS72_UTM_zone_34S"},
  1229.     {32335, "PCS_WGS72_UTM_zone_35S"},
  1230.     {32336, "PCS_WGS72_UTM_zone_36S"},
  1231.     {32337, "PCS_WGS72_UTM_zone_37S"},
  1232.     {32338, "PCS_WGS72_UTM_zone_38S"},
  1233.     {32339, "PCS_WGS72_UTM_zone_39S"},
  1234.     {32340, "PCS_WGS72_UTM_zone_40S"},
  1235.     {32341, "PCS_WGS72_UTM_zone_41S"},
  1236.     {32342, "PCS_WGS72_UTM_zone_42S"},
  1237.     {32343, "PCS_WGS72_UTM_zone_43S"},
  1238.     {32344, "PCS_WGS72_UTM_zone_44S"},
  1239.     {32345, "PCS_WGS72_UTM_zone_45S"},
  1240.     {32346, "PCS_WGS72_UTM_zone_46S"},
  1241.     {32347, "PCS_WGS72_UTM_zone_47S"},
  1242.     {32348, "PCS_WGS72_UTM_zone_48S"},
  1243.     {32349, "PCS_WGS72_UTM_zone_49S"},
  1244.     {32350, "PCS_WGS72_UTM_zone_50S"},
  1245.     {32351, "PCS_WGS72_UTM_zone_51S"},
  1246.     {32352, "PCS_WGS72_UTM_zone_52S"},
  1247.     {32353, "PCS_WGS72_UTM_zone_53S"},
  1248.     {32354, "PCS_WGS72_UTM_zone_54S"},
  1249.     {32355, "PCS_WGS72_UTM_zone_55S"},
  1250.     {32356, "PCS_WGS72_UTM_zone_56S"},
  1251.     {32357, "PCS_WGS72_UTM_zone_57S"},
  1252.     {32358, "PCS_WGS72_UTM_zone_58S"},
  1253.     {32359, "PCS_WGS72_UTM_zone_59S"},
  1254.     {32360, "PCS_WGS72_UTM_zone_60S"},
  1255.     {32401, "PCS_WGS72BE_UTM_zone_1N"},
  1256.     {32402, "PCS_WGS72BE_UTM_zone_2N"},
  1257.     {32403, "PCS_WGS72BE_UTM_zone_3N"},
  1258.     {32404, "PCS_WGS72BE_UTM_zone_4N"},
  1259.     {32405, "PCS_WGS72BE_UTM_zone_5N"},
  1260.     {32406, "PCS_WGS72BE_UTM_zone_6N"},
  1261.     {32407, "PCS_WGS72BE_UTM_zone_7N"},
  1262.     {32408, "PCS_WGS72BE_UTM_zone_8N"},
  1263.     {32409, "PCS_WGS72BE_UTM_zone_9N"},
  1264.     {32410, "PCS_WGS72BE_UTM_zone_10N"},
  1265.     {32411, "PCS_WGS72BE_UTM_zone_11N"},
  1266.     {32412, "PCS_WGS72BE_UTM_zone_12N"},
  1267.     {32413, "PCS_WGS72BE_UTM_zone_13N"},
  1268.     {32414, "PCS_WGS72BE_UTM_zone_14N"},
  1269.     {32415, "PCS_WGS72BE_UTM_zone_15N"},
  1270.     {32416, "PCS_WGS72BE_UTM_zone_16N"},
  1271.     {32417, "PCS_WGS72BE_UTM_zone_17N"},
  1272.     {32418, "PCS_WGS72BE_UTM_zone_18N"},
  1273.     {32419, "PCS_WGS72BE_UTM_zone_19N"},
  1274.     {32420, "PCS_WGS72BE_UTM_zone_20N"},
  1275.     {32421, "PCS_WGS72BE_UTM_zone_21N"},
  1276.     {32422, "PCS_WGS72BE_UTM_zone_22N"},
  1277.     {32423, "PCS_WGS72BE_UTM_zone_23N"},
  1278.     {32424, "PCS_WGS72BE_UTM_zone_24N"},
  1279.     {32425, "PCS_WGS72BE_UTM_zone_25N"},
  1280.     {32426, "PCS_WGS72BE_UTM_zone_26N"},
  1281.     {32427, "PCS_WGS72BE_UTM_zone_27N"},
  1282.     {32428, "PCS_WGS72BE_UTM_zone_28N"},
  1283.     {32429, "PCS_WGS72BE_UTM_zone_29N"},
  1284.     {32430, "PCS_WGS72BE_UTM_zone_30N"},
  1285.     {32431, "PCS_WGS72BE_UTM_zone_31N"},
  1286.     {32432, "PCS_WGS72BE_UTM_zone_32N"},
  1287.     {32433, "PCS_WGS72BE_UTM_zone_33N"},
  1288.     {32434, "PCS_WGS72BE_UTM_zone_34N"},
  1289.     {32435, "PCS_WGS72BE_UTM_zone_35N"},
  1290.     {32436, "PCS_WGS72BE_UTM_zone_36N"},
  1291.     {32437, "PCS_WGS72BE_UTM_zone_37N"},
  1292.     {32438, "PCS_WGS72BE_UTM_zone_38N"},
  1293.     {32439, "PCS_WGS72BE_UTM_zone_39N"},
  1294.     {32440, "PCS_WGS72BE_UTM_zone_40N"},
  1295.     {32441, "PCS_WGS72BE_UTM_zone_41N"},
  1296.     {32442, "PCS_WGS72BE_UTM_zone_42N"},
  1297.     {32443, "PCS_WGS72BE_UTM_zone_43N"},
  1298.     {32444, "PCS_WGS72BE_UTM_zone_44N"},
  1299.     {32445, "PCS_WGS72BE_UTM_zone_45N"},
  1300.     {32446, "PCS_WGS72BE_UTM_zone_46N"},
  1301.     {32447, "PCS_WGS72BE_UTM_zone_47N"},
  1302.     {32448, "PCS_WGS72BE_UTM_zone_48N"},
  1303.     {32449, "PCS_WGS72BE_UTM_zone_49N"},
  1304.     {32450, "PCS_WGS72BE_UTM_zone_50N"},
  1305.     {32451, "PCS_WGS72BE_UTM_zone_51N"},
  1306.     {32452, "PCS_WGS72BE_UTM_zone_52N"},
  1307.     {32453, "PCS_WGS72BE_UTM_zone_53N"},
  1308.     {32454, "PCS_WGS72BE_UTM_zone_54N"},
  1309.     {32455, "PCS_WGS72BE_UTM_zone_55N"},
  1310.     {32456, "PCS_WGS72BE_UTM_zone_56N"},
  1311.     {32457, "PCS_WGS72BE_UTM_zone_57N"},
  1312.     {32458, "PCS_WGS72BE_UTM_zone_58N"},
  1313.     {32459, "PCS_WGS72BE_UTM_zone_59N"},
  1314.     {32460, "PCS_WGS72BE_UTM_zone_60N"},
  1315.     {32501, "PCS_WGS72BE_UTM_zone_1S"},
  1316.     {32502, "PCS_WGS72BE_UTM_zone_2S"},
  1317.     {32503, "PCS_WGS72BE_UTM_zone_3S"},
  1318.     {32504, "PCS_WGS72BE_UTM_zone_4S"},
  1319.     {32505, "PCS_WGS72BE_UTM_zone_5S"},
  1320.     {32506, "PCS_WGS72BE_UTM_zone_6S"},
  1321.     {32507, "PCS_WGS72BE_UTM_zone_7S"},
  1322.     {32508, "PCS_WGS72BE_UTM_zone_8S"},
  1323.     {32509, "PCS_WGS72BE_UTM_zone_9S"},
  1324.     {32510, "PCS_WGS72BE_UTM_zone_10S"},
  1325.     {32511, "PCS_WGS72BE_UTM_zone_11S"},
  1326.     {32512, "PCS_WGS72BE_UTM_zone_12S"},
  1327.     {32513, "PCS_WGS72BE_UTM_zone_13S"},
  1328.     {32514, "PCS_WGS72BE_UTM_zone_14S"},
  1329.     {32515, "PCS_WGS72BE_UTM_zone_15S"},
  1330.     {32516, "PCS_WGS72BE_UTM_zone_16S"},
  1331.     {32517, "PCS_WGS72BE_UTM_zone_17S"},
  1332.     {32518, "PCS_WGS72BE_UTM_zone_18S"},
  1333.     {32519, "PCS_WGS72BE_UTM_zone_19S"},
  1334.     {32520, "PCS_WGS72BE_UTM_zone_20S"},
  1335.     {32521, "PCS_WGS72BE_UTM_zone_21S"},
  1336.     {32522, "PCS_WGS72BE_UTM_zone_22S"},
  1337.     {32523, "PCS_WGS72BE_UTM_zone_23S"},
  1338.     {32524, "PCS_WGS72BE_UTM_zone_24S"},
  1339.     {32525, "PCS_WGS72BE_UTM_zone_25S"},
  1340.     {32526, "PCS_WGS72BE_UTM_zone_26S"},
  1341.     {32527, "PCS_WGS72BE_UTM_zone_27S"},
  1342.     {32528, "PCS_WGS72BE_UTM_zone_28S"},
  1343.     {32529, "PCS_WGS72BE_UTM_zone_29S"},
  1344.     {32530, "PCS_WGS72BE_UTM_zone_30S"},
  1345.     {32531, "PCS_WGS72BE_UTM_zone_31S"},
  1346.     {32532, "PCS_WGS72BE_UTM_zone_32S"},
  1347.     {32533, "PCS_WGS72BE_UTM_zone_33S"},
  1348.     {32534, "PCS_WGS72BE_UTM_zone_34S"},
  1349.     {32535, "PCS_WGS72BE_UTM_zone_35S"},
  1350.     {32536, "PCS_WGS72BE_UTM_zone_36S"},
  1351.     {32537, "PCS_WGS72BE_UTM_zone_37S"},
  1352.     {32538, "PCS_WGS72BE_UTM_zone_38S"},
  1353.     {32539, "PCS_WGS72BE_UTM_zone_39S"},
  1354.     {32540, "PCS_WGS72BE_UTM_zone_40S"},
  1355.     {32541, "PCS_WGS72BE_UTM_zone_41S"},
  1356.     {32542, "PCS_WGS72BE_UTM_zone_42S"},
  1357.     {32543, "PCS_WGS72BE_UTM_zone_43S"},
  1358.     {32544, "PCS_WGS72BE_UTM_zone_44S"},
  1359.     {32545, "PCS_WGS72BE_UTM_zone_45S"},
  1360.     {32546, "PCS_WGS72BE_UTM_zone_46S"},
  1361.     {32547, "PCS_WGS72BE_UTM_zone_47S"},
  1362.     {32548, "PCS_WGS72BE_UTM_zone_48S"},
  1363.     {32549, "PCS_WGS72BE_UTM_zone_49S"},
  1364.     {32550, "PCS_WGS72BE_UTM_zone_50S"},
  1365.     {32551, "PCS_WGS72BE_UTM_zone_51S"},
  1366.     {32552, "PCS_WGS72BE_UTM_zone_52S"},
  1367.     {32553, "PCS_WGS72BE_UTM_zone_53S"},
  1368.     {32554, "PCS_WGS72BE_UTM_zone_54S"},
  1369.     {32555, "PCS_WGS72BE_UTM_zone_55S"},
  1370.     {32556, "PCS_WGS72BE_UTM_zone_56S"},
  1371.     {32557, "PCS_WGS72BE_UTM_zone_57S"},
  1372.     {32558, "PCS_WGS72BE_UTM_zone_58S"},
  1373.     {32559, "PCS_WGS72BE_UTM_zone_59S"},
  1374.     {32560, "PCS_WGS72BE_UTM_zone_60S"},
  1375.     {32601, "PCS_WGS84_UTM_zone_1N"},
  1376.     {32602, "PCS_WGS84_UTM_zone_2N"},
  1377.     {32603, "PCS_WGS84_UTM_zone_3N"},
  1378.     {32604, "PCS_WGS84_UTM_zone_4N"},
  1379.     {32605, "PCS_WGS84_UTM_zone_5N"},
  1380.     {32606, "PCS_WGS84_UTM_zone_6N"},
  1381.     {32607, "PCS_WGS84_UTM_zone_7N"},
  1382.     {32608, "PCS_WGS84_UTM_zone_8N"},
  1383.     {32609, "PCS_WGS84_UTM_zone_9N"},
  1384.     {32610, "PCS_WGS84_UTM_zone_10N"},
  1385.     {32611, "PCS_WGS84_UTM_zone_11N"},
  1386.     {32612, "PCS_WGS84_UTM_zone_12N"},
  1387.     {32613, "PCS_WGS84_UTM_zone_13N"},
  1388.     {32614, "PCS_WGS84_UTM_zone_14N"},
  1389.     {32615, "PCS_WGS84_UTM_zone_15N"},
  1390.     {32616, "PCS_WGS84_UTM_zone_16N"},
  1391.     {32617, "PCS_WGS84_UTM_zone_17N"},
  1392.     {32618, "PCS_WGS84_UTM_zone_18N"},
  1393.     {32619, "PCS_WGS84_UTM_zone_19N"},
  1394.     {32620, "PCS_WGS84_UTM_zone_20N"},
  1395.     {32621, "PCS_WGS84_UTM_zone_21N"},
  1396.     {32622, "PCS_WGS84_UTM_zone_22N"},
  1397.     {32623, "PCS_WGS84_UTM_zone_23N"},
  1398.     {32624, "PCS_WGS84_UTM_zone_24N"},
  1399.     {32625, "PCS_WGS84_UTM_zone_25N"},
  1400.     {32626, "PCS_WGS84_UTM_zone_26N"},
  1401.     {32627, "PCS_WGS84_UTM_zone_27N"},
  1402.     {32628, "PCS_WGS84_UTM_zone_28N"},
  1403.     {32629, "PCS_WGS84_UTM_zone_29N"},
  1404.     {32630, "PCS_WGS84_UTM_zone_30N"},
  1405.     {32631, "PCS_WGS84_UTM_zone_31N"},
  1406.     {32632, "PCS_WGS84_UTM_zone_32N"},
  1407.     {32633, "PCS_WGS84_UTM_zone_33N"},
  1408.     {32634, "PCS_WGS84_UTM_zone_34N"},
  1409.     {32635, "PCS_WGS84_UTM_zone_35N"},
  1410.     {32636, "PCS_WGS84_UTM_zone_36N"},
  1411.     {32637, "PCS_WGS84_UTM_zone_37N"},
  1412.     {32638, "PCS_WGS84_UTM_zone_38N"},
  1413.     {32639, "PCS_WGS84_UTM_zone_39N"},
  1414.     {32640, "PCS_WGS84_UTM_zone_40N"},
  1415.     {32641, "PCS_WGS84_UTM_zone_41N"},
  1416.     {32642, "PCS_WGS84_UTM_zone_42N"},
  1417.     {32643, "PCS_WGS84_UTM_zone_43N"},
  1418.     {32644, "PCS_WGS84_UTM_zone_44N"},
  1419.     {32645, "PCS_WGS84_UTM_zone_45N"},
  1420.     {32646, "PCS_WGS84_UTM_zone_46N"},
  1421.     {32647, "PCS_WGS84_UTM_zone_47N"},
  1422.     {32648, "PCS_WGS84_UTM_zone_48N"},
  1423.     {32649, "PCS_WGS84_UTM_zone_49N"},
  1424.     {32650, "PCS_WGS84_UTM_zone_50N"},
  1425.     {32651, "PCS_WGS84_UTM_zone_51N"},
  1426.     {32652, "PCS_WGS84_UTM_zone_52N"},
  1427.     {32653, "PCS_WGS84_UTM_zone_53N"},
  1428.     {32654, "PCS_WGS84_UTM_zone_54N"},
  1429.     {32655, "PCS_WGS84_UTM_zone_55N"},
  1430.     {32656, "PCS_WGS84_UTM_zone_56N"},
  1431.     {32657, "PCS_WGS84_UTM_zone_57N"},
  1432.     {32658, "PCS_WGS84_UTM_zone_58N"},
  1433.     {32659, "PCS_WGS84_UTM_zone_59N"},
  1434.     {32660, "PCS_WGS84_UTM_zone_60N"},
  1435.     {32701, "PCS_WGS84_UTM_zone_1S"},
  1436.     {32702, "PCS_WGS84_UTM_zone_2S"},
  1437.     {32703, "PCS_WGS84_UTM_zone_3S"},
  1438.     {32704, "PCS_WGS84_UTM_zone_4S"},
  1439.     {32705, "PCS_WGS84_UTM_zone_5S"},
  1440.     {32706, "PCS_WGS84_UTM_zone_6S"},
  1441.     {32707, "PCS_WGS84_UTM_zone_7S"},
  1442.     {32708, "PCS_WGS84_UTM_zone_8S"},
  1443.     {32709, "PCS_WGS84_UTM_zone_9S"},
  1444.     {32710, "PCS_WGS84_UTM_zone_10S"},
  1445.     {32711, "PCS_WGS84_UTM_zone_11S"},
  1446.     {32712, "PCS_WGS84_UTM_zone_12S"},
  1447.     {32713, "PCS_WGS84_UTM_zone_13S"},
  1448.     {32714, "PCS_WGS84_UTM_zone_14S"},
  1449.     {32715, "PCS_WGS84_UTM_zone_15S"},
  1450.     {32716, "PCS_WGS84_UTM_zone_16S"},
  1451.     {32717, "PCS_WGS84_UTM_zone_17S"},
  1452.     {32718, "PCS_WGS84_UTM_zone_18S"},
  1453.     {32719, "PCS_WGS84_UTM_zone_19S"},
  1454.     {32720, "PCS_WGS84_UTM_zone_20S"},
  1455.     {32721, "PCS_WGS84_UTM_zone_21S"},
  1456.     {32722, "PCS_WGS84_UTM_zone_22S"},
  1457.     {32723, "PCS_WGS84_UTM_zone_23S"},
  1458.     {32724, "PCS_WGS84_UTM_zone_24S"},
  1459.     {32725, "PCS_WGS84_UTM_zone_25S"},
  1460.     {32726, "PCS_WGS84_UTM_zone_26S"},
  1461.     {32727, "PCS_WGS84_UTM_zone_27S"},
  1462.     {32728, "PCS_WGS84_UTM_zone_28S"},
  1463.     {32729, "PCS_WGS84_UTM_zone_29S"},
  1464.     {32730, "PCS_WGS84_UTM_zone_30S"},
  1465.     {32731, "PCS_WGS84_UTM_zone_31S"},
  1466.     {32732, "PCS_WGS84_UTM_zone_32S"},
  1467.     {32733, "PCS_WGS84_UTM_zone_33S"},
  1468.     {32734, "PCS_WGS84_UTM_zone_34S"},
  1469.     {32735, "PCS_WGS84_UTM_zone_35S"},
  1470.     {32736, "PCS_WGS84_UTM_zone_36S"},
  1471.     {32737, "PCS_WGS84_UTM_zone_37S"},
  1472.     {32738, "PCS_WGS84_UTM_zone_38S"},
  1473.     {32739, "PCS_WGS84_UTM_zone_39S"},
  1474.     {32740, "PCS_WGS84_UTM_zone_40S"},
  1475.     {32741, "PCS_WGS84_UTM_zone_41S"},
  1476.     {32742, "PCS_WGS84_UTM_zone_42S"},
  1477.     {32743, "PCS_WGS84_UTM_zone_43S"},
  1478.     {32744, "PCS_WGS84_UTM_zone_44S"},
  1479.     {32745, "PCS_WGS84_UTM_zone_45S"},
  1480.     {32746, "PCS_WGS84_UTM_zone_46S"},
  1481.     {32747, "PCS_WGS84_UTM_zone_47S"},
  1482.     {32748, "PCS_WGS84_UTM_zone_48S"},
  1483.     {32749, "PCS_WGS84_UTM_zone_49S"},
  1484.     {32750, "PCS_WGS84_UTM_zone_50S"},
  1485.     {32751, "PCS_WGS84_UTM_zone_51S"},
  1486.     {32752, "PCS_WGS84_UTM_zone_52S"},
  1487.     {32753, "PCS_WGS84_UTM_zone_53S"},
  1488.     {32754, "PCS_WGS84_UTM_zone_54S"},
  1489.     {32755, "PCS_WGS84_UTM_zone_55S"},
  1490.     {32756, "PCS_WGS84_UTM_zone_56S"},
  1491.     {32757, "PCS_WGS84_UTM_zone_57S"},
  1492.     {32758, "PCS_WGS84_UTM_zone_58S"},
  1493.     {32759, "PCS_WGS84_UTM_zone_59S"},
  1494.     {32760, "PCS_WGS84_UTM_zone_60S"}
  1495. };
  1496.  
  1497. const TiffGeoTagKeyName ff_tiff_projection_codes[] = {
  1498.     {10101, "Proj_Alabama_CS27_East"},
  1499.     {10102, "Proj_Alabama_CS27_West"},
  1500.     {10131, "Proj_Alabama_CS83_East"},
  1501.     {10132, "Proj_Alabama_CS83_West"},
  1502.     {10201, "Proj_Arizona_Coordinate_System_east"},
  1503.     {10202, "Proj_Arizona_Coordinate_System_Central"},
  1504.     {10203, "Proj_Arizona_Coordinate_System_west"},
  1505.     {10231, "Proj_Arizona_CS83_east"},
  1506.     {10232, "Proj_Arizona_CS83_Central"},
  1507.     {10233, "Proj_Arizona_CS83_west"},
  1508.     {10301, "Proj_Arkansas_CS27_North"},
  1509.     {10302, "Proj_Arkansas_CS27_South"},
  1510.     {10331, "Proj_Arkansas_CS83_North"},
  1511.     {10332, "Proj_Arkansas_CS83_South"},
  1512.     {10401, "Proj_California_CS27_I"},
  1513.     {10402, "Proj_California_CS27_II"},
  1514.     {10403, "Proj_California_CS27_III"},
  1515.     {10404, "Proj_California_CS27_IV"},
  1516.     {10405, "Proj_California_CS27_V"},
  1517.     {10406, "Proj_California_CS27_VI"},
  1518.     {10407, "Proj_California_CS27_VII"},
  1519.     {10431, "Proj_California_CS83_1"},
  1520.     {10432, "Proj_California_CS83_2"},
  1521.     {10433, "Proj_California_CS83_3"},
  1522.     {10434, "Proj_California_CS83_4"},
  1523.     {10435, "Proj_California_CS83_5"},
  1524.     {10436, "Proj_California_CS83_6"},
  1525.     {10501, "Proj_Colorado_CS27_North"},
  1526.     {10502, "Proj_Colorado_CS27_Central"},
  1527.     {10503, "Proj_Colorado_CS27_South"},
  1528.     {10531, "Proj_Colorado_CS83_North"},
  1529.     {10532, "Proj_Colorado_CS83_Central"},
  1530.     {10533, "Proj_Colorado_CS83_South"},
  1531.     {10600, "Proj_Connecticut_CS27"},
  1532.     {10630, "Proj_Connecticut_CS83"},
  1533.     {10700, "Proj_Delaware_CS27"},
  1534.     {10730, "Proj_Delaware_CS83"},
  1535.     {10901, "Proj_Florida_CS27_East"},
  1536.     {10902, "Proj_Florida_CS27_West"},
  1537.     {10903, "Proj_Florida_CS27_North"},
  1538.     {10931, "Proj_Florida_CS83_East"},
  1539.     {10932, "Proj_Florida_CS83_West"},
  1540.     {10933, "Proj_Florida_CS83_North"},
  1541.     {11001, "Proj_Georgia_CS27_East"},
  1542.     {11002, "Proj_Georgia_CS27_West"},
  1543.     {11031, "Proj_Georgia_CS83_East"},
  1544.     {11032, "Proj_Georgia_CS83_West"},
  1545.     {11101, "Proj_Idaho_CS27_East"},
  1546.     {11102, "Proj_Idaho_CS27_Central"},
  1547.     {11103, "Proj_Idaho_CS27_West"},
  1548.     {11131, "Proj_Idaho_CS83_East"},
  1549.     {11132, "Proj_Idaho_CS83_Central"},
  1550.     {11133, "Proj_Idaho_CS83_West"},
  1551.     {11201, "Proj_Illinois_CS27_East"},
  1552.     {11202, "Proj_Illinois_CS27_West"},
  1553.     {11231, "Proj_Illinois_CS83_East"},
  1554.     {11232, "Proj_Illinois_CS83_West"},
  1555.     {11301, "Proj_Indiana_CS27_East"},
  1556.     {11302, "Proj_Indiana_CS27_West"},
  1557.     {11331, "Proj_Indiana_CS83_East"},
  1558.     {11332, "Proj_Indiana_CS83_West"},
  1559.     {11401, "Proj_Iowa_CS27_North"},
  1560.     {11402, "Proj_Iowa_CS27_South"},
  1561.     {11431, "Proj_Iowa_CS83_North"},
  1562.     {11432, "Proj_Iowa_CS83_South"},
  1563.     {11501, "Proj_Kansas_CS27_North"},
  1564.     {11502, "Proj_Kansas_CS27_South"},
  1565.     {11531, "Proj_Kansas_CS83_North"},
  1566.     {11532, "Proj_Kansas_CS83_South"},
  1567.     {11601, "Proj_Kentucky_CS27_North"},
  1568.     {11602, "Proj_Kentucky_CS27_South"},
  1569.     {11631, "Proj_Kentucky_CS83_North"},
  1570.     {11632, "Proj_Kentucky_CS83_South"},
  1571.     {11701, "Proj_Louisiana_CS27_North"},
  1572.     {11702, "Proj_Louisiana_CS27_South"},
  1573.     {11731, "Proj_Louisiana_CS83_North"},
  1574.     {11732, "Proj_Louisiana_CS83_South"},
  1575.     {11801, "Proj_Maine_CS27_East"},
  1576.     {11802, "Proj_Maine_CS27_West"},
  1577.     {11831, "Proj_Maine_CS83_East"},
  1578.     {11832, "Proj_Maine_CS83_West"},
  1579.     {11900, "Proj_Maryland_CS27"},
  1580.     {11930, "Proj_Maryland_CS83"},
  1581.     {12001, "Proj_Massachusetts_CS27_Mainland"},
  1582.     {12002, "Proj_Massachusetts_CS27_Island"},
  1583.     {12031, "Proj_Massachusetts_CS83_Mainland"},
  1584.     {12032, "Proj_Massachusetts_CS83_Island"},
  1585.     {12101, "Proj_Michigan_State_Plane_East"},
  1586.     {12102, "Proj_Michigan_State_Plane_Old_Central"},
  1587.     {12103, "Proj_Michigan_State_Plane_West"},
  1588.     {12111, "Proj_Michigan_CS27_North"},
  1589.     {12112, "Proj_Michigan_CS27_Central"},
  1590.     {12113, "Proj_Michigan_CS27_South"},
  1591.     {12141, "Proj_Michigan_CS83_North"},
  1592.     {12142, "Proj_Michigan_CS83_Central"},
  1593.     {12143, "Proj_Michigan_CS83_South"},
  1594.     {12201, "Proj_Minnesota_CS27_North"},
  1595.     {12202, "Proj_Minnesota_CS27_Central"},
  1596.     {12203, "Proj_Minnesota_CS27_South"},
  1597.     {12231, "Proj_Minnesota_CS83_North"},
  1598.     {12232, "Proj_Minnesota_CS83_Central"},
  1599.     {12233, "Proj_Minnesota_CS83_South"},
  1600.     {12301, "Proj_Mississippi_CS27_East"},
  1601.     {12302, "Proj_Mississippi_CS27_West"},
  1602.     {12331, "Proj_Mississippi_CS83_East"},
  1603.     {12332, "Proj_Mississippi_CS83_West"},
  1604.     {12401, "Proj_Missouri_CS27_East"},
  1605.     {12402, "Proj_Missouri_CS27_Central"},
  1606.     {12403, "Proj_Missouri_CS27_West"},
  1607.     {12431, "Proj_Missouri_CS83_East"},
  1608.     {12432, "Proj_Missouri_CS83_Central"},
  1609.     {12433, "Proj_Missouri_CS83_West"},
  1610.     {12501, "Proj_Montana_CS27_North"},
  1611.     {12502, "Proj_Montana_CS27_Central"},
  1612.     {12503, "Proj_Montana_CS27_South"},
  1613.     {12530, "Proj_Montana_CS83"},
  1614.     {12601, "Proj_Nebraska_CS27_North"},
  1615.     {12602, "Proj_Nebraska_CS27_South"},
  1616.     {12630, "Proj_Nebraska_CS83"},
  1617.     {12701, "Proj_Nevada_CS27_East"},
  1618.     {12702, "Proj_Nevada_CS27_Central"},
  1619.     {12703, "Proj_Nevada_CS27_West"},
  1620.     {12731, "Proj_Nevada_CS83_East"},
  1621.     {12732, "Proj_Nevada_CS83_Central"},
  1622.     {12733, "Proj_Nevada_CS83_West"},
  1623.     {12800, "Proj_New_Hampshire_CS27"},
  1624.     {12830, "Proj_New_Hampshire_CS83"},
  1625.     {12900, "Proj_New_Jersey_CS27"},
  1626.     {12930, "Proj_New_Jersey_CS83"},
  1627.     {13001, "Proj_New_Mexico_CS27_East"},
  1628.     {13002, "Proj_New_Mexico_CS27_Central"},
  1629.     {13003, "Proj_New_Mexico_CS27_West"},
  1630.     {13031, "Proj_New_Mexico_CS83_East"},
  1631.     {13032, "Proj_New_Mexico_CS83_Central"},
  1632.     {13033, "Proj_New_Mexico_CS83_West"},
  1633.     {13101, "Proj_New_York_CS27_East"},
  1634.     {13102, "Proj_New_York_CS27_Central"},
  1635.     {13103, "Proj_New_York_CS27_West"},
  1636.     {13104, "Proj_New_York_CS27_Long_Island"},
  1637.     {13131, "Proj_New_York_CS83_East"},
  1638.     {13132, "Proj_New_York_CS83_Central"},
  1639.     {13133, "Proj_New_York_CS83_West"},
  1640.     {13134, "Proj_New_York_CS83_Long_Island"},
  1641.     {13200, "Proj_North_Carolina_CS27"},
  1642.     {13230, "Proj_North_Carolina_CS83"},
  1643.     {13301, "Proj_North_Dakota_CS27_North"},
  1644.     {13302, "Proj_North_Dakota_CS27_South"},
  1645.     {13331, "Proj_North_Dakota_CS83_North"},
  1646.     {13332, "Proj_North_Dakota_CS83_South"},
  1647.     {13401, "Proj_Ohio_CS27_North"},
  1648.     {13402, "Proj_Ohio_CS27_South"},
  1649.     {13431, "Proj_Ohio_CS83_North"},
  1650.     {13432, "Proj_Ohio_CS83_South"},
  1651.     {13501, "Proj_Oklahoma_CS27_North"},
  1652.     {13502, "Proj_Oklahoma_CS27_South"},
  1653.     {13531, "Proj_Oklahoma_CS83_North"},
  1654.     {13532, "Proj_Oklahoma_CS83_South"},
  1655.     {13601, "Proj_Oregon_CS27_North"},
  1656.     {13602, "Proj_Oregon_CS27_South"},
  1657.     {13631, "Proj_Oregon_CS83_North"},
  1658.     {13632, "Proj_Oregon_CS83_South"},
  1659.     {13701, "Proj_Pennsylvania_CS27_North"},
  1660.     {13702, "Proj_Pennsylvania_CS27_South"},
  1661.     {13731, "Proj_Pennsylvania_CS83_North"},
  1662.     {13732, "Proj_Pennsylvania_CS83_South"},
  1663.     {13800, "Proj_Rhode_Island_CS27"},
  1664.     {13830, "Proj_Rhode_Island_CS83"},
  1665.     {13901, "Proj_South_Carolina_CS27_North"},
  1666.     {13902, "Proj_South_Carolina_CS27_South"},
  1667.     {13930, "Proj_South_Carolina_CS83"},
  1668.     {14001, "Proj_South_Dakota_CS27_North"},
  1669.     {14002, "Proj_South_Dakota_CS27_South"},
  1670.     {14031, "Proj_South_Dakota_CS83_North"},
  1671.     {14032, "Proj_South_Dakota_CS83_South"},
  1672.     {14100, "Proj_Tennessee_CS27"},
  1673.     {14130, "Proj_Tennessee_CS83"},
  1674.     {14201, "Proj_Texas_CS27_North"},
  1675.     {14202, "Proj_Texas_CS27_North_Central"},
  1676.     {14203, "Proj_Texas_CS27_Central"},
  1677.     {14204, "Proj_Texas_CS27_South_Central"},
  1678.     {14205, "Proj_Texas_CS27_South"},
  1679.     {14231, "Proj_Texas_CS83_North"},
  1680.     {14232, "Proj_Texas_CS83_North_Central"},
  1681.     {14233, "Proj_Texas_CS83_Central"},
  1682.     {14234, "Proj_Texas_CS83_South_Central"},
  1683.     {14235, "Proj_Texas_CS83_South"},
  1684.     {14301, "Proj_Utah_CS27_North"},
  1685.     {14302, "Proj_Utah_CS27_Central"},
  1686.     {14303, "Proj_Utah_CS27_South"},
  1687.     {14331, "Proj_Utah_CS83_North"},
  1688.     {14332, "Proj_Utah_CS83_Central"},
  1689.     {14333, "Proj_Utah_CS83_South"},
  1690.     {14400, "Proj_Vermont_CS27"},
  1691.     {14430, "Proj_Vermont_CS83"},
  1692.     {14501, "Proj_Virginia_CS27_North"},
  1693.     {14502, "Proj_Virginia_CS27_South"},
  1694.     {14531, "Proj_Virginia_CS83_North"},
  1695.     {14532, "Proj_Virginia_CS83_South"},
  1696.     {14601, "Proj_Washington_CS27_North"},
  1697.     {14602, "Proj_Washington_CS27_South"},
  1698.     {14631, "Proj_Washington_CS83_North"},
  1699.     {14632, "Proj_Washington_CS83_South"},
  1700.     {14701, "Proj_West_Virginia_CS27_North"},
  1701.     {14702, "Proj_West_Virginia_CS27_South"},
  1702.     {14731, "Proj_West_Virginia_CS83_North"},
  1703.     {14732, "Proj_West_Virginia_CS83_South"},
  1704.     {14801, "Proj_Wisconsin_CS27_North"},
  1705.     {14802, "Proj_Wisconsin_CS27_Central"},
  1706.     {14803, "Proj_Wisconsin_CS27_South"},
  1707.     {14831, "Proj_Wisconsin_CS83_North"},
  1708.     {14832, "Proj_Wisconsin_CS83_Central"},
  1709.     {14833, "Proj_Wisconsin_CS83_South"},
  1710.     {14901, "Proj_Wyoming_CS27_East"},
  1711.     {14902, "Proj_Wyoming_CS27_East_Central"},
  1712.     {14903, "Proj_Wyoming_CS27_West_Central"},
  1713.     {14904, "Proj_Wyoming_CS27_West"},
  1714.     {14931, "Proj_Wyoming_CS83_East"},
  1715.     {14932, "Proj_Wyoming_CS83_East_Central"},
  1716.     {14933, "Proj_Wyoming_CS83_West_Central"},
  1717.     {14934, "Proj_Wyoming_CS83_West"},
  1718.     {15001, "Proj_Alaska_CS27_1"},
  1719.     {15002, "Proj_Alaska_CS27_2"},
  1720.     {15003, "Proj_Alaska_CS27_3"},
  1721.     {15004, "Proj_Alaska_CS27_4"},
  1722.     {15005, "Proj_Alaska_CS27_5"},
  1723.     {15006, "Proj_Alaska_CS27_6"},
  1724.     {15007, "Proj_Alaska_CS27_7"},
  1725.     {15008, "Proj_Alaska_CS27_8"},
  1726.     {15009, "Proj_Alaska_CS27_9"},
  1727.     {15010, "Proj_Alaska_CS27_10"},
  1728.     {15031, "Proj_Alaska_CS83_1"},
  1729.     {15032, "Proj_Alaska_CS83_2"},
  1730.     {15033, "Proj_Alaska_CS83_3"},
  1731.     {15034, "Proj_Alaska_CS83_4"},
  1732.     {15035, "Proj_Alaska_CS83_5"},
  1733.     {15036, "Proj_Alaska_CS83_6"},
  1734.     {15037, "Proj_Alaska_CS83_7"},
  1735.     {15038, "Proj_Alaska_CS83_8"},
  1736.     {15039, "Proj_Alaska_CS83_9"},
  1737.     {15040, "Proj_Alaska_CS83_10"},
  1738.     {15101, "Proj_Hawaii_CS27_1"},
  1739.     {15102, "Proj_Hawaii_CS27_2"},
  1740.     {15103, "Proj_Hawaii_CS27_3"},
  1741.     {15104, "Proj_Hawaii_CS27_4"},
  1742.     {15105, "Proj_Hawaii_CS27_5"},
  1743.     {15131, "Proj_Hawaii_CS83_1"},
  1744.     {15132, "Proj_Hawaii_CS83_2"},
  1745.     {15133, "Proj_Hawaii_CS83_3"},
  1746.     {15134, "Proj_Hawaii_CS83_4"},
  1747.     {15135, "Proj_Hawaii_CS83_5"},
  1748.     {15201, "Proj_Puerto_Rico_CS27"},
  1749.     {15202, "Proj_St_Croix"},
  1750.     {15230, "Proj_Puerto_Rico_Virgin_Is"},
  1751.     {15914, "Proj_BLM_14N_feet"},
  1752.     {15915, "Proj_BLM_15N_feet"},
  1753.     {15916, "Proj_BLM_16N_feet"},
  1754.     {15917, "Proj_BLM_17N_feet"},
  1755.     {17348, "Proj_Map_Grid_of_Australia_48"},
  1756.     {17349, "Proj_Map_Grid_of_Australia_49"},
  1757.     {17350, "Proj_Map_Grid_of_Australia_50"},
  1758.     {17351, "Proj_Map_Grid_of_Australia_51"},
  1759.     {17352, "Proj_Map_Grid_of_Australia_52"},
  1760.     {17353, "Proj_Map_Grid_of_Australia_53"},
  1761.     {17354, "Proj_Map_Grid_of_Australia_54"},
  1762.     {17355, "Proj_Map_Grid_of_Australia_55"},
  1763.     {17356, "Proj_Map_Grid_of_Australia_56"},
  1764.     {17357, "Proj_Map_Grid_of_Australia_57"},
  1765.     {17358, "Proj_Map_Grid_of_Australia_58"},
  1766.     {17448, "Proj_Australian_Map_Grid_48"},
  1767.     {17449, "Proj_Australian_Map_Grid_49"},
  1768.     {17450, "Proj_Australian_Map_Grid_50"},
  1769.     {17451, "Proj_Australian_Map_Grid_51"},
  1770.     {17452, "Proj_Australian_Map_Grid_52"},
  1771.     {17453, "Proj_Australian_Map_Grid_53"},
  1772.     {17454, "Proj_Australian_Map_Grid_54"},
  1773.     {17455, "Proj_Australian_Map_Grid_55"},
  1774.     {17456, "Proj_Australian_Map_Grid_56"},
  1775.     {17457, "Proj_Australian_Map_Grid_57"},
  1776.     {17458, "Proj_Australian_Map_Grid_58"},
  1777.     {18031, "Proj_Argentina_1"},
  1778.     {18032, "Proj_Argentina_2"},
  1779.     {18033, "Proj_Argentina_3"},
  1780.     {18034, "Proj_Argentina_4"},
  1781.     {18035, "Proj_Argentina_5"},
  1782.     {18036, "Proj_Argentina_6"},
  1783.     {18037, "Proj_Argentina_7"},
  1784.     {18051, "Proj_Colombia_3W"},
  1785.     {18052, "Proj_Colombia_Bogota"},
  1786.     {18053, "Proj_Colombia_3E"},
  1787.     {18054, "Proj_Colombia_6E"},
  1788.     {18072, "Proj_Egypt_Red_Belt"},
  1789.     {18073, "Proj_Egypt_Purple_Belt"},
  1790.     {18074, "Proj_Extended_Purple_Belt"},
  1791.     {18141, "Proj_New_Zealand_North_Island_Nat_Grid"},
  1792.     {18142, "Proj_New_Zealand_South_Island_Nat_Grid"},
  1793.     {19900, "Proj_Bahrain_Grid"},
  1794.     {19905, "Proj_Netherlands_E_Indies_Equatorial"},
  1795.     {19912, "Proj_RSO_Borneo"}
  1796. };
  1797.  
  1798. const char *const ff_tiff_coord_trans_codes[] = {
  1799.     "CT_TransverseMercator",
  1800.     "CT_TransvMercator_Modified_Alaska",
  1801.     "CT_ObliqueMercator",
  1802.     "CT_ObliqueMercator_Laborde",
  1803.     "CT_ObliqueMercator_Rosenmund",
  1804.     "CT_ObliqueMercator_Spherical",
  1805.     "CT_Mercator",
  1806.     "CT_LambertConfConic_2SP",
  1807.     "CT_LambertConfConic_Helmert",
  1808.     "CT_LambertAzimEqualArea",
  1809.     "CT_AlbersEqualArea",
  1810.     "CT_AzimuthalEquidistant",
  1811.     "CT_EquidistantConic",
  1812.     "CT_Stereographic",
  1813.     "CT_PolarStereographic",
  1814.     "CT_ObliqueStereographic",
  1815.     "CT_Equirectangular",
  1816.     "CT_CassiniSoldner",
  1817.     "CT_Gnomonic",
  1818.     "CT_MillerCylindrical",
  1819.     "CT_Orthographic",
  1820.     "CT_Polyconic",
  1821.     "CT_Robinson",
  1822.     "CT_Sinusoidal",
  1823.     "CT_VanDerGrinten",
  1824.     "CT_NewZealandMapGrid",
  1825.     "CT_TransvMercator_SouthOriented"
  1826. };
  1827.  
  1828. const char *const ff_tiff_vert_cs_codes[] = {
  1829.     "VertCS_Airy_1830_ellipsoid",
  1830.     "VertCS_Airy_Modified_1849_ellipsoid",
  1831.     "VertCS_ANS_ellipsoid",
  1832.     "VertCS_Bessel_1841_ellipsoid",
  1833.     "VertCS_Bessel_Modified_ellipsoid",
  1834.     "VertCS_Bessel_Namibia_ellipsoid",
  1835.     "VertCS_Clarke_1858_ellipsoid",
  1836.     "VertCS_Clarke_1866_ellipsoid",
  1837.     "VertCS_Clarke_1880_Benoit_ellipsoid",
  1838.     "VertCS_Clarke_1880_IGN_ellipsoid",
  1839.     "VertCS_Clarke_1880_RGS_ellipsoid",
  1840.     "VertCS_Clarke_1880_Arc_ellipsoid",
  1841.     "VertCS_Clarke_1880_SGA_1922_ellipsoid",
  1842.     "VertCS_Everest_1830_1937_Adjustment_ellipsoid",
  1843.     "VertCS_Everest_1830_1967_Definition_ellipsoid",
  1844.     "VertCS_Everest_1830_1975_Definition_ellipsoid",
  1845.     "VertCS_Everest_1830_Modified_ellipsoid",
  1846.     "VertCS_GRS_1980_ellipsoid",
  1847.     "VertCS_Helmert_1906_ellipsoid",
  1848.     "VertCS_INS_ellipsoid",
  1849.     "VertCS_International_1924_ellipsoid",
  1850.     "VertCS_International_1967_ellipsoid",
  1851.     "VertCS_Krassowsky_1940_ellipsoid",
  1852.     "VertCS_NWL_9D_ellipsoid",
  1853.     "VertCS_NWL_10D_ellipsoid",
  1854.     "VertCS_Plessis_1817_ellipsoid",
  1855.     "VertCS_Struve_1860_ellipsoid",
  1856.     "VertCS_War_Office_ellipsoid",
  1857.     "VertCS_WGS_84_ellipsoid",
  1858.     "VertCS_GEM_10C_ellipsoid",
  1859.     "VertCS_OSU86F_ellipsoid",
  1860.     "VertCS_OSU91A_ellipsoid"
  1861. };
  1862.  
  1863. const char *const ff_tiff_ortho_vert_cs_codes[] = {
  1864.     "VertCS_Newlyn",
  1865.     "VertCS_North_American_Vertical_Datum_1929",
  1866.     "VertCS_North_American_Vertical_Datum_1988",
  1867.     "VertCS_Yellow_Sea_1956",
  1868.     "VertCS_Baltic_Sea",
  1869.     "VertCS_Caspian_Sea"
  1870. };
  1871.