Index: trunk/src/org/openstreetmap/josm/Main.java
===================================================================
--- trunk/src/org/openstreetmap/josm/Main.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/Main.java	(revision 7402)
@@ -77,5 +77,5 @@
 import org.openstreetmap.josm.gui.io.SaveLayersDialog;
 import org.openstreetmap.josm.gui.layer.Layer;
-import org.openstreetmap.josm.gui.layer.ModifiableLayer;
+import org.openstreetmap.josm.gui.layer.AbstractModifiableLayer;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer.CommandQueueListener;
@@ -891,5 +891,5 @@
 
     /**
-     * Asks user to perform "save layer" operations (save on disk and/or upload data to server) for all {@link ModifiableLayer} before JOSM exits.
+     * Asks user to perform "save layer" operations (save on disk and/or upload data to server) for all {@link AbstractModifiableLayer} before JOSM exits.
      * @return {@code true} if there was nothing to save, or if the user wants to proceed to save operations. {@code false} if the user cancels.
      * @since 2025
@@ -897,5 +897,5 @@
     public static boolean saveUnsavedModifications() {
         if (!isDisplayingMapView()) return true;
-        return saveUnsavedModifications(map.mapView.getLayersOfType(ModifiableLayer.class), true);
+        return saveUnsavedModifications(map.mapView.getLayersOfType(AbstractModifiableLayer.class), true);
     }
 
@@ -903,5 +903,5 @@
      * Asks user to perform "save layer" operations (save on disk and/or upload data to server) before data layers deletion.
      *
-     * @param selectedLayers The layers to check. Only instances of {@link ModifiableLayer} are considered.
+     * @param selectedLayers The layers to check. Only instances of {@link AbstractModifiableLayer} are considered.
      * @param exit {@code true} if JOSM is exiting, {@code false} otherwise.
      * @return {@code true} if there was nothing to save, or if the user wants to proceed to save operations. {@code false} if the user cancels.
@@ -910,10 +910,10 @@
     public static boolean saveUnsavedModifications(Iterable<? extends Layer> selectedLayers, boolean exit) {
         SaveLayersDialog dialog = new SaveLayersDialog(parent);
-        List<ModifiableLayer> layersWithUnmodifiedChanges = new ArrayList<>();
+        List<AbstractModifiableLayer> layersWithUnmodifiedChanges = new ArrayList<>();
         for (Layer l: selectedLayers) {
-            if (!(l instanceof ModifiableLayer)) {
+            if (!(l instanceof AbstractModifiableLayer)) {
                 continue;
             }
-            ModifiableLayer odl = (ModifiableLayer)l;
+            AbstractModifiableLayer odl = (AbstractModifiableLayer)l;
             if ((odl.requiresSaveToFile() || (odl.requiresUploadToServer() && !odl.isUploadDiscouraged())) && odl.isModified()) {
                 layersWithUnmodifiedChanges.add(odl);
Index: trunk/src/org/openstreetmap/josm/actions/UploadAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/UploadAction.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/actions/UploadAction.java	(revision 7402)
@@ -27,5 +27,5 @@
 import org.openstreetmap.josm.gui.io.UploadDialog;
 import org.openstreetmap.josm.gui.io.UploadPrimitivesTask;
-import org.openstreetmap.josm.gui.layer.ModifiableLayer;
+import org.openstreetmap.josm.gui.layer.AbstractModifiableLayer;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
 import org.openstreetmap.josm.gui.util.GuiHelper;
@@ -143,5 +143,5 @@
     }
 
-    public static boolean checkPreUploadConditions(ModifiableLayer layer) {
+    public static boolean checkPreUploadConditions(AbstractModifiableLayer layer) {
         return checkPreUploadConditions(layer,
                 layer instanceof OsmDataLayer ? new APIDataSet(((OsmDataLayer)layer).data) : null);
@@ -164,5 +164,5 @@
      * want to continue
      */
-    public static boolean warnUploadDiscouraged(ModifiableLayer layer) {
+    public static boolean warnUploadDiscouraged(AbstractModifiableLayer layer) {
         return GuiHelper.warnUser(tr("Upload discouraged"),
                 "<html>" +
@@ -184,5 +184,5 @@
      * @return true, if the preconditions are met; false, otherwise
      */
-    public static boolean checkPreUploadConditions(ModifiableLayer layer, APIDataSet apiData) {
+    public static boolean checkPreUploadConditions(AbstractModifiableLayer layer, APIDataSet apiData) {
         if (layer.isUploadDiscouraged()) {
             if (warnUploadDiscouraged(layer)) {
Index: trunk/src/org/openstreetmap/josm/data/osm/MultipolygonBuilder.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/MultipolygonBuilder.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/data/osm/MultipolygonBuilder.java	(revision 7402)
@@ -59,5 +59,5 @@
             List<Node> nodes = new ArrayList<>();
 
-            for(int waypos = 0; waypos < this.ways.size(); waypos ++) {
+            for (int waypos = 0; waypos < this.ways.size(); waypos ++) {
                 Way way = this.ways.get(waypos);
                 boolean reversed = this.reversed.get(waypos).booleanValue();
@@ -67,6 +67,5 @@
                         nodes.add(way.getNode(pos));
                     }
-                }
-                else {
+                } else {
                     for (int pos = way.getNodesCount() - 1; pos > 0; pos--) {
                         nodes.add(way.getNode(pos));
@@ -88,7 +87,7 @@
         public List<JoinedPolygon> innerWays;
 
-        public PolygonLevel(JoinedPolygon _pol, int _level) {
-            this.outerWay = _pol;
-            this.level = _level;
+        public PolygonLevel(JoinedPolygon pol, int level) {
+            this.outerWay = pol;
+            this.level = level;
             this.innerWays = new ArrayList<>();
         }
@@ -161,5 +160,5 @@
         Set<Way> usedWays = new HashSet<>();
 
-        for(Way w: ways) {
+        for (Way w: ways) {
             if (w.getNodesCount() < 2) {
                 throw new JoinedPolygonCreationException(tr("Cannot add a way with only {0} nodes.", w.getNodesCount()));
@@ -171,6 +170,5 @@
                 joinedWays.add(jw);
                 usedWays.add(w);
-            }
-            else {
+            } else {
                 nodesWithConnectedWays.put(w.lastNode(), w);
                 nodesWithConnectedWays.put(w.firstNode(), w);
@@ -249,6 +247,5 @@
             if (pol.level % 2 == 0) {
                 this.outerWays.add(pol.outerWay);
-            }
-            else {
+            } else {
                 this.innerWays.add(pol.outerWay);
             }
Index: trunk/src/org/openstreetmap/josm/data/projection/Ellipsoid.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/projection/Ellipsoid.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/data/projection/Ellipsoid.java	(revision 7402)
@@ -11,20 +11,24 @@
 
 /**
- * the reference ellipsoids
+ * Reference ellipsoids.
  */
 public final class Ellipsoid {
+
     /**
      * Clarke 1880 IGN (French national geographic institute)
      */
     public static final Ellipsoid clarkeIGN = Ellipsoid.create_a_b(6378249.2, 6356515.0);
-    /**
-     * Hayford's ellipsoid 1909 (ED50 system)
+
+    /**
+     * Hayford's ellipsoid 1909 (ED50 system)<br>
      * Proj.4 code: intl
      */
     public static final Ellipsoid hayford = Ellipsoid.create_a_rf(6378388.0, 297.0);
+
     /**
      * GRS67 ellipsoid
      */
     public static final Ellipsoid GRS67 = Ellipsoid.create_a_rf(6378160.0, 298.247167472);
+
     /**
      * GRS80 ellipsoid
@@ -46,12 +50,15 @@
      */
     public final double a;
+
     /**
      * half short axis
      */
     public final double b;
+
     /**
      * first eccentricity
      */
     public final double e;
+
     /**
      * first eccentricity squared
@@ -86,4 +93,5 @@
      * @param a semimajor radius of the ellipsoid axis (in meters)
      * @param b semiminor radius of the ellipsoid axis (in meters)
+     * @return the new ellipsoid
      */
     public static Ellipsoid create_a_b(double a, double b) {
@@ -99,4 +107,5 @@
      * @param a semimajor radius of the ellipsoid axis (in meters)
      * @param es first eccentricity squared
+     * @return the new ellipsoid
      */
     public static Ellipsoid create_a_es(double a, double es) {
@@ -112,4 +121,5 @@
      * @param a semimajor radius of the ellipsoid axis (in meters)
      * @param f flattening ( = (a - b) / a)
+     * @return the new ellipsoid
      */
     public static Ellipsoid create_a_f(double a, double f) {
@@ -126,4 +136,5 @@
      * @param a semimajor radius of the ellipsoid axis (in meters)
      * @param rf inverse flattening
+     * @return the new ellipsoid
      */
     public static Ellipsoid create_a_rf(double a, double rf) {
@@ -217,6 +228,8 @@
     }
 
-    /*
+    /**
      * Returns geographic latitude of isometric latitude of first eccentricity (e)
+     * and epsilon precision
+     * @return geographic latitude of isometric latitude of first eccentricity (e)
      * and epsilon precision
      */
Index: trunk/src/org/openstreetmap/josm/data/projection/datum/Datum.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/projection/datum/Datum.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/data/projection/datum/Datum.java	(revision 7402)
@@ -18,6 +18,6 @@
 
     /**
-     * @return the Proj.4 identifier
-     * (as reported by cs2cs -ld)
+     * Replies the Proj.4 identifier.
+     * @return the Proj.4 identifier (as reported by cs2cs -ld)
      * If no id exists, return null.
      */
Index: trunk/src/org/openstreetmap/josm/gui/io/SaveLayerInfo.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/io/SaveLayerInfo.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/io/SaveLayerInfo.java	(revision 7402)
@@ -4,5 +4,5 @@
 import java.io.File;
 
-import org.openstreetmap.josm.gui.layer.ModifiableLayer;
+import org.openstreetmap.josm.gui.layer.AbstractModifiableLayer;
 import org.openstreetmap.josm.tools.CheckParameterUtil;
 
@@ -15,5 +15,5 @@
 
     /** the modifiable layer */
-    private ModifiableLayer layer;
+    private AbstractModifiableLayer layer;
     private boolean doCheckSaveConditions;
     private boolean doSaveToFile;
@@ -28,5 +28,5 @@
      * @throws IllegalArgumentException thrown if layer is null
      */
-    public SaveLayerInfo(ModifiableLayer layer) {
+    public SaveLayerInfo(AbstractModifiableLayer layer) {
         CheckParameterUtil.ensureParameterNotNull(layer, "layer");
         this.layer = layer;
@@ -42,5 +42,5 @@
      * @return the layer this info objects holds information for
      */
-    public ModifiableLayer getLayer() {
+    public AbstractModifiableLayer getLayer() {
         return layer;
     }
Index: trunk/src/org/openstreetmap/josm/gui/io/SaveLayerTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/io/SaveLayerTask.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/io/SaveLayerTask.java	(revision 7402)
@@ -11,5 +11,5 @@
 
 /**
- * SaveLayerTask saves the data managed by an {@link org.openstreetmap.josm.gui.layer.ModifiableLayer} to the
+ * SaveLayerTask saves the data managed by an {@link org.openstreetmap.josm.gui.layer.AbstractModifiableLayer} to the
  * {@link org.openstreetmap.josm.gui.layer.Layer#getAssociatedFile()}.
  *
Index: trunk/src/org/openstreetmap/josm/gui/io/SaveLayersDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/io/SaveLayersDialog.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/io/SaveLayersDialog.java	(revision 7402)
@@ -46,5 +46,5 @@
 import org.openstreetmap.josm.gui.ExceptionDialogUtil;
 import org.openstreetmap.josm.gui.io.SaveLayersModel.Mode;
-import org.openstreetmap.josm.gui.layer.ModifiableLayer;
+import org.openstreetmap.josm.gui.layer.AbstractModifiableLayer;
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
 import org.openstreetmap.josm.gui.progress.SwingRenderingProgressMonitor;
@@ -449,5 +449,5 @@
         protected void uploadLayers(List<SaveLayerInfo> toUpload) {
             for (final SaveLayerInfo layerInfo: toUpload) {
-                ModifiableLayer layer = layerInfo.getLayer();
+                AbstractModifiableLayer layer = layerInfo.getLayer();
                 if (canceled) {
                     model.setUploadState(layer, UploadOrSaveState.CANCELED);
Index: trunk/src/org/openstreetmap/josm/gui/io/SaveLayersModel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/io/SaveLayersModel.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/io/SaveLayersModel.java	(revision 7402)
@@ -12,5 +12,5 @@
 import javax.swing.table.DefaultTableModel;
 
-import org.openstreetmap.josm.gui.layer.ModifiableLayer;
+import org.openstreetmap.josm.gui.layer.AbstractModifiableLayer;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
 
@@ -65,8 +65,8 @@
      * @since 7358
      */
-    public void populate(List<? extends ModifiableLayer> layers) {
+    public void populate(List<? extends AbstractModifiableLayer> layers) {
         layerInfo = new ArrayList<>();
         if (layers == null) return;
-        for (ModifiableLayer layer: layers) {
+        for (AbstractModifiableLayer layer: layers) {
             layerInfo.add(new SaveLayerInfo(layer));
         }
@@ -143,5 +143,5 @@
         List<SaveLayerInfo> ret = new ArrayList<>();
         for (SaveLayerInfo info: layerInfo) {
-            ModifiableLayer l = info.getLayer();
+            AbstractModifiableLayer l = info.getLayer();
             if (info.isDoUploadToServer() && l instanceof OsmDataLayer && !((OsmDataLayer)l).getConflicts().isEmpty()) {
                 ret.add(info);
@@ -171,5 +171,5 @@
     }
 
-    public void setUploadState(ModifiableLayer layer, UploadOrSaveState state) {
+    public void setUploadState(AbstractModifiableLayer layer, UploadOrSaveState state) {
         SaveLayerInfo info = getSaveLayerInfo(layer);
         if (info != null) {
@@ -179,5 +179,5 @@
     }
 
-    public void setSaveState(ModifiableLayer layer, UploadOrSaveState state) {
+    public void setSaveState(AbstractModifiableLayer layer, UploadOrSaveState state) {
         SaveLayerInfo info = getSaveLayerInfo(layer);
         if (info != null) {
@@ -187,5 +187,5 @@
     }
 
-    public SaveLayerInfo getSaveLayerInfo(ModifiableLayer layer) {
+    public SaveLayerInfo getSaveLayerInfo(AbstractModifiableLayer layer) {
         for (SaveLayerInfo info: this.layerInfo) {
             if (info.getLayer() == layer)
Index: trunk/src/org/openstreetmap/josm/gui/layer/AbstractModifiableLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/AbstractModifiableLayer.java	(revision 7402)
+++ trunk/src/org/openstreetmap/josm/gui/layer/AbstractModifiableLayer.java	(revision 7402)
@@ -0,0 +1,96 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.gui.layer;
+
+import org.openstreetmap.josm.gui.io.AbstractIOTask;
+import org.openstreetmap.josm.gui.io.AbstractUploadDialog;
+import org.openstreetmap.josm.gui.progress.ProgressMonitor;
+
+/**
+ * A modifiable layer.
+ * @since 7358
+ */
+public abstract class AbstractModifiableLayer extends Layer {
+
+    /**
+     * Constructs a new {@code ModifiableLayer}.
+     * @param name Layer name
+     */
+    public AbstractModifiableLayer(String name) {
+        super(name);
+    }
+
+    /**
+     * Determines if the data managed by this layer needs to be uploaded to
+     * the server because it contains modified data.
+     *
+     * @return true if the data managed by this layer needs to be uploaded to
+     * the server because it contains modified data; false, otherwise
+     */
+    public boolean requiresUploadToServer() {
+        // Override if needed
+        return false;
+    }
+
+    /**
+     * Determines if the data managed by this layer needs to be saved to
+     * a file. Only replies true if a file is assigned to this layer and
+     * if the data managed by this layer has been modified since the last
+     * save operation to the file.
+     *
+     * @return true if the data managed by this layer needs to be saved to a file
+     */
+    public boolean requiresSaveToFile() {
+        // Override if needed
+        return false;
+    }
+
+    /**
+     * Determines if upload of data managed by this layer is discouraged.
+     * This feature allows to use "private" data layers.
+     *
+     * @return true if upload is discouraged for this layer; false, otherwise
+     */
+    public boolean isUploadDiscouraged() {
+        // Override if needed
+        return false;
+    }
+
+    /**
+     * Determines if data managed by this layer has been modified.
+     * @return true if data has been modified; false, otherwise
+     */
+    public abstract boolean isModified();
+
+    /**
+     * Initializes the layer after a successful save of data to a file.
+     */
+    public void onPostSaveToFile() {
+        // Override if needed
+    }
+
+    /**
+     * Initializes the layer after a successful upload to the server.
+     */
+    public void onPostUploadToServer() {
+        // Override if needed
+    }
+
+    /**
+     * Creates a new {@code AbstractIOTask} for uploading data.
+     * @param monitor The progress monitor
+     * @return a new {@code AbstractIOTask} for uploading data, or {@code null} if not applicable
+     */
+    public AbstractIOTask createUploadTask(ProgressMonitor monitor) {
+        // Override if needed
+        return null;
+    }
+
+    /**
+     * Returns the upload dialog for this layer.
+     * @return the upload dialog for this layer, or {@code null} if not applicable
+     */
+    public AbstractUploadDialog getUploadDialog() {
+        // Override if needed
+        return null;
+    }
+}
Index: trunk/src/org/openstreetmap/josm/gui/layer/GpxLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/GpxLayer.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/layer/GpxLayer.java	(revision 7402)
@@ -263,5 +263,5 @@
             if (t==null) continue;
             long tm = t[1].getTime();
-            trackVisibility[i]= (tm==0 && showWithoutDate) || (from<=tm && tm <= to);
+            trackVisibility[i]= (tm==0 && showWithoutDate) || (from <= tm && tm <= to);
             i++;
         }
@@ -280,6 +280,6 @@
         lastTracks.addAll(data.tracks);
 
-        LinkedList<WayPoint> visibleSegments = listVisibleSegments(box);
-        if(!visibleSegments.isEmpty()) {
+        List<WayPoint> visibleSegments = listVisibleSegments(box);
+        if (!visibleSegments.isEmpty()) {
             drawHelper.readPreferences(getName());
             drawHelper.drawAll(g, mv, visibleSegments);
@@ -288,8 +288,7 @@
             }
         }
-
-    }
-
-    private LinkedList<WayPoint> listVisibleSegments(Bounds box) {
+    }
+
+    private List<WayPoint> listVisibleSegments(Bounds box) {
         WayPoint last = null;
         LinkedList<WayPoint> visibleSegments = new LinkedList<>();
@@ -298,16 +297,13 @@
         for (Collection<WayPoint> segment : data.getLinesIterable(trackVisibility)) {
 
-            for(WayPoint pt : segment)
-            {
+            for (WayPoint pt : segment) {
                 Bounds b = new Bounds(pt.getCoor());
-                // last should never be null when this is true!
-                if(pt.drawLine) {
+                if (pt.drawLine && last != null) {
                     b.extend(last.getCoor());
                 }
-                if(b.intersects(box))
-                {
-                    if(last != null && (visibleSegments.isEmpty()
+                if (b.intersects(box)) {
+                    if (last != null && (visibleSegments.isEmpty()
                             || visibleSegments.getLast() != last)) {
-                        if(last.drawLine) {
+                        if (last.drawLine) {
                             WayPoint l = new WayPoint(last);
                             l.drawLine = false;
Index: trunk/src/org/openstreetmap/josm/gui/layer/ModifiableLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/ModifiableLayer.java	(revision 7401)
+++ 	(revision )
@@ -1,96 +1,0 @@
-// License: GPL. For details, see LICENSE file.
-package org.openstreetmap.josm.gui.layer;
-
-import org.openstreetmap.josm.gui.io.AbstractIOTask;
-import org.openstreetmap.josm.gui.io.AbstractUploadDialog;
-import org.openstreetmap.josm.gui.progress.ProgressMonitor;
-
-/**
- * A modifiable layer.
- * @since 7358
- */
-public abstract class ModifiableLayer extends Layer {
-
-    /**
-     * Constructs a new {@code ModifiableLayer}.
-     * @param name Layer name
-     */
-    public ModifiableLayer(String name) {
-        super(name);
-    }
-
-    /**
-     * Determines if the data managed by this layer needs to be uploaded to
-     * the server because it contains modified data.
-     *
-     * @return true if the data managed by this layer needs to be uploaded to
-     * the server because it contains modified data; false, otherwise
-     */
-    public boolean requiresUploadToServer() {
-        // Override if needed
-        return false;
-    }
-
-    /**
-     * Determines if the data managed by this layer needs to be saved to
-     * a file. Only replies true if a file is assigned to this layer and
-     * if the data managed by this layer has been modified since the last
-     * save operation to the file.
-     *
-     * @return true if the data managed by this layer needs to be saved to a file
-     */
-    public boolean requiresSaveToFile() {
-        // Override if needed
-        return false;
-    }
-
-    /**
-     * Determines if upload of data managed by this layer is discouraged.
-     * This feature allows to use "private" data layers.
-     *
-     * @return true if upload is discouraged for this layer; false, otherwise
-     */
-    public boolean isUploadDiscouraged() {
-        // Override if needed
-        return false;
-    }
-
-    /**
-     * Determines if data managed by this layer has been modified.
-     * @return true if data has been modified; false, otherwise
-     */
-    public abstract boolean isModified();
-
-    /**
-     * Initializes the layer after a successful save of data to a file.
-     */
-    public void onPostSaveToFile() {
-        // Override if needed
-    }
-
-    /**
-     * Initializes the layer after a successful upload to the server.
-     */
-    public void onPostUploadToServer() {
-        // Override if needed
-    }
-
-    /**
-     * Creates a new {@code AbstractIOTask} for uploading data.
-     * @param monitor The progress monitor
-     * @return a new {@code AbstractIOTask} for uploading data, or {@code null} if not applicable
-     */
-    public AbstractIOTask createUploadTask(ProgressMonitor monitor) {
-        // Override if needed
-        return null;
-    }
-
-    /**
-     * Returns the upload dialog for this layer.
-     * @return the upload dialog for this layer, or {@code null} if not applicable
-     */
-    public AbstractUploadDialog getUploadDialog() {
-        // Override if needed
-        return null;
-    }
-}
Index: trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java	(revision 7402)
@@ -96,5 +96,5 @@
  * @author imi
  */
-public class OsmDataLayer extends ModifiableLayer implements Listener, SelectionChangedListener {
+public class OsmDataLayer extends AbstractModifiableLayer implements Listener, SelectionChangedListener {
     public static final String REQUIRES_SAVE_TO_DISK_PROP = OsmDataLayer.class.getName() + ".requiresSaveToDisk";
     public static final String REQUIRES_UPLOAD_TO_SERVER_PROP = OsmDataLayer.class.getName() + ".requiresUploadToServer";
Index: trunk/src/org/openstreetmap/josm/gui/layer/gpx/GpxDrawHelper.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/gpx/GpxDrawHelper.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/layer/gpx/GpxDrawHelper.java	(revision 7402)
@@ -1,4 +1,3 @@
 // License: GPL. See LICENSE file for details.
-
 package org.openstreetmap.josm.gui.layer.gpx;
 
@@ -22,5 +21,4 @@
 import org.openstreetmap.josm.gui.MapView;
 import org.openstreetmap.josm.tools.ColorScale;
-
 
 /**
@@ -106,7 +104,15 @@
     }
 
+    /**
+     * Constructs a new {@code GpxDrawHelper}.
+     * @param gpxData GPX data
+     */
     public GpxDrawHelper(GpxData gpxData) {
         data = gpxData;
         setupColors();
+    }
+
+    private static String specName(String layerName) {
+        return "layer " + layerName;
     }
 
@@ -118,5 +124,5 @@
      */
     public Color getColor(String layerName, boolean ignoreCustom) {
-        Color c = Main.pref.getColor(marktr("gps point"), "layer " + layerName, Color.gray);
+        Color c = Main.pref.getColor(marktr("gps point"), specName(layerName), Color.gray);
         return ignoreCustom || getColorMode(layerName) == ColorMode.NONE ? c : null;
     }
@@ -129,5 +135,5 @@
     public ColorMode getColorMode(String layerName) {
         try {
-            int i=Main.pref.getInteger("draw.rawgps.colors", "layer " + layerName, 0);
+            int i = Main.pref.getInteger("draw.rawgps.colors", specName(layerName), 0);
             return ColorMode.values()[i];
         } catch (Exception e) {
@@ -149,5 +155,5 @@
      **/
     public void readPreferences(String layerName) {
-        String spec = "layer " + layerName;
+        String spec = specName(layerName);
         forceLines = Main.pref.getBoolean("draw.rawgps.lines.force", spec, false);
         direction = Main.pref.getBoolean("draw.rawgps.direction", spec, false);
@@ -198,6 +204,6 @@
                     RenderingHints.VALUE_ANTIALIAS_ON : RenderingHints.VALUE_ANTIALIAS_OFF);
 
-        if(lineWidth != 0) {
-           g.setStroke(new BasicStroke(lineWidth,BasicStroke.CAP_ROUND,BasicStroke.JOIN_ROUND));
+        if (lineWidth != 0) {
+            g.setStroke(new BasicStroke(lineWidth,BasicStroke.CAP_ROUND,BasicStroke.JOIN_ROUND));
         }
         fixColors(visibleSegments);
@@ -205,5 +211,5 @@
         drawArrows(g, mv, visibleSegments);
         drawPoints(g, mv, visibleSegments);
-        if(lineWidth != 0) {
+        if (lineWidth != 0) {
             g.setStroke(storedStroke);
         }
@@ -298,5 +304,5 @@
 
                 if (colored == ColorMode.HDOP) {
-                    Float hdop = ((Float) trkPnt.attr.get("hdop"));
+                    Float hdop = (Float) trkPnt.attr.get("hdop");
                     color = hdopScale.getColor(hdop);
                 }
@@ -346,6 +352,4 @@
     }
 
-
-
     private void drawLines(Graphics2D g, MapView mv, List<WayPoint> visibleSegments) {
         if (lines) {
@@ -357,10 +361,8 @@
                 }
                 Point screen = mv.getPoint(trkPnt.getEastNorth());
-                if (trkPnt.drawLine) {
-                    // skip points that are on the same screenposition
-                    if (old != null && ((old.x != screen.x) || (old.y != screen.y))) {
-                        g.setColor(trkPnt.customColoring);
-                        g.drawLine(old.x, old.y, screen.x, screen.y);
-                    }
+                // skip points that are on the same screenposition
+                if (trkPnt.drawLine && old != null && ((old.x != screen.x) || (old.y != screen.y))) {
+                    g.setColor(trkPnt.customColoring);
+                    g.drawLine(old.x, old.y, screen.x, screen.y);
                 }
                 old = screen;
@@ -446,5 +448,5 @@
                 if (hdopCircle && trkPnt.attr.get("hdop") != null) {
                     // hdop value
-                    float hdop = ((Float)trkPnt.attr.get("hdop"));
+                    float hdop = (Float)trkPnt.attr.get("hdop");
                     if (hdop < 0) {
                         hdop = 0;
@@ -534,5 +536,4 @@
     public void drawColorBar(Graphics2D g, MapView mv) {
         int w = mv.getWidth();
-        int h = mv.getHeight();
         if (colored == ColorMode.HDOP) {
             hdopScale.drawColorBar(g, w-30, 50, 20, 100, 1.0);
@@ -543,4 +544,3 @@
         }
     }
-
 }
Index: trunk/src/org/openstreetmap/josm/gui/mappaint/ElemStyles.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/mappaint/ElemStyles.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/mappaint/ElemStyles.java	(revision 7402)
@@ -42,5 +42,5 @@
      */
     public void clearCached() {
-        // run in EDT to make sure this isn't called during rendering run 
+        // run in EDT to make sure this isn't called during rendering run
         // {@link org.openstreetmap.josm.data.osm.visitor.paint.StyledMapRenderer#render}
         GuiHelper.runInEDT(new Runnable() {
@@ -335,5 +335,4 @@
             }
             env.layer = e.getKey();
-            Cascade c = e.getValue();
             if (osm instanceof Way) {
                 addIfNotNull(sl, AreaElemStyle.create(env));
Index: trunk/src/org/openstreetmap/josm/gui/mappaint/TextElement.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/mappaint/TextElement.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/mappaint/TextElement.java	(revision 7402)
@@ -16,5 +16,5 @@
 /**
  * Represents the rendering style for a textual label placed somewhere on the map.
- *
+ * @since 3880
  */
 public class TextElement implements StyleKeys {
@@ -73,6 +73,5 @@
 
     /**
-     * Derives a suitable label composition strategy from the style properties in
-     * {@code c}.
+     * Derives a suitable label composition strategy from the style properties in {@code c}.
      *
      * @param c the style properties
@@ -108,5 +107,5 @@
      * default text color {@code defaultTextColor}
      *
-     * @param c the style properties
+     * @param env the environment
      * @param defaultTextColor the default text color. Must not be null.
      * @param defaultAnnotate true, if a text label shall be rendered by default, even if the style sheet
Index: trunk/src/org/openstreetmap/josm/gui/preferences/display/ColorPreference.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/display/ColorPreference.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/display/ColorPreference.java	(revision 7402)
@@ -38,8 +38,7 @@
 import org.openstreetmap.josm.gui.conflict.ConflictColors;
 import org.openstreetmap.josm.gui.dialogs.ConflictDialog;
-import org.openstreetmap.josm.gui.layer.gpx.GpxDrawHelper;
-import org.openstreetmap.josm.gui.layer.GpxLayer;
 import org.openstreetmap.josm.gui.layer.ImageryLayer;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+import org.openstreetmap.josm.gui.layer.gpx.GpxDrawHelper;
 import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer;
 import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
Index: trunk/src/org/openstreetmap/josm/gui/preferences/map/MapPaintPreference.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/map/MapPaintPreference.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/map/MapPaintPreference.java	(revision 7402)
@@ -43,4 +43,6 @@
 
     private static final List<SourceProvider> styleSourceProviders = new ArrayList<>();
+
+    private static final String OLD_ELEMSTYLES_XML = "resource://styles/standard/elemstyles.xml";
 
     /**
@@ -250,5 +252,5 @@
             }
             // XML style is not bundled anymore
-            knownDefaults.remove("resource://styles/standard/elemstyles.xml");
+            knownDefaults.remove(OLD_ELEMSTYLES_XML);
             Main.pref.putCollection("mappaint.style.known-defaults", knownDefaults);
 
@@ -261,5 +263,5 @@
                         @Override
                         public boolean evaluate(SourceEntry se) {
-                            return "resource://styles/standard/elemstyles.xml".equals(se.url);
+                            return OLD_ELEMSTYLES_XML.equals(se.url);
                         }
                     });
Index: trunk/src/org/openstreetmap/josm/io/remotecontrol/DNSName.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/remotecontrol/DNSName.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/io/remotecontrol/DNSName.java	(revision 7402)
@@ -102,5 +102,5 @@
      */
     public int getType() {
-        return (GeneralNameInterface.NAME_DNS);
+        return GeneralNameInterface.NAME_DNS;
     }
 
@@ -128,5 +128,5 @@
     @Override
     public String toString() {
-        return ("DNSName: " + name);
+        return "DNSName: " + name;
     }
 
@@ -192,5 +192,6 @@
      *          not supported for this name type.
      */
-    public int constrains(GeneralNameInterface inputName) throws UnsupportedOperationException {
+    @Override
+    public int constrains(GeneralNameInterface inputName) {
         int constraintType;
         if (inputName == null)
@@ -231,5 +232,6 @@
      * @throws UnsupportedOperationException if not supported for this name type
      */
-    public int subtreeDepth() throws UnsupportedOperationException {
+    @Override
+    public int subtreeDepth() {
         String subtree=name;
         int i=1;
Index: trunk/src/org/openstreetmap/josm/io/remotecontrol/RemoteControlHttpsServer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/remotecontrol/RemoteControlHttpsServer.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/io/remotecontrol/RemoteControlHttpsServer.java	(revision 7402)
@@ -136,5 +136,5 @@
         X509CertInfo info = new X509CertInfo();
         Date from = new Date();
-        Date to = new Date(from.getTime() + days * 86400000l);
+        Date to = new Date(from.getTime() + days * 86400000L);
         CertificateValidity interval = new CertificateValidity(from, to);
         BigInteger sn = new BigInteger(64, new SecureRandom());
Index: trunk/src/org/openstreetmap/josm/tools/ColorScale.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/ColorScale.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/tools/ColorScale.java	(revision 7402)
@@ -1,4 +1,3 @@
 // License: GPL. For details, see LICENSE file.
-
 package org.openstreetmap.josm.tools;
 
@@ -8,6 +7,5 @@
 
 /**
- * Utility class that helps to work with color scale 
- * for coloring GPX tracks etc.
+ * Utility class that helps to work with color scale for coloring GPX tracks etc.
  * @since 7319
  */
@@ -17,13 +15,13 @@
     private Color belowMinColor;
     private Color aboveMaxColor;
-    
+
     private Color[] colors;
     private String title = "";
     private int intervalCount = 5;
-    
+
     private ColorScale() {
-        
+
     }
-    
+
     public static ColorScale createHSBScale(int count) {
         ColorScale sc = new ColorScale();
@@ -36,5 +34,5 @@
         return sc;
     }
-    
+
     public static ColorScale createCyclicScale(int count) {
         ColorScale sc = new ColorScale();
@@ -46,5 +44,5 @@
         sc.colors = new Color[count];
         for (int i = 0; i < sc.colors.length; i++) {
-  
+
             float angle = 4 - i / 256f * 4;
             int quadrant = (int) angle;
@@ -62,5 +60,5 @@
         return sc;
     }
-    
+
     /**
      * transition function:
@@ -80,5 +78,5 @@
         this.max = max;
     }
-    
+
     /**
      * Add standard colors for values below min or above max value
@@ -88,5 +86,5 @@
         belowMinColor = colors[0];
     }
-    
+
     public final Color getColor(double value) {
         if (value<min) return belowMinColor;
@@ -100,9 +98,6 @@
             return colors[n-1]; // this happens when value==max
         }
-        // int hdoplvl =(int) Math.round(colorModeDynamic ? ((hdop-minval)*255/(maxval-minval))
-        //            : (hdop <= 0 ? 0 : hdop * hdopfactor));
-        // int hdopcolor = 255 - (hdoplvl > 255 ? 255 : hdoplvl);
     }
-    
+
     public final Color getColor(Number value) {
         return (value==null)? noDataColor : getColor(value.doubleValue());
@@ -110,5 +105,4 @@
 
     public Color getNoDataColor() {
-        
         return noDataColor;
     }
@@ -117,5 +111,5 @@
         this.noDataColor = noDataColor;
     }
-    
+
     public ColorScale makeTransparent(int alpha) {
         for (int i = 0; i < colors.length; i++) {
@@ -124,15 +118,15 @@
         return this;
     }
-    
+
     public ColorScale addTitle(String title) {
         this.title = title;
         return this;
     }
-    
+
     public ColorScale setIntervalCount(int intervalCount) {
         this.intervalCount = intervalCount;
         return this;
     }
-    
+
     public ColorScale makeReversed() {
         int n = colors.length;
@@ -148,8 +142,8 @@
         return this;
     }
-    
+
     public void drawColorBar(Graphics2D g, int x, int y, int w, int h, double valueScale) {
         int n=colors.length;
-        
+
         for (int i=0; i<n; i++) {
             g.setColor(colors[i]);
@@ -160,7 +154,7 @@
             }
         }
-        
+
         int fw, fh;
-        FontMetrics fm = g.getFontMetrics(); 
+        FontMetrics fm = g.getFontMetrics();
         fh = fm.getHeight()/2;
         fw = fm.stringWidth(String.valueOf(Math.max((int)Math.abs(max*valueScale), (int)Math.abs(min*valueScale)))) + fm.stringWidth("0.123");
Index: trunk/src/org/openstreetmap/josm/tools/FontsManager.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/FontsManager.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/tools/FontsManager.java	(revision 7402)
@@ -9,21 +9,34 @@
 import java.util.Arrays;
 import java.util.Collection;
-import java.util.Map;
+
 import org.openstreetmap.josm.io.CachedFile;
 
+/**
+ * Custom fonts manager that provides some embedded fonts to ensure
+ * a common rendering on different platforms.
+ * @since 7383
+ */
 public class FontsManager {
 
-    public static Map<String, Font> fonts;
-    public static Collection<String> includedFonts = Arrays.asList(
+    /**
+     * List of fonts embedded into JOSM jar.
+     */
+    public static final Collection<String> INCLUDED_FONTS = Arrays.asList(
             "DroidSans.ttf",
             "DroidSans-Bold.ttf"
     );
-    
+
+    private FontsManager() {
+        // Hide constructor for utility classes
+    }
+
+    /**
+     * Initializes the fonts manager.
+     */
     public static void initialize() {
         GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
-        for (String fontFile : includedFonts) {
+        for (String fontFile : INCLUDED_FONTS) {
             String url = "resource://data/fonts/"+fontFile;
-            try (InputStream i = new CachedFile(url).getInputStream())
-            {
+            try (InputStream i = new CachedFile(url).getInputStream()) {
                 Font f = Font.createFont(Font.TRUETYPE_FONT, i);
                 if (f == null) {
Index: trunk/src/org/openstreetmap/josm/tools/ImageProvider.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/ImageProvider.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/tools/ImageProvider.java	(revision 7402)
@@ -93,5 +93,4 @@
     /**
      * Position of an overlay icon
-     * @author imi
      */
     public static enum OverlayPosition {
@@ -1277,18 +1276,9 @@
                                     Node item = list.item(0);
                                     if (item instanceof Element) {
-                                        String value = ((Element)item).getAttribute("value");
-                                        String[] s = value.split(" ");
+                                        String[] s = ((Element)item).getAttribute("value").split(" ");
                                         if (s.length == 3) {
-                                            int[] rgb = new int[3];
-                                            try {
-                                                for (int i = 0; i<3; i++) {
-                                                    rgb[i] = Integer.parseInt(s[i]);
-                                                }
-                                                return new Color(rgb[0], rgb[1], rgb[2]);
-                                            } catch (IllegalArgumentException e) {
-                                                Main.error(e);
-                                            }
+                                            return parseRGB(s);
                                         }
-                                }
+                                    }
                                 }
                             }
@@ -1303,4 +1293,17 @@
         }
         return null;
+    }
+
+    private static Color parseRGB(String[] s) {
+        int[] rgb = new int[3];
+        try {
+            for (int i = 0; i<3; i++) {
+                rgb[i] = Integer.parseInt(s[i]);
+            }
+            return new Color(rgb[0], rgb[1], rgb[2]);
+        } catch (IllegalArgumentException e) {
+            Main.error(e);
+            return null;
+        }
     }
 
Index: trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java	(revision 7401)
+++ trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java	(revision 7402)
@@ -56,25 +56,28 @@
 
     private static final byte[] INSECURE_PUBLIC_KEY = new byte[] {
-        0x30, (byte) 0x82, 0x1, 0x22, 0x30, 0xd, 0x6, 0x9, 0x2a, (byte) 0x86, 0x48, (byte) 0x86, (byte) 0xf7, 0xd, 0x1, 0x1, 0x1, 0x5, 0x0, 0x3, (byte) 0x82, 0x1, 0xf, 0x0,
+        0x30, (byte) 0x82, 0x1, 0x22, 0x30, 0xd, 0x6, 0x9, 0x2a, (byte) 0x86, 0x48,
+        (byte) 0x86, (byte) 0xf7, 0xd, 0x1, 0x1, 0x1, 0x5, 0x0, 0x3, (byte) 0x82, 0x1, 0xf, 0x0,
         0x30, (byte) 0x82, 0x01, 0x0a, 0x02, (byte) 0x82, 0x01, 0x01, 0x00, (byte) 0x95, (byte) 0x95, (byte) 0x88,
-        (byte) 0x84, (byte) 0xc8, (byte) 0xd9, 0x6b, (byte) 0xc5, (byte) 0xda, 0x0b, 0x69, (byte) 0xbf, (byte) 0xfc, 0x7e, (byte) 0xb9, (byte) 0x96, 0x2c, (byte) 0xeb, (byte) 0x8f,
-        (byte) 0xbc, 0x6e, 0x40, (byte) 0xe6, (byte) 0xe2, (byte) 0xfc, (byte) 0xf1, 0x7f, 0x73, (byte) 0xa7, (byte) 0x9d, (byte) 0xde, (byte) 0xc7, (byte) 0x88,
-        0x57, 0x51, (byte) 0x84, (byte) 0xed, (byte) 0x96, (byte) 0xfb, (byte) 0xe1, 0x38, (byte) 0xef, 0x08, 0x2b, (byte) 0xf3, (byte) 0xc7, (byte) 0xc3,
-        0x5d, (byte) 0xfe, (byte) 0xf9, 0x51, (byte) 0xe6, 0x29, (byte) 0xfc, (byte) 0xe5, 0x0d, (byte) 0xa1, 0x0d, (byte) 0xa8, (byte) 0xb4, (byte) 0xae,
-        0x26, 0x18, 0x19, 0x4d, 0x6c, 0x0c, 0x3b, 0x12, (byte) 0xba, (byte) 0xbc, 0x5f, 0x32, (byte) 0xb3, (byte) 0xbe,
-        (byte) 0x9d, 0x17, 0x0d, 0x4d, 0x2f, 0x1a, 0x48, (byte) 0xb7, (byte) 0xac, (byte) 0xf7, 0x1a, 0x43, 0x01, (byte) 0x97,
-        (byte) 0xf4, (byte) 0xf8, 0x4c, (byte) 0xbb, 0x6a, (byte) 0xbc, 0x33, (byte) 0xe1, 0x73, 0x1e, (byte) 0x86, (byte) 0xfb, 0x2e, (byte) 0xb1,
-        0x63, 0x75, (byte) 0x85, (byte) 0xdc, (byte) 0x82, 0x6c, 0x28, (byte) 0xf1, (byte) 0xe3, (byte) 0x90, 0x63, (byte) 0x9d, 0x3d, 0x48,
-        (byte) 0x8a, (byte) 0x8c, 0x47, (byte) 0xe2, 0x10, 0x0b, (byte) 0xef, (byte) 0x91, (byte) 0x94, (byte) 0xb0, 0x6c, 0x4c, (byte) 0x80, 0x76,
-        0x03, (byte) 0xe1, (byte) 0xb6, (byte) 0x90, (byte) 0x87, (byte) 0xd9, (byte) 0xae, (byte) 0xf4, (byte) 0x8e, (byte) 0xe0, (byte) 0x9f, (byte) 0xe7, 0x3a, 0x2c,
-        0x2f, 0x21, (byte) 0xd4, 0x46, (byte) 0xba, (byte) 0x95, 0x70, (byte) 0xa9, 0x5b, 0x20, 0x2a, (byte) 0xfa, 0x52, 0x3e,
-        (byte) 0x9d, (byte) 0xd9, (byte) 0xef, 0x28, (byte) 0xc5, (byte) 0xd1, 0x60, (byte) 0x89, 0x68, 0x6e, 0x7f, (byte) 0xd7, (byte) 0x9e, (byte) 0x89,
-        0x4c, (byte) 0xeb, 0x4d, (byte) 0xd2, (byte) 0xc6, (byte) 0xf4, 0x2d, 0x02, 0x5d, (byte) 0xda, (byte) 0xde, 0x33, (byte) 0xfe, (byte) 0xc1,
-        0x7e, (byte) 0xde, 0x4f, 0x1f, (byte) 0x9b, 0x6e, 0x6f, 0x0f, 0x66, 0x71, 0x19, (byte) 0xe9, 0x43, 0x3c,
-        (byte) 0x83, 0x0a, 0x0f, 0x28, 0x21, (byte) 0xc8, 0x38, (byte) 0xd3, 0x4e, 0x48, (byte) 0xdf, (byte) 0xd4, (byte) 0x99, (byte) 0xb5,
-        (byte) 0xc6, (byte) 0x8d, (byte) 0xd4, (byte) 0xc1, 0x69, 0x58, 0x79, (byte) 0x82, 0x32, (byte) 0x82, (byte) 0xd4, (byte) 0x86, (byte) 0xe2, 0x04,
-        0x08, 0x63, (byte) 0x87, (byte) 0xf0, 0x2a, (byte) 0xf6, (byte) 0xec, 0x3e, 0x51, 0x0f, (byte) 0xda, (byte) 0xb4, 0x67, 0x19,
-        0x5e, 0x16, 0x02, (byte) 0x9f, (byte) 0xf1, 0x19, 0x0c, 0x3e, (byte) 0xb8, 0x04, 0x49, 0x07, 0x53, 0x02,
-        0x03, 0x01, 0x00, 0x01
+        (byte) 0x84, (byte) 0xc8, (byte) 0xd9, 0x6b, (byte) 0xc5, (byte) 0xda, 0x0b, 0x69, (byte) 0xbf, (byte) 0xfc,
+        0x7e, (byte) 0xb9, (byte) 0x96, 0x2c, (byte) 0xeb, (byte) 0x8f, (byte) 0xbc, 0x6e, 0x40, (byte) 0xe6, (byte) 0xe2,
+        (byte) 0xfc, (byte) 0xf1, 0x7f, 0x73, (byte) 0xa7, (byte) 0x9d, (byte) 0xde, (byte) 0xc7, (byte) 0x88, 0x57, 0x51,
+        (byte) 0x84, (byte) 0xed, (byte) 0x96, (byte) 0xfb, (byte) 0xe1, 0x38, (byte) 0xef, 0x08, 0x2b, (byte) 0xf3,
+        (byte) 0xc7, (byte) 0xc3,  0x5d, (byte) 0xfe, (byte) 0xf9, 0x51, (byte) 0xe6, 0x29, (byte) 0xfc, (byte) 0xe5, 0x0d,
+        (byte) 0xa1, 0x0d, (byte) 0xa8, (byte) 0xb4, (byte) 0xae, 0x26, 0x18, 0x19, 0x4d, 0x6c, 0x0c, 0x3b, 0x12, (byte) 0xba,
+        (byte) 0xbc, 0x5f, 0x32, (byte) 0xb3, (byte) 0xbe, (byte) 0x9d, 0x17, 0x0d, 0x4d, 0x2f, 0x1a, 0x48, (byte) 0xb7,
+        (byte) 0xac, (byte) 0xf7, 0x1a, 0x43, 0x01, (byte) 0x97, (byte) 0xf4, (byte) 0xf8, 0x4c, (byte) 0xbb, 0x6a, (byte) 0xbc,
+        0x33, (byte) 0xe1, 0x73, 0x1e, (byte) 0x86, (byte) 0xfb, 0x2e, (byte) 0xb1, 0x63, 0x75, (byte) 0x85, (byte) 0xdc,
+        (byte) 0x82, 0x6c, 0x28, (byte) 0xf1, (byte) 0xe3, (byte) 0x90, 0x63, (byte) 0x9d, 0x3d, 0x48, (byte) 0x8a, (byte) 0x8c,
+        0x47, (byte) 0xe2, 0x10, 0x0b, (byte) 0xef, (byte) 0x91, (byte) 0x94, (byte) 0xb0, 0x6c, 0x4c, (byte) 0x80, 0x76, 0x03,
+        (byte) 0xe1, (byte) 0xb6, (byte) 0x90, (byte) 0x87, (byte) 0xd9, (byte) 0xae, (byte) 0xf4, (byte) 0x8e, (byte) 0xe0,
+        (byte) 0x9f, (byte) 0xe7, 0x3a, 0x2c, 0x2f, 0x21, (byte) 0xd4, 0x46, (byte) 0xba, (byte) 0x95, 0x70, (byte) 0xa9, 0x5b,
+        0x20, 0x2a, (byte) 0xfa, 0x52, 0x3e, (byte) 0x9d, (byte) 0xd9, (byte) 0xef, 0x28, (byte) 0xc5, (byte) 0xd1, 0x60,
+        (byte) 0x89, 0x68, 0x6e, 0x7f, (byte) 0xd7, (byte) 0x9e, (byte) 0x89, 0x4c, (byte) 0xeb, 0x4d, (byte) 0xd2, (byte) 0xc6,
+        (byte) 0xf4, 0x2d, 0x02, 0x5d, (byte) 0xda, (byte) 0xde, 0x33, (byte) 0xfe, (byte) 0xc1, 0x7e, (byte) 0xde, 0x4f, 0x1f,
+        (byte) 0x9b, 0x6e, 0x6f, 0x0f, 0x66, 0x71, 0x19, (byte) 0xe9, 0x43, 0x3c, (byte) 0x83, 0x0a, 0x0f, 0x28, 0x21, (byte) 0xc8,
+        0x38, (byte) 0xd3, 0x4e, 0x48, (byte) 0xdf, (byte) 0xd4, (byte) 0x99, (byte) 0xb5, (byte) 0xc6, (byte) 0x8d, (byte) 0xd4,
+        (byte) 0xc1, 0x69, 0x58, 0x79, (byte) 0x82, 0x32, (byte) 0x82, (byte) 0xd4, (byte) 0x86, (byte) 0xe2, 0x04, 0x08, 0x63,
+        (byte) 0x87, (byte) 0xf0, 0x2a, (byte) 0xf6, (byte) 0xec, 0x3e, 0x51, 0x0f, (byte) 0xda, (byte) 0xb4, 0x67, 0x19, 0x5e,
+        0x16, 0x02, (byte) 0x9f, (byte) 0xf1, 0x19, 0x0c, 0x3e, (byte) 0xb8, 0x04, 0x49, 0x07, 0x53, 0x02, 0x03, 0x01, 0x00, 0x01
     };
 
@@ -226,5 +229,6 @@
         if (!insecureCertificates.isEmpty()) {
             StringBuilder message = new StringBuilder("<html>");
-            message.append(tr("A previous version of JOSM has installed a custom certificate in order to provide HTTPS support for Remote Control:"));
+            message.append(tr("A previous version of JOSM has installed a custom certificate "+
+                    "in order to provide HTTPS support for Remote Control:"));
             message.append("<br><ul>");
             for (String alias : insecureCertificates) {
@@ -235,5 +239,6 @@
             message.append("</ul>");
             message.append(tr("It appears it could be an important <b>security risk</b>.<br><br>"+
-                    "You are now going to be prompted by Windows to remove this insecure certificate.<br>For your own safety, <b>please click Yes</b> in next dialog."));
+                    "You are now going to be prompted by Windows to remove this insecure certificate.<br>"+
+                    "For your own safety, <b>please click Yes</b> in next dialog."));
             message.append("</html>");
             JOptionPane.showMessageDialog(Main.parent, message.toString(), tr("Warning"), JOptionPane.WARNING_MESSAGE);
@@ -268,5 +273,6 @@
                 "If unsure, you can also click No then disable HTTPS support in Remote Control preferences."));
         message.append("</html>");
-        JOptionPane.showMessageDialog(Main.parent, message.toString(), tr("HTTPS support in Remote Control"), JOptionPane.INFORMATION_MESSAGE);
+        JOptionPane.showMessageDialog(Main.parent, message.toString(),
+                tr("HTTPS support in Remote Control"), JOptionPane.INFORMATION_MESSAGE);
         // install it to Windows-ROOT keystore, used by IE, Chrome and Safari, but not by Firefox
         Main.info(tr("Adding JOSM localhost certificate to {0} keystore", WINDOWS_ROOT));
