Index: applications/editors/josm/plugins/pbf/gen/com/google/protobuf/DescriptorProtos.java
===================================================================
--- applications/editors/josm/plugins/pbf/gen/com/google/protobuf/DescriptorProtos.java	(revision 30736)
+++ applications/editors/josm/plugins/pbf/gen/com/google/protobuf/DescriptorProtos.java	(revision 30737)
@@ -96,5 +96,5 @@
             case 10: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
-                file_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.FileDescriptorProto>();
+                file_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000001;
               }
@@ -460,5 +460,5 @@
       private void ensureFileIsMutable() {
         if (!((bitField0_ & 0x00000001) == 0x00000001)) {
-          file_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.FileDescriptorProto>(file_);
+          file_ = new java.util.ArrayList<>(file_);
           bitField0_ |= 0x00000001;
          }
@@ -685,6 +685,5 @@
           getFileFieldBuilder() {
         if (fileBuilder_ == null) {
-          fileBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.FileDescriptorProto, com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder, com.google.protobuf.DescriptorProtos.FileDescriptorProtoOrBuilder>(
+          fileBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   file_,
                   ((bitField0_ & 0x00000001) == 0x00000001),
@@ -1093,5 +1092,5 @@
             case 34: {
               if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
-                messageType_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.DescriptorProto>();
+                messageType_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000020;
               }
@@ -1101,5 +1100,5 @@
             case 42: {
               if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-                enumType_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.EnumDescriptorProto>();
+                enumType_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000040;
               }
@@ -1109,5 +1108,5 @@
             case 50: {
               if (!((mutable_bitField0_ & 0x00000080) == 0x00000080)) {
-                service_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.ServiceDescriptorProto>();
+                service_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000080;
               }
@@ -1117,5 +1116,5 @@
             case 58: {
               if (!((mutable_bitField0_ & 0x00000100) == 0x00000100)) {
-                extension_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.FieldDescriptorProto>();
+                extension_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000100;
               }
@@ -1151,5 +1150,5 @@
             case 80: {
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
-                publicDependency_ = new java.util.ArrayList<java.lang.Integer>();
+                publicDependency_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000008;
               }
@@ -1161,5 +1160,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008) && input.getBytesUntilLimit() > 0) {
-                publicDependency_ = new java.util.ArrayList<java.lang.Integer>();
+                publicDependency_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000008;
               }
@@ -1172,5 +1171,5 @@
             case 88: {
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
-                weakDependency_ = new java.util.ArrayList<java.lang.Integer>();
+                weakDependency_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -1182,5 +1181,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
-                weakDependency_ = new java.util.ArrayList<java.lang.Integer>();
+                weakDependency_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -2687,5 +2686,5 @@
       private void ensurePublicDependencyIsMutable() {
         if (!((bitField0_ & 0x00000008) == 0x00000008)) {
-          publicDependency_ = new java.util.ArrayList<java.lang.Integer>(publicDependency_);
+          publicDependency_ = new java.util.ArrayList<>(publicDependency_);
           bitField0_ |= 0x00000008;
          }
@@ -2781,5 +2780,5 @@
       private void ensureWeakDependencyIsMutable() {
         if (!((bitField0_ & 0x00000010) == 0x00000010)) {
-          weakDependency_ = new java.util.ArrayList<java.lang.Integer>(weakDependency_);
+          weakDependency_ = new java.util.ArrayList<>(weakDependency_);
           bitField0_ |= 0x00000010;
          }
@@ -2883,5 +2882,5 @@
       private void ensureMessageTypeIsMutable() {
         if (!((bitField0_ & 0x00000020) == 0x00000020)) {
-          messageType_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.DescriptorProto>(messageType_);
+          messageType_ = new java.util.ArrayList<>(messageType_);
           bitField0_ |= 0x00000020;
          }
@@ -3180,6 +3179,5 @@
           getMessageTypeFieldBuilder() {
         if (messageTypeBuilder_ == null) {
-          messageTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.DescriptorProto, com.google.protobuf.DescriptorProtos.DescriptorProto.Builder, com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder>(
+          messageTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   messageType_,
                   ((bitField0_ & 0x00000020) == 0x00000020),
@@ -3195,5 +3193,5 @@
       private void ensureEnumTypeIsMutable() {
         if (!((bitField0_ & 0x00000040) == 0x00000040)) {
-          enumType_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.EnumDescriptorProto>(enumType_);
+          enumType_ = new java.util.ArrayList<>(enumType_);
           bitField0_ |= 0x00000040;
          }
@@ -3420,6 +3418,5 @@
           getEnumTypeFieldBuilder() {
         if (enumTypeBuilder_ == null) {
-          enumTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.EnumDescriptorProto, com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder, com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder>(
+          enumTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   enumType_,
                   ((bitField0_ & 0x00000040) == 0x00000040),
@@ -3435,5 +3432,5 @@
       private void ensureServiceIsMutable() {
         if (!((bitField0_ & 0x00000080) == 0x00000080)) {
-          service_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.ServiceDescriptorProto>(service_);
+          service_ = new java.util.ArrayList<>(service_);
           bitField0_ |= 0x00000080;
          }
@@ -3660,6 +3657,5 @@
           getServiceFieldBuilder() {
         if (serviceBuilder_ == null) {
-          serviceBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.ServiceDescriptorProto, com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder, com.google.protobuf.DescriptorProtos.ServiceDescriptorProtoOrBuilder>(
+          serviceBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   service_,
                   ((bitField0_ & 0x00000080) == 0x00000080),
@@ -3675,5 +3671,5 @@
       private void ensureExtensionIsMutable() {
         if (!((bitField0_ & 0x00000100) == 0x00000100)) {
-          extension_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.FieldDescriptorProto>(extension_);
+          extension_ = new java.util.ArrayList<>(extension_);
           bitField0_ |= 0x00000100;
          }
@@ -3900,6 +3896,5 @@
           getExtensionFieldBuilder() {
         if (extensionBuilder_ == null) {
-          extensionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.FieldDescriptorProto, com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder, com.google.protobuf.DescriptorProtos.FieldDescriptorProtoOrBuilder>(
+          extensionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   extension_,
                   ((bitField0_ & 0x00000100) == 0x00000100),
@@ -4017,6 +4012,5 @@
           getOptionsFieldBuilder() {
         if (optionsBuilder_ == null) {
-          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              com.google.protobuf.DescriptorProtos.FileOptions, com.google.protobuf.DescriptorProtos.FileOptions.Builder, com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder>(
+          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<>(
                   getOptions(),
                   getParentForChildren(),
@@ -4196,6 +4190,5 @@
           getSourceCodeInfoFieldBuilder() {
         if (sourceCodeInfoBuilder_ == null) {
-          sourceCodeInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              com.google.protobuf.DescriptorProtos.SourceCodeInfo, com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder, com.google.protobuf.DescriptorProtos.SourceCodeInfoOrBuilder>(
+          sourceCodeInfoBuilder_ = new com.google.protobuf.SingleFieldBuilder<>(
                   getSourceCodeInfo(),
                   getParentForChildren(),
@@ -4456,5 +4449,5 @@
             case 18: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                field_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.FieldDescriptorProto>();
+                field_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -4464,5 +4457,5 @@
             case 26: {
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
-                nestedType_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.DescriptorProto>();
+                nestedType_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000008;
               }
@@ -4472,5 +4465,5 @@
             case 34: {
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
-                enumType_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.EnumDescriptorProto>();
+                enumType_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -4480,5 +4473,5 @@
             case 42: {
               if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
-                extensionRange_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange>();
+                extensionRange_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000020;
               }
@@ -4488,5 +4481,5 @@
             case 50: {
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
-                extension_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.FieldDescriptorProto>();
+                extension_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -4509,5 +4502,5 @@
             case 66: {
               if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-                oneofDecl_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.OneofDescriptorProto>();
+                oneofDecl_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000040;
               }
@@ -6022,5 +6015,5 @@
       private void ensureFieldIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          field_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.FieldDescriptorProto>(field_);
+          field_ = new java.util.ArrayList<>(field_);
           bitField0_ |= 0x00000002;
          }
@@ -6247,6 +6240,5 @@
           getFieldFieldBuilder() {
         if (fieldBuilder_ == null) {
-          fieldBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.FieldDescriptorProto, com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder, com.google.protobuf.DescriptorProtos.FieldDescriptorProtoOrBuilder>(
+          fieldBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   field_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -6262,5 +6254,5 @@
       private void ensureExtensionIsMutable() {
         if (!((bitField0_ & 0x00000004) == 0x00000004)) {
-          extension_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.FieldDescriptorProto>(extension_);
+          extension_ = new java.util.ArrayList<>(extension_);
           bitField0_ |= 0x00000004;
          }
@@ -6487,6 +6479,5 @@
           getExtensionFieldBuilder() {
         if (extensionBuilder_ == null) {
-          extensionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.FieldDescriptorProto, com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder, com.google.protobuf.DescriptorProtos.FieldDescriptorProtoOrBuilder>(
+          extensionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   extension_,
                   ((bitField0_ & 0x00000004) == 0x00000004),
@@ -6502,5 +6493,5 @@
       private void ensureNestedTypeIsMutable() {
         if (!((bitField0_ & 0x00000008) == 0x00000008)) {
-          nestedType_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.DescriptorProto>(nestedType_);
+          nestedType_ = new java.util.ArrayList<>(nestedType_);
           bitField0_ |= 0x00000008;
          }
@@ -6727,6 +6718,5 @@
           getNestedTypeFieldBuilder() {
         if (nestedTypeBuilder_ == null) {
-          nestedTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.DescriptorProto, com.google.protobuf.DescriptorProtos.DescriptorProto.Builder, com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder>(
+          nestedTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   nestedType_,
                   ((bitField0_ & 0x00000008) == 0x00000008),
@@ -6742,5 +6732,5 @@
       private void ensureEnumTypeIsMutable() {
         if (!((bitField0_ & 0x00000010) == 0x00000010)) {
-          enumType_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.EnumDescriptorProto>(enumType_);
+          enumType_ = new java.util.ArrayList<>(enumType_);
           bitField0_ |= 0x00000010;
          }
@@ -6967,6 +6957,5 @@
           getEnumTypeFieldBuilder() {
         if (enumTypeBuilder_ == null) {
-          enumTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.EnumDescriptorProto, com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder, com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder>(
+          enumTypeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   enumType_,
                   ((bitField0_ & 0x00000010) == 0x00000010),
@@ -6982,5 +6971,5 @@
       private void ensureExtensionRangeIsMutable() {
         if (!((bitField0_ & 0x00000020) == 0x00000020)) {
-          extensionRange_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange>(extensionRange_);
+          extensionRange_ = new java.util.ArrayList<>(extensionRange_);
           bitField0_ |= 0x00000020;
          }
@@ -7207,6 +7196,5 @@
           getExtensionRangeFieldBuilder() {
         if (extensionRangeBuilder_ == null) {
-          extensionRangeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange, com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder, com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRangeOrBuilder>(
+          extensionRangeBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   extensionRange_,
                   ((bitField0_ & 0x00000020) == 0x00000020),
@@ -7222,5 +7210,5 @@
       private void ensureOneofDeclIsMutable() {
         if (!((bitField0_ & 0x00000040) == 0x00000040)) {
-          oneofDecl_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.OneofDescriptorProto>(oneofDecl_);
+          oneofDecl_ = new java.util.ArrayList<>(oneofDecl_);
           bitField0_ |= 0x00000040;
          }
@@ -7447,6 +7435,5 @@
           getOneofDeclFieldBuilder() {
         if (oneofDeclBuilder_ == null) {
-          oneofDeclBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.OneofDescriptorProto, com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder, com.google.protobuf.DescriptorProtos.OneofDescriptorProtoOrBuilder>(
+          oneofDeclBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   oneofDecl_,
                   ((bitField0_ & 0x00000040) == 0x00000040),
@@ -7564,6 +7551,5 @@
           getOptionsFieldBuilder() {
         if (optionsBuilder_ == null) {
-          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              com.google.protobuf.DescriptorProtos.MessageOptions, com.google.protobuf.DescriptorProtos.MessageOptions.Builder, com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder>(
+          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<>(
                   getOptions(),
                   getParentForChildren(),
@@ -9801,6 +9787,5 @@
           getOptionsFieldBuilder() {
         if (optionsBuilder_ == null) {
-          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              com.google.protobuf.DescriptorProtos.FieldOptions, com.google.protobuf.DescriptorProtos.FieldOptions.Builder, com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder>(
+          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<>(
                   getOptions(),
                   getParentForChildren(),
@@ -10425,5 +10410,5 @@
             case 18: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                value_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto>();
+                value_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -11000,5 +10985,5 @@
       private void ensureValueIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          value_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto>(value_);
+          value_ = new java.util.ArrayList<>(value_);
           bitField0_ |= 0x00000002;
          }
@@ -11225,6 +11210,5 @@
           getValueFieldBuilder() {
         if (valueBuilder_ == null) {
-          valueBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto, com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder, com.google.protobuf.DescriptorProtos.EnumValueDescriptorProtoOrBuilder>(
+          valueBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   value_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -11342,6 +11326,5 @@
           getOptionsFieldBuilder() {
         if (optionsBuilder_ == null) {
-          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              com.google.protobuf.DescriptorProtos.EnumOptions, com.google.protobuf.DescriptorProtos.EnumOptions.Builder, com.google.protobuf.DescriptorProtos.EnumOptionsOrBuilder>(
+          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<>(
                   getOptions(),
                   getParentForChildren(),
@@ -12105,6 +12088,5 @@
           getOptionsFieldBuilder() {
         if (optionsBuilder_ == null) {
-          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              com.google.protobuf.DescriptorProtos.EnumValueOptions, com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder, com.google.protobuf.DescriptorProtos.EnumValueOptionsOrBuilder>(
+          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<>(
                   getOptions(),
                   getParentForChildren(),
@@ -12245,5 +12227,5 @@
             case 18: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                method_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.MethodDescriptorProto>();
+                method_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -12820,5 +12802,5 @@
       private void ensureMethodIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          method_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.MethodDescriptorProto>(method_);
+          method_ = new java.util.ArrayList<>(method_);
           bitField0_ |= 0x00000002;
          }
@@ -13045,6 +13027,5 @@
           getMethodFieldBuilder() {
         if (methodBuilder_ == null) {
-          methodBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.MethodDescriptorProto, com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder, com.google.protobuf.DescriptorProtos.MethodDescriptorProtoOrBuilder>(
+          methodBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   method_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -13162,6 +13143,5 @@
           getOptionsFieldBuilder() {
         if (optionsBuilder_ == null) {
-          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              com.google.protobuf.DescriptorProtos.ServiceOptions, com.google.protobuf.DescriptorProtos.ServiceOptions.Builder, com.google.protobuf.DescriptorProtos.ServiceOptionsOrBuilder>(
+          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<>(
                   getOptions(),
                   getParentForChildren(),
@@ -14221,6 +14201,5 @@
           getOptionsFieldBuilder() {
         if (optionsBuilder_ == null) {
-          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
-              com.google.protobuf.DescriptorProtos.MethodOptions, com.google.protobuf.DescriptorProtos.MethodOptions.Builder, com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder>(
+          optionsBuilder_ = new com.google.protobuf.SingleFieldBuilder<>(
                   getOptions(),
                   getParentForChildren(),
@@ -14684,5 +14663,5 @@
             case 7994: {
               if (!((mutable_bitField0_ & 0x00000800) == 0x00000800)) {
-                uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>();
+                uninterpretedOption_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000800;
               }
@@ -16606,5 +16585,5 @@
       private void ensureUninterpretedOptionIsMutable() {
         if (!((bitField0_ & 0x00000800) == 0x00000800)) {
-          uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>(uninterpretedOption_);
+          uninterpretedOption_ = new java.util.ArrayList<>(uninterpretedOption_);
           bitField0_ |= 0x00000800;
          }
@@ -16903,6 +16882,5 @@
           getUninterpretedOptionFieldBuilder() {
         if (uninterpretedOptionBuilder_ == null) {
-          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.UninterpretedOption, com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder, com.google.protobuf.DescriptorProtos.UninterpretedOptionOrBuilder>(
+          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   uninterpretedOption_,
                   ((bitField0_ & 0x00000800) == 0x00000800),
@@ -17133,5 +17111,5 @@
             case 7994: {
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
-                uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>();
+                uninterpretedOption_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000008;
               }
@@ -17908,5 +17886,5 @@
       private void ensureUninterpretedOptionIsMutable() {
         if (!((bitField0_ & 0x00000008) == 0x00000008)) {
-          uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>(uninterpretedOption_);
+          uninterpretedOption_ = new java.util.ArrayList<>(uninterpretedOption_);
           bitField0_ |= 0x00000008;
          }
@@ -18205,6 +18183,5 @@
           getUninterpretedOptionFieldBuilder() {
         if (uninterpretedOptionBuilder_ == null) {
-          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.UninterpretedOption, com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder, com.google.protobuf.DescriptorProtos.UninterpretedOptionOrBuilder>(
+          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   uninterpretedOption_,
                   ((bitField0_ & 0x00000008) == 0x00000008),
@@ -18576,5 +18553,5 @@
             case 7994: {
               if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-                uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>();
+                uninterpretedOption_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000040;
               }
@@ -19979,5 +19956,5 @@
       private void ensureUninterpretedOptionIsMutable() {
         if (!((bitField0_ & 0x00000040) == 0x00000040)) {
-          uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>(uninterpretedOption_);
+          uninterpretedOption_ = new java.util.ArrayList<>(uninterpretedOption_);
           bitField0_ |= 0x00000040;
          }
@@ -20276,6 +20253,5 @@
           getUninterpretedOptionFieldBuilder() {
         if (uninterpretedOptionBuilder_ == null) {
-          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.UninterpretedOption, com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder, com.google.protobuf.DescriptorProtos.UninterpretedOptionOrBuilder>(
+          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   uninterpretedOption_,
                   ((bitField0_ & 0x00000040) == 0x00000040),
@@ -20454,5 +20430,5 @@
             case 7994: {
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
-                uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>();
+                uninterpretedOption_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -21051,5 +21027,5 @@
       private void ensureUninterpretedOptionIsMutable() {
         if (!((bitField0_ & 0x00000004) == 0x00000004)) {
-          uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>(uninterpretedOption_);
+          uninterpretedOption_ = new java.util.ArrayList<>(uninterpretedOption_);
           bitField0_ |= 0x00000004;
          }
@@ -21348,6 +21324,5 @@
           getUninterpretedOptionFieldBuilder() {
         if (uninterpretedOptionBuilder_ == null) {
-          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.UninterpretedOption, com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder, com.google.protobuf.DescriptorProtos.UninterpretedOptionOrBuilder>(
+          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   uninterpretedOption_,
                   ((bitField0_ & 0x00000004) == 0x00000004),
@@ -21502,5 +21477,5 @@
             case 7994: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>();
+                uninterpretedOption_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -22005,5 +21980,5 @@
       private void ensureUninterpretedOptionIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>(uninterpretedOption_);
+          uninterpretedOption_ = new java.util.ArrayList<>(uninterpretedOption_);
           bitField0_ |= 0x00000002;
          }
@@ -22302,6 +22277,5 @@
           getUninterpretedOptionFieldBuilder() {
         if (uninterpretedOptionBuilder_ == null) {
-          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.UninterpretedOption, com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder, com.google.protobuf.DescriptorProtos.UninterpretedOptionOrBuilder>(
+          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   uninterpretedOption_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -22456,5 +22430,5 @@
             case 7994: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>();
+                uninterpretedOption_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -22959,5 +22933,5 @@
       private void ensureUninterpretedOptionIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>(uninterpretedOption_);
+          uninterpretedOption_ = new java.util.ArrayList<>(uninterpretedOption_);
           bitField0_ |= 0x00000002;
          }
@@ -23256,6 +23230,5 @@
           getUninterpretedOptionFieldBuilder() {
         if (uninterpretedOptionBuilder_ == null) {
-          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.UninterpretedOption, com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder, com.google.protobuf.DescriptorProtos.UninterpretedOptionOrBuilder>(
+          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   uninterpretedOption_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -23410,5 +23383,5 @@
             case 7994: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>();
+                uninterpretedOption_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -23913,5 +23886,5 @@
       private void ensureUninterpretedOptionIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          uninterpretedOption_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption>(uninterpretedOption_);
+          uninterpretedOption_ = new java.util.ArrayList<>(uninterpretedOption_);
           bitField0_ |= 0x00000002;
          }
@@ -24210,6 +24183,5 @@
           getUninterpretedOptionFieldBuilder() {
         if (uninterpretedOptionBuilder_ == null) {
-          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.UninterpretedOption, com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder, com.google.protobuf.DescriptorProtos.UninterpretedOptionOrBuilder>(
+          uninterpretedOptionBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   uninterpretedOption_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -24402,5 +24374,5 @@
             case 18: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
-                name_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart>();
+                name_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000001;
               }
@@ -25656,5 +25628,5 @@
       private void ensureNameIsMutable() {
         if (!((bitField0_ & 0x00000001) == 0x00000001)) {
-          name_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart>(name_);
+          name_ = new java.util.ArrayList<>(name_);
           bitField0_ |= 0x00000001;
          }
@@ -25881,6 +25853,5 @@
           getNameFieldBuilder() {
         if (nameBuilder_ == null) {
-          nameBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart, com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder, com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePartOrBuilder>(
+          nameBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   name_,
                   ((bitField0_ & 0x00000001) == 0x00000001),
@@ -26523,5 +26494,5 @@
             case 10: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
-                location_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location>();
+                location_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000001;
               }
@@ -26869,5 +26840,5 @@
               case 8: {
                 if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
-                  path_ = new java.util.ArrayList<java.lang.Integer>();
+                  path_ = new java.util.ArrayList<>();
                   mutable_bitField0_ |= 0x00000001;
                 }
@@ -26879,5 +26850,5 @@
                 int limit = input.pushLimit(length);
                 if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
-                  path_ = new java.util.ArrayList<java.lang.Integer>();
+                  path_ = new java.util.ArrayList<>();
                   mutable_bitField0_ |= 0x00000001;
                 }
@@ -26890,5 +26861,5 @@
               case 16: {
                 if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                  span_ = new java.util.ArrayList<java.lang.Integer>();
+                  span_ = new java.util.ArrayList<>();
                   mutable_bitField0_ |= 0x00000002;
                 }
@@ -26900,5 +26871,5 @@
                 int limit = input.pushLimit(length);
                 if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
-                  span_ = new java.util.ArrayList<java.lang.Integer>();
+                  span_ = new java.util.ArrayList<>();
                   mutable_bitField0_ |= 0x00000002;
                 }
@@ -27614,5 +27585,5 @@
         private void ensurePathIsMutable() {
           if (!((bitField0_ & 0x00000001) == 0x00000001)) {
-            path_ = new java.util.ArrayList<java.lang.Integer>(path_);
+            path_ = new java.util.ArrayList<>(path_);
             bitField0_ |= 0x00000001;
            }
@@ -27848,5 +27819,5 @@
         private void ensureSpanIsMutable() {
           if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-            span_ = new java.util.ArrayList<java.lang.Integer>(span_);
+            span_ = new java.util.ArrayList<>(span_);
             bitField0_ |= 0x00000002;
            }
@@ -28834,5 +28805,5 @@
       private void ensureLocationIsMutable() {
         if (!((bitField0_ & 0x00000001) == 0x00000001)) {
-          location_ = new java.util.ArrayList<com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location>(location_);
+          location_ = new java.util.ArrayList<>(location_);
           bitField0_ |= 0x00000001;
          }
@@ -29851,6 +29822,5 @@
           getLocationFieldBuilder() {
         if (locationBuilder_ == null) {
-          locationBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
-              com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location, com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder, com.google.protobuf.DescriptorProtos.SourceCodeInfo.LocationOrBuilder>(
+          locationBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<>(
                   location_,
                   ((bitField0_ & 0x00000001) == 0x00000001),
Index: applications/editors/josm/plugins/pbf/gen/crosby/binary/Osmformat.java
===================================================================
--- applications/editors/josm/plugins/pbf/gen/crosby/binary/Osmformat.java	(revision 30736)
+++ applications/editors/josm/plugins/pbf/gen/crosby/binary/Osmformat.java	(revision 30737)
@@ -2416,5 +2416,5 @@
             case 18: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                primitivegroup_ = new java.util.ArrayList<crosby.binary.Osmformat.PrimitiveGroup>();
+                primitivegroup_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -2982,5 +2982,5 @@
       private void ensurePrimitivegroupIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          primitivegroup_ = new java.util.ArrayList<crosby.binary.Osmformat.PrimitiveGroup>(primitivegroup_);
+          primitivegroup_ = new java.util.ArrayList<>(primitivegroup_);
           bitField0_ |= 0x00000002;
          }
@@ -3415,5 +3415,5 @@
             case 10: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
-                nodes_ = new java.util.ArrayList<crosby.binary.Osmformat.Node>();
+                nodes_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000001;
               }
@@ -3436,5 +3436,5 @@
             case 26: {
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
-                ways_ = new java.util.ArrayList<crosby.binary.Osmformat.Way>();
+                ways_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -3444,5 +3444,5 @@
             case 34: {
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
-                relations_ = new java.util.ArrayList<crosby.binary.Osmformat.Relation>();
+                relations_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000008;
               }
@@ -3452,5 +3452,5 @@
             case 42: {
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
-                changesets_ = new java.util.ArrayList<crosby.binary.Osmformat.ChangeSet>();
+                changesets_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -4007,5 +4007,5 @@
       private void ensureNodesIsMutable() {
         if (!((bitField0_ & 0x00000001) == 0x00000001)) {
-          nodes_ = new java.util.ArrayList<crosby.binary.Osmformat.Node>(nodes_);
+          nodes_ = new java.util.ArrayList<>(nodes_);
           bitField0_ |= 0x00000001;
          }
@@ -4192,5 +4192,5 @@
       private void ensureWaysIsMutable() {
         if (!((bitField0_ & 0x00000004) == 0x00000004)) {
-          ways_ = new java.util.ArrayList<crosby.binary.Osmformat.Way>(ways_);
+          ways_ = new java.util.ArrayList<>(ways_);
           bitField0_ |= 0x00000004;
          }
@@ -4317,5 +4317,5 @@
       private void ensureRelationsIsMutable() {
         if (!((bitField0_ & 0x00000008) == 0x00000008)) {
-          relations_ = new java.util.ArrayList<crosby.binary.Osmformat.Relation>(relations_);
+          relations_ = new java.util.ArrayList<>(relations_);
           bitField0_ |= 0x00000008;
          }
@@ -4442,5 +4442,5 @@
       private void ensureChangesetsIsMutable() {
         if (!((bitField0_ & 0x00000010) == 0x00000010)) {
-          changesets_ = new java.util.ArrayList<crosby.binary.Osmformat.ChangeSet>(changesets_);
+          changesets_ = new java.util.ArrayList<>(changesets_);
           bitField0_ |= 0x00000010;
          }
@@ -4649,5 +4649,5 @@
             case 10: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
-                s_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
+                s_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000001;
               }
@@ -4925,5 +4925,5 @@
       private void ensureSIsMutable() {
         if (!((bitField0_ & 0x00000001) == 0x00000001)) {
-          s_ = new java.util.ArrayList<com.google.protobuf.ByteString>(s_);
+          s_ = new java.util.ArrayList<>(s_);
           bitField0_ |= 0x00000001;
          }
@@ -6094,5 +6094,5 @@
             case 8: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
-                version_ = new java.util.ArrayList<java.lang.Integer>();
+                version_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000001;
               }
@@ -6104,5 +6104,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
-                version_ = new java.util.ArrayList<java.lang.Integer>();
+                version_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000001;
               }
@@ -6115,5 +6115,5 @@
             case 16: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                timestamp_ = new java.util.ArrayList<java.lang.Long>();
+                timestamp_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -6125,5 +6125,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
-                timestamp_ = new java.util.ArrayList<java.lang.Long>();
+                timestamp_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -6136,5 +6136,5 @@
             case 24: {
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
-                changeset_ = new java.util.ArrayList<java.lang.Long>();
+                changeset_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -6146,5 +6146,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
-                changeset_ = new java.util.ArrayList<java.lang.Long>();
+                changeset_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -6157,5 +6157,5 @@
             case 32: {
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
-                uid_ = new java.util.ArrayList<java.lang.Integer>();
+                uid_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000008;
               }
@@ -6167,5 +6167,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008) && input.getBytesUntilLimit() > 0) {
-                uid_ = new java.util.ArrayList<java.lang.Integer>();
+                uid_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000008;
               }
@@ -6178,5 +6178,5 @@
             case 40: {
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
-                userSid_ = new java.util.ArrayList<java.lang.Integer>();
+                userSid_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -6188,5 +6188,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
-                userSid_ = new java.util.ArrayList<java.lang.Integer>();
+                userSid_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -6199,5 +6199,5 @@
             case 48: {
               if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
-                visible_ = new java.util.ArrayList<java.lang.Boolean>();
+                visible_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000020;
               }
@@ -6209,5 +6209,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000020) == 0x00000020) && input.getBytesUntilLimit() > 0) {
-                visible_ = new java.util.ArrayList<java.lang.Boolean>();
+                visible_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000020;
               }
@@ -6899,5 +6899,5 @@
       private void ensureVersionIsMutable() {
         if (!((bitField0_ & 0x00000001) == 0x00000001)) {
-          version_ = new java.util.ArrayList<java.lang.Integer>(version_);
+          version_ = new java.util.ArrayList<>(version_);
           bitField0_ |= 0x00000001;
          }
@@ -6965,5 +6965,5 @@
       private void ensureTimestampIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          timestamp_ = new java.util.ArrayList<java.lang.Long>(timestamp_);
+          timestamp_ = new java.util.ArrayList<>(timestamp_);
           bitField0_ |= 0x00000002;
          }
@@ -7059,5 +7059,5 @@
       private void ensureChangesetIsMutable() {
         if (!((bitField0_ & 0x00000004) == 0x00000004)) {
-          changeset_ = new java.util.ArrayList<java.lang.Long>(changeset_);
+          changeset_ = new java.util.ArrayList<>(changeset_);
           bitField0_ |= 0x00000004;
          }
@@ -7153,5 +7153,5 @@
       private void ensureUidIsMutable() {
         if (!((bitField0_ & 0x00000008) == 0x00000008)) {
-          uid_ = new java.util.ArrayList<java.lang.Integer>(uid_);
+          uid_ = new java.util.ArrayList<>(uid_);
           bitField0_ |= 0x00000008;
          }
@@ -7247,5 +7247,5 @@
       private void ensureUserSidIsMutable() {
         if (!((bitField0_ & 0x00000010) == 0x00000010)) {
-          userSid_ = new java.util.ArrayList<java.lang.Integer>(userSid_);
+          userSid_ = new java.util.ArrayList<>(userSid_);
           bitField0_ |= 0x00000010;
          }
@@ -7341,5 +7341,5 @@
       private void ensureVisibleIsMutable() {
         if (!((bitField0_ & 0x00000020) == 0x00000020)) {
-          visible_ = new java.util.ArrayList<java.lang.Boolean>(visible_);
+          visible_ = new java.util.ArrayList<>(visible_);
           bitField0_ |= 0x00000020;
          }
@@ -8081,5 +8081,5 @@
             case 16: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                keys_ = new java.util.ArrayList<java.lang.Integer>();
+                keys_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -8091,5 +8091,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
-                keys_ = new java.util.ArrayList<java.lang.Integer>();
+                keys_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -8102,5 +8102,5 @@
             case 24: {
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
-                vals_ = new java.util.ArrayList<java.lang.Integer>();
+                vals_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -8112,5 +8112,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
-                vals_ = new java.util.ArrayList<java.lang.Integer>();
+                vals_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -8702,5 +8702,5 @@
       private void ensureKeysIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          keys_ = new java.util.ArrayList<java.lang.Integer>(keys_);
+          keys_ = new java.util.ArrayList<>(keys_);
           bitField0_ |= 0x00000002;
          }
@@ -8796,5 +8796,5 @@
       private void ensureValsIsMutable() {
         if (!((bitField0_ & 0x00000004) == 0x00000004)) {
-          vals_ = new java.util.ArrayList<java.lang.Integer>(vals_);
+          vals_ = new java.util.ArrayList<>(vals_);
           bitField0_ |= 0x00000004;
          }
@@ -9219,5 +9219,5 @@
             case 8: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
-                id_ = new java.util.ArrayList<java.lang.Long>();
+                id_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000001;
               }
@@ -9229,5 +9229,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
-                id_ = new java.util.ArrayList<java.lang.Long>();
+                id_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000001;
               }
@@ -9253,5 +9253,5 @@
             case 64: {
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
-                lat_ = new java.util.ArrayList<java.lang.Long>();
+                lat_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -9263,5 +9263,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
-                lat_ = new java.util.ArrayList<java.lang.Long>();
+                lat_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -9274,5 +9274,5 @@
             case 72: {
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
-                lon_ = new java.util.ArrayList<java.lang.Long>();
+                lon_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000008;
               }
@@ -9284,5 +9284,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008) && input.getBytesUntilLimit() > 0) {
-                lon_ = new java.util.ArrayList<java.lang.Long>();
+                lon_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000008;
               }
@@ -9295,5 +9295,5 @@
             case 80: {
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
-                keysVals_ = new java.util.ArrayList<java.lang.Integer>();
+                keysVals_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -9305,5 +9305,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
-                keysVals_ = new java.util.ArrayList<java.lang.Integer>();
+                keysVals_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -9874,5 +9874,5 @@
       private void ensureIdIsMutable() {
         if (!((bitField0_ & 0x00000001) == 0x00000001)) {
-          id_ = new java.util.ArrayList<java.lang.Long>(id_);
+          id_ = new java.util.ArrayList<>(id_);
           bitField0_ |= 0x00000001;
          }
@@ -10052,5 +10052,5 @@
       private void ensureLatIsMutable() {
         if (!((bitField0_ & 0x00000004) == 0x00000004)) {
-          lat_ = new java.util.ArrayList<java.lang.Long>(lat_);
+          lat_ = new java.util.ArrayList<>(lat_);
           bitField0_ |= 0x00000004;
          }
@@ -10146,5 +10146,5 @@
       private void ensureLonIsMutable() {
         if (!((bitField0_ & 0x00000008) == 0x00000008)) {
-          lon_ = new java.util.ArrayList<java.lang.Long>(lon_);
+          lon_ = new java.util.ArrayList<>(lon_);
           bitField0_ |= 0x00000008;
          }
@@ -10240,5 +10240,5 @@
       private void ensureKeysValsIsMutable() {
         if (!((bitField0_ & 0x00000010) == 0x00000010)) {
-          keysVals_ = new java.util.ArrayList<java.lang.Integer>(keysVals_);
+          keysVals_ = new java.util.ArrayList<>(keysVals_);
           bitField0_ |= 0x00000010;
          }
@@ -10484,5 +10484,5 @@
             case 16: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                keys_ = new java.util.ArrayList<java.lang.Integer>();
+                keys_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -10494,5 +10494,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
-                keys_ = new java.util.ArrayList<java.lang.Integer>();
+                keys_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -10505,5 +10505,5 @@
             case 24: {
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
-                vals_ = new java.util.ArrayList<java.lang.Integer>();
+                vals_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -10515,5 +10515,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
-                vals_ = new java.util.ArrayList<java.lang.Integer>();
+                vals_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -10539,5 +10539,5 @@
             case 64: {
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
-                refs_ = new java.util.ArrayList<java.lang.Long>();
+                refs_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -10549,5 +10549,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
-                refs_ = new java.util.ArrayList<java.lang.Long>();
+                refs_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -11093,5 +11093,5 @@
       private void ensureKeysIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          keys_ = new java.util.ArrayList<java.lang.Integer>(keys_);
+          keys_ = new java.util.ArrayList<>(keys_);
           bitField0_ |= 0x00000002;
          }
@@ -11187,5 +11187,5 @@
       private void ensureValsIsMutable() {
         if (!((bitField0_ & 0x00000004) == 0x00000004)) {
-          vals_ = new java.util.ArrayList<java.lang.Integer>(vals_);
+          vals_ = new java.util.ArrayList<>(vals_);
           bitField0_ |= 0x00000004;
          }
@@ -11313,5 +11313,5 @@
       private void ensureRefsIsMutable() {
         if (!((bitField0_ & 0x00000010) == 0x00000010)) {
-          refs_ = new java.util.ArrayList<java.lang.Long>(refs_);
+          refs_ = new java.util.ArrayList<>(refs_);
           bitField0_ |= 0x00000010;
          }
@@ -11595,5 +11595,5 @@
             case 16: {
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-                keys_ = new java.util.ArrayList<java.lang.Integer>();
+                keys_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -11605,5 +11605,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
-                keys_ = new java.util.ArrayList<java.lang.Integer>();
+                keys_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000002;
               }
@@ -11616,5 +11616,5 @@
             case 24: {
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
-                vals_ = new java.util.ArrayList<java.lang.Integer>();
+                vals_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -11626,5 +11626,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
-                vals_ = new java.util.ArrayList<java.lang.Integer>();
+                vals_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000004;
               }
@@ -11650,5 +11650,5 @@
             case 64: {
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
-                rolesSid_ = new java.util.ArrayList<java.lang.Integer>();
+                rolesSid_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -11660,5 +11660,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
-                rolesSid_ = new java.util.ArrayList<java.lang.Integer>();
+                rolesSid_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000010;
               }
@@ -11671,5 +11671,5 @@
             case 72: {
               if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
-                memids_ = new java.util.ArrayList<java.lang.Long>();
+                memids_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000020;
               }
@@ -11681,5 +11681,5 @@
               int limit = input.pushLimit(length);
               if (!((mutable_bitField0_ & 0x00000020) == 0x00000020) && input.getBytesUntilLimit() > 0) {
-                memids_ = new java.util.ArrayList<java.lang.Long>();
+                memids_ = new java.util.ArrayList<>();
                 mutable_bitField0_ |= 0x00000020;
               }
@@ -11698,5 +11698,5 @@
                 } else {
                 if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-                  types_ = new java.util.ArrayList<crosby.binary.Osmformat.Relation.MemberType>();
+                  types_ = new java.util.ArrayList<>();
                   mutable_bitField0_ |= 0x00000040;
                 }
@@ -11716,5 +11716,5 @@
                   } else {
                   if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-                    types_ = new java.util.ArrayList<crosby.binary.Osmformat.Relation.MemberType>();
+                    types_ = new java.util.ArrayList<>();
                     mutable_bitField0_ |= 0x00000040;
                   }
@@ -12464,5 +12464,5 @@
       private void ensureKeysIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
-          keys_ = new java.util.ArrayList<java.lang.Integer>(keys_);
+          keys_ = new java.util.ArrayList<>(keys_);
           bitField0_ |= 0x00000002;
          }
@@ -12558,5 +12558,5 @@
       private void ensureValsIsMutable() {
         if (!((bitField0_ & 0x00000004) == 0x00000004)) {
-          vals_ = new java.util.ArrayList<java.lang.Integer>(vals_);
+          vals_ = new java.util.ArrayList<>(vals_);
           bitField0_ |= 0x00000004;
          }
@@ -12684,5 +12684,5 @@
       private void ensureRolesSidIsMutable() {
         if (!((bitField0_ & 0x00000010) == 0x00000010)) {
-          rolesSid_ = new java.util.ArrayList<java.lang.Integer>(rolesSid_);
+          rolesSid_ = new java.util.ArrayList<>(rolesSid_);
           bitField0_ |= 0x00000010;
          }
@@ -12778,5 +12778,5 @@
       private void ensureMemidsIsMutable() {
         if (!((bitField0_ & 0x00000020) == 0x00000020)) {
-          memids_ = new java.util.ArrayList<java.lang.Long>(memids_);
+          memids_ = new java.util.ArrayList<>(memids_);
           bitField0_ |= 0x00000020;
          }
@@ -12873,5 +12873,5 @@
       private void ensureTypesIsMutable() {
         if (!((bitField0_ & 0x00000040) == 0x00000040)) {
-          types_ = new java.util.ArrayList<crosby.binary.Osmformat.Relation.MemberType>(types_);
+          types_ = new java.util.ArrayList<>(types_);
           bitField0_ |= 0x00000040;
         }
Index: applications/editors/josm/plugins/pbf/src/org/openstreetmap/josm/plugins/pbf/io/PbfReader.java
===================================================================
--- applications/editors/josm/plugins/pbf/src/org/openstreetmap/josm/plugins/pbf/io/PbfReader.java	(revision 30736)
+++ applications/editors/josm/plugins/pbf/src/org/openstreetmap/josm/plugins/pbf/io/PbfReader.java	(revision 30737)
@@ -137,5 +137,5 @@
                         // Each node's tags are encoded in alternating <key_id> <value_id>.
                         // A single stringid of 0 delimit when the tags of a node ends and the tags of the next node begin.
-                        Map<String, String> keys = new HashMap<String, String>();
+                        Map<String, String> keys = new HashMap<>();
                         while (keyIndex < nodes.getKeysValsCount()) {
                             int key_id = nodes.getKeysVals(keyIndex++);
@@ -172,5 +172,5 @@
                         checkTimestamp(info.getTimestamp());
                         node.setTimestamp(getDate(info));
-                        Map<String, String> keys = new HashMap<String, String>();
+                        Map<String, String> keys = new HashMap<>();
                         for (int i=0; i<n.getKeysCount(); i++) {
                             keys.put(getStringById(n.getKeys(i)), getStringById(n.getVals(i)));
@@ -197,5 +197,5 @@
                         checkTimestamp(info.getTimestamp());
                         way.setTimestamp(getDate(info));
-                        Map<String, String> keys = new HashMap<String, String>();
+                        Map<String, String> keys = new HashMap<>();
                         for (int i=0; i<w.getKeysCount(); i++) {
                             keys.put(getStringById(w.getKeys(i)), getStringById(w.getVals(i)));
@@ -203,5 +203,5 @@
                         way.setKeys(keys);
                         long previousId = 0; // Node ids are delta coded
-                        Collection<Long> nodeIds = new ArrayList<Long>();
+                        Collection<Long> nodeIds = new ArrayList<>();
                         for (Long id : w.getRefsList()) {
                             nodeIds.add(previousId+=id);
@@ -228,5 +228,5 @@
                         checkTimestamp(info.getTimestamp());
                         rel.setTimestamp(getDate(info));
-                        Map<String, String> keys = new HashMap<String, String>();
+                        Map<String, String> keys = new HashMap<>();
                         for (int i=0; i<r.getKeysCount(); i++) {
                             keys.put(getStringById(r.getKeys(i)), getStringById(r.getVals(i)));
@@ -234,5 +234,5 @@
                         rel.setKeys(keys);
                         long previousId = 0; // Member ids are delta coded
-                        Collection<RelationMemberData> members = new ArrayList<RelationMemberData>();
+                        Collection<RelationMemberData> members = new ArrayList<>();
                         for (int i = 0; i<r.getMemidsCount(); i++) {
                             long id = previousId+=r.getMemids(i);
Index: applications/editors/josm/plugins/pbf/src/org/openstreetmap/josm/plugins/pbf/io/PbfWriter.java
===================================================================
--- applications/editors/josm/plugins/pbf/src/org/openstreetmap/josm/plugins/pbf/io/PbfWriter.java	(revision 30736)
+++ applications/editors/josm/plugins/pbf/src/org/openstreetmap/josm/plugins/pbf/io/PbfWriter.java	(revision 30737)
@@ -69,5 +69,5 @@
         private abstract class Prim<T extends OsmPrimitive> {
             /** Queue that tracks the list of all primitives. */
-            ArrayList<T> contents = new ArrayList<T>();
+            ArrayList<T> contents = new ArrayList<>();
 
             /**
