Index: applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/EdigeoFileGEN.java
===================================================================
--- applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/EdigeoFileGEN.java	(revision 33650)
+++ applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/EdigeoFileGEN.java	(revision 33651)
@@ -7,5 +7,8 @@
 import java.nio.file.Path;
 
+import org.openstreetmap.josm.data.Bounds;
+import org.openstreetmap.josm.data.coor.EastNorth;
 import org.openstreetmap.josm.data.osm.DataSet;
+import org.openstreetmap.josm.data.projection.Projection;
 import org.openstreetmap.josm.plugins.fr.cadastre.edigeo.EdigeoFileGEN.GenBlock;
 import org.openstreetmap.josm.plugins.fr.cadastre.edigeo.EdigeoFileTHF.ChildBlock;
@@ -27,6 +30,6 @@
      */
     public static class GeoBounds extends GenBlock {
-        /** CM1 */ String min = "";
-        /** CM2 */ String max = "";
+        /** CM1 */ EastNorth min;
+        /** CM2 */ EastNorth max;
 
         GeoBounds(Lot lot, String type) {
@@ -37,6 +40,6 @@
         void processRecord(EdigeoRecord r) {
             switch (r.name) {
-            case "CM1": safeGet(r, s -> min += s); break;
-            case "CM2": safeGet(r, s -> max += s); break;
+            case "CM1": min = safeGetEastNorth(r); break;
+            case "CM2": max = safeGetEastNorth(r); break;
             default:
                 super.processRecord(r);
@@ -48,5 +51,5 @@
          * @return the minimal coordinates
          */
-        public final String getMinCm1() {
+        public final EastNorth getMinCm1() {
             return min;
         }
@@ -56,6 +59,26 @@
          * @return the maximal coordinates
          */
-        public final String getMaxCm2() {
+        public final EastNorth getMaxCm2() {
             return max;
+        }
+
+        /**
+         * Returns the bounds.
+         * @return the bounds
+         */
+        public Bounds getBounds() {
+/*
+            for (String s : Projections.getAllProjectionCodes()) {
+                Projection p = Projections.getProjectionByCode(s);
+                LatLon en = p.eastNorth2latlon(min);
+                double lat = en.lat();
+                double lon = en.lon();
+                if (43 <= lat && lat <= 44 && 1.38 <= lon && lon <= 1.45) {
+                    System.out.println(s + ": " + p);
+                }
+            }
+*/
+            Projection proj = lot.geo.getCoorReference().getProjection();
+            return new Bounds(proj.eastNorth2latlon(min), proj.eastNorth2latlon(max));
         }
     }
@@ -154,3 +177,11 @@
         return this;
     }
+
+    /**
+     * Returns the geographic bounds.
+     * @return the geographic bounds
+     */
+    public final GeoBounds getGeoBounds() {
+        return blocks.getInstances(GeoBounds.class).get(0);
+    }
 }
Index: applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/EdigeoFileTHF.java
===================================================================
--- applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/EdigeoFileTHF.java	(revision 33650)
+++ applications/editors/josm/plugins/cadastre-fr/src/org/openstreetmap/josm/plugins/fr/cadastre/edigeo/EdigeoFileTHF.java	(revision 33651)
@@ -444,4 +444,5 @@
         for (Lot lot : getLots()) {
             lot.readFiles(path, ds);
+            //ds.addDataSource(new DataSource(lot.gen.getGeoBounds().getBounds(), support.author));
         }
         return this;
