Index: applications/editors/josm/plugins/gpsblam/src/org/openstreetmap/josm/plugins/gpsblam/GPSBlamInputData.java
===================================================================
--- applications/editors/josm/plugins/gpsblam/src/org/openstreetmap/josm/plugins/gpsblam/GPSBlamInputData.java	(revision 33776)
+++ applications/editors/josm/plugins/gpsblam/src/org/openstreetmap/josm/plugins/gpsblam/GPSBlamInputData.java	(revision 34515)
@@ -9,5 +9,4 @@
 import java.util.LinkedList;
 
-import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.data.coor.CachedLatLon;
 import org.openstreetmap.josm.data.gpx.GpxTrack;
@@ -15,4 +14,5 @@
 import org.openstreetmap.josm.data.gpx.WayPoint;
 import org.openstreetmap.josm.data.projection.Projection;
+import org.openstreetmap.josm.data.projection.ProjectionRegistry;
 import org.openstreetmap.josm.gui.MainApplication;
 import org.openstreetmap.josm.gui.layer.GpxLayer;
@@ -30,8 +30,8 @@
     GPSBlamInputData(Point p1, Point p2, int radius) {
         Collection<Layer> layers = MainApplication.getLayerManager().getLayers();
-        Projection projection = Main.getProjection();
+        Projection projection = ProjectionRegistry.getProjection();
         for (Layer l : layers) {
             if (l.isVisible() && l instanceof GpxLayer) {
-                for (GpxTrack track : ((GpxLayer)l).data.tracks) {
+                for (GpxTrack track : ((GpxLayer) l).data.tracks) {
                     for (GpxTrackSegment segment: track.getSegments()) {
                         for (WayPoint wayPoint : segment.getWayPoints()) {
@@ -69,16 +69,16 @@
                                     this.add(cll, wayPoint);
                                 }
-                            } // end if circular else line based selection
-                        } // end loop over wayponts in segment
-                    } // end loop over segments in track
-                } // end loop over tracks in layer
-            } // end if layer visible
-        } // end loop over layers
-    } // end constructor
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
 
     private void add(CachedLatLon cll, WayPoint wayPoint) {
         this.add(cll);
         Calendar day = new GregorianCalendar();
-        day.setTimeInMillis((long)wayPoint.time*1000);
+        day.setTimeInMillis((long) (wayPoint.time*1000d));
         day.set(Calendar.HOUR_OF_DAY, 0);
         day.set(Calendar.MINUTE, 0);
Index: applications/editors/josm/plugins/gpsblam/src/org/openstreetmap/josm/plugins/gpsblam/GPSBlamMarker.java
===================================================================
--- applications/editors/josm/plugins/gpsblam/src/org/openstreetmap/josm/plugins/gpsblam/GPSBlamMarker.java	(revision 33776)
+++ applications/editors/josm/plugins/gpsblam/src/org/openstreetmap/josm/plugins/gpsblam/GPSBlamMarker.java	(revision 34515)
@@ -11,8 +11,8 @@
 import java.awt.geom.Point2D;
 
-import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.data.coor.CachedLatLon;
 import org.openstreetmap.josm.data.coor.EastNorth;
 import org.openstreetmap.josm.data.projection.Projection;
+import org.openstreetmap.josm.data.projection.ProjectionRegistry;
 import org.openstreetmap.josm.gui.MapView;
 
@@ -23,7 +23,10 @@
     private static final double FAC = 2.45; // 2.45 gives 95% CI for 2D
 
-    /** construct a blammarker by analysis of selected GPS points */
+    /**
+     * Construct a blammarker by analysis of selected GPS points
+     * @param inputData input data
+     */
     GPSBlamMarker(GPSBlamInputData inputData) {
-        Projection projection = Main.getProjection();
+        Projection projection = ProjectionRegistry.getProjection();
         // get mean east, north
         double meanEast=0.0, meanNorth=0.0;
@@ -67,5 +70,5 @@
 
         // save latlon coords of the mean and the ends of the crosshairs
-        Projection proj = Main.getProjection();
+        Projection proj = ProjectionRegistry.getProjection();
         mean = new CachedLatLon(proj.eastNorth2latlon(new EastNorth(meanEast, meanNorth)));
         hair1Coord1 = new CachedLatLon(proj.eastNorth2latlon(
@@ -88,5 +91,5 @@
 
     void paint(Graphics2D g, MapView mv) {
-        Projection projection = Main.getProjection();
+        Projection projection = ProjectionRegistry.getProjection();
         g.setColor(Color.GREEN);
         g.setPaintMode();
