Index: /trunk/src/org/openstreetmap/josm/data/osm/Relation.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/osm/Relation.java	(revision 10688)
+++ /trunk/src/org/openstreetmap/josm/data/osm/Relation.java	(revision 10689)
@@ -10,4 +10,5 @@
 import java.util.Map;
 import java.util.Set;
+import java.util.function.Function;
 
 import org.openstreetmap.josm.Main;
@@ -17,5 +18,4 @@
 import org.openstreetmap.josm.tools.SubclassFilteredCollection;
 import org.openstreetmap.josm.tools.Utils;
-import org.openstreetmap.josm.tools.Utils.Function;
 
 /**
Index: /trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/ExpressionFactory.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/ExpressionFactory.java	(revision 10688)
+++ /trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/ExpressionFactory.java	(revision 10689)
@@ -17,4 +17,5 @@
 import java.util.List;
 import java.util.TreeSet;
+import java.util.function.Function;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -40,5 +41,4 @@
 import org.openstreetmap.josm.tools.SubclassFilteredCollection;
 import org.openstreetmap.josm.tools.Utils;
-import org.openstreetmap.josm.tools.Utils.Function;
 
 /**
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionManager.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionManager.java	(revision 10688)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionManager.java	(revision 10689)
@@ -13,4 +13,5 @@
 import java.util.Objects;
 import java.util.Set;
+import java.util.function.Function;
 
 import org.openstreetmap.josm.Main;
@@ -38,5 +39,4 @@
 import org.openstreetmap.josm.tools.MultiMap;
 import org.openstreetmap.josm.tools.Utils;
-import org.openstreetmap.josm.tools.Utils.Function;
 
 /**
Index: /trunk/src/org/openstreetmap/josm/io/MultiFetchOverpassObjectReader.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/io/MultiFetchOverpassObjectReader.java	(revision 10688)
+++ /trunk/src/org/openstreetmap/josm/io/MultiFetchOverpassObjectReader.java	(revision 10689)
@@ -3,4 +3,5 @@
 
 import java.util.Set;
+import java.util.function.Function;
 
 import org.openstreetmap.josm.data.osm.OsmPrimitiveType;
@@ -17,5 +18,5 @@
     @Override
     protected String buildRequestString(final OsmPrimitiveType type, Set<Long> idPackage) {
-        final Utils.Function<Long, Object> toOverpassExpression = x -> type.getAPIName() + '(' + x + ");>;";
+        final Function<Long, Object> toOverpassExpression = x -> type.getAPIName() + '(' + x + ");>;";
         final String query = '(' + Utils.join("", Utils.transform(idPackage, toOverpassExpression)) + ");out meta;";
         return "interpreter?data=" + Utils.encodeUrl(query);
Index: /trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/ImageryHandler.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/ImageryHandler.java	(revision 10688)
+++ /trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/ImageryHandler.java	(revision 10689)
@@ -5,4 +5,5 @@
 
 import java.util.Arrays;
+import java.util.function.Function;
 
 import org.openstreetmap.josm.Main;
@@ -14,5 +15,4 @@
 import org.openstreetmap.josm.io.remotecontrol.PermissionPrefWithDefault;
 import org.openstreetmap.josm.tools.Utils;
-import org.openstreetmap.josm.tools.Utils.Function;
 
 /**
Index: /trunk/src/org/openstreetmap/josm/tools/ExceptionUtil.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/ExceptionUtil.java	(revision 10688)
+++ /trunk/src/org/openstreetmap/josm/tools/ExceptionUtil.java	(revision 10689)
@@ -16,4 +16,5 @@
 import java.util.Date;
 import java.util.TreeSet;
+import java.util.function.Function;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -34,5 +35,4 @@
 import org.openstreetmap.josm.io.OsmTransferException;
 import org.openstreetmap.josm.io.auth.CredentialsManager;
-import org.openstreetmap.josm.tools.Utils.Function;
 import org.openstreetmap.josm.tools.date.DateUtils;
 
Index: /trunk/src/org/openstreetmap/josm/tools/Utils.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/Utils.java	(revision 10688)
+++ /trunk/src/org/openstreetmap/josm/tools/Utils.java	(revision 10689)
@@ -770,5 +770,5 @@
     @Deprecated
     @FunctionalInterface
-    public interface Function<A, B> {
+    public interface Function<A, B> extends java.util.function.Function<A, B> {
 
         /**
@@ -777,4 +777,5 @@
          * @return the transformed object
          */
+        @Override
         B apply(A x);
     }
@@ -789,5 +790,5 @@
      * @return the transformed unmodifiable collection
      */
-    public static <A, B> Collection<B> transform(final Collection<? extends A> c, final Function<A, B> f) {
+    public static <A, B> Collection<B> transform(final Collection<? extends A> c, final java.util.function.Function<A, B> f) {
         return new AbstractCollection<B>() {
 
@@ -831,5 +832,5 @@
      * @return the transformed unmodifiable list
      */
-    public static <A, B> List<B> transform(final List<? extends A> l, final Function<A, B> f) {
+    public static <A, B> List<B> transform(final List<? extends A> l, final java.util.function.Function<A, B> f) {
         return new AbstractList<B>() {
 
