Index: applications/editors/josm/plugins/build.xml
===================================================================
--- applications/editors/josm/plugins/build.xml	(revision 28889)
+++ applications/editors/josm/plugins/build.xml	(revision 28891)
@@ -57,5 +57,4 @@
         <ant antfile="build.xml" target="dist" dir="native-password-manager"/>
         <ant antfile="build.xml" target="dist" dir="nearclick"/>
-        <ant antfile="build.xml" target="dist" dir="no_more_mapping"/>
         <ant antfile="build.xml" target="dist" dir="OpeningHoursEditor"/>
         <ant antfile="build.xml" target="dist" dir="opendata"/>
@@ -152,5 +151,4 @@
         <ant antfile="build.xml" target="clean" dir="native-password-manager"/>
         <ant antfile="build.xml" target="clean" dir="nearclick"/>
-        <ant antfile="build.xml" target="clean" dir="no_more_mapping"/>
         <ant antfile="build.xml" target="clean" dir="OpeningHoursEditor"/>
         <ant antfile="build.xml" target="clean" dir="opendata"/>
Index: applications/editors/josm/plugins/buildings_tools/build.xml
===================================================================
--- applications/editors/josm/plugins/buildings_tools/build.xml	(revision 28889)
+++ applications/editors/josm/plugins/buildings_tools/build.xml	(revision 28891)
@@ -32,5 +32,5 @@
     <property name="commit.message" value="BuildingTools: update to current JOSM"/>
     <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
-    <property name="plugin.main.version" value="5548"/>
+    <property name="plugin.main.version" value="5554"/>
     <!--
       ************************************************
Index: applications/editors/josm/plugins/buildings_tools/src/buildings_tools/BuildingsToolsPlugin.java
===================================================================
--- applications/editors/josm/plugins/buildings_tools/src/buildings_tools/BuildingsToolsPlugin.java	(revision 28889)
+++ applications/editors/josm/plugins/buildings_tools/src/buildings_tools/BuildingsToolsPlugin.java	(revision 28891)
@@ -5,5 +5,5 @@
 import org.openstreetmap.josm.data.coor.LatLon;
 import org.openstreetmap.josm.data.projection.Projection;
-import org.openstreetmap.josm.data.projection.ProjectionInfo;
+import org.openstreetmap.josm.data.projection.Projections;
 import org.openstreetmap.josm.gui.IconToggleButton;
 import org.openstreetmap.josm.gui.MainMenu;
@@ -13,5 +13,5 @@
 
 public class BuildingsToolsPlugin extends Plugin {
-    public static Projection proj = ProjectionInfo.getProjectionByCode("EPSG:3857"); // Mercator
+    public static Projection proj = Projections.getProjectionByCode("EPSG:3857"); // Mercator
 
     public static EastNorth latlon2eastNorth(LatLon p) {
Index: applications/editors/josm/plugins/importvec/build.xml
===================================================================
--- applications/editors/josm/plugins/importvec/build.xml	(revision 28889)
+++ applications/editors/josm/plugins/importvec/build.xml	(revision 28891)
@@ -32,5 +32,5 @@
     <property name="commit.message" value="Commit message"/>
     <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
-    <property name="plugin.main.version" value="5548"/>
+    <property name="plugin.main.version" value="5554"/>
     <!--
       ************************************************
Index: applications/editors/josm/plugins/importvec/src/org/openstreetmap/josm/plugins/importvec/ImportVectorAction.java
===================================================================
--- applications/editors/josm/plugins/importvec/src/org/openstreetmap/josm/plugins/importvec/ImportVectorAction.java	(revision 28889)
+++ applications/editors/josm/plugins/importvec/src/org/openstreetmap/josm/plugins/importvec/ImportVectorAction.java	(revision 28891)
@@ -30,5 +30,5 @@
 import org.openstreetmap.josm.data.osm.Way;
 import org.openstreetmap.josm.data.projection.Projection;
-import org.openstreetmap.josm.data.projection.ProjectionInfo;
+import org.openstreetmap.josm.data.projection.Projections;
 import org.openstreetmap.josm.gui.ExtendedDialog;
 import org.openstreetmap.josm.gui.PleaseWaitRunnable;
@@ -144,5 +144,5 @@
         }
 
-        Projection projection = ProjectionInfo.getProjectionByCode("EPSG:3857"); // Mercator
+        Projection projection = Projections.getProjectionByCode("EPSG:3857"); // Mercator
         EastNorth center;
         double scale;
Index: applications/editors/josm/plugins/opendata/build.xml
===================================================================
--- applications/editors/josm/plugins/opendata/build.xml	(revision 28889)
+++ applications/editors/josm/plugins/opendata/build.xml	(revision 28891)
@@ -28,5 +28,5 @@
     <property name="commit.message" value="Commit message"/>
     <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
-    <property name="plugin.main.version" value="5236"/>
+    <property name="plugin.main.version" value="5554"/>
     <!-- should not be necessary to change the following properties -->
     <property name="josm" location="../../core/dist/josm-custom.jar"/>
Index: applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/OdConstants.java
===================================================================
--- applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/OdConstants.java	(revision 28889)
+++ applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/OdConstants.java	(revision 28891)
@@ -22,8 +22,5 @@
 
 import org.openstreetmap.josm.actions.ExtensionFileFilter;
-import org.openstreetmap.josm.data.projection.BelgianLambert1972;
-import org.openstreetmap.josm.data.projection.BelgianLambert2008;
-import org.openstreetmap.josm.data.projection.Epsg4326;
-import org.openstreetmap.josm.data.projection.Lambert93;
+import org.openstreetmap.josm.data.projection.Projections;
 import org.openstreetmap.josm.plugins.opendata.core.io.LambertCC9ZonesProjectionPatterns;
 import org.openstreetmap.josm.plugins.opendata.core.io.ProjectionPatterns;
@@ -136,10 +133,10 @@
     
     public static final ProjectionPatterns PRJ_UNKNOWN = new ProjectionPatterns("");
-    public static final ProjectionPatterns PRJ_WGS84 = new ProjectionPatterns("GPS|WGS84|°décimaux", new Epsg4326());
-    public static final ProjectionPatterns PRJ_LAMBERT_93 = new ProjectionPatterns("LAMB93|L93", new Lambert93());
+    public static final ProjectionPatterns PRJ_WGS84 = new ProjectionPatterns("GPS|WGS84|°décimaux", Projections.getProjectionByCode("EPSG:4326"));
+    public static final ProjectionPatterns PRJ_LAMBERT_93 = new ProjectionPatterns("LAMB93|L93", Projections.getProjectionByCode("EPSG:2154"));
     public static final ProjectionPatterns PRJ_LAMBERT_CC_9_ZONES = new LambertCC9ZonesProjectionPatterns("LAMBZ|CC(42|43|44|45|46|47|48|49|50)");
 
-    public static final ProjectionPatterns PRJ_LAMBERT_1972 = new ProjectionPatterns("LAMB72|LAMB1972", new BelgianLambert1972());
-    public static final ProjectionPatterns PRJ_LAMBERT_2008 = new ProjectionPatterns("LAMB08|LAMB2008", new BelgianLambert2008());
+    public static final ProjectionPatterns PRJ_LAMBERT_1972 = new ProjectionPatterns("LAMB72|LAMB1972", Projections.getProjectionByCode("EPSG:31370"));
+    public static final ProjectionPatterns PRJ_LAMBERT_2008 = new ProjectionPatterns("LAMB08|LAMB2008", Projections.getProjectionByCode("EPSG:3812"));
 
     /**
Index: applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/datasets/fr/FrenchDataSetHandler.java
===================================================================
--- applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/datasets/fr/FrenchDataSetHandler.java	(revision 28889)
+++ applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/datasets/fr/FrenchDataSetHandler.java	(revision 28891)
@@ -27,8 +27,6 @@
 import org.openstreetmap.josm.data.osm.OsmPrimitive;
 import org.openstreetmap.josm.data.osm.Tag;
-import org.openstreetmap.josm.data.projection.Lambert;
 import org.openstreetmap.josm.data.projection.Projection;
-import org.openstreetmap.josm.data.projection.UTM;
-import org.openstreetmap.josm.data.projection.UTM.Hemisphere;
+import org.openstreetmap.josm.data.projection.Projections;
 import org.openstreetmap.josm.plugins.opendata.core.datasets.SimpleDataSetHandler;
 import org.openstreetmap.josm.plugins.opendata.core.io.tabular.DefaultCsvHandler;
@@ -41,13 +39,13 @@
 
 	protected static final Projection lambert93 = PRJ_LAMBERT_93.getProjection(); // France metropolitaine
-	protected static final UTM utm20 = new UTM(20, Hemisphere.North); // Guadeloupe, Martinique
-	protected static final UTM utm22 = new UTM(22, Hemisphere.North); // Guyane
-	protected static final UTM utm38 = new UTM(38, Hemisphere.South); // Mayotte
-	protected static final UTM utm40 = new UTM(40, Hemisphere.South); // Reunion
-	
-	protected static final Lambert[] lambert4Zones = new Lambert[4];
+	protected static final Projection utm20 = Projections.getProjectionByCode("EPSG:32620"); // UTM 20 N - Guadeloupe, Martinique
+	protected static final Projection utm22 = Projections.getProjectionByCode("EPSG:32622"); // UTM 22 N - Guyane
+	protected static final Projection utm38 = Projections.getProjectionByCode("EPSG:32738"); // UTM 38 S - Mayotte
+	protected static final Projection utm40 = Projections.getProjectionByCode("EPSG:32740"); // UTM 40 S - Reunion
+	
+	protected static final Projection[] lambert4Zones = new Projection[4];
 	static {
 		for (int i=0; i<lambert4Zones.length; i++) {
-			lambert4Zones[i] = new Lambert(i);
+			lambert4Zones[i] = Projections.getProjectionByCode("EPSG:"+Integer.toString(27561+i));
 		}
 	}
Index: applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/LambertCC9ZonesProjectionPatterns.java
===================================================================
--- applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/LambertCC9ZonesProjectionPatterns.java	(revision 28889)
+++ applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/LambertCC9ZonesProjectionPatterns.java	(revision 28891)
@@ -5,13 +5,13 @@
 import java.util.regex.Matcher;
 
-import org.openstreetmap.josm.data.projection.LambertCC9Zones;
 import org.openstreetmap.josm.data.projection.Projection;
+import org.openstreetmap.josm.data.projection.Projections;
 
 public class LambertCC9ZonesProjectionPatterns extends ProjectionPatterns {
 	
-	public static final LambertCC9Zones[] lambertCC9Zones = new LambertCC9Zones[9];
+	public static final Projection[] lambertCC9Zones = new Projection[9];
 	static {
 		for (int i=0; i<lambertCC9Zones.length; i++) {
-			lambertCC9Zones[i] = new LambertCC9Zones(i);
+			lambertCC9Zones[i] = Projections.getProjectionByCode("EPSG:"+Integer.toString(3942+i));
 		}
 	}
Index: applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/geographic/MifReader.java
===================================================================
--- applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/geographic/MifReader.java	(revision 28889)
+++ applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/geographic/MifReader.java	(revision 28891)
@@ -36,8 +36,6 @@
 import org.openstreetmap.josm.data.osm.RelationMember;
 import org.openstreetmap.josm.data.osm.Way;
-import org.openstreetmap.josm.data.projection.Epsg4326;
-import org.openstreetmap.josm.data.projection.Lambert93;
-import org.openstreetmap.josm.data.projection.LambertCC9Zones;
 import org.openstreetmap.josm.data.projection.Projection;
+import org.openstreetmap.josm.data.projection.Projections;
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
 import org.openstreetmap.josm.plugins.opendata.core.datasets.AbstractDataSetHandler;
@@ -123,5 +121,5 @@
 
 			if (proj == Longitude_Latitude) {
-				josmProj = new Epsg4326();
+				josmProj = Projections.getProjectionByCode("EPSG:4326"); // WGS 84
 				return;
 			}
@@ -238,9 +236,9 @@
 					// This sounds good for Lambert 93 or Lambert CC 9
 					if (equals(originLat, 46.5) && equals(stdP1, 44.0) && equals(stdP2, 49.0) && equals(falseEasting, 700000.0) && equals(falseNorthing, 6600000.0)) {
-						josmProj = new Lambert93();
+						josmProj = Projections.getProjectionByCode("EPSG:2154"); // Lambert 93
 					} else if (equals(falseEasting, 1700000.0)) {
 						for (int i=0; josmProj == null && i<9; i++) {
 							if (equals(originLat, 42.0+i) && equals(stdP1, 41.25+i) && equals(stdP2, 42.75+i) && equals(falseNorthing, (i+1)*1000000.0 + 200000.0)) {
-								josmProj = new LambertCC9Zones(i);
+								josmProj = Projections.getProjectionByCode("EPSG:"+Integer.toString(3942 + i)); // LambertCC9Zones
 							}
 						}
Index: applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/tabular/SpreadSheetReader.java
===================================================================
--- applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/tabular/SpreadSheetReader.java	(revision 28889)
+++ applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/tabular/SpreadSheetReader.java	(revision 28891)
@@ -32,5 +32,4 @@
 import org.openstreetmap.josm.data.osm.DataSet;
 import org.openstreetmap.josm.data.osm.Node;
-import org.openstreetmap.josm.data.projection.LambertCC9Zones;
 import org.openstreetmap.josm.data.projection.Projection;
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
@@ -45,11 +44,4 @@
 	private static final NumberFormat formatUK = NumberFormat.getInstance(Locale.UK);
 	
-	protected static final LambertCC9Zones[] projLambCC9Zones = new LambertCC9Zones[9];
-	static {
-		for (int i=0; i<projLambCC9Zones.length; i++) {
-			projLambCC9Zones[i] = new LambertCC9Zones(i);
-		}
-	}
-
 	protected final SpreadSheetHandler handler;
 
