Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/ChosenRelation.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/ChosenRelation.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/ChosenRelation.java	(revision 30737)
@@ -20,5 +20,5 @@
 public class ChosenRelation implements EditLayerChangeListener, MapViewPaintable, DataSetListener {
     protected Relation chosenRelation = null;
-    private Set<ChosenRelationListener> chosenRelationListeners = new HashSet<ChosenRelationListener>();
+    private Set<ChosenRelationListener> chosenRelationListeners = new HashSet<>();
 
     public void set( Relation rel ) {
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/RelContextDialog.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/RelContextDialog.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/RelContextDialog.java	(revision 30737)
@@ -358,5 +358,5 @@
             return;
 
-        Set<Relation> relations = new TreeSet<Relation>(
+        Set<Relation> relations = new TreeSet<>(
                 DefaultNameFormatter.getInstance().getRelationComparator());
         for( OsmPrimitive element : newSelection ) {
@@ -415,5 +415,5 @@
 
     private static Map<String, List<String>> loadRoles() {
-        Map<String, List<String>> result = new HashMap<String, List<String>>();
+        Map<String, List<String>> result = new HashMap<>();
         try {
             ClassLoader classLoader = RelContextDialog.class.getClassLoader();
@@ -425,5 +425,5 @@
                 if( t.hasMoreTokens() ) {
                     String type = t.nextToken();
-                    List<String> roles = new ArrayList<String>();
+                    List<String> roles = new ArrayList<>();
                     while( t.hasMoreTokens() )
                         roles.add(t.nextToken());
@@ -442,5 +442,5 @@
         JPanel panel = new JPanel(new GridBagLayout());
 
-        List<String> items = new ArrayList<String>();
+        List<String> items = new ArrayList<>();
         for( String role : roleBoxModel.getRoles() ) {
             if( role.length() > 1 )
@@ -527,5 +527,5 @@
             Collection<OsmPrimitive> selected = Main.main.getCurrentDataSet().getSelected();
             Relation r = chosenRelation.get();
-            List<Command> commands = new ArrayList<Command>();
+            List<Command> commands = new ArrayList<>();
             for( int i = 0; i < r.getMembersCount(); i++ ) {
                 RelationMember m = r.getMember(i);
@@ -623,5 +623,5 @@
         
     private class RoleComboBoxModel extends AbstractListModel<String> implements ComboBoxModel<String> {
-        private List<String> roles = new ArrayList<String>();
+        private List<String> roles = new ArrayList<>();
         private int selectedIndex = -1;
         private JComboBox<String> combobox;
@@ -646,5 +646,5 @@
                 combobox.setEnabled(true);
 
-            List<String> items = new ArrayList<String>();
+            List<String> items = new ArrayList<>();
             if( chosenRelation != null && chosenRelation.get() != null ) {
                 if( chosenRelation.isMultipolygon() ) {
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/AddRemoveMemberAction.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/AddRemoveMemberAction.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/AddRemoveMemberAction.java	(revision 30737)
@@ -52,5 +52,5 @@
         Relation r = new Relation(rel.get());
 
-        Collection<OsmPrimitive> toAdd = new ArrayList<OsmPrimitive>(getCurrentDataSet().getSelected());
+        Collection<OsmPrimitive> toAdd = new ArrayList<>(getCurrentDataSet().getSelected());
         toAdd.remove(rel.get());
         toAdd.removeAll(r.getMemberPrimitives());
@@ -132,5 +132,5 @@
             state = 0;
         else {
-            Collection<OsmPrimitive> toAdd = new ArrayList<OsmPrimitive>(getCurrentDataSet().getSelected());
+            Collection<OsmPrimitive> toAdd = new ArrayList<>(getCurrentDataSet().getSelected());
             toAdd.remove(rel.get());
             int selectedSize = toAdd.size();
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/CreateMultipolygonAction.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/CreateMultipolygonAction.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/CreateMultipolygonAction.java	(revision 30737)
@@ -69,5 +69,5 @@
 	    } else {
 		if( TheRing.areAllOfThoseRings(selectedWays) ) {
-		    List<Command> commands = new ArrayList<Command>();
+		    List<Command> commands = new ArrayList<>();
 		    rels = TheRing.makeManySimpleMultipolygons(getCurrentDataSet().getSelectedWays(), commands);
 		    if( !commands.isEmpty() )
@@ -108,5 +108,5 @@
 	if( !list.isEmpty() && isBoundary ) {
 	    Main.main.undoRedo.add(new SequenceCommand(tr("Move tags from ways to relation"), list));
-	    list = new ArrayList<Command>();
+	    list = new ArrayList<>();
 	}
 	if( isBoundary ) {
@@ -179,5 +179,5 @@
      */
     private List<Command> fixWayTagsForBoundary( Relation rel ) {
-	List<Command> commands = new ArrayList<Command>();
+	List<Command> commands = new ArrayList<>();
 	if( !rel.hasKey("boundary") || !rel.hasKey("admin_level") )
 	    return commands;
@@ -189,6 +189,6 @@
 	    return commands;
 	}
-	Set<OsmPrimitive> waysBoundary = new HashSet<OsmPrimitive>();
-	Set<OsmPrimitive> waysAdminLevel = new HashSet<OsmPrimitive>();
+	Set<OsmPrimitive> waysBoundary = new HashSet<>();
+	Set<OsmPrimitive> waysAdminLevel = new HashSet<>();
 	for( OsmPrimitive p : rel.getMemberPrimitives() ) {
 	    if( p instanceof Way ) {
@@ -222,5 +222,5 @@
     }
     static public final List<String> DEFAULT_LINEAR_TAGS = Arrays.asList(new String[] {"barrier", "source"});
-    private static final Set<String> REMOVE_FROM_BOUNDARY_TAGS = new TreeSet<String>(Arrays.asList(new String[] {
+    private static final Set<String> REMOVE_FROM_BOUNDARY_TAGS = new TreeSet<>(Arrays.asList(new String[] {
 		"boundary", "boundary_type", "type", "admin_level"
 	    }));
@@ -232,5 +232,5 @@
      */
     private List<Command> removeTagsFromInnerWays( Relation relation ) {
-	Map<String, String> values = new HashMap<String, String>();
+	Map<String, String> values = new HashMap<>();
 
 	if( relation.hasKeys() ) {
@@ -240,8 +240,8 @@
 	}
 
-	List<Way> innerWays = new ArrayList<Way>();
-	List<Way> outerWays = new ArrayList<Way>();
-
-	Set<String> conflictingKeys = new TreeSet<String>();
+	List<Way> innerWays = new ArrayList<>();
+	List<Way> outerWays = new ArrayList<>();
+
+	Set<String> conflictingKeys = new TreeSet<>();
 
 	for( RelationMember m : relation.getMembers() ) {
@@ -284,5 +284,5 @@
 	String name = values.get("name");
 	if( isBoundary ) {
-	    Set<String> keySet = new TreeSet<String>(values.keySet());
+	    Set<String> keySet = new TreeSet<>(values.keySet());
 	    for( String key : keySet )
 		if( !REMOVE_FROM_BOUNDARY_TAGS.contains(key) )
@@ -292,9 +292,9 @@
 	values.put("area", "yes");
 
-	List<Command> commands = new ArrayList<Command>();
+	List<Command> commands = new ArrayList<>();
 	boolean moveTags = getPref("tags");
 
 	for( String key : values.keySet() ) {
-	    List<OsmPrimitive> affectedWays = new ArrayList<OsmPrimitive>();
+	    List<OsmPrimitive> affectedWays = new ArrayList<>();
 	    String value = values.get(key);
 
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/DownloadChosenRelationAction.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/DownloadChosenRelationAction.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/DownloadChosenRelationAction.java	(revision 30737)
@@ -68,5 +68,5 @@
     protected void downloadIncomplete( Relation rel ) {
         if( rel.isNew() ) return;
-        Set<OsmPrimitive> ret = new HashSet<OsmPrimitive>();
+        Set<OsmPrimitive> ret = new HashSet<>();
         ret.addAll(rel.getIncompleteMembers());
         if( ret.isEmpty() ) return;
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/DownloadParentsAction.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/DownloadParentsAction.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/DownloadParentsAction.java	(revision 30737)
@@ -43,5 +43,5 @@
         Relation relation = rel.get();
         if( relation == null ) return;
-        List<OsmPrimitive> objects = new ArrayList<OsmPrimitive>();
+        List<OsmPrimitive> objects = new ArrayList<>();
         objects.add(relation);
         objects.addAll(relation.getMemberPrimitives());
@@ -61,5 +61,5 @@
     protected void downloadIncomplete( Relation rel ) {
         if( rel.isNew() ) return;
-        Set<OsmPrimitive> ret = new HashSet<OsmPrimitive>();
+        Set<OsmPrimitive> ret = new HashSet<>();
         ret.addAll(rel.getIncompleteMembers());
         if( ret.isEmpty() ) return;
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/FindRelationAction.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/FindRelationAction.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/FindRelationAction.java	(revision 30737)
@@ -123,5 +123,5 @@
         String[] keywords = filter == null ? new String[0] : filter.split("\\s+");
         if( keywords.length > 0 ) {
-            List<String> filteredKeywords = new ArrayList<String>(keywords.length);
+            List<String> filteredKeywords = new ArrayList<>(keywords.length);
             for( String s : keywords )
                 if( s.length() > 0 )
@@ -134,5 +134,5 @@
             System.out.println("keyword["+i+"] = " + keywords[i]);
 
-        List<Relation> relations = new ArrayList<Relation>();
+        List<Relation> relations = new ArrayList<>();
         if( getEditLayer() != null ) {
             for( Relation r : getEditLayer().data.getRelations() ) {
@@ -168,5 +168,5 @@
      */
     protected class FindRelationListModel extends AbstractListModel<Relation> {
-        private final ArrayList<Relation> relations = new ArrayList<Relation>();
+        private final ArrayList<Relation> relations = new ArrayList<>();
         private DefaultListSelectionModel selectionModel;
 
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/ReconstructPolygonAction.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/ReconstructPolygonAction.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/ReconstructPolygonAction.java	(revision 30737)
@@ -55,5 +55,5 @@
     public void actionPerformed( ActionEvent e ) {
         Relation r = rel.get();
-	List<Way> ways = new ArrayList<Way>();
+	List<Way> ways = new ArrayList<>();
 	boolean wont = false;
 	for( RelationMember m : r.getMembers() ) {
@@ -81,6 +81,6 @@
 	
 	rel.clear();
-	List<Way> newSelection = new ArrayList<Way>();
-	List<Command> commands = new ArrayList<Command>();
+	List<Way> newSelection = new ArrayList<>();
+	List<Command> commands = new ArrayList<>();
         Command c = DeleteCommand.delete(Main.main.getEditLayer(), Collections.singleton(r), true, true);
         if( c == null )
@@ -92,5 +92,5 @@
 	    Map<String, String> tags = p.ways.get(0).getKeys();
 	    List<OsmPrimitive> relations = p.ways.get(0).getReferrers();
-	    Set<String> noTags = new HashSet<String>(r.keySet());
+	    Set<String> noTags = new HashSet<>(r.keySet());
 	    for( int i = 1; i < p.ways.size(); i++ ) {
 		Way w = p.ways.get(i);
@@ -115,5 +115,5 @@
 		if( w.getReferrers().equals(relations) ) {
 		    // check tags that remain
-		    Set<String> keys = new HashSet<String>(w.keySet());
+		    Set<String> keys = new HashSet<>(w.keySet());
 		    keys.removeAll(tags.keySet());
 		    keys.removeAll(IRRELEVANT_KEYS);
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/RelationHelpAction.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/RelationHelpAction.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/RelationHelpAction.java	(revision 30737)
@@ -43,5 +43,5 @@
             String base = Main.pref.get("url.openstreetmap-wiki", "http://wiki.openstreetmap.org/wiki/");
             String lang = LanguageInfo.getWikiLanguagePrefix();
-            final List<URI> uris = new ArrayList<URI>();
+            final List<URI> uris = new ArrayList<>();
             String type = URLEncoder.encode(rel.get().get("type"), "UTF-8");
 
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/SortAndFixAction.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/SortAndFixAction.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/SortAndFixAction.java	(revision 30737)
@@ -39,5 +39,5 @@
 
         // construct all available fixers
-        fixers = new ArrayList<RelationFixer>();
+        fixers = new ArrayList<>();
         //should be before multipolygon as takes special case of multipolygon relation - boundary
         fixers.add(new BoundaryFixer()); // boundary, multipolygon, boundary=administrative
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/SplittingMultipolygons.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/SplittingMultipolygons.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/SplittingMultipolygons.java	(revision 30737)
@@ -24,6 +24,6 @@
 
     public static boolean canProcess( Collection<Way> ways ) {
-	List<Way> rings = new ArrayList<Way>();
-	List<Way> arcs = new ArrayList<Way>();
+	List<Way> rings = new ArrayList<>();
+	List<Way> arcs = new ArrayList<>();
 	Area a = Main.main.getCurrentDataSet().getDataSourceArea();
 	for( Way way : ways ) {
@@ -70,7 +70,7 @@
     public static List<Relation> process( Collection<Way> selectedWays ) {
 //	System.out.println("---------------------------------------");
-	List<Relation> result = new ArrayList<Relation>();
-	List<Way> rings = new ArrayList<Way>();
-	List<Way> arcs = new ArrayList<Way>();
+	List<Relation> result = new ArrayList<>();
+	List<Way> rings = new ArrayList<>();
+	List<Way> arcs = new ArrayList<>();
 	for( Way way : selectedWays ) {
 	    if( way.isClosed() )
@@ -81,5 +81,5 @@
 
 	for( Way ring : rings ) {
-	    List<Command> commands = new ArrayList<Command>();
+	    List<Command> commands = new ArrayList<>();
 	    Relation newRelation = SplittingMultipolygons.attachRingToNeighbours(ring, commands);
 	    if( newRelation != null && !commands.isEmpty() ) {
@@ -90,5 +90,5 @@
 
 	for( Way arc : arcs) {
-	    List<Command> commands = new ArrayList<Command>();
+	    List<Command> commands = new ArrayList<>();
 	    Relation newRelation = SplittingMultipolygons.tryToCloseOneWay(arc, commands);
 	    if( newRelation != null && !commands.isEmpty() ) {
@@ -105,5 +105,5 @@
     private static void closePolygon( List<Node> base, List<Node> append ) {
 	if( append.get(0).equals(base.get(0)) && append.get(append.size() - 1).equals(base.get(base.size() - 1)) ) {
-	    List<Node> ap2 = new ArrayList<Node>(append);
+	    List<Node> ap2 = new ArrayList<>(append);
 	    Collections.reverse(ap2);
 	    append = ap2;
@@ -131,5 +131,5 @@
      */
     public static List<Way> splitWay( Way w, Node n1, Node n2, List<Command> commands ) {
-	List<Node> nodes = new ArrayList<Node>(w.getNodes());
+	List<Node> nodes = new ArrayList<>(w.getNodes());
 	if( w.isClosed() )
 	    nodes.remove(nodes.size() - 1);
@@ -150,11 +150,11 @@
 
 	// make a list of segments
-	List<List<Node>> chunks = new ArrayList<List<Node>>(2);
-	List<Node> chunk = new ArrayList<Node>();
+	List<List<Node>> chunks = new ArrayList<>(2);
+	List<Node> chunk = new ArrayList<>();
 	for( int i = 0; i < nodes.size(); i++ ) {
 	    chunk.add(nodes.get(i));
 	    if( (w.isClosed() || chunk.size() > 1) && (i == index1 || i == index2) ) {
 		chunks.add(chunk);
-		chunk = new ArrayList<Node>();
+		chunk = new ArrayList<>();
 		chunk.add(nodes.get(i));
 	    }
@@ -177,6 +177,6 @@
 
 	// build a map of referencing relations
-	Map<Relation, Integer> references = new HashMap<Relation, Integer>();
-	List<Command> relationCommands = new ArrayList<Command>();
+	Map<Relation, Integer> references = new HashMap<>();
+	List<Command> relationCommands = new ArrayList<>();
 	for( OsmPrimitive p : w.getReferrers() ) {
 	    if( p instanceof Relation ) {
@@ -191,5 +191,5 @@
 
 	// build ways
-	List<Way> result = new ArrayList<Way>();
+	List<Way> result = new ArrayList<>();
 	Way updatedWay = commands == null ? w : new Way(w);
 	updatedWay.setNodes(chunks.get(0));
@@ -245,5 +245,5 @@
 
 	// time to create a new multipolygon relation and a command stack
-	List<Command> commands = new ArrayList<Command>();
+	List<Command> commands = new ArrayList<>();
 	Relation newRelation = new Relation();
 	newRelation.put("type", "multipolygon");
@@ -263,5 +263,5 @@
 
 	// now split the way, at last
-	List<Way> newWays = new ArrayList<Way>(splitWay(target, segment.firstNode(), segment.lastNode(), commands));
+	List<Way> newWays = new ArrayList<>(splitWay(target, segment.firstNode(), segment.lastNode(), commands));
 
 	Way addingWay = null;
@@ -269,5 +269,5 @@
 	    Way utarget = newWays.get(1);
 	    Way alternate = newWays.get(0);
-	    List<Node> testRing = new ArrayList<Node>(segment.getNodes());
+	    List<Node> testRing = new ArrayList<>(segment.getNodes());
 	    closePolygon(testRing, utarget.getNodes());
 	    addingWay = segmentInsidePolygon(alternate.getNode(0), alternate.getNode(1), testRing) ? alternate : utarget;
@@ -292,5 +292,5 @@
      */
     private static <T> List<T> intersection( Collection<T> list1, Collection<T> list2 ) {
-	List<T> result = new ArrayList<T>();
+	List<T> result = new ArrayList<>();
 	for( T item : list1 )
 	    if( list2.contains(item) )
@@ -305,5 +305,5 @@
 	if( !ring.isClosed() || ring.isIncomplete() )
 	    return null;
-	Map<Way, Boolean> touchingWays = new HashMap<Way, Boolean>();
+	Map<Way, Boolean> touchingWays = new HashMap<>();
 	for( Node n : ring.getNodes() ) {
 	    for( OsmPrimitive p : n.getReferrers() ) {
@@ -322,5 +322,5 @@
 	}
 	
-	List<TheRing> otherWays = new ArrayList<TheRing>();
+	List<TheRing> otherWays = new ArrayList<>();
 	for( Way w : touchingWays.keySet() )
 	    if( touchingWays.get(w) ) {
@@ -335,5 +335,5 @@
 	
 	// now touchingWays has only ways that touch the ring twice
-	List<Command> commands = new ArrayList<Command>();
+	List<Command> commands = new ArrayList<>();
 	TheRing theRing = new TheRing(ring); // this is actually useful
 	
@@ -345,5 +345,5 @@
 	    otherRing.putSourceWayFirst();
 	
-	Map<Relation, Relation> relationCache = new HashMap<Relation, Relation>();
+	Map<Relation, Relation> relationCache = new HashMap<>();
 	for( TheRing otherRing : otherWays )
 	    commands.addAll(otherRing.getCommands(false, relationCache));
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/TheRing.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/TheRing.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/actions/TheRing.java	(revision 30737)
@@ -37,10 +37,10 @@
     public TheRing( Way source ) {
 	this.source = source;
-	segments = new ArrayList<RingSegment>(1);
+	segments = new ArrayList<>(1);
 	segments.add(new RingSegment(source));
     }
     
     public static boolean areAllOfThoseRings( Collection<Way> ways ) {
-	List<Way> rings = new ArrayList<Way>();
+	List<Way> rings = new ArrayList<>();
 	for( Way way : ways ) {
 	    if( way.isClosed() )
@@ -70,5 +70,5 @@
     public static List<Relation> makeManySimpleMultipolygons( Collection<Way> selection, List<Command> commands ) {
 	log("---------------------------------------");
-	List<TheRing> rings = new ArrayList<TheRing>(selection.size());
+	List<TheRing> rings = new ArrayList<>(selection.size());
 	for( Way w : selection )
 	    rings.add(new TheRing(w));
@@ -77,6 +77,6 @@
 		rings.get(i).collide(rings.get(j));
 	redistributeSegments(rings);
-	List<Relation> relations = new ArrayList<Relation>();
-	Map<Relation, Relation> relationCache = new HashMap<Relation, Relation>();
+	List<Relation> relations = new ArrayList<>();
+	Map<Relation, Relation> relationCache = new HashMap<>();
 	for( TheRing r : rings ) {
 	    commands.addAll(r.getCommands(relationCache));
@@ -247,5 +247,5 @@
     public static void redistributeSegments( List<TheRing> rings ) {
 	// build segments map
-	Map<RingSegment, TheRing> segmentMap = new HashMap<RingSegment, TheRing>();
+	Map<RingSegment, TheRing> segmentMap = new HashMap<>();
 	for( TheRing ring : rings )
 	    for( RingSegment seg : ring.segments )
@@ -317,6 +317,6 @@
 
 	// build a map of referencing relations
-	Map<Relation, Integer> referencingRelations = new HashMap<Relation, Integer>();
-	List<Command> relationCommands = new ArrayList<Command>();
+	Map<Relation, Integer> referencingRelations = new HashMap<>();
+	List<Command> relationCommands = new ArrayList<>();
 	for( OsmPrimitive p : source.getReferrers() ) {
 	    if( p instanceof Relation ) {
@@ -342,5 +342,5 @@
 	// Ð¿Ð¾Ñ�Ñ‚Ð¾Ð¼Ñƒ Ñ�Ð¾Ñ…Ñ€Ð°Ð½Ñ�ÐµÑ‚Ñ�Ñ� Ñ‚Ð¾Ð»ÑŒÐºÐ¾ Ð¿ÐµÑ€Ð²Ð¾Ðµ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ðµ
 
-	List<Command> commands = new ArrayList<Command>();
+	List<Command> commands = new ArrayList<>();
 	boolean foundOwnWay = false;
 	for( RingSegment seg : segments ) {
@@ -464,5 +464,5 @@
 	    if( pos <= 0 || pos >= nodes.size() - 1 )
 		return null;
-	    List<Node> newNodes = new ArrayList<Node>(nodes.subList(pos, nodes.size()));
+	    List<Node> newNodes = new ArrayList<>(nodes.subList(pos, nodes.size()));
 	    nodes.subList(pos + 1, nodes.size()).clear();
 	    return new RingSegment(newNodes);
@@ -489,5 +489,5 @@
 		return null;
 
-	    List<Node> newNodes = new ArrayList<Node>();
+	    List<Node> newNodes = new ArrayList<>();
 	    if( pos2 > pos1 ) {
 		newNodes.addAll(nodes.subList(pos2, nodes.size()));
@@ -499,5 +499,5 @@
 	    } else {
 		newNodes.addAll(nodes.subList(pos2, pos1 + 1));
-		nodes.addAll(new ArrayList<Node>(nodes.subList(0, pos2 + 1)));
+		nodes.addAll(new ArrayList<>(nodes.subList(0, pos2 + 1)));
 		nodes.subList(0, pos1).clear();
 	    }
@@ -513,5 +513,5 @@
 	    if( nodes == null )
 		throw new IllegalArgumentException("Won't give you wayNodes: it is a reference");
-	    List<Node> wayNodes = new ArrayList<Node>(nodes);
+	    List<Node> wayNodes = new ArrayList<>(nodes);
 	    if( isRing )
 		wayNodes.add(wayNodes.get(0));
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/relationfix/AssociatedStreetFixer.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/relationfix/AssociatedStreetFixer.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/relationfix/AssociatedStreetFixer.java	(revision 30737)
@@ -100,5 +100,5 @@
 
 		// fill relation name
-		Map<String, Integer> streetNames = new HashMap<String, Integer>();
+		Map<String, Integer> streetNames = new HashMap<>();
 		for (RelationMember m : rel.getMembers())
 			if ("street".equals(m.getRole()) && m.isWay()) {
@@ -126,5 +126,5 @@
 		}
 
-		List<Command> commandList = new ArrayList<Command>();
+		List<Command> commandList = new ArrayList<>();
 		if (fixed) {
 			commandList.add(new ChangeCommand(source, rel));
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/relationfix/MultipolygonFixer.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/relationfix/MultipolygonFixer.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/relationfix/MultipolygonFixer.java	(revision 30737)
@@ -52,5 +52,5 @@
      */
     protected Relation fixMultipolygonRoles( Relation source ) {
-        Collection<Way> ways = new ArrayList<Way>();
+        Collection<Way> ways = new ArrayList<>();
         for( OsmPrimitive p : source.getMemberPrimitives() )
             if( p instanceof Way )
@@ -63,9 +63,9 @@
         Relation r = new Relation(source);
         boolean fixed = false;
-        Set<Way> outerWays = new HashSet<Way>();
+        Set<Way> outerWays = new HashSet<>();
         for( MultipolygonBuilder.JoinedPolygon poly : mpc.outerWays )
             for( Way w : poly.ways )
                 outerWays.add(w);
-        Set<Way> innerWays = new HashSet<Way>();
+        Set<Way> innerWays = new HashSet<>();
         for( MultipolygonBuilder.JoinedPolygon poly : mpc.innerWays )
             for( Way w : poly.ways )
Index: applications/editors/josm/plugins/reltoolbox/src/relcontext/relationfix/RelationFixer.java
===================================================================
--- applications/editors/josm/plugins/reltoolbox/src/relcontext/relationfix/RelationFixer.java	(revision 30701)
+++ applications/editors/josm/plugins/reltoolbox/src/relcontext/relationfix/RelationFixer.java	(revision 30737)
@@ -23,5 +23,5 @@
 	 */
 	public RelationFixer(String... types) {
-	    applicableTypes = new ArrayList<String>();
+	    applicableTypes = new ArrayList<>();
 		for(String type: types) {
 			applicableTypes.add(type);
