Index: /trunk/src/org/openstreetmap/josm/data/imagery/ImageryInfo.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/imagery/ImageryInfo.java	(revision 9612)
+++ /trunk/src/org/openstreetmap/josm/data/imagery/ImageryInfo.java	(revision 9613)
@@ -219,6 +219,6 @@
         @pref String icon;
         @pref String description;
-        @pref Map<String, String> noTileHeaders;
-        @pref Map<String, String> noTileChecksums;
+        @pref Map<String, List<String>> noTileHeaders;
+        @pref Map<String, List<String>> noTileChecksums;
         @pref int tileSize = OsmMercator.DEFAUL_TILE_SIZE;
         @pref Map<String, String> metadataHeaders;
@@ -976,12 +976,12 @@
      *
      * @param noTileHeaders Map of &lt;header name, header value&gt; which will be treated as "no tile at this zoom level"
-     * @since 8344
-     */
-    public void setNoTileHeaders(Map<String, String> noTileHeaders) {
+     * @since 9611
+     */
+    public void setNoTileHeaders(Map<String, List<String>> noTileHeaders) {
        this.noTileHeaders = noTileHeaders;
     }
 
     @Override
-    public Map<String, String> getNoTileHeaders() {
+    public Map<String, List<String>> getNoTileHeaders() {
         return noTileHeaders;
     }
@@ -992,12 +992,12 @@
      *
      * @param noTileChecksums Map of &lt;checksum type, checksum value&gt; which will be treated as "no tile at this zoom level"
-     * @since 9610
-     */
-    public void setNoTileChecksums(Map<String, String> noTileChecksums) {
+     * @since 9611
+     */
+    public void setNoTileChecksums(Map<String, List<String>> noTileChecksums) {
        this.noTileChecksums = noTileChecksums;
     }
 
     @Override
-    public Map<String, String> getNoTileChecksums() {
+    public Map<String, List<String>> getNoTileChecksums() {
         return noTileChecksums;
     }
Index: /trunk/src/org/openstreetmap/josm/io/imagery/ImageryReader.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/io/imagery/ImageryReader.java	(revision 9612)
+++ /trunk/src/org/openstreetmap/josm/io/imagery/ImageryReader.java	(revision 9613)
@@ -94,6 +94,6 @@
         private String lang;
         private List<String> projections;
-        private Map<String, String> noTileHeaders;
-        private Map<String, String> noTileChecksums;
+        private Map<String, List<String> > noTileHeaders;
+        private Map<String, List<String> > noTileChecksums;
         private Map<String, String> metadataHeaders;
 
@@ -172,8 +172,24 @@
                     newState = State.PROJECTIONS;
                 } else if ("no-tile-header".equals(qName)) {
-                    noTileHeaders.put(atts.getValue("name"), atts.getValue("value"));
+                    String name = atts.getValue("name");
+                    List<String> l;
+                    if (noTileHeaders.containsKey(name)) {
+                        l = noTileHeaders.get(name);
+                    } else {
+                        l = new ArrayList<String>();
+                        noTileHeaders.put(atts.getValue("name"), l);
+                    }
+                    l.add(atts.getValue("value"));
                     newState = State.NO_TILE;
                 } else if ("no-tile-checksum".equals(qName)) {
-                    noTileChecksums.put(atts.getValue("type"), atts.getValue("value"));
+                    String type = atts.getValue("type");
+                    List<String> l;
+                    if (noTileChecksums.containsKey(type)) {
+                        l = noTileChecksums.get(type);
+                    } else {
+                        l = new ArrayList<String>();
+                        noTileChecksums.put(type, l);
+                    }
+                    l.add(atts.getValue("value"));
                     newState = State.NO_TILESUM;
                 } else if ("metadata-header".equals(qName)) {
