@loaders.gl/wms 3.3.0-alpha.10 → 3.3.0-alpha.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/dist/dist.min.js +3487 -33
  2. package/dist/es5/gml-loader.js +54 -0
  3. package/dist/es5/gml-loader.js.map +1 -0
  4. package/dist/es5/index.js +31 -3
  5. package/dist/es5/index.js.map +1 -1
  6. package/dist/es5/lib/data-sources/image-data-source.js.map +1 -1
  7. package/dist/es5/lib/data-sources/{wms-data-source.js → wms-service.js} +182 -65
  8. package/dist/es5/lib/data-sources/wms-service.js.map +1 -0
  9. package/dist/es5/lib/gml/parse-gml.js +416 -0
  10. package/dist/es5/lib/gml/parse-gml.js.map +1 -0
  11. package/dist/es5/lib/wfs/parse-wfs.js +43 -0
  12. package/dist/es5/lib/wfs/parse-wfs.js.map +1 -0
  13. package/dist/es5/lib/wfs/wfs-types.js +2 -0
  14. package/dist/es5/lib/wfs/wfs-types.js.map +1 -0
  15. package/dist/es5/lib/{parse-wms.js → wms/parse-wms.js} +33 -2
  16. package/dist/es5/lib/wms/parse-wms.js.map +1 -0
  17. package/dist/es5/{wms-types.js → lib/wms/wms-types.js} +0 -0
  18. package/dist/es5/lib/wms/wms-types.js.map +1 -0
  19. package/dist/es5/lib/wmts/parse-wmts.js +43 -0
  20. package/dist/es5/lib/wmts/parse-wmts.js.map +1 -0
  21. package/dist/es5/lib/wmts/wmts-types.js +2 -0
  22. package/dist/es5/lib/wmts/wmts-types.js.map +1 -0
  23. package/dist/es5/wcs-capabilities-loader.js +54 -0
  24. package/dist/es5/wcs-capabilities-loader.js.map +1 -0
  25. package/dist/es5/wfs-capabilities-loader.js +54 -0
  26. package/dist/es5/wfs-capabilities-loader.js.map +1 -0
  27. package/dist/es5/wms-capabilities-loader.js +2 -2
  28. package/dist/es5/wms-capabilities-loader.js.map +1 -1
  29. package/dist/es5/wms-error-loader.js +54 -0
  30. package/dist/es5/wms-error-loader.js.map +1 -0
  31. package/dist/es5/wms-feature-info-loader.js +1 -1
  32. package/dist/es5/wms-feature-info-loader.js.map +1 -1
  33. package/dist/es5/wms-layer-description-loader.js +3 -3
  34. package/dist/es5/wms-layer-description-loader.js.map +1 -1
  35. package/dist/es5/wmts-capabilities-loader.js +54 -0
  36. package/dist/es5/wmts-capabilities-loader.js.map +1 -0
  37. package/dist/esm/gml-loader.js +25 -0
  38. package/dist/esm/gml-loader.js.map +1 -0
  39. package/dist/esm/index.js +8 -1
  40. package/dist/esm/index.js.map +1 -1
  41. package/dist/esm/lib/data-sources/image-data-source.js.map +1 -1
  42. package/dist/esm/lib/data-sources/wms-service.js +156 -0
  43. package/dist/esm/lib/data-sources/wms-service.js.map +1 -0
  44. package/dist/esm/lib/gml/parse-gml.js +348 -0
  45. package/dist/esm/lib/gml/parse-gml.js.map +1 -0
  46. package/dist/esm/lib/wfs/parse-wfs.js +32 -0
  47. package/dist/esm/lib/wfs/parse-wfs.js.map +1 -0
  48. package/dist/esm/lib/wfs/wfs-types.js +2 -0
  49. package/dist/esm/lib/wfs/wfs-types.js.map +1 -0
  50. package/dist/esm/lib/{parse-wms.js → wms/parse-wms.js} +31 -2
  51. package/dist/esm/lib/wms/parse-wms.js.map +1 -0
  52. package/dist/esm/{wms-types.js → lib/wms/wms-types.js} +0 -0
  53. package/dist/esm/lib/wms/wms-types.js.map +1 -0
  54. package/dist/esm/lib/wmts/parse-wmts.js +32 -0
  55. package/dist/esm/lib/wmts/parse-wmts.js.map +1 -0
  56. package/dist/esm/lib/wmts/wmts-types.js +2 -0
  57. package/dist/esm/lib/wmts/wmts-types.js.map +1 -0
  58. package/dist/esm/wcs-capabilities-loader.js +25 -0
  59. package/dist/esm/wcs-capabilities-loader.js.map +1 -0
  60. package/dist/esm/wfs-capabilities-loader.js +25 -0
  61. package/dist/esm/wfs-capabilities-loader.js.map +1 -0
  62. package/dist/esm/wms-capabilities-loader.js +2 -2
  63. package/dist/esm/wms-capabilities-loader.js.map +1 -1
  64. package/dist/esm/wms-error-loader.js +25 -0
  65. package/dist/esm/wms-error-loader.js.map +1 -0
  66. package/dist/esm/wms-feature-info-loader.js +1 -1
  67. package/dist/esm/wms-feature-info-loader.js.map +1 -1
  68. package/dist/esm/wms-layer-description-loader.js +3 -3
  69. package/dist/esm/wms-layer-description-loader.js.map +1 -1
  70. package/dist/esm/wmts-capabilities-loader.js +25 -0
  71. package/dist/esm/wmts-capabilities-loader.js.map +1 -0
  72. package/package.json +15 -5
  73. package/src/gml-loader.ts +40 -0
  74. package/src/index.ts +23 -4
  75. package/src/lib/data-sources/image-data-source.ts +1 -2
  76. package/src/lib/data-sources/wms-service.ts +313 -0
  77. package/src/lib/gml/parse-gml.ts +500 -0
  78. package/src/lib/wfs/parse-wfs.ts +39 -0
  79. package/src/lib/wfs/wfs-types.ts +78 -0
  80. package/src/lib/{parse-wms.ts → wms/parse-wms.ts} +41 -4
  81. package/src/{wms-types.ts → lib/wms/wms-types.ts} +3 -1
  82. package/src/lib/wmts/parse-wmts.ts +39 -0
  83. package/src/lib/wmts/wmts-types.ts +77 -0
  84. package/src/wcs-capabilities-loader.ts +40 -0
  85. package/src/wfs-capabilities-loader.ts +40 -0
  86. package/src/wms-capabilities-loader.ts +1 -1
  87. package/src/wms-error-loader.ts +40 -0
  88. package/src/wms-feature-info-loader.ts +1 -1
  89. package/src/wms-layer-description-loader.ts +4 -4
  90. package/src/wmts-capabilities-loader.ts +40 -0
  91. package/dist/es5/lib/data-sources/wms-data-source.js.map +0 -1
  92. package/dist/es5/lib/parse-wms.js.map +0 -1
  93. package/dist/es5/wms-types.js.map +0 -1
  94. package/dist/esm/lib/data-sources/wms-data-source.js +0 -70
  95. package/dist/esm/lib/data-sources/wms-data-source.js.map +0 -1
  96. package/dist/esm/lib/parse-wms.js.map +0 -1
  97. package/dist/esm/wms-types.js.map +0 -1
  98. package/src/lib/data-sources/wms-data-source.ts +0 -99
@@ -1 +0,0 @@
1
- {"version":3,"file":"wms-types.js","names":[],"sources":["../../src/wms-types.ts"],"sourcesContent":["// loaders.gl, MIT licenses\n\n/** All capabilities of a WMS service - response to a WMS `GetCapabilities` data structure extracted from XML */\nexport type WMSCapabilities = {\n name: string;\n title?: string;\n abstract?: string;\n keywords: string[];\n layer: {\n name: string;\n title?: string;\n srs?: string[];\n boundingBox?: [number, number, number, number];\n layers: WMSLayer[];\n };\n requests: Record<string, WMSRequest>;\n raw: Record<string, unknown>;\n};\n\nexport type WMSLayer = {\n name: string;\n title?: string;\n srs?: string[];\n boundingBox?: [number, number, number, number];\n layers: WMSLayer[];\n};\n\nexport type WMSRequest = {\n name: string;\n mimeTypes: string[];\n};\n\n// GetFeatureInfo\n\n/** WMS Feature info - response to a WMS `GetFeatureInfo` request */\nexport type WMSFeatureInfo = {\n features: WMSFeature[];\n};\n\nexport type WMSFeature = {\n attributes: Record<string, number | string>;\n};\n\n// DescribeLayer\n\n/** Layer description - response to a WMS `DescribeLayer` request */\nexport type WMSLayerDescription = {\n // layers: {}[];\n};\n\n// // WIP\n\n// export type GetCapabilities = {\n// request: 'GetCapabilities';\n// format: string[];\n// dcpType: unknown;\n// };\n\n// export type GetMap = {\n// request: 'GetMap';\n// format: string[];\n// dcpType: unknown;\n// };\n\n// export type GetFeatureInfo = {\n// request: 'GetFeatureInfo';\n// format: string[];\n// dcpType: unknown;\n// };\n\n// export type GetLegendGraphic = {\n// request: 'GetLegendGraphic';\n// format: string[];\n// dcpType: unknown;\n// };\n\n// export type GetStyles = {\n// request: 'GetStyles';\n// format: string[];\n// dcpType: unknown;\n// };\n\n/**\n * <EX_GeographicBoundingBox>\n * <westBoundLongitude>-180</westBoundLongitude>\n * <eastBoundLongitude>180</eastBoundLongitude>\n * <southBoundLatitude>-65</southBoundLatitude>\n * <northBoundLatitude>75</northBoundLatitude>\n * </EX_GeographicBoundingBox>\n * <BoundingBox CRS=\"EPSG:4326\"\n * minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n */\nexport type Layer = {\n name: string; // e.g. DMSP-Global-Composites-Version-4\n title: string; // e.g. DMSP-Global-Composites-Version-4</Title>\n abstract?: string; // DMSP-Global-Composites-Version-4</Abstract>\n crs: string; // e.g. EPSG:4326</CRS>\n queryable?: boolean;\n opaque?: boolean;\n cascaded?: boolean;\n geographicBoundingBox: number[];\n boundingBox: number[];\n boundingBoxCRS: string;\n layers: Layer[];\n};\n\n/**\n * <Style>\n * <Name>default</Name>\n * <Title>default</Title>\n * <LegendURL width=\"89\" height=\"21\">\n * <Format>image/png</Format>\n * <OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:type=\"simple\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?version=1.3.0&amp;service=WMS&amp;request=GetLegendGraphic&amp;sld_version=1.1.0&amp;layer=countries&amp;format=image/png&amp;STYLE=default\"/>\n * </LegendURL>\n * </Style>\n */\nexport type Style = {\n name: string; // e.g. DMSP-Global-Composites-Version-4\n title: string; // e.g. DMSP-Global-Composites-Version-4</Title>\n legendUrl?: {\n width: number;\n height: number;\n format: string;\n onlineResource: string;\n };\n};\n\n// export type Capability = GetCapabilities | GetMap;\n\nexport type WMSService = {\n rawData: unknown;\n name: string;\n title: string;\n onlineResource?: string;\n contactInformation?: string;\n maxWidth?: number;\n maxHeight?: number;\n capabilities: {\n // getCapabilities: GetCapabilities;\n // getMap: GetMap;\n // getFeatureInfo?: GetFeatureInfo;\n };\n\n untypedData: unknown; // The raw, untyped JSON converted from XML\n};\n\n/* \n<Capability>\n <Request>\n <GetCapabilities>\n <Format>text/xml</Format>\n <DCPType>\n <HTTP>\n <Get><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Get>\n <Post><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Post>\n </HTTP>\n </DCPType>\n </GetCapabilities>\n <GetMap>\n <Format>image/png</Format>\n <Format>image/tiff</Format>\n <Format>image/jpeg</Format>\n <Format>image/png; mode=8bit</Format>\n <Format>application/x-pdf</Format>\n <Format>image/svg+xml</Format>\n <DCPType>\n <HTTP>\n <Get><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Get>\n <Post><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Post>\n </HTTP>\n </DCPType>\n </GetMap>\n <GetFeatureInfo>\n <Format>text/plain</Format>\n <Format>application/vnd.ogc.gml</Format>\n <DCPType>\n <HTTP>\n <Get><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Get>\n <Post><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Post>\n </HTTP>\n </DCPType>\n </GetFeatureInfo>\n <sld:DescribeLayer>\n <Format>text/xml</Format>\n <DCPType>\n <HTTP>\n <Get><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Get>\n <Post><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Post>\n </HTTP>\n </DCPType>\n </sld:DescribeLayer>\n <sld:GetLegendGraphic>\n <Format>image/png</Format>\n <Format>image/jpeg</Format>\n <Format>image/png; mode=8bit</Format>\n <DCPType>\n <HTTP>\n <Get><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Get>\n <Post><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Post>\n </HTTP>\n </DCPType>\n </sld:GetLegendGraphic>\n <ms:GetStyles>\n <Format>text/xml</Format>\n <DCPType>\n <HTTP>\n <Get><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Get>\n <Post><OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?\"/></Post>\n </HTTP>\n </DCPType>\n </ms:GetStyles>\n </Request>\n <Exception>\n <Format>XML</Format>\n <Format>INIMAGE</Format>\n <Format>BLANK</Format>\n </Exception>\n <sld:UserDefinedSymbolization SupportSLD=\"1\" UserLayer=\"0\" UserStyle=\"1\" RemoteWFS=\"0\" InlineFeature=\"0\" RemoteWCS=\"0\"/>\n <Layer>\n <Name>DMSP-Global-Composites-Version-4</Name>\n <Title>DMSP-Global-Composites-Version-4</Title>\n <Abstract>DMSP-Global-Composites-Version-4</Abstract>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>countries</Name>\n <Title>Countries</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-90</southBoundLatitude>\n <northBoundLatitude>83.6236</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-90\" miny=\"-180\" maxx=\"83.6236\" maxy=\"180\" />\n <Style>\n <Name>default</Name>\n <Title>default</Title>\n <LegendURL width=\"89\" height=\"21\">\n <Format>image/png</Format>\n <OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:type=\"simple\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?version=1.3.0&amp;service=WMS&amp;request=GetLegendGraphic&amp;sld_version=1.1.0&amp;layer=countries&amp;format=image/png&amp;STYLE=default\"/>\n </LegendURL>\n </Style>\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>adminboundaries</Name>\n <Title>Administrative Boundaries</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-90</southBoundLatitude>\n <northBoundLatitude>83.6236</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-90\" miny=\"-180\" maxx=\"83.6236\" maxy=\"180\" />\n <Style>\n <Name>default</Name>\n <Title>default</Title>\n <LegendURL width=\"65\" height=\"21\">\n <Format>image/png</Format>\n <OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:type=\"simple\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?version=1.3.0&amp;service=WMS&amp;request=GetLegendGraphic&amp;sld_version=1.1.0&amp;layer=adminboundaries&amp;format=image/png&amp;STYLE=default\"/>\n </LegendURL>\n </Style>\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>eez</Name>\n <Title>EEZ Boundaries</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-179.999</westBoundLongitude>\n <eastBoundLongitude>179.999</eastBoundLongitude>\n <southBoundLatitude>-85.4703</southBoundLatitude>\n <northBoundLatitude>87.0239</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-85.4703\" miny=\"-179.999\" maxx=\"87.0239\" maxy=\"179.999\" />\n <Style>\n <Name>default</Name>\n <Title>default</Title>\n <LegendURL width=\"53\" height=\"21\">\n <Format>image/png</Format>\n <OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:type=\"simple\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?version=1.3.0&amp;service=WMS&amp;request=GetLegendGraphic&amp;sld_version=1.1.0&amp;layer=eez&amp;format=image/png&amp;STYLE=default\"/>\n </LegendURL>\n </Style>\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>cities</Name>\n <Title>Cities</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-176.152</westBoundLongitude>\n <eastBoundLongitude>179.222</eastBoundLongitude>\n <southBoundLatitude>-54.792</southBoundLatitude>\n <northBoundLatitude>78.2</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-54.792\" miny=\"-176.152\" maxx=\"78.2\" maxy=\"179.222\" />\n <Style>\n <Name>default</Name>\n <Title>default</Title>\n <LegendURL width=\"71\" height=\"21\">\n <Format>image/png</Format>\n <OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:type=\"simple\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?version=1.3.0&amp;service=WMS&amp;request=GetLegendGraphic&amp;sld_version=1.1.0&amp;layer=cities&amp;format=image/png&amp;STYLE=default\"/>\n </LegendURL>\n </Style>\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>citieslabeled</Name>\n <Title>Cities With Labels</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-176.152</westBoundLongitude>\n <eastBoundLongitude>179.222</eastBoundLongitude>\n <southBoundLatitude>-54.792</southBoundLatitude>\n <northBoundLatitude>78.2</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-54.792\" miny=\"-176.152\" maxx=\"78.2\" maxy=\"179.222\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>land</Name>\n <Title>Land Sea Mask</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-90</southBoundLatitude>\n <northBoundLatitude>83.6236</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-90\" miny=\"-180\" maxx=\"83.6236\" maxy=\"180\" />\n <Style>\n <Name>default</Name>\n <Title>default</Title>\n <LegendURL width=\"59\" height=\"21\">\n <Format>image/png</Format>\n <OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:type=\"simple\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?version=1.3.0&amp;service=WMS&amp;request=GetLegendGraphic&amp;sld_version=1.1.0&amp;layer=land&amp;format=image/png&amp;STYLE=default\"/>\n </LegendURL>\n </Style>\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>LandSeaMask</Name>\n <Title>LandSeaMask</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-90</southBoundLatitude>\n <northBoundLatitude>90</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-90\" miny=\"-180\" maxx=\"90\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>Rivers</Name>\n <Title>Rivers</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-164.887</westBoundLongitude>\n <eastBoundLongitude>160.764</eastBoundLongitude>\n <southBoundLatitude>-36.9694</southBoundLatitude>\n <northBoundLatitude>71.3925</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-36.9694\" miny=\"-164.887\" maxx=\"71.3925\" maxy=\"160.764\" />\n <Style>\n <Name>default</Name>\n <Title>default</Title>\n <LegendURL width=\"71\" height=\"21\">\n <Format>image/png</Format>\n <OnlineResource xmlns:xlink=\"http://www.w3.org/1999/xlink\" xlink:type=\"simple\" xlink:href=\"http://mapserver.ngdc.noaa.gov/cgi-bin/public/gcv4/?version=1.3.0&amp;service=WMS&amp;request=GetLegendGraphic&amp;sld_version=1.1.0&amp;layer=Rivers&amp;format=image/png&amp;STYLE=default\"/>\n </LegendURL>\n </Style>\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101992.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F101992.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101992.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F101992.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101992.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F101992.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101992.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F101992.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101993.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F101993.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101993.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F101993.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101993.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F101993.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101993.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F101993.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101994.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F101994.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101994.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F101994.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101994.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F101994.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F101994.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F101994.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121994.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F121994.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121994.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F121994.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121994.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F121994.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121994.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F121994.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121995.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F121995.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121995.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F121995.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121995.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F121995.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121995.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F121995.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121996.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F121996.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121996.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F121996.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121996.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F121996.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121996.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F121996.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121997.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F121997.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121997.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F121997.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121997.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F121997.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121997.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F121997.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121998.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F121998.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121998.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F121998.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121998.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F121998.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121998.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F121998.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121999.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F121999.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121999.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F121999.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121999.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F121999.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F121999.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F121999.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141997.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F141997.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141997.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F141997.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141997.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F141997.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141997.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F141997.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141998.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F141998.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141998.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F141998.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141998.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F141998.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141998.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F141998.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141999.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F141999.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141999.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F141999.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141999.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F141999.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F141999.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F141999.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142000.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F142000.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142000.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F142000.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142000.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F142000.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142000.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F142000.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142001.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F142001.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142001.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F142001.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142001.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F142001.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142001.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F142001.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142002.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F142002.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142002.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F142002.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142002.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F142002.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142002.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F142002.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142003.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F142003.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142003.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F142003.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142003.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F142003.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F142003.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F142003.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152000.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F152000.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152000.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F152000.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152000.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F152000.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152000.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F152000.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152001.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F152001.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152001.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F152001.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152001.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F152001.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152001.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F152001.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152002.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F152002.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152002.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F152002.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152002.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F152002.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152002.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F152002.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152003.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F152003.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152003.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F152003.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152003.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F152003.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152003.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F152003.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152004.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F152004.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152004.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F152004.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152004.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F152004.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152004.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F152004.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152005.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F152005.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152005.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F152005.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152005.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F152005.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152005.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F152005.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152006.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F152006.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152006.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F152006.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152006.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F152006.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152006.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F152006.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152007.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F152007.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152007.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F152007.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152007.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F152007.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152007.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F152007.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152008.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F152008.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152008.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F152008.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152008.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F152008.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F152008.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F152008.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162004.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F162004.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162004.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F162004.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162004.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F162004.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162004.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F162004.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162005.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F162005.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162005.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F162005.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162005.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F162005.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162005.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F162005.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162006.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F162006.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162006.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F162006.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162006.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F162006.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162006.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F162006.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162007.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F162007.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162007.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F162007.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162007.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F162007.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162007.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F162007.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162008.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F162008.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162008.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F162008.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162008.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F162008.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162008.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F162008.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162009.v4b.avg_lights_x_pct.lzw.tif</Name>\n <Title>F162009.v4b.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162009.v4b_web.avg_vis.lzw.tif</Name>\n <Title>F162009.v4b_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162009.v4b_web.cf_cvg.lzw.tif</Name>\n <Title>F162009.v4b_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F162009.v4b_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F162009.v4b_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F182010.v4c.avg_lights_x_pct.lzw.tif</Name>\n <Title>F182010.v4c.avg_lights_x_pct.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F182010.v4c_web.avg_vis.lzw.tif</Name>\n <Title>F182010.v4c_web.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F182010.v4c_web.cf_cvg.lzw.tif</Name>\n <Title>F182010.v4c_web.cf_cvg.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n <Layer queryable=\"0\" opaque=\"0\" cascaded=\"0\">\n <Name>F182010.v4c_web.stable_lights.avg_vis.lzw.tif</Name>\n <Title>F182010.v4c_web.stable_lights.avg_vis.lzw.tif</Title>\n <CRS>EPSG:4326</CRS>\n <EX_GeographicBoundingBox>\n <westBoundLongitude>-180</westBoundLongitude>\n <eastBoundLongitude>180</eastBoundLongitude>\n <southBoundLatitude>-65</southBoundLatitude>\n <northBoundLatitude>75</northBoundLatitude>\n </EX_GeographicBoundingBox>\n <BoundingBox CRS=\"EPSG:4326\"\n minx=\"-65\" miny=\"-180\" maxx=\"75\" maxy=\"180\" />\n </Layer>\n </Layer>\n</Capability>\n</WMS_Capabilities>\n*/\n"],"mappings":""}
@@ -1,99 +0,0 @@
1
- // loaders.gl, MIT license
2
-
3
- import type {WMSCapabilities, WMSFeatureInfo, WMSLayerDescription} from '@loaders.gl/wms';
4
- import {
5
- WMSCapabilitiesLoader,
6
- WMSFeatureInfoLoader,
7
- WMSLayerDescriptionLoader
8
- } from '@loaders.gl/wms';
9
- import {ImageLoader, ImageType} from '@loaders.gl/images';
10
- import {LoaderOptions} from '@loaders.gl/loader-utils';
11
-
12
- // import {ImageDataSource} from './image-data-sources';
13
-
14
- type FetchLike = (url: string, options?: RequestInit) => Promise<Response>;
15
-
16
- export type WMSDataSourceProps = {
17
- url: string;
18
- loadOptions?: LoaderOptions;
19
- fetch?: typeof fetch | FetchLike;
20
- };
21
-
22
- export class WMSDataSource {
23
- // implements ImageDataSource {
24
- url: string;
25
- loadOptions: LoaderOptions;
26
- fetch: typeof fetch | FetchLike;
27
-
28
- constructor(props: WMSDataSourceProps) {
29
- this.url = props.url;
30
- this.loadOptions = props.loadOptions || {};
31
- this.fetch = props.fetch || fetch;
32
- }
33
-
34
- async getCapabilities(options: {parameters?: Record<string, unknown>}): Promise<WMSCapabilities> {
35
- const url = this.getUrl({request: 'GetCapabilities', ...options});
36
- const response = await this.fetch(url, this.loadOptions);
37
- const arrayBuffer = await response.arrayBuffer();
38
- return await WMSCapabilitiesLoader.parse(arrayBuffer, this.loadOptions);
39
- }
40
-
41
- async getImage(options: {
42
- boundingBox;
43
- width;
44
- height;
45
- layers: string[];
46
- parameters?: Record<string, unknown>;
47
- }): Promise<ImageType> {
48
- const url = this.getUrl({request: 'GetMap', ...options});
49
- const response = await this.fetch(url, this.loadOptions);
50
- const arrayBuffer = await response.arrayBuffer();
51
- return await ImageLoader.parse(arrayBuffer, this.loadOptions);
52
- }
53
-
54
- async getFeatureInfo(options: {
55
- layers: string[];
56
- parameters?: Record<string, unknown>;
57
- }): Promise<WMSFeatureInfo> {
58
- const url = this.getUrl({request: 'GetFeatureInfo', ...options});
59
- const response = await this.fetch(url, this.loadOptions);
60
- const arrayBuffer = await response.arrayBuffer();
61
- return await WMSFeatureInfoLoader.parse(arrayBuffer, this.loadOptions);
62
- }
63
-
64
- async getLayerInfo(options: {
65
- layers: string[];
66
- parameters?: Record<string, unknown>;
67
- }): Promise<WMSLayerDescription> {
68
- const url = this.getUrl({request: 'GetLayerInfo', ...options});
69
- const response = await this.fetch(url, this.loadOptions);
70
- const arrayBuffer = await response.arrayBuffer();
71
- return await WMSLayerDescriptionLoader.parse(arrayBuffer, this.loadOptions);
72
- }
73
-
74
- async getLegendImage(options: {
75
- layers: string[];
76
- parameters?: Record<string, unknown>;
77
- }): Promise<ImageType> {
78
- const url = this.getUrl({request: 'GetLegendImage', ...options});
79
- const response = await this.fetch(url, this.loadOptions);
80
- const arrayBuffer = await response.arrayBuffer();
81
- return await ImageLoader.parse(arrayBuffer, this.loadOptions);
82
- }
83
-
84
- /**
85
- * @note protected, since perhaps getUrl may need to be overridden to handle certain backends?
86
- * @note if override is common, maybe add a callback prop?
87
- * */
88
- protected getUrl(options: {
89
- request: string;
90
- layers?: string[];
91
- parameters?: Record<string, unknown>;
92
- }): string {
93
- let url = `${this.url}?REQUEST=${options.request}`;
94
- if (options.layers?.length) {
95
- url += `&LAYERS=[${options.layers.join(',')}]`;
96
- }
97
- return url;
98
- }
99
- }