Index: applications/editors/josm/plugins/rasterfilters/build.xml
===================================================================
--- applications/editors/josm/plugins/rasterfilters/build.xml	(revision 33892)
+++ applications/editors/josm/plugins/rasterfilters/build.xml	(revision 33893)
@@ -10,6 +10,6 @@
 	
 	<!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
-	<property name="plugin.main.version" value="12782" />
-	<property name="plugin.version" value="1.0.2"/>
+	<property name="plugin.main.version" value="13007" />
+	<property name="plugin.version" value="1.0.3"/>
 
     <property name="plugin.icon" value="images/josm_filters_48.png"/>
Index: applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/RasterFiltersPlugin.java
===================================================================
--- applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/RasterFiltersPlugin.java	(revision 33892)
+++ applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/RasterFiltersPlugin.java	(revision 33893)
@@ -44,5 +44,5 @@
         Logging.debug("Loading RasterFiltersPlugin");
 
-        File file = new File(getPluginDir());
+        File file = getPluginDirs().getUserDataDirectory(false);
         if (file.mkdir()) {
 
@@ -58,5 +58,5 @@
         }
 
-        FiltersDownloader.setPluginDir(getPluginDir());
+        FiltersDownloader.setPluginDir(file);
     }
 
Index: applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/preferences/FiltersDownloader.java
===================================================================
--- applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/preferences/FiltersDownloader.java	(revision 33892)
+++ applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/preferences/FiltersDownloader.java	(revision 33893)
@@ -49,9 +49,9 @@
  */
 public class FiltersDownloader implements ActionListener {
-    private static volatile String pluginDir;
+    private static volatile File pluginDir;
 
     public static Set<JsonObject> filtersMeta = new HashSet<>();
     public static Set<String> filterTitles = new TreeSet<>();
-    public static Set<URL> binariesLocalUrls = new HashSet<>();
+    public static List<URL> binariesLocalUrls = new ArrayList<>();
     public static ClassLoader loader;
     public static Map<String, String> urlsMap = new HashMap<>();
@@ -312,5 +312,5 @@
     }
 
-    public static void setPluginDir(String dir) {
+    public static void setPluginDir(File dir) {
         pluginDir = dir;
     }
@@ -327,5 +327,5 @@
 
         String localFile = null;
-        File plugin = new File(pluginDir);
+        File plugin = pluginDir;
         Logging.debug("plugin dir" + plugin.getAbsolutePath());
 
Index: applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/preferences/RasterFiltersPreferences.java
===================================================================
--- applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/preferences/RasterFiltersPreferences.java	(revision 33892)
+++ applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/preferences/RasterFiltersPreferences.java	(revision 33893)
@@ -4,4 +4,5 @@
 import java.awt.GridBagLayout;
 import java.util.List;
+import java.util.Objects;
 
 import javax.json.JsonObject;
@@ -90,5 +91,5 @@
             String paramName = meta.getString("name");
             paramName = "rasterfilters." + paramName;
-            Main.pref.put(paramName, temp.isNeedToDownload());
+            Main.pref.putBoolean(paramName, temp.isNeedToDownload());
         }
 
@@ -244,6 +245,10 @@
     @Override
     public String toString() {
-        return "name: " + getName() + "\nDescription: " + getDescription()
-                + "\nMeta: " + getMeta();
+        return "name: " + getName() + "\nDescription: " + getDescription() + "\nMeta: " + getMeta();
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(name, meta, description);
     }
 
Index: applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/values/SliderValue.java
===================================================================
--- applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/values/SliderValue.java	(revision 33892)
+++ applications/editors/josm/plugins/rasterfilters/src/org/openstreetmap/josm/plugins/rasterfilters/values/SliderValue.java	(revision 33893)
@@ -4,10 +4,10 @@
  * @author Nipel-Crumple
  */
-public class SliderValue<Number> implements Value<Number> {
+public class SliderValue<T> implements Value<T> {
 
     private String parameterName;
-    private Number value;
+    private T value;
 
-    public SliderValue(String parameterName, Number value) {
+    public SliderValue(String parameterName, T value) {
         this.value = value;
         this.parameterName = parameterName;
@@ -15,10 +15,10 @@
 
     @Override
-    public Number getValue() {
+    public T getValue() {
         return value;
     }
 
     @Override
-    public void setValue(Number value) {
+    public void setValue(T value) {
         this.value = value;
     }
