Ignore:
Timestamp:
2014-06-09T18:08:08+02:00 (11 years ago)
Author:
donvip
Message:

[josm_pbf] upgrade to protoc 2.5.0 and crosby.binary 1.3.3

Location:
applications/editors/josm/plugins/pbf/gen/crosby/binary
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/pbf/gen/crosby/binary/Fileformat.java

    r26961 r30490  
    11// Generated by the protocol buffer compiler.  DO NOT EDIT!
    2 // source: src/fileformat.proto
     2// source: src/crosby/binary/fileformat.proto
    33
    44package crosby.binary;
     
    1111  public interface BlobOrBuilder
    1212      extends com.google.protobuf.MessageLiteOrBuilder {
    13    
     13
    1414    // optional bytes raw = 1;
     15    /**
     16     * <code>optional bytes raw = 1;</code>
     17     *
     18     * <pre>
     19     * No compression
     20     * </pre>
     21     */
    1522    boolean hasRaw();
     23    /**
     24     * <code>optional bytes raw = 1;</code>
     25     *
     26     * <pre>
     27     * No compression
     28     * </pre>
     29     */
    1630    com.google.protobuf.ByteString getRaw();
    17    
     31
    1832    // optional int32 raw_size = 2;
     33    /**
     34     * <code>optional int32 raw_size = 2;</code>
     35     *
     36     * <pre>
     37     * When compressed, the uncompressed size
     38     * </pre>
     39     */
    1940    boolean hasRawSize();
     41    /**
     42     * <code>optional int32 raw_size = 2;</code>
     43     *
     44     * <pre>
     45     * When compressed, the uncompressed size
     46     * </pre>
     47     */
    2048    int getRawSize();
    21    
     49
    2250    // optional bytes zlib_data = 3;
     51    /**
     52     * <code>optional bytes zlib_data = 3;</code>
     53     *
     54     * <pre>
     55     * Possible compressed versions of the data.
     56     * </pre>
     57     */
    2358    boolean hasZlibData();
     59    /**
     60     * <code>optional bytes zlib_data = 3;</code>
     61     *
     62     * <pre>
     63     * Possible compressed versions of the data.
     64     * </pre>
     65     */
    2466    com.google.protobuf.ByteString getZlibData();
    25    
     67
    2668    // optional bytes lzma_data = 4;
     69    /**
     70     * <code>optional bytes lzma_data = 4;</code>
     71     *
     72     * <pre>
     73     * PROPOSED feature for LZMA compressed data. SUPPORT IS NOT REQUIRED.
     74     * </pre>
     75     */
    2776    boolean hasLzmaData();
     77    /**
     78     * <code>optional bytes lzma_data = 4;</code>
     79     *
     80     * <pre>
     81     * PROPOSED feature for LZMA compressed data. SUPPORT IS NOT REQUIRED.
     82     * </pre>
     83     */
    2884    com.google.protobuf.ByteString getLzmaData();
    29    
     85
    3086    // optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];
     87    /**
     88     * <code>optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];</code>
     89     *
     90     * <pre>
     91     * Formerly used for bzip2 compressed data. Depreciated in 2010.
     92     * </pre>
     93     */
    3194    @java.lang.Deprecated boolean hasOBSOLETEBzip2Data();
     95    /**
     96     * <code>optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];</code>
     97     *
     98     * <pre>
     99     * Formerly used for bzip2 compressed data. Depreciated in 2010.
     100     * </pre>
     101     */
    32102    @java.lang.Deprecated com.google.protobuf.ByteString getOBSOLETEBzip2Data();
    33103  }
     104  /**
     105   * Protobuf type {@code OSMPBF.Blob}
     106   */
    34107  public static final class Blob extends
    35108      com.google.protobuf.GeneratedMessageLite
    36109      implements BlobOrBuilder {
    37110    // Use Blob.newBuilder() to construct.
    38     private Blob(Builder builder) {
     111    private Blob(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    39112      super(builder);
     113
    40114    }
    41115    private Blob(boolean noInit) {}
    42    
     116
    43117    private static final Blob defaultInstance;
    44118    public static Blob getDefaultInstance() {
    45119      return defaultInstance;
    46120    }
    47    
     121
    48122    public Blob getDefaultInstanceForType() {
    49123      return defaultInstance;
    50124    }
    51    
    52     private int bitField0_;
    53     // optional bytes raw = 1;
    54     public static final int RAW_FIELD_NUMBER = 1;
    55     private com.google.protobuf.ByteString raw_;
    56     public boolean hasRaw() {
    57       return ((bitField0_ & 0x00000001) == 0x00000001);
    58     }
    59     public com.google.protobuf.ByteString getRaw() {
    60       return raw_;
    61     }
    62    
    63     // optional int32 raw_size = 2;
    64     public static final int RAW_SIZE_FIELD_NUMBER = 2;
    65     private int rawSize_;
    66     public boolean hasRawSize() {
    67       return ((bitField0_ & 0x00000002) == 0x00000002);
    68     }
    69     public int getRawSize() {
    70       return rawSize_;
    71     }
    72    
    73     // optional bytes zlib_data = 3;
    74     public static final int ZLIB_DATA_FIELD_NUMBER = 3;
    75     private com.google.protobuf.ByteString zlibData_;
    76     public boolean hasZlibData() {
    77       return ((bitField0_ & 0x00000004) == 0x00000004);
    78     }
    79     public com.google.protobuf.ByteString getZlibData() {
    80       return zlibData_;
    81     }
    82    
    83     // optional bytes lzma_data = 4;
    84     public static final int LZMA_DATA_FIELD_NUMBER = 4;
    85     private com.google.protobuf.ByteString lzmaData_;
    86     public boolean hasLzmaData() {
    87       return ((bitField0_ & 0x00000008) == 0x00000008);
    88     }
    89     public com.google.protobuf.ByteString getLzmaData() {
    90       return lzmaData_;
    91     }
    92    
    93     // optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];
    94     public static final int OBSOLETE_BZIP2_DATA_FIELD_NUMBER = 5;
    95     private com.google.protobuf.ByteString oBSOLETEBzip2Data_;
    96     @java.lang.Deprecated public boolean hasOBSOLETEBzip2Data() {
    97       return ((bitField0_ & 0x00000010) == 0x00000010);
    98     }
    99     @java.lang.Deprecated public com.google.protobuf.ByteString getOBSOLETEBzip2Data() {
    100       return oBSOLETEBzip2Data_;
    101     }
    102    
    103     private void initFields() {
    104       raw_ = com.google.protobuf.ByteString.EMPTY;
    105       rawSize_ = 0;
    106       zlibData_ = com.google.protobuf.ByteString.EMPTY;
    107       lzmaData_ = com.google.protobuf.ByteString.EMPTY;
    108       oBSOLETEBzip2Data_ = com.google.protobuf.ByteString.EMPTY;
    109     }
    110     private byte memoizedIsInitialized = -1;
    111     public final boolean isInitialized() {
    112       byte isInitialized = memoizedIsInitialized;
    113       if (isInitialized != -1) return isInitialized == 1;
    114      
    115       memoizedIsInitialized = 1;
    116       return true;
    117     }
    118    
    119     public void writeTo(com.google.protobuf.CodedOutputStream output)
    120                         throws java.io.IOException {
    121       getSerializedSize();
    122       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    123         output.writeBytes(1, raw_);
    124       }
    125       if (((bitField0_ & 0x00000002) == 0x00000002)) {
    126         output.writeInt32(2, rawSize_);
    127       }
    128       if (((bitField0_ & 0x00000004) == 0x00000004)) {
    129         output.writeBytes(3, zlibData_);
    130       }
    131       if (((bitField0_ & 0x00000008) == 0x00000008)) {
    132         output.writeBytes(4, lzmaData_);
    133       }
    134       if (((bitField0_ & 0x00000010) == 0x00000010)) {
    135         output.writeBytes(5, oBSOLETEBzip2Data_);
    136       }
    137     }
    138    
    139     private int memoizedSerializedSize = -1;
    140     public int getSerializedSize() {
    141       int size = memoizedSerializedSize;
    142       if (size != -1) return size;
    143    
    144       size = 0;
    145       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    146         size += com.google.protobuf.CodedOutputStream
    147           .computeBytesSize(1, raw_);
    148       }
    149       if (((bitField0_ & 0x00000002) == 0x00000002)) {
    150         size += com.google.protobuf.CodedOutputStream
    151           .computeInt32Size(2, rawSize_);
    152       }
    153       if (((bitField0_ & 0x00000004) == 0x00000004)) {
    154         size += com.google.protobuf.CodedOutputStream
    155           .computeBytesSize(3, zlibData_);
    156       }
    157       if (((bitField0_ & 0x00000008) == 0x00000008)) {
    158         size += com.google.protobuf.CodedOutputStream
    159           .computeBytesSize(4, lzmaData_);
    160       }
    161       if (((bitField0_ & 0x00000010) == 0x00000010)) {
    162         size += com.google.protobuf.CodedOutputStream
    163           .computeBytesSize(5, oBSOLETEBzip2Data_);
    164       }
    165       memoizedSerializedSize = size;
    166       return size;
    167     }
    168    
    169     private static final long serialVersionUID = 0L;
    170     @java.lang.Override
    171     protected java.lang.Object writeReplace()
    172         throws java.io.ObjectStreamException {
    173       return super.writeReplace();
    174     }
    175    
    176     public static crosby.binary.Fileformat.Blob parseFrom(
    177         com.google.protobuf.ByteString data)
    178         throws com.google.protobuf.InvalidProtocolBufferException {
    179       return newBuilder().mergeFrom(data).buildParsed();
    180     }
    181     public static crosby.binary.Fileformat.Blob parseFrom(
    182         com.google.protobuf.ByteString data,
     125
     126    private Blob(
     127        com.google.protobuf.CodedInputStream input,
    183128        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    184129        throws com.google.protobuf.InvalidProtocolBufferException {
    185       return newBuilder().mergeFrom(data, extensionRegistry)
    186                .buildParsed();
    187     }
    188     public static crosby.binary.Fileformat.Blob parseFrom(byte[] data)
    189         throws com.google.protobuf.InvalidProtocolBufferException {
    190       return newBuilder().mergeFrom(data).buildParsed();
    191     }
    192     public static crosby.binary.Fileformat.Blob parseFrom(
    193         byte[] data,
    194         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    195         throws com.google.protobuf.InvalidProtocolBufferException {
    196       return newBuilder().mergeFrom(data, extensionRegistry)
    197                .buildParsed();
    198     }
    199     public static crosby.binary.Fileformat.Blob parseFrom(java.io.InputStream input)
    200         throws java.io.IOException {
    201       return newBuilder().mergeFrom(input).buildParsed();
    202     }
    203     public static crosby.binary.Fileformat.Blob parseFrom(
    204         java.io.InputStream input,
    205         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    206         throws java.io.IOException {
    207       return newBuilder().mergeFrom(input, extensionRegistry)
    208                .buildParsed();
    209     }
    210     public static crosby.binary.Fileformat.Blob parseDelimitedFrom(java.io.InputStream input)
    211         throws java.io.IOException {
    212       Builder builder = newBuilder();
    213       if (builder.mergeDelimitedFrom(input)) {
    214         return builder.buildParsed();
    215       } else {
    216         return null;
    217       }
    218     }
    219     public static crosby.binary.Fileformat.Blob parseDelimitedFrom(
    220         java.io.InputStream input,
    221         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    222         throws java.io.IOException {
    223       Builder builder = newBuilder();
    224       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    225         return builder.buildParsed();
    226       } else {
    227         return null;
    228       }
    229     }
    230     public static crosby.binary.Fileformat.Blob parseFrom(
    231         com.google.protobuf.CodedInputStream input)
    232         throws java.io.IOException {
    233       return newBuilder().mergeFrom(input).buildParsed();
    234     }
    235     public static crosby.binary.Fileformat.Blob parseFrom(
    236         com.google.protobuf.CodedInputStream input,
    237         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    238         throws java.io.IOException {
    239       return newBuilder().mergeFrom(input, extensionRegistry)
    240                .buildParsed();
    241     }
    242    
    243     public static Builder newBuilder() { return Builder.create(); }
    244     public Builder newBuilderForType() { return newBuilder(); }
    245     public static Builder newBuilder(crosby.binary.Fileformat.Blob prototype) {
    246       return newBuilder().mergeFrom(prototype);
    247     }
    248     public Builder toBuilder() { return newBuilder(this); }
    249    
    250     public static final class Builder extends
    251         com.google.protobuf.GeneratedMessageLite.Builder<
    252           crosby.binary.Fileformat.Blob, Builder>
    253         implements crosby.binary.Fileformat.BlobOrBuilder {
    254       // Construct using crosby.binary.Fileformat.Blob.newBuilder()
    255       private Builder() {
    256         maybeForceBuilderInitialization();
    257       }
    258      
    259       private void maybeForceBuilderInitialization() {
    260       }
    261       private static Builder create() {
    262         return new Builder();
    263       }
    264      
    265       public Builder clear() {
    266         super.clear();
    267         raw_ = com.google.protobuf.ByteString.EMPTY;
    268         bitField0_ = (bitField0_ & ~0x00000001);
    269         rawSize_ = 0;
    270         bitField0_ = (bitField0_ & ~0x00000002);
    271         zlibData_ = com.google.protobuf.ByteString.EMPTY;
    272         bitField0_ = (bitField0_ & ~0x00000004);
    273         lzmaData_ = com.google.protobuf.ByteString.EMPTY;
    274         bitField0_ = (bitField0_ & ~0x00000008);
    275         oBSOLETEBzip2Data_ = com.google.protobuf.ByteString.EMPTY;
    276         bitField0_ = (bitField0_ & ~0x00000010);
    277         return this;
    278       }
    279      
    280       public Builder clone() {
    281         return create().mergeFrom(buildPartial());
    282       }
    283      
    284       public crosby.binary.Fileformat.Blob getDefaultInstanceForType() {
    285         return crosby.binary.Fileformat.Blob.getDefaultInstance();
    286       }
    287      
    288       public crosby.binary.Fileformat.Blob build() {
    289         crosby.binary.Fileformat.Blob result = buildPartial();
    290         if (!result.isInitialized()) {
    291           throw newUninitializedMessageException(result);
    292         }
    293         return result;
    294       }
    295      
    296       private crosby.binary.Fileformat.Blob buildParsed()
    297           throws com.google.protobuf.InvalidProtocolBufferException {
    298         crosby.binary.Fileformat.Blob result = buildPartial();
    299         if (!result.isInitialized()) {
    300           throw newUninitializedMessageException(
    301             result).asInvalidProtocolBufferException();
    302         }
    303         return result;
    304       }
    305      
    306       public crosby.binary.Fileformat.Blob buildPartial() {
    307         crosby.binary.Fileformat.Blob result = new crosby.binary.Fileformat.Blob(this);
    308         int from_bitField0_ = bitField0_;
    309         int to_bitField0_ = 0;
    310         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
    311           to_bitField0_ |= 0x00000001;
    312         }
    313         result.raw_ = raw_;
    314         if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
    315           to_bitField0_ |= 0x00000002;
    316         }
    317         result.rawSize_ = rawSize_;
    318         if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
    319           to_bitField0_ |= 0x00000004;
    320         }
    321         result.zlibData_ = zlibData_;
    322         if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
    323           to_bitField0_ |= 0x00000008;
    324         }
    325         result.lzmaData_ = lzmaData_;
    326         if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
    327           to_bitField0_ |= 0x00000010;
    328         }
    329         result.oBSOLETEBzip2Data_ = oBSOLETEBzip2Data_;
    330         result.bitField0_ = to_bitField0_;
    331         return result;
    332       }
    333      
    334       public Builder mergeFrom(crosby.binary.Fileformat.Blob other) {
    335         if (other == crosby.binary.Fileformat.Blob.getDefaultInstance()) return this;
    336         if (other.hasRaw()) {
    337           setRaw(other.getRaw());
    338         }
    339         if (other.hasRawSize()) {
    340           setRawSize(other.getRawSize());
    341         }
    342         if (other.hasZlibData()) {
    343           setZlibData(other.getZlibData());
    344         }
    345         if (other.hasLzmaData()) {
    346           setLzmaData(other.getLzmaData());
    347         }
    348         if (other.hasOBSOLETEBzip2Data()) {
    349           setOBSOLETEBzip2Data(other.getOBSOLETEBzip2Data());
    350         }
    351         return this;
    352       }
    353      
    354       public final boolean isInitialized() {
    355         return true;
    356       }
    357      
    358       public Builder mergeFrom(
    359           com.google.protobuf.CodedInputStream input,
    360           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    361           throws java.io.IOException {
    362         while (true) {
     130      initFields();
     131      int mutable_bitField0_ = 0;
     132      try {
     133        boolean done = false;
     134        while (!done) {
    363135          int tag = input.readTag();
    364136          switch (tag) {
    365137            case 0:
    366              
    367               return this;
     138              done = true;
     139              break;
    368140            default: {
    369               if (!parseUnknownField(input, extensionRegistry, tag)) {
    370                
    371                 return this;
     141              if (!parseUnknownField(input,
     142                                     extensionRegistry, tag)) {
     143                done = true;
    372144              }
    373145              break;
     
    400172          }
    401173        }
    402       }
    403      
     174      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     175        throw e.setUnfinishedMessage(this);
     176      } catch (java.io.IOException e) {
     177        throw new com.google.protobuf.InvalidProtocolBufferException(
     178            e.getMessage()).setUnfinishedMessage(this);
     179      } finally {
     180        makeExtensionsImmutable();
     181      }
     182    }
     183    public static com.google.protobuf.Parser<Blob> PARSER =
     184        new com.google.protobuf.AbstractParser<Blob>() {
     185      public Blob parsePartialFrom(
     186          com.google.protobuf.CodedInputStream input,
     187          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     188          throws com.google.protobuf.InvalidProtocolBufferException {
     189        return new Blob(input, extensionRegistry);
     190      }
     191    };
     192
     193    @java.lang.Override
     194    public com.google.protobuf.Parser<Blob> getParserForType() {
     195      return PARSER;
     196    }
     197
     198    private int bitField0_;
     199    // optional bytes raw = 1;
     200    public static final int RAW_FIELD_NUMBER = 1;
     201    private com.google.protobuf.ByteString raw_;
     202    /**
     203     * <code>optional bytes raw = 1;</code>
     204     *
     205     * <pre>
     206     * No compression
     207     * </pre>
     208     */
     209    public boolean hasRaw() {
     210      return ((bitField0_ & 0x00000001) == 0x00000001);
     211    }
     212    /**
     213     * <code>optional bytes raw = 1;</code>
     214     *
     215     * <pre>
     216     * No compression
     217     * </pre>
     218     */
     219    public com.google.protobuf.ByteString getRaw() {
     220      return raw_;
     221    }
     222
     223    // optional int32 raw_size = 2;
     224    public static final int RAW_SIZE_FIELD_NUMBER = 2;
     225    private int rawSize_;
     226    /**
     227     * <code>optional int32 raw_size = 2;</code>
     228     *
     229     * <pre>
     230     * When compressed, the uncompressed size
     231     * </pre>
     232     */
     233    public boolean hasRawSize() {
     234      return ((bitField0_ & 0x00000002) == 0x00000002);
     235    }
     236    /**
     237     * <code>optional int32 raw_size = 2;</code>
     238     *
     239     * <pre>
     240     * When compressed, the uncompressed size
     241     * </pre>
     242     */
     243    public int getRawSize() {
     244      return rawSize_;
     245    }
     246
     247    // optional bytes zlib_data = 3;
     248    public static final int ZLIB_DATA_FIELD_NUMBER = 3;
     249    private com.google.protobuf.ByteString zlibData_;
     250    /**
     251     * <code>optional bytes zlib_data = 3;</code>
     252     *
     253     * <pre>
     254     * Possible compressed versions of the data.
     255     * </pre>
     256     */
     257    public boolean hasZlibData() {
     258      return ((bitField0_ & 0x00000004) == 0x00000004);
     259    }
     260    /**
     261     * <code>optional bytes zlib_data = 3;</code>
     262     *
     263     * <pre>
     264     * Possible compressed versions of the data.
     265     * </pre>
     266     */
     267    public com.google.protobuf.ByteString getZlibData() {
     268      return zlibData_;
     269    }
     270
     271    // optional bytes lzma_data = 4;
     272    public static final int LZMA_DATA_FIELD_NUMBER = 4;
     273    private com.google.protobuf.ByteString lzmaData_;
     274    /**
     275     * <code>optional bytes lzma_data = 4;</code>
     276     *
     277     * <pre>
     278     * PROPOSED feature for LZMA compressed data. SUPPORT IS NOT REQUIRED.
     279     * </pre>
     280     */
     281    public boolean hasLzmaData() {
     282      return ((bitField0_ & 0x00000008) == 0x00000008);
     283    }
     284    /**
     285     * <code>optional bytes lzma_data = 4;</code>
     286     *
     287     * <pre>
     288     * PROPOSED feature for LZMA compressed data. SUPPORT IS NOT REQUIRED.
     289     * </pre>
     290     */
     291    public com.google.protobuf.ByteString getLzmaData() {
     292      return lzmaData_;
     293    }
     294
     295    // optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];
     296    public static final int OBSOLETE_BZIP2_DATA_FIELD_NUMBER = 5;
     297    private com.google.protobuf.ByteString oBSOLETEBzip2Data_;
     298    /**
     299     * <code>optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];</code>
     300     *
     301     * <pre>
     302     * Formerly used for bzip2 compressed data. Depreciated in 2010.
     303     * </pre>
     304     */
     305    @java.lang.Deprecated public boolean hasOBSOLETEBzip2Data() {
     306      return ((bitField0_ & 0x00000010) == 0x00000010);
     307    }
     308    /**
     309     * <code>optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];</code>
     310     *
     311     * <pre>
     312     * Formerly used for bzip2 compressed data. Depreciated in 2010.
     313     * </pre>
     314     */
     315    @java.lang.Deprecated public com.google.protobuf.ByteString getOBSOLETEBzip2Data() {
     316      return oBSOLETEBzip2Data_;
     317    }
     318
     319    private void initFields() {
     320      raw_ = com.google.protobuf.ByteString.EMPTY;
     321      rawSize_ = 0;
     322      zlibData_ = com.google.protobuf.ByteString.EMPTY;
     323      lzmaData_ = com.google.protobuf.ByteString.EMPTY;
     324      oBSOLETEBzip2Data_ = com.google.protobuf.ByteString.EMPTY;
     325    }
     326    private byte memoizedIsInitialized = -1;
     327    public final boolean isInitialized() {
     328      byte isInitialized = memoizedIsInitialized;
     329      if (isInitialized != -1) return isInitialized == 1;
     330
     331      memoizedIsInitialized = 1;
     332      return true;
     333    }
     334
     335    public void writeTo(com.google.protobuf.CodedOutputStream output)
     336                        throws java.io.IOException {
     337      getSerializedSize();
     338      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     339        output.writeBytes(1, raw_);
     340      }
     341      if (((bitField0_ & 0x00000002) == 0x00000002)) {
     342        output.writeInt32(2, rawSize_);
     343      }
     344      if (((bitField0_ & 0x00000004) == 0x00000004)) {
     345        output.writeBytes(3, zlibData_);
     346      }
     347      if (((bitField0_ & 0x00000008) == 0x00000008)) {
     348        output.writeBytes(4, lzmaData_);
     349      }
     350      if (((bitField0_ & 0x00000010) == 0x00000010)) {
     351        output.writeBytes(5, oBSOLETEBzip2Data_);
     352      }
     353    }
     354
     355    private int memoizedSerializedSize = -1;
     356    public int getSerializedSize() {
     357      int size = memoizedSerializedSize;
     358      if (size != -1) return size;
     359
     360      size = 0;
     361      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     362        size += com.google.protobuf.CodedOutputStream
     363          .computeBytesSize(1, raw_);
     364      }
     365      if (((bitField0_ & 0x00000002) == 0x00000002)) {
     366        size += com.google.protobuf.CodedOutputStream
     367          .computeInt32Size(2, rawSize_);
     368      }
     369      if (((bitField0_ & 0x00000004) == 0x00000004)) {
     370        size += com.google.protobuf.CodedOutputStream
     371          .computeBytesSize(3, zlibData_);
     372      }
     373      if (((bitField0_ & 0x00000008) == 0x00000008)) {
     374        size += com.google.protobuf.CodedOutputStream
     375          .computeBytesSize(4, lzmaData_);
     376      }
     377      if (((bitField0_ & 0x00000010) == 0x00000010)) {
     378        size += com.google.protobuf.CodedOutputStream
     379          .computeBytesSize(5, oBSOLETEBzip2Data_);
     380      }
     381      memoizedSerializedSize = size;
     382      return size;
     383    }
     384
     385    private static final long serialVersionUID = 0L;
     386    @java.lang.Override
     387    protected java.lang.Object writeReplace()
     388        throws java.io.ObjectStreamException {
     389      return super.writeReplace();
     390    }
     391
     392    public static crosby.binary.Fileformat.Blob parseFrom(
     393        com.google.protobuf.ByteString data)
     394        throws com.google.protobuf.InvalidProtocolBufferException {
     395      return PARSER.parseFrom(data);
     396    }
     397    public static crosby.binary.Fileformat.Blob parseFrom(
     398        com.google.protobuf.ByteString data,
     399        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     400        throws com.google.protobuf.InvalidProtocolBufferException {
     401      return PARSER.parseFrom(data, extensionRegistry);
     402    }
     403    public static crosby.binary.Fileformat.Blob parseFrom(byte[] data)
     404        throws com.google.protobuf.InvalidProtocolBufferException {
     405      return PARSER.parseFrom(data);
     406    }
     407    public static crosby.binary.Fileformat.Blob parseFrom(
     408        byte[] data,
     409        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     410        throws com.google.protobuf.InvalidProtocolBufferException {
     411      return PARSER.parseFrom(data, extensionRegistry);
     412    }
     413    public static crosby.binary.Fileformat.Blob parseFrom(java.io.InputStream input)
     414        throws java.io.IOException {
     415      return PARSER.parseFrom(input);
     416    }
     417    public static crosby.binary.Fileformat.Blob parseFrom(
     418        java.io.InputStream input,
     419        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     420        throws java.io.IOException {
     421      return PARSER.parseFrom(input, extensionRegistry);
     422    }
     423    public static crosby.binary.Fileformat.Blob parseDelimitedFrom(java.io.InputStream input)
     424        throws java.io.IOException {
     425      return PARSER.parseDelimitedFrom(input);
     426    }
     427    public static crosby.binary.Fileformat.Blob parseDelimitedFrom(
     428        java.io.InputStream input,
     429        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     430        throws java.io.IOException {
     431      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     432    }
     433    public static crosby.binary.Fileformat.Blob parseFrom(
     434        com.google.protobuf.CodedInputStream input)
     435        throws java.io.IOException {
     436      return PARSER.parseFrom(input);
     437    }
     438    public static crosby.binary.Fileformat.Blob parseFrom(
     439        com.google.protobuf.CodedInputStream input,
     440        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     441        throws java.io.IOException {
     442      return PARSER.parseFrom(input, extensionRegistry);
     443    }
     444
     445    public static Builder newBuilder() { return Builder.create(); }
     446    public Builder newBuilderForType() { return newBuilder(); }
     447    public static Builder newBuilder(crosby.binary.Fileformat.Blob prototype) {
     448      return newBuilder().mergeFrom(prototype);
     449    }
     450    public Builder toBuilder() { return newBuilder(this); }
     451
     452    /**
     453     * Protobuf type {@code OSMPBF.Blob}
     454     */
     455    public static final class Builder extends
     456        com.google.protobuf.GeneratedMessageLite.Builder<
     457          crosby.binary.Fileformat.Blob, Builder>
     458        implements crosby.binary.Fileformat.BlobOrBuilder {
     459      // Construct using crosby.binary.Fileformat.Blob.newBuilder()
     460      private Builder() {
     461        maybeForceBuilderInitialization();
     462      }
     463
     464      private void maybeForceBuilderInitialization() {
     465      }
     466      private static Builder create() {
     467        return new Builder();
     468      }
     469
     470      public Builder clear() {
     471        super.clear();
     472        raw_ = com.google.protobuf.ByteString.EMPTY;
     473        bitField0_ = (bitField0_ & ~0x00000001);
     474        rawSize_ = 0;
     475        bitField0_ = (bitField0_ & ~0x00000002);
     476        zlibData_ = com.google.protobuf.ByteString.EMPTY;
     477        bitField0_ = (bitField0_ & ~0x00000004);
     478        lzmaData_ = com.google.protobuf.ByteString.EMPTY;
     479        bitField0_ = (bitField0_ & ~0x00000008);
     480        oBSOLETEBzip2Data_ = com.google.protobuf.ByteString.EMPTY;
     481        bitField0_ = (bitField0_ & ~0x00000010);
     482        return this;
     483      }
     484
     485      public Builder clone() {
     486        return create().mergeFrom(buildPartial());
     487      }
     488
     489      public crosby.binary.Fileformat.Blob getDefaultInstanceForType() {
     490        return crosby.binary.Fileformat.Blob.getDefaultInstance();
     491      }
     492
     493      public crosby.binary.Fileformat.Blob build() {
     494        crosby.binary.Fileformat.Blob result = buildPartial();
     495        if (!result.isInitialized()) {
     496          throw newUninitializedMessageException(result);
     497        }
     498        return result;
     499      }
     500
     501      public crosby.binary.Fileformat.Blob buildPartial() {
     502        crosby.binary.Fileformat.Blob result = new crosby.binary.Fileformat.Blob(this);
     503        int from_bitField0_ = bitField0_;
     504        int to_bitField0_ = 0;
     505        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
     506          to_bitField0_ |= 0x00000001;
     507        }
     508        result.raw_ = raw_;
     509        if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
     510          to_bitField0_ |= 0x00000002;
     511        }
     512        result.rawSize_ = rawSize_;
     513        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
     514          to_bitField0_ |= 0x00000004;
     515        }
     516        result.zlibData_ = zlibData_;
     517        if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
     518          to_bitField0_ |= 0x00000008;
     519        }
     520        result.lzmaData_ = lzmaData_;
     521        if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
     522          to_bitField0_ |= 0x00000010;
     523        }
     524        result.oBSOLETEBzip2Data_ = oBSOLETEBzip2Data_;
     525        result.bitField0_ = to_bitField0_;
     526        return result;
     527      }
     528
     529      public Builder mergeFrom(crosby.binary.Fileformat.Blob other) {
     530        if (other == crosby.binary.Fileformat.Blob.getDefaultInstance()) return this;
     531        if (other.hasRaw()) {
     532          setRaw(other.getRaw());
     533        }
     534        if (other.hasRawSize()) {
     535          setRawSize(other.getRawSize());
     536        }
     537        if (other.hasZlibData()) {
     538          setZlibData(other.getZlibData());
     539        }
     540        if (other.hasLzmaData()) {
     541          setLzmaData(other.getLzmaData());
     542        }
     543        if (other.hasOBSOLETEBzip2Data()) {
     544          setOBSOLETEBzip2Data(other.getOBSOLETEBzip2Data());
     545        }
     546        return this;
     547      }
     548
     549      public final boolean isInitialized() {
     550        return true;
     551      }
     552
     553      public Builder mergeFrom(
     554          com.google.protobuf.CodedInputStream input,
     555          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     556          throws java.io.IOException {
     557        crosby.binary.Fileformat.Blob parsedMessage = null;
     558        try {
     559          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     560        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     561          parsedMessage = (crosby.binary.Fileformat.Blob) e.getUnfinishedMessage();
     562          throw e;
     563        } finally {
     564          if (parsedMessage != null) {
     565            mergeFrom(parsedMessage);
     566          }
     567        }
     568        return this;
     569      }
    404570      private int bitField0_;
    405      
     571
    406572      // optional bytes raw = 1;
    407573      private com.google.protobuf.ByteString raw_ = com.google.protobuf.ByteString.EMPTY;
     574      /**
     575       * <code>optional bytes raw = 1;</code>
     576       *
     577       * <pre>
     578       * No compression
     579       * </pre>
     580       */
    408581      public boolean hasRaw() {
    409582        return ((bitField0_ & 0x00000001) == 0x00000001);
    410583      }
     584      /**
     585       * <code>optional bytes raw = 1;</code>
     586       *
     587       * <pre>
     588       * No compression
     589       * </pre>
     590       */
    411591      public com.google.protobuf.ByteString getRaw() {
    412592        return raw_;
    413593      }
     594      /**
     595       * <code>optional bytes raw = 1;</code>
     596       *
     597       * <pre>
     598       * No compression
     599       * </pre>
     600       */
    414601      public Builder setRaw(com.google.protobuf.ByteString value) {
    415602        if (value == null) {
     
    421608        return this;
    422609      }
     610      /**
     611       * <code>optional bytes raw = 1;</code>
     612       *
     613       * <pre>
     614       * No compression
     615       * </pre>
     616       */
    423617      public Builder clearRaw() {
    424618        bitField0_ = (bitField0_ & ~0x00000001);
     
    427621        return this;
    428622      }
    429      
     623
    430624      // optional int32 raw_size = 2;
    431625      private int rawSize_ ;
     626      /**
     627       * <code>optional int32 raw_size = 2;</code>
     628       *
     629       * <pre>
     630       * When compressed, the uncompressed size
     631       * </pre>
     632       */
    432633      public boolean hasRawSize() {
    433634        return ((bitField0_ & 0x00000002) == 0x00000002);
    434635      }
     636      /**
     637       * <code>optional int32 raw_size = 2;</code>
     638       *
     639       * <pre>
     640       * When compressed, the uncompressed size
     641       * </pre>
     642       */
    435643      public int getRawSize() {
    436644        return rawSize_;
    437645      }
     646      /**
     647       * <code>optional int32 raw_size = 2;</code>
     648       *
     649       * <pre>
     650       * When compressed, the uncompressed size
     651       * </pre>
     652       */
    438653      public Builder setRawSize(int value) {
    439654        bitField0_ |= 0x00000002;
     
    442657        return this;
    443658      }
     659      /**
     660       * <code>optional int32 raw_size = 2;</code>
     661       *
     662       * <pre>
     663       * When compressed, the uncompressed size
     664       * </pre>
     665       */
    444666      public Builder clearRawSize() {
    445667        bitField0_ = (bitField0_ & ~0x00000002);
     
    448670        return this;
    449671      }
    450      
     672
    451673      // optional bytes zlib_data = 3;
    452674      private com.google.protobuf.ByteString zlibData_ = com.google.protobuf.ByteString.EMPTY;
     675      /**
     676       * <code>optional bytes zlib_data = 3;</code>
     677       *
     678       * <pre>
     679       * Possible compressed versions of the data.
     680       * </pre>
     681       */
    453682      public boolean hasZlibData() {
    454683        return ((bitField0_ & 0x00000004) == 0x00000004);
    455684      }
     685      /**
     686       * <code>optional bytes zlib_data = 3;</code>
     687       *
     688       * <pre>
     689       * Possible compressed versions of the data.
     690       * </pre>
     691       */
    456692      public com.google.protobuf.ByteString getZlibData() {
    457693        return zlibData_;
    458694      }
     695      /**
     696       * <code>optional bytes zlib_data = 3;</code>
     697       *
     698       * <pre>
     699       * Possible compressed versions of the data.
     700       * </pre>
     701       */
    459702      public Builder setZlibData(com.google.protobuf.ByteString value) {
    460703        if (value == null) {
     
    466709        return this;
    467710      }
     711      /**
     712       * <code>optional bytes zlib_data = 3;</code>
     713       *
     714       * <pre>
     715       * Possible compressed versions of the data.
     716       * </pre>
     717       */
    468718      public Builder clearZlibData() {
    469719        bitField0_ = (bitField0_ & ~0x00000004);
     
    472722        return this;
    473723      }
    474      
     724
    475725      // optional bytes lzma_data = 4;
    476726      private com.google.protobuf.ByteString lzmaData_ = com.google.protobuf.ByteString.EMPTY;
     727      /**
     728       * <code>optional bytes lzma_data = 4;</code>
     729       *
     730       * <pre>
     731       * PROPOSED feature for LZMA compressed data. SUPPORT IS NOT REQUIRED.
     732       * </pre>
     733       */
    477734      public boolean hasLzmaData() {
    478735        return ((bitField0_ & 0x00000008) == 0x00000008);
    479736      }
     737      /**
     738       * <code>optional bytes lzma_data = 4;</code>
     739       *
     740       * <pre>
     741       * PROPOSED feature for LZMA compressed data. SUPPORT IS NOT REQUIRED.
     742       * </pre>
     743       */
    480744      public com.google.protobuf.ByteString getLzmaData() {
    481745        return lzmaData_;
    482746      }
     747      /**
     748       * <code>optional bytes lzma_data = 4;</code>
     749       *
     750       * <pre>
     751       * PROPOSED feature for LZMA compressed data. SUPPORT IS NOT REQUIRED.
     752       * </pre>
     753       */
    483754      public Builder setLzmaData(com.google.protobuf.ByteString value) {
    484755        if (value == null) {
     
    490761        return this;
    491762      }
     763      /**
     764       * <code>optional bytes lzma_data = 4;</code>
     765       *
     766       * <pre>
     767       * PROPOSED feature for LZMA compressed data. SUPPORT IS NOT REQUIRED.
     768       * </pre>
     769       */
    492770      public Builder clearLzmaData() {
    493771        bitField0_ = (bitField0_ & ~0x00000008);
     
    496774        return this;
    497775      }
    498      
     776
    499777      // optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];
    500778      private com.google.protobuf.ByteString oBSOLETEBzip2Data_ = com.google.protobuf.ByteString.EMPTY;
     779      /**
     780       * <code>optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];</code>
     781       *
     782       * <pre>
     783       * Formerly used for bzip2 compressed data. Depreciated in 2010.
     784       * </pre>
     785       */
    501786      @java.lang.Deprecated public boolean hasOBSOLETEBzip2Data() {
    502787        return ((bitField0_ & 0x00000010) == 0x00000010);
    503788      }
     789      /**
     790       * <code>optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];</code>
     791       *
     792       * <pre>
     793       * Formerly used for bzip2 compressed data. Depreciated in 2010.
     794       * </pre>
     795       */
    504796      @java.lang.Deprecated public com.google.protobuf.ByteString getOBSOLETEBzip2Data() {
    505797        return oBSOLETEBzip2Data_;
    506798      }
     799      /**
     800       * <code>optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];</code>
     801       *
     802       * <pre>
     803       * Formerly used for bzip2 compressed data. Depreciated in 2010.
     804       * </pre>
     805       */
    507806      @java.lang.Deprecated public Builder setOBSOLETEBzip2Data(com.google.protobuf.ByteString value) {
    508807        if (value == null) {
     
    514813        return this;
    515814      }
     815      /**
     816       * <code>optional bytes OBSOLETE_bzip2_data = 5 [deprecated = true];</code>
     817       *
     818       * <pre>
     819       * Formerly used for bzip2 compressed data. Depreciated in 2010.
     820       * </pre>
     821       */
    516822      @java.lang.Deprecated public Builder clearOBSOLETEBzip2Data() {
    517823        bitField0_ = (bitField0_ & ~0x00000010);
     
    520826        return this;
    521827      }
    522      
     828
    523829      // @@protoc_insertion_point(builder_scope:OSMPBF.Blob)
    524830    }
    525    
     831
    526832    static {
    527833      defaultInstance = new Blob(true);
    528834      defaultInstance.initFields();
    529835    }
    530    
     836
    531837    // @@protoc_insertion_point(class_scope:OSMPBF.Blob)
    532838  }
    533  
     839
    534840  public interface BlobHeaderOrBuilder
    535841      extends com.google.protobuf.MessageLiteOrBuilder {
    536    
     842
    537843    // required string type = 1;
     844    /**
     845     * <code>required string type = 1;</code>
     846     */
    538847    boolean hasType();
    539     String getType();
    540    
     848    /**
     849     * <code>required string type = 1;</code>
     850     */
     851    java.lang.String getType();
     852    /**
     853     * <code>required string type = 1;</code>
     854     */
     855    com.google.protobuf.ByteString
     856        getTypeBytes();
     857
    541858    // optional bytes indexdata = 2;
     859    /**
     860     * <code>optional bytes indexdata = 2;</code>
     861     */
    542862    boolean hasIndexdata();
     863    /**
     864     * <code>optional bytes indexdata = 2;</code>
     865     */
    543866    com.google.protobuf.ByteString getIndexdata();
    544    
     867
    545868    // required int32 datasize = 3;
     869    /**
     870     * <code>required int32 datasize = 3;</code>
     871     */
    546872    boolean hasDatasize();
     873    /**
     874     * <code>required int32 datasize = 3;</code>
     875     */
    547876    int getDatasize();
    548877  }
     878  /**
     879   * Protobuf type {@code OSMPBF.BlobHeader}
     880   */
    549881  public static final class BlobHeader extends
    550882      com.google.protobuf.GeneratedMessageLite
    551883      implements BlobHeaderOrBuilder {
    552884    // Use BlobHeader.newBuilder() to construct.
    553     private BlobHeader(Builder builder) {
     885    private BlobHeader(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    554886      super(builder);
     887
    555888    }
    556889    private BlobHeader(boolean noInit) {}
    557    
     890
    558891    private static final BlobHeader defaultInstance;
    559892    public static BlobHeader getDefaultInstance() {
    560893      return defaultInstance;
    561894    }
    562    
     895
    563896    public BlobHeader getDefaultInstanceForType() {
    564897      return defaultInstance;
    565898    }
    566    
    567     private int bitField0_;
    568     // required string type = 1;
    569     public static final int TYPE_FIELD_NUMBER = 1;
    570     private java.lang.Object type_;
    571     public boolean hasType() {
    572       return ((bitField0_ & 0x00000001) == 0x00000001);
    573     }
    574     public String getType() {
    575       java.lang.Object ref = type_;
    576       if (ref instanceof String) {
    577         return (String) ref;
    578       } else {
    579         com.google.protobuf.ByteString bs =
    580             (com.google.protobuf.ByteString) ref;
    581         String s = bs.toStringUtf8();
    582         if (com.google.protobuf.Internal.isValidUtf8(bs)) {
    583           type_ = s;
    584         }
    585         return s;
    586       }
    587     }
    588     private com.google.protobuf.ByteString getTypeBytes() {
    589       java.lang.Object ref = type_;
    590       if (ref instanceof String) {
    591         com.google.protobuf.ByteString b =
    592             com.google.protobuf.ByteString.copyFromUtf8((String) ref);
    593         type_ = b;
    594         return b;
    595       } else {
    596         return (com.google.protobuf.ByteString) ref;
    597       }
    598     }
    599    
    600     // optional bytes indexdata = 2;
    601     public static final int INDEXDATA_FIELD_NUMBER = 2;
    602     private com.google.protobuf.ByteString indexdata_;
    603     public boolean hasIndexdata() {
    604       return ((bitField0_ & 0x00000002) == 0x00000002);
    605     }
    606     public com.google.protobuf.ByteString getIndexdata() {
    607       return indexdata_;
    608     }
    609    
    610     // required int32 datasize = 3;
    611     public static final int DATASIZE_FIELD_NUMBER = 3;
    612     private int datasize_;
    613     public boolean hasDatasize() {
    614       return ((bitField0_ & 0x00000004) == 0x00000004);
    615     }
    616     public int getDatasize() {
    617       return datasize_;
    618     }
    619    
    620     private void initFields() {
    621       type_ = "";
    622       indexdata_ = com.google.protobuf.ByteString.EMPTY;
    623       datasize_ = 0;
    624     }
    625     private byte memoizedIsInitialized = -1;
    626     public final boolean isInitialized() {
    627       byte isInitialized = memoizedIsInitialized;
    628       if (isInitialized != -1) return isInitialized == 1;
    629      
    630       if (!hasType()) {
    631         memoizedIsInitialized = 0;
    632         return false;
    633       }
    634       if (!hasDatasize()) {
    635         memoizedIsInitialized = 0;
    636         return false;
    637       }
    638       memoizedIsInitialized = 1;
    639       return true;
    640     }
    641    
    642     public void writeTo(com.google.protobuf.CodedOutputStream output)
    643                         throws java.io.IOException {
    644       getSerializedSize();
    645       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    646         output.writeBytes(1, getTypeBytes());
    647       }
    648       if (((bitField0_ & 0x00000002) == 0x00000002)) {
    649         output.writeBytes(2, indexdata_);
    650       }
    651       if (((bitField0_ & 0x00000004) == 0x00000004)) {
    652         output.writeInt32(3, datasize_);
    653       }
    654     }
    655    
    656     private int memoizedSerializedSize = -1;
    657     public int getSerializedSize() {
    658       int size = memoizedSerializedSize;
    659       if (size != -1) return size;
    660    
    661       size = 0;
    662       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    663         size += com.google.protobuf.CodedOutputStream
    664           .computeBytesSize(1, getTypeBytes());
    665       }
    666       if (((bitField0_ & 0x00000002) == 0x00000002)) {
    667         size += com.google.protobuf.CodedOutputStream
    668           .computeBytesSize(2, indexdata_);
    669       }
    670       if (((bitField0_ & 0x00000004) == 0x00000004)) {
    671         size += com.google.protobuf.CodedOutputStream
    672           .computeInt32Size(3, datasize_);
    673       }
    674       memoizedSerializedSize = size;
    675       return size;
    676     }
    677    
    678     private static final long serialVersionUID = 0L;
    679     @java.lang.Override
    680     protected java.lang.Object writeReplace()
    681         throws java.io.ObjectStreamException {
    682       return super.writeReplace();
    683     }
    684    
    685     public static crosby.binary.Fileformat.BlobHeader parseFrom(
    686         com.google.protobuf.ByteString data)
    687         throws com.google.protobuf.InvalidProtocolBufferException {
    688       return newBuilder().mergeFrom(data).buildParsed();
    689     }
    690     public static crosby.binary.Fileformat.BlobHeader parseFrom(
    691         com.google.protobuf.ByteString data,
     899
     900    private BlobHeader(
     901        com.google.protobuf.CodedInputStream input,
    692902        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    693903        throws com.google.protobuf.InvalidProtocolBufferException {
    694       return newBuilder().mergeFrom(data, extensionRegistry)
    695                .buildParsed();
    696     }
    697     public static crosby.binary.Fileformat.BlobHeader parseFrom(byte[] data)
    698         throws com.google.protobuf.InvalidProtocolBufferException {
    699       return newBuilder().mergeFrom(data).buildParsed();
    700     }
    701     public static crosby.binary.Fileformat.BlobHeader parseFrom(
    702         byte[] data,
    703         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    704         throws com.google.protobuf.InvalidProtocolBufferException {
    705       return newBuilder().mergeFrom(data, extensionRegistry)
    706                .buildParsed();
    707     }
    708     public static crosby.binary.Fileformat.BlobHeader parseFrom(java.io.InputStream input)
    709         throws java.io.IOException {
    710       return newBuilder().mergeFrom(input).buildParsed();
    711     }
    712     public static crosby.binary.Fileformat.BlobHeader parseFrom(
    713         java.io.InputStream input,
    714         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    715         throws java.io.IOException {
    716       return newBuilder().mergeFrom(input, extensionRegistry)
    717                .buildParsed();
    718     }
    719     public static crosby.binary.Fileformat.BlobHeader parseDelimitedFrom(java.io.InputStream input)
    720         throws java.io.IOException {
    721       Builder builder = newBuilder();
    722       if (builder.mergeDelimitedFrom(input)) {
    723         return builder.buildParsed();
    724       } else {
    725         return null;
    726       }
    727     }
    728     public static crosby.binary.Fileformat.BlobHeader parseDelimitedFrom(
    729         java.io.InputStream input,
    730         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    731         throws java.io.IOException {
    732       Builder builder = newBuilder();
    733       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    734         return builder.buildParsed();
    735       } else {
    736         return null;
    737       }
    738     }
    739     public static crosby.binary.Fileformat.BlobHeader parseFrom(
    740         com.google.protobuf.CodedInputStream input)
    741         throws java.io.IOException {
    742       return newBuilder().mergeFrom(input).buildParsed();
    743     }
    744     public static crosby.binary.Fileformat.BlobHeader parseFrom(
    745         com.google.protobuf.CodedInputStream input,
    746         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    747         throws java.io.IOException {
    748       return newBuilder().mergeFrom(input, extensionRegistry)
    749                .buildParsed();
    750     }
    751    
    752     public static Builder newBuilder() { return Builder.create(); }
    753     public Builder newBuilderForType() { return newBuilder(); }
    754     public static Builder newBuilder(crosby.binary.Fileformat.BlobHeader prototype) {
    755       return newBuilder().mergeFrom(prototype);
    756     }
    757     public Builder toBuilder() { return newBuilder(this); }
    758    
    759     public static final class Builder extends
    760         com.google.protobuf.GeneratedMessageLite.Builder<
    761           crosby.binary.Fileformat.BlobHeader, Builder>
    762         implements crosby.binary.Fileformat.BlobHeaderOrBuilder {
    763       // Construct using crosby.binary.Fileformat.BlobHeader.newBuilder()
    764       private Builder() {
    765         maybeForceBuilderInitialization();
    766       }
    767      
    768       private void maybeForceBuilderInitialization() {
    769       }
    770       private static Builder create() {
    771         return new Builder();
    772       }
    773      
    774       public Builder clear() {
    775         super.clear();
    776         type_ = "";
    777         bitField0_ = (bitField0_ & ~0x00000001);
    778         indexdata_ = com.google.protobuf.ByteString.EMPTY;
    779         bitField0_ = (bitField0_ & ~0x00000002);
    780         datasize_ = 0;
    781         bitField0_ = (bitField0_ & ~0x00000004);
    782         return this;
    783       }
    784      
    785       public Builder clone() {
    786         return create().mergeFrom(buildPartial());
    787       }
    788      
    789       public crosby.binary.Fileformat.BlobHeader getDefaultInstanceForType() {
    790         return crosby.binary.Fileformat.BlobHeader.getDefaultInstance();
    791       }
    792      
    793       public crosby.binary.Fileformat.BlobHeader build() {
    794         crosby.binary.Fileformat.BlobHeader result = buildPartial();
    795         if (!result.isInitialized()) {
    796           throw newUninitializedMessageException(result);
    797         }
    798         return result;
    799       }
    800      
    801       private crosby.binary.Fileformat.BlobHeader buildParsed()
    802           throws com.google.protobuf.InvalidProtocolBufferException {
    803         crosby.binary.Fileformat.BlobHeader result = buildPartial();
    804         if (!result.isInitialized()) {
    805           throw newUninitializedMessageException(
    806             result).asInvalidProtocolBufferException();
    807         }
    808         return result;
    809       }
    810      
    811       public crosby.binary.Fileformat.BlobHeader buildPartial() {
    812         crosby.binary.Fileformat.BlobHeader result = new crosby.binary.Fileformat.BlobHeader(this);
    813         int from_bitField0_ = bitField0_;
    814         int to_bitField0_ = 0;
    815         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
    816           to_bitField0_ |= 0x00000001;
    817         }
    818         result.type_ = type_;
    819         if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
    820           to_bitField0_ |= 0x00000002;
    821         }
    822         result.indexdata_ = indexdata_;
    823         if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
    824           to_bitField0_ |= 0x00000004;
    825         }
    826         result.datasize_ = datasize_;
    827         result.bitField0_ = to_bitField0_;
    828         return result;
    829       }
    830      
    831       public Builder mergeFrom(crosby.binary.Fileformat.BlobHeader other) {
    832         if (other == crosby.binary.Fileformat.BlobHeader.getDefaultInstance()) return this;
    833         if (other.hasType()) {
    834           setType(other.getType());
    835         }
    836         if (other.hasIndexdata()) {
    837           setIndexdata(other.getIndexdata());
    838         }
    839         if (other.hasDatasize()) {
    840           setDatasize(other.getDatasize());
    841         }
    842         return this;
    843       }
    844      
    845       public final boolean isInitialized() {
    846         if (!hasType()) {
    847          
    848           return false;
    849         }
    850         if (!hasDatasize()) {
    851          
    852           return false;
    853         }
    854         return true;
    855       }
    856      
    857       public Builder mergeFrom(
    858           com.google.protobuf.CodedInputStream input,
    859           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    860           throws java.io.IOException {
    861         while (true) {
     904      initFields();
     905      int mutable_bitField0_ = 0;
     906      try {
     907        boolean done = false;
     908        while (!done) {
    862909          int tag = input.readTag();
    863910          switch (tag) {
    864911            case 0:
    865              
    866               return this;
     912              done = true;
     913              break;
    867914            default: {
    868               if (!parseUnknownField(input, extensionRegistry, tag)) {
    869                
    870                 return this;
     915              if (!parseUnknownField(input,
     916                                     extensionRegistry, tag)) {
     917                done = true;
    871918              }
    872919              break;
     
    889936          }
    890937        }
    891       }
    892      
     938      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     939        throw e.setUnfinishedMessage(this);
     940      } catch (java.io.IOException e) {
     941        throw new com.google.protobuf.InvalidProtocolBufferException(
     942            e.getMessage()).setUnfinishedMessage(this);
     943      } finally {
     944        makeExtensionsImmutable();
     945      }
     946    }
     947    public static com.google.protobuf.Parser<BlobHeader> PARSER =
     948        new com.google.protobuf.AbstractParser<BlobHeader>() {
     949      public BlobHeader parsePartialFrom(
     950          com.google.protobuf.CodedInputStream input,
     951          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     952          throws com.google.protobuf.InvalidProtocolBufferException {
     953        return new BlobHeader(input, extensionRegistry);
     954      }
     955    };
     956
     957    @java.lang.Override
     958    public com.google.protobuf.Parser<BlobHeader> getParserForType() {
     959      return PARSER;
     960    }
     961
     962    private int bitField0_;
     963    // required string type = 1;
     964    public static final int TYPE_FIELD_NUMBER = 1;
     965    private java.lang.Object type_;
     966    /**
     967     * <code>required string type = 1;</code>
     968     */
     969    public boolean hasType() {
     970      return ((bitField0_ & 0x00000001) == 0x00000001);
     971    }
     972    /**
     973     * <code>required string type = 1;</code>
     974     */
     975    public java.lang.String getType() {
     976      java.lang.Object ref = type_;
     977      if (ref instanceof java.lang.String) {
     978        return (java.lang.String) ref;
     979      } else {
     980        com.google.protobuf.ByteString bs =
     981            (com.google.protobuf.ByteString) ref;
     982        java.lang.String s = bs.toStringUtf8();
     983        if (bs.isValidUtf8()) {
     984          type_ = s;
     985        }
     986        return s;
     987      }
     988    }
     989    /**
     990     * <code>required string type = 1;</code>
     991     */
     992    public com.google.protobuf.ByteString
     993        getTypeBytes() {
     994      java.lang.Object ref = type_;
     995      if (ref instanceof java.lang.String) {
     996        com.google.protobuf.ByteString b =
     997            com.google.protobuf.ByteString.copyFromUtf8(
     998                (java.lang.String) ref);
     999        type_ = b;
     1000        return b;
     1001      } else {
     1002        return (com.google.protobuf.ByteString) ref;
     1003      }
     1004    }
     1005
     1006    // optional bytes indexdata = 2;
     1007    public static final int INDEXDATA_FIELD_NUMBER = 2;
     1008    private com.google.protobuf.ByteString indexdata_;
     1009    /**
     1010     * <code>optional bytes indexdata = 2;</code>
     1011     */
     1012    public boolean hasIndexdata() {
     1013      return ((bitField0_ & 0x00000002) == 0x00000002);
     1014    }
     1015    /**
     1016     * <code>optional bytes indexdata = 2;</code>
     1017     */
     1018    public com.google.protobuf.ByteString getIndexdata() {
     1019      return indexdata_;
     1020    }
     1021
     1022    // required int32 datasize = 3;
     1023    public static final int DATASIZE_FIELD_NUMBER = 3;
     1024    private int datasize_;
     1025    /**
     1026     * <code>required int32 datasize = 3;</code>
     1027     */
     1028    public boolean hasDatasize() {
     1029      return ((bitField0_ & 0x00000004) == 0x00000004);
     1030    }
     1031    /**
     1032     * <code>required int32 datasize = 3;</code>
     1033     */
     1034    public int getDatasize() {
     1035      return datasize_;
     1036    }
     1037
     1038    private void initFields() {
     1039      type_ = "";
     1040      indexdata_ = com.google.protobuf.ByteString.EMPTY;
     1041      datasize_ = 0;
     1042    }
     1043    private byte memoizedIsInitialized = -1;
     1044    public final boolean isInitialized() {
     1045      byte isInitialized = memoizedIsInitialized;
     1046      if (isInitialized != -1) return isInitialized == 1;
     1047
     1048      if (!hasType()) {
     1049        memoizedIsInitialized = 0;
     1050        return false;
     1051      }
     1052      if (!hasDatasize()) {
     1053        memoizedIsInitialized = 0;
     1054        return false;
     1055      }
     1056      memoizedIsInitialized = 1;
     1057      return true;
     1058    }
     1059
     1060    public void writeTo(com.google.protobuf.CodedOutputStream output)
     1061                        throws java.io.IOException {
     1062      getSerializedSize();
     1063      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     1064        output.writeBytes(1, getTypeBytes());
     1065      }
     1066      if (((bitField0_ & 0x00000002) == 0x00000002)) {
     1067        output.writeBytes(2, indexdata_);
     1068      }
     1069      if (((bitField0_ & 0x00000004) == 0x00000004)) {
     1070        output.writeInt32(3, datasize_);
     1071      }
     1072    }
     1073
     1074    private int memoizedSerializedSize = -1;
     1075    public int getSerializedSize() {
     1076      int size = memoizedSerializedSize;
     1077      if (size != -1) return size;
     1078
     1079      size = 0;
     1080      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     1081        size += com.google.protobuf.CodedOutputStream
     1082          .computeBytesSize(1, getTypeBytes());
     1083      }
     1084      if (((bitField0_ & 0x00000002) == 0x00000002)) {
     1085        size += com.google.protobuf.CodedOutputStream
     1086          .computeBytesSize(2, indexdata_);
     1087      }
     1088      if (((bitField0_ & 0x00000004) == 0x00000004)) {
     1089        size += com.google.protobuf.CodedOutputStream
     1090          .computeInt32Size(3, datasize_);
     1091      }
     1092      memoizedSerializedSize = size;
     1093      return size;
     1094    }
     1095
     1096    private static final long serialVersionUID = 0L;
     1097    @java.lang.Override
     1098    protected java.lang.Object writeReplace()
     1099        throws java.io.ObjectStreamException {
     1100      return super.writeReplace();
     1101    }
     1102
     1103    public static crosby.binary.Fileformat.BlobHeader parseFrom(
     1104        com.google.protobuf.ByteString data)
     1105        throws com.google.protobuf.InvalidProtocolBufferException {
     1106      return PARSER.parseFrom(data);
     1107    }
     1108    public static crosby.binary.Fileformat.BlobHeader parseFrom(
     1109        com.google.protobuf.ByteString data,
     1110        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1111        throws com.google.protobuf.InvalidProtocolBufferException {
     1112      return PARSER.parseFrom(data, extensionRegistry);
     1113    }
     1114    public static crosby.binary.Fileformat.BlobHeader parseFrom(byte[] data)
     1115        throws com.google.protobuf.InvalidProtocolBufferException {
     1116      return PARSER.parseFrom(data);
     1117    }
     1118    public static crosby.binary.Fileformat.BlobHeader parseFrom(
     1119        byte[] data,
     1120        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1121        throws com.google.protobuf.InvalidProtocolBufferException {
     1122      return PARSER.parseFrom(data, extensionRegistry);
     1123    }
     1124    public static crosby.binary.Fileformat.BlobHeader parseFrom(java.io.InputStream input)
     1125        throws java.io.IOException {
     1126      return PARSER.parseFrom(input);
     1127    }
     1128    public static crosby.binary.Fileformat.BlobHeader parseFrom(
     1129        java.io.InputStream input,
     1130        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1131        throws java.io.IOException {
     1132      return PARSER.parseFrom(input, extensionRegistry);
     1133    }
     1134    public static crosby.binary.Fileformat.BlobHeader parseDelimitedFrom(java.io.InputStream input)
     1135        throws java.io.IOException {
     1136      return PARSER.parseDelimitedFrom(input);
     1137    }
     1138    public static crosby.binary.Fileformat.BlobHeader parseDelimitedFrom(
     1139        java.io.InputStream input,
     1140        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1141        throws java.io.IOException {
     1142      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     1143    }
     1144    public static crosby.binary.Fileformat.BlobHeader parseFrom(
     1145        com.google.protobuf.CodedInputStream input)
     1146        throws java.io.IOException {
     1147      return PARSER.parseFrom(input);
     1148    }
     1149    public static crosby.binary.Fileformat.BlobHeader parseFrom(
     1150        com.google.protobuf.CodedInputStream input,
     1151        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1152        throws java.io.IOException {
     1153      return PARSER.parseFrom(input, extensionRegistry);
     1154    }
     1155
     1156    public static Builder newBuilder() { return Builder.create(); }
     1157    public Builder newBuilderForType() { return newBuilder(); }
     1158    public static Builder newBuilder(crosby.binary.Fileformat.BlobHeader prototype) {
     1159      return newBuilder().mergeFrom(prototype);
     1160    }
     1161    public Builder toBuilder() { return newBuilder(this); }
     1162
     1163    /**
     1164     * Protobuf type {@code OSMPBF.BlobHeader}
     1165     */
     1166    public static final class Builder extends
     1167        com.google.protobuf.GeneratedMessageLite.Builder<
     1168          crosby.binary.Fileformat.BlobHeader, Builder>
     1169        implements crosby.binary.Fileformat.BlobHeaderOrBuilder {
     1170      // Construct using crosby.binary.Fileformat.BlobHeader.newBuilder()
     1171      private Builder() {
     1172        maybeForceBuilderInitialization();
     1173      }
     1174
     1175      private void maybeForceBuilderInitialization() {
     1176      }
     1177      private static Builder create() {
     1178        return new Builder();
     1179      }
     1180
     1181      public Builder clear() {
     1182        super.clear();
     1183        type_ = "";
     1184        bitField0_ = (bitField0_ & ~0x00000001);
     1185        indexdata_ = com.google.protobuf.ByteString.EMPTY;
     1186        bitField0_ = (bitField0_ & ~0x00000002);
     1187        datasize_ = 0;
     1188        bitField0_ = (bitField0_ & ~0x00000004);
     1189        return this;
     1190      }
     1191
     1192      public Builder clone() {
     1193        return create().mergeFrom(buildPartial());
     1194      }
     1195
     1196      public crosby.binary.Fileformat.BlobHeader getDefaultInstanceForType() {
     1197        return crosby.binary.Fileformat.BlobHeader.getDefaultInstance();
     1198      }
     1199
     1200      public crosby.binary.Fileformat.BlobHeader build() {
     1201        crosby.binary.Fileformat.BlobHeader result = buildPartial();
     1202        if (!result.isInitialized()) {
     1203          throw newUninitializedMessageException(result);
     1204        }
     1205        return result;
     1206      }
     1207
     1208      public crosby.binary.Fileformat.BlobHeader buildPartial() {
     1209        crosby.binary.Fileformat.BlobHeader result = new crosby.binary.Fileformat.BlobHeader(this);
     1210        int from_bitField0_ = bitField0_;
     1211        int to_bitField0_ = 0;
     1212        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
     1213          to_bitField0_ |= 0x00000001;
     1214        }
     1215        result.type_ = type_;
     1216        if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
     1217          to_bitField0_ |= 0x00000002;
     1218        }
     1219        result.indexdata_ = indexdata_;
     1220        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
     1221          to_bitField0_ |= 0x00000004;
     1222        }
     1223        result.datasize_ = datasize_;
     1224        result.bitField0_ = to_bitField0_;
     1225        return result;
     1226      }
     1227
     1228      public Builder mergeFrom(crosby.binary.Fileformat.BlobHeader other) {
     1229        if (other == crosby.binary.Fileformat.BlobHeader.getDefaultInstance()) return this;
     1230        if (other.hasType()) {
     1231          bitField0_ |= 0x00000001;
     1232          type_ = other.type_;
     1233         
     1234        }
     1235        if (other.hasIndexdata()) {
     1236          setIndexdata(other.getIndexdata());
     1237        }
     1238        if (other.hasDatasize()) {
     1239          setDatasize(other.getDatasize());
     1240        }
     1241        return this;
     1242      }
     1243
     1244      public final boolean isInitialized() {
     1245        if (!hasType()) {
     1246         
     1247          return false;
     1248        }
     1249        if (!hasDatasize()) {
     1250         
     1251          return false;
     1252        }
     1253        return true;
     1254      }
     1255
     1256      public Builder mergeFrom(
     1257          com.google.protobuf.CodedInputStream input,
     1258          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1259          throws java.io.IOException {
     1260        crosby.binary.Fileformat.BlobHeader parsedMessage = null;
     1261        try {
     1262          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     1263        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     1264          parsedMessage = (crosby.binary.Fileformat.BlobHeader) e.getUnfinishedMessage();
     1265          throw e;
     1266        } finally {
     1267          if (parsedMessage != null) {
     1268            mergeFrom(parsedMessage);
     1269          }
     1270        }
     1271        return this;
     1272      }
    8931273      private int bitField0_;
    894      
     1274
    8951275      // required string type = 1;
    8961276      private java.lang.Object type_ = "";
     1277      /**
     1278       * <code>required string type = 1;</code>
     1279       */
    8971280      public boolean hasType() {
    8981281        return ((bitField0_ & 0x00000001) == 0x00000001);
    8991282      }
    900       public String getType() {
     1283      /**
     1284       * <code>required string type = 1;</code>
     1285       */
     1286      public java.lang.String getType() {
    9011287        java.lang.Object ref = type_;
    902         if (!(ref instanceof String)) {
    903           String s = ((com.google.protobuf.ByteString) ref).toStringUtf8();
     1288        if (!(ref instanceof java.lang.String)) {
     1289          java.lang.String s = ((com.google.protobuf.ByteString) ref)
     1290              .toStringUtf8();
    9041291          type_ = s;
    9051292          return s;
    9061293        } else {
    907           return (String) ref;
    908         }
    909       }
    910       public Builder setType(String value) {
     1294          return (java.lang.String) ref;
     1295        }
     1296      }
     1297      /**
     1298       * <code>required string type = 1;</code>
     1299       */
     1300      public com.google.protobuf.ByteString
     1301          getTypeBytes() {
     1302        java.lang.Object ref = type_;
     1303        if (ref instanceof String) {
     1304          com.google.protobuf.ByteString b =
     1305              com.google.protobuf.ByteString.copyFromUtf8(
     1306                  (java.lang.String) ref);
     1307          type_ = b;
     1308          return b;
     1309        } else {
     1310          return (com.google.protobuf.ByteString) ref;
     1311        }
     1312      }
     1313      /**
     1314       * <code>required string type = 1;</code>
     1315       */
     1316      public Builder setType(
     1317          java.lang.String value) {
    9111318        if (value == null) {
    9121319    throw new NullPointerException();
     
    9171324        return this;
    9181325      }
     1326      /**
     1327       * <code>required string type = 1;</code>
     1328       */
    9191329      public Builder clearType() {
    9201330        bitField0_ = (bitField0_ & ~0x00000001);
     
    9231333        return this;
    9241334      }
    925       void setType(com.google.protobuf.ByteString value) {
    926         bitField0_ |= 0x00000001;
     1335      /**
     1336       * <code>required string type = 1;</code>
     1337       */
     1338      public Builder setTypeBytes(
     1339          com.google.protobuf.ByteString value) {
     1340        if (value == null) {
     1341    throw new NullPointerException();
     1342  }
     1343  bitField0_ |= 0x00000001;
    9271344        type_ = value;
    9281345       
    929       }
    930      
     1346        return this;
     1347      }
     1348
    9311349      // optional bytes indexdata = 2;
    9321350      private com.google.protobuf.ByteString indexdata_ = com.google.protobuf.ByteString.EMPTY;
     1351      /**
     1352       * <code>optional bytes indexdata = 2;</code>
     1353       */
    9331354      public boolean hasIndexdata() {
    9341355        return ((bitField0_ & 0x00000002) == 0x00000002);
    9351356      }
     1357      /**
     1358       * <code>optional bytes indexdata = 2;</code>
     1359       */
    9361360      public com.google.protobuf.ByteString getIndexdata() {
    9371361        return indexdata_;
    9381362      }
     1363      /**
     1364       * <code>optional bytes indexdata = 2;</code>
     1365       */
    9391366      public Builder setIndexdata(com.google.protobuf.ByteString value) {
    9401367        if (value == null) {
     
    9461373        return this;
    9471374      }
     1375      /**
     1376       * <code>optional bytes indexdata = 2;</code>
     1377       */
    9481378      public Builder clearIndexdata() {
    9491379        bitField0_ = (bitField0_ & ~0x00000002);
     
    9521382        return this;
    9531383      }
    954      
     1384
    9551385      // required int32 datasize = 3;
    9561386      private int datasize_ ;
     1387      /**
     1388       * <code>required int32 datasize = 3;</code>
     1389       */
    9571390      public boolean hasDatasize() {
    9581391        return ((bitField0_ & 0x00000004) == 0x00000004);
    9591392      }
     1393      /**
     1394       * <code>required int32 datasize = 3;</code>
     1395       */
    9601396      public int getDatasize() {
    9611397        return datasize_;
    9621398      }
     1399      /**
     1400       * <code>required int32 datasize = 3;</code>
     1401       */
    9631402      public Builder setDatasize(int value) {
    9641403        bitField0_ |= 0x00000004;
     
    9671406        return this;
    9681407      }
     1408      /**
     1409       * <code>required int32 datasize = 3;</code>
     1410       */
    9691411      public Builder clearDatasize() {
    9701412        bitField0_ = (bitField0_ & ~0x00000004);
     
    9731415        return this;
    9741416      }
    975      
     1417
    9761418      // @@protoc_insertion_point(builder_scope:OSMPBF.BlobHeader)
    9771419    }
    978    
     1420
    9791421    static {
    9801422      defaultInstance = new BlobHeader(true);
    9811423      defaultInstance.initFields();
    9821424    }
    983    
     1425
    9841426    // @@protoc_insertion_point(class_scope:OSMPBF.BlobHeader)
    9851427  }
    986  
    987  
     1428
     1429
    9881430  static {
    9891431  }
    990  
     1432
    9911433  // @@protoc_insertion_point(outer_class_scope)
    9921434}
  • applications/editors/josm/plugins/pbf/gen/crosby/binary/Osmformat.java

    r26961 r30490  
    11// Generated by the protocol buffer compiler.  DO NOT EDIT!
    2 // source: src/osmformat.proto
     2// source: src/crosby/binary/osmformat.proto
    33
    44package crosby.binary;
     
    1111  public interface HeaderBlockOrBuilder
    1212      extends com.google.protobuf.MessageLiteOrBuilder {
    13    
     13
    1414    // optional .OSMPBF.HeaderBBox bbox = 1;
     15    /**
     16     * <code>optional .OSMPBF.HeaderBBox bbox = 1;</code>
     17     */
    1518    boolean hasBbox();
     19    /**
     20     * <code>optional .OSMPBF.HeaderBBox bbox = 1;</code>
     21     */
    1622    crosby.binary.Osmformat.HeaderBBox getBbox();
    17    
     23
    1824    // repeated string required_features = 4;
    19     java.util.List<String> getRequiredFeaturesList();
     25    /**
     26     * <code>repeated string required_features = 4;</code>
     27     *
     28     * <pre>
     29     * Additional tags to aid in parsing this dataset
     30     * </pre>
     31     */
     32    java.util.List<java.lang.String>
     33    getRequiredFeaturesList();
     34    /**
     35     * <code>repeated string required_features = 4;</code>
     36     *
     37     * <pre>
     38     * Additional tags to aid in parsing this dataset
     39     * </pre>
     40     */
    2041    int getRequiredFeaturesCount();
    21     String getRequiredFeatures(int index);
    22    
     42    /**
     43     * <code>repeated string required_features = 4;</code>
     44     *
     45     * <pre>
     46     * Additional tags to aid in parsing this dataset
     47     * </pre>
     48     */
     49    java.lang.String getRequiredFeatures(int index);
     50    /**
     51     * <code>repeated string required_features = 4;</code>
     52     *
     53     * <pre>
     54     * Additional tags to aid in parsing this dataset
     55     * </pre>
     56     */
     57    com.google.protobuf.ByteString
     58        getRequiredFeaturesBytes(int index);
     59
    2360    // repeated string optional_features = 5;
    24     java.util.List<String> getOptionalFeaturesList();
     61    /**
     62     * <code>repeated string optional_features = 5;</code>
     63     */
     64    java.util.List<java.lang.String>
     65    getOptionalFeaturesList();
     66    /**
     67     * <code>repeated string optional_features = 5;</code>
     68     */
    2569    int getOptionalFeaturesCount();
    26     String getOptionalFeatures(int index);
    27    
     70    /**
     71     * <code>repeated string optional_features = 5;</code>
     72     */
     73    java.lang.String getOptionalFeatures(int index);
     74    /**
     75     * <code>repeated string optional_features = 5;</code>
     76     */
     77    com.google.protobuf.ByteString
     78        getOptionalFeaturesBytes(int index);
     79
    2880    // optional string writingprogram = 16;
     81    /**
     82     * <code>optional string writingprogram = 16;</code>
     83     */
    2984    boolean hasWritingprogram();
    30     String getWritingprogram();
    31    
     85    /**
     86     * <code>optional string writingprogram = 16;</code>
     87     */
     88    java.lang.String getWritingprogram();
     89    /**
     90     * <code>optional string writingprogram = 16;</code>
     91     */
     92    com.google.protobuf.ByteString
     93        getWritingprogramBytes();
     94
    3295    // optional string source = 17;
     96    /**
     97     * <code>optional string source = 17;</code>
     98     *
     99     * <pre>
     100     * From the bbox field.
     101     * </pre>
     102     */
    33103    boolean hasSource();
    34     String getSource();
     104    /**
     105     * <code>optional string source = 17;</code>
     106     *
     107     * <pre>
     108     * From the bbox field.
     109     * </pre>
     110     */
     111    java.lang.String getSource();
     112    /**
     113     * <code>optional string source = 17;</code>
     114     *
     115     * <pre>
     116     * From the bbox field.
     117     * </pre>
     118     */
     119    com.google.protobuf.ByteString
     120        getSourceBytes();
     121
     122    // optional int64 osmosis_replication_timestamp = 32;
     123    /**
     124     * <code>optional int64 osmosis_replication_timestamp = 32;</code>
     125     *
     126     * <pre>
     127     * replication timestamp, expressed in seconds since the epoch,
     128     * otherwise the same value as in the "timestamp=..." field
     129     * in the state.txt file used by Osmosis
     130     * </pre>
     131     */
     132    boolean hasOsmosisReplicationTimestamp();
     133    /**
     134     * <code>optional int64 osmosis_replication_timestamp = 32;</code>
     135     *
     136     * <pre>
     137     * replication timestamp, expressed in seconds since the epoch,
     138     * otherwise the same value as in the "timestamp=..." field
     139     * in the state.txt file used by Osmosis
     140     * </pre>
     141     */
     142    long getOsmosisReplicationTimestamp();
     143
     144    // optional int64 osmosis_replication_sequence_number = 33;
     145    /**
     146     * <code>optional int64 osmosis_replication_sequence_number = 33;</code>
     147     *
     148     * <pre>
     149     * replication sequence number (sequenceNumber in state.txt)
     150     * </pre>
     151     */
     152    boolean hasOsmosisReplicationSequenceNumber();
     153    /**
     154     * <code>optional int64 osmosis_replication_sequence_number = 33;</code>
     155     *
     156     * <pre>
     157     * replication sequence number (sequenceNumber in state.txt)
     158     * </pre>
     159     */
     160    long getOsmosisReplicationSequenceNumber();
     161
     162    // optional string osmosis_replication_base_url = 34;
     163    /**
     164     * <code>optional string osmosis_replication_base_url = 34;</code>
     165     *
     166     * <pre>
     167     * replication base URL (from Osmosis' configuration.txt file)
     168     * </pre>
     169     */
     170    boolean hasOsmosisReplicationBaseUrl();
     171    /**
     172     * <code>optional string osmosis_replication_base_url = 34;</code>
     173     *
     174     * <pre>
     175     * replication base URL (from Osmosis' configuration.txt file)
     176     * </pre>
     177     */
     178    java.lang.String getOsmosisReplicationBaseUrl();
     179    /**
     180     * <code>optional string osmosis_replication_base_url = 34;</code>
     181     *
     182     * <pre>
     183     * replication base URL (from Osmosis' configuration.txt file)
     184     * </pre>
     185     */
     186    com.google.protobuf.ByteString
     187        getOsmosisReplicationBaseUrlBytes();
    35188  }
     189  /**
     190   * Protobuf type {@code OSMPBF.HeaderBlock}
     191   */
    36192  public static final class HeaderBlock extends
    37193      com.google.protobuf.GeneratedMessageLite
    38194      implements HeaderBlockOrBuilder {
    39195    // Use HeaderBlock.newBuilder() to construct.
    40     private HeaderBlock(Builder builder) {
     196    private HeaderBlock(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    41197      super(builder);
     198
    42199    }
    43200    private HeaderBlock(boolean noInit) {}
    44    
     201
    45202    private static final HeaderBlock defaultInstance;
    46203    public static HeaderBlock getDefaultInstance() {
    47204      return defaultInstance;
    48205    }
    49    
     206
    50207    public HeaderBlock getDefaultInstanceForType() {
    51208      return defaultInstance;
    52209    }
    53    
     210
     211    private HeaderBlock(
     212        com.google.protobuf.CodedInputStream input,
     213        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     214        throws com.google.protobuf.InvalidProtocolBufferException {
     215      initFields();
     216      int mutable_bitField0_ = 0;
     217      try {
     218        boolean done = false;
     219        while (!done) {
     220          int tag = input.readTag();
     221          switch (tag) {
     222            case 0:
     223              done = true;
     224              break;
     225            default: {
     226              if (!parseUnknownField(input,
     227                                     extensionRegistry, tag)) {
     228                done = true;
     229              }
     230              break;
     231            }
     232            case 10: {
     233              crosby.binary.Osmformat.HeaderBBox.Builder subBuilder = null;
     234              if (((bitField0_ & 0x00000001) == 0x00000001)) {
     235                subBuilder = bbox_.toBuilder();
     236              }
     237              bbox_ = input.readMessage(crosby.binary.Osmformat.HeaderBBox.PARSER, extensionRegistry);
     238              if (subBuilder != null) {
     239                subBuilder.mergeFrom(bbox_);
     240                bbox_ = subBuilder.buildPartial();
     241              }
     242              bitField0_ |= 0x00000001;
     243              break;
     244            }
     245            case 34: {
     246              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     247                requiredFeatures_ = new com.google.protobuf.LazyStringArrayList();
     248                mutable_bitField0_ |= 0x00000002;
     249              }
     250              requiredFeatures_.add(input.readBytes());
     251              break;
     252            }
     253            case 42: {
     254              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     255                optionalFeatures_ = new com.google.protobuf.LazyStringArrayList();
     256                mutable_bitField0_ |= 0x00000004;
     257              }
     258              optionalFeatures_.add(input.readBytes());
     259              break;
     260            }
     261            case 130: {
     262              bitField0_ |= 0x00000002;
     263              writingprogram_ = input.readBytes();
     264              break;
     265            }
     266            case 138: {
     267              bitField0_ |= 0x00000004;
     268              source_ = input.readBytes();
     269              break;
     270            }
     271            case 256: {
     272              bitField0_ |= 0x00000008;
     273              osmosisReplicationTimestamp_ = input.readInt64();
     274              break;
     275            }
     276            case 264: {
     277              bitField0_ |= 0x00000010;
     278              osmosisReplicationSequenceNumber_ = input.readInt64();
     279              break;
     280            }
     281            case 274: {
     282              bitField0_ |= 0x00000020;
     283              osmosisReplicationBaseUrl_ = input.readBytes();
     284              break;
     285            }
     286          }
     287        }
     288      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     289        throw e.setUnfinishedMessage(this);
     290      } catch (java.io.IOException e) {
     291        throw new com.google.protobuf.InvalidProtocolBufferException(
     292            e.getMessage()).setUnfinishedMessage(this);
     293      } finally {
     294        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     295          requiredFeatures_ = new com.google.protobuf.UnmodifiableLazyStringList(requiredFeatures_);
     296        }
     297        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     298          optionalFeatures_ = new com.google.protobuf.UnmodifiableLazyStringList(optionalFeatures_);
     299        }
     300        makeExtensionsImmutable();
     301      }
     302    }
     303    public static com.google.protobuf.Parser<HeaderBlock> PARSER =
     304        new com.google.protobuf.AbstractParser<HeaderBlock>() {
     305      public HeaderBlock parsePartialFrom(
     306          com.google.protobuf.CodedInputStream input,
     307          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     308          throws com.google.protobuf.InvalidProtocolBufferException {
     309        return new HeaderBlock(input, extensionRegistry);
     310      }
     311    };
     312
     313    @java.lang.Override
     314    public com.google.protobuf.Parser<HeaderBlock> getParserForType() {
     315      return PARSER;
     316    }
     317
    54318    private int bitField0_;
    55319    // optional .OSMPBF.HeaderBBox bbox = 1;
    56320    public static final int BBOX_FIELD_NUMBER = 1;
    57321    private crosby.binary.Osmformat.HeaderBBox bbox_;
     322    /**
     323     * <code>optional .OSMPBF.HeaderBBox bbox = 1;</code>
     324     */
    58325    public boolean hasBbox() {
    59326      return ((bitField0_ & 0x00000001) == 0x00000001);
    60327    }
     328    /**
     329     * <code>optional .OSMPBF.HeaderBBox bbox = 1;</code>
     330     */
    61331    public crosby.binary.Osmformat.HeaderBBox getBbox() {
    62332      return bbox_;
    63333    }
    64    
     334
    65335    // repeated string required_features = 4;
    66336    public static final int REQUIRED_FEATURES_FIELD_NUMBER = 4;
    67337    private com.google.protobuf.LazyStringList requiredFeatures_;
    68     public java.util.List<String>
     338    /**
     339     * <code>repeated string required_features = 4;</code>
     340     *
     341     * <pre>
     342     * Additional tags to aid in parsing this dataset
     343     * </pre>
     344     */
     345    public java.util.List<java.lang.String>
    69346        getRequiredFeaturesList() {
    70347      return requiredFeatures_;
    71348    }
     349    /**
     350     * <code>repeated string required_features = 4;</code>
     351     *
     352     * <pre>
     353     * Additional tags to aid in parsing this dataset
     354     * </pre>
     355     */
    72356    public int getRequiredFeaturesCount() {
    73357      return requiredFeatures_.size();
    74358    }
    75     public String getRequiredFeatures(int index) {
     359    /**
     360     * <code>repeated string required_features = 4;</code>
     361     *
     362     * <pre>
     363     * Additional tags to aid in parsing this dataset
     364     * </pre>
     365     */
     366    public java.lang.String getRequiredFeatures(int index) {
    76367      return requiredFeatures_.get(index);
    77368    }
    78    
     369    /**
     370     * <code>repeated string required_features = 4;</code>
     371     *
     372     * <pre>
     373     * Additional tags to aid in parsing this dataset
     374     * </pre>
     375     */
     376    public com.google.protobuf.ByteString
     377        getRequiredFeaturesBytes(int index) {
     378      return requiredFeatures_.getByteString(index);
     379    }
     380
    79381    // repeated string optional_features = 5;
    80382    public static final int OPTIONAL_FEATURES_FIELD_NUMBER = 5;
    81383    private com.google.protobuf.LazyStringList optionalFeatures_;
    82     public java.util.List<String>
     384    /**
     385     * <code>repeated string optional_features = 5;</code>
     386     */
     387    public java.util.List<java.lang.String>
    83388        getOptionalFeaturesList() {
    84389      return optionalFeatures_;
    85390    }
     391    /**
     392     * <code>repeated string optional_features = 5;</code>
     393     */
    86394    public int getOptionalFeaturesCount() {
    87395      return optionalFeatures_.size();
    88396    }
    89     public String getOptionalFeatures(int index) {
     397    /**
     398     * <code>repeated string optional_features = 5;</code>
     399     */
     400    public java.lang.String getOptionalFeatures(int index) {
    90401      return optionalFeatures_.get(index);
    91402    }
    92    
     403    /**
     404     * <code>repeated string optional_features = 5;</code>
     405     */
     406    public com.google.protobuf.ByteString
     407        getOptionalFeaturesBytes(int index) {
     408      return optionalFeatures_.getByteString(index);
     409    }
     410
    93411    // optional string writingprogram = 16;
    94412    public static final int WRITINGPROGRAM_FIELD_NUMBER = 16;
    95413    private java.lang.Object writingprogram_;
     414    /**
     415     * <code>optional string writingprogram = 16;</code>
     416     */
    96417    public boolean hasWritingprogram() {
    97418      return ((bitField0_ & 0x00000002) == 0x00000002);
    98419    }
    99     public String getWritingprogram() {
     420    /**
     421     * <code>optional string writingprogram = 16;</code>
     422     */
     423    public java.lang.String getWritingprogram() {
    100424      java.lang.Object ref = writingprogram_;
    101       if (ref instanceof String) {
    102         return (String) ref;
     425      if (ref instanceof java.lang.String) {
     426        return (java.lang.String) ref;
    103427      } else {
    104428        com.google.protobuf.ByteString bs =
    105429            (com.google.protobuf.ByteString) ref;
    106         String s = bs.toStringUtf8();
    107         if (com.google.protobuf.Internal.isValidUtf8(bs)) {
     430        java.lang.String s = bs.toStringUtf8();
     431        if (bs.isValidUtf8()) {
    108432          writingprogram_ = s;
    109433        }
     
    111435      }
    112436    }
    113     private com.google.protobuf.ByteString getWritingprogramBytes() {
     437    /**
     438     * <code>optional string writingprogram = 16;</code>
     439     */
     440    public com.google.protobuf.ByteString
     441        getWritingprogramBytes() {
    114442      java.lang.Object ref = writingprogram_;
    115       if (ref instanceof String) {
     443      if (ref instanceof java.lang.String) {
    116444        com.google.protobuf.ByteString b =
    117             com.google.protobuf.ByteString.copyFromUtf8((String) ref);
     445            com.google.protobuf.ByteString.copyFromUtf8(
     446                (java.lang.String) ref);
    118447        writingprogram_ = b;
    119448        return b;
     
    122451      }
    123452    }
    124    
     453
    125454    // optional string source = 17;
    126455    public static final int SOURCE_FIELD_NUMBER = 17;
    127456    private java.lang.Object source_;
     457    /**
     458     * <code>optional string source = 17;</code>
     459     *
     460     * <pre>
     461     * From the bbox field.
     462     * </pre>
     463     */
    128464    public boolean hasSource() {
    129465      return ((bitField0_ & 0x00000004) == 0x00000004);
    130466    }
    131     public String getSource() {
     467    /**
     468     * <code>optional string source = 17;</code>
     469     *
     470     * <pre>
     471     * From the bbox field.
     472     * </pre>
     473     */
     474    public java.lang.String getSource() {
    132475      java.lang.Object ref = source_;
    133       if (ref instanceof String) {
    134         return (String) ref;
     476      if (ref instanceof java.lang.String) {
     477        return (java.lang.String) ref;
    135478      } else {
    136479        com.google.protobuf.ByteString bs =
    137480            (com.google.protobuf.ByteString) ref;
    138         String s = bs.toStringUtf8();
    139         if (com.google.protobuf.Internal.isValidUtf8(bs)) {
     481        java.lang.String s = bs.toStringUtf8();
     482        if (bs.isValidUtf8()) {
    140483          source_ = s;
    141484        }
     
    143486      }
    144487    }
    145     private com.google.protobuf.ByteString getSourceBytes() {
     488    /**
     489     * <code>optional string source = 17;</code>
     490     *
     491     * <pre>
     492     * From the bbox field.
     493     * </pre>
     494     */
     495    public com.google.protobuf.ByteString
     496        getSourceBytes() {
    146497      java.lang.Object ref = source_;
    147       if (ref instanceof String) {
     498      if (ref instanceof java.lang.String) {
    148499        com.google.protobuf.ByteString b =
    149             com.google.protobuf.ByteString.copyFromUtf8((String) ref);
     500            com.google.protobuf.ByteString.copyFromUtf8(
     501                (java.lang.String) ref);
    150502        source_ = b;
    151503        return b;
     
    154506      }
    155507    }
    156    
     508
     509    // optional int64 osmosis_replication_timestamp = 32;
     510    public static final int OSMOSIS_REPLICATION_TIMESTAMP_FIELD_NUMBER = 32;
     511    private long osmosisReplicationTimestamp_;
     512    /**
     513     * <code>optional int64 osmosis_replication_timestamp = 32;</code>
     514     *
     515     * <pre>
     516     * replication timestamp, expressed in seconds since the epoch,
     517     * otherwise the same value as in the "timestamp=..." field
     518     * in the state.txt file used by Osmosis
     519     * </pre>
     520     */
     521    public boolean hasOsmosisReplicationTimestamp() {
     522      return ((bitField0_ & 0x00000008) == 0x00000008);
     523    }
     524    /**
     525     * <code>optional int64 osmosis_replication_timestamp = 32;</code>
     526     *
     527     * <pre>
     528     * replication timestamp, expressed in seconds since the epoch,
     529     * otherwise the same value as in the "timestamp=..." field
     530     * in the state.txt file used by Osmosis
     531     * </pre>
     532     */
     533    public long getOsmosisReplicationTimestamp() {
     534      return osmosisReplicationTimestamp_;
     535    }
     536
     537    // optional int64 osmosis_replication_sequence_number = 33;
     538    public static final int OSMOSIS_REPLICATION_SEQUENCE_NUMBER_FIELD_NUMBER = 33;
     539    private long osmosisReplicationSequenceNumber_;
     540    /**
     541     * <code>optional int64 osmosis_replication_sequence_number = 33;</code>
     542     *
     543     * <pre>
     544     * replication sequence number (sequenceNumber in state.txt)
     545     * </pre>
     546     */
     547    public boolean hasOsmosisReplicationSequenceNumber() {
     548      return ((bitField0_ & 0x00000010) == 0x00000010);
     549    }
     550    /**
     551     * <code>optional int64 osmosis_replication_sequence_number = 33;</code>
     552     *
     553     * <pre>
     554     * replication sequence number (sequenceNumber in state.txt)
     555     * </pre>
     556     */
     557    public long getOsmosisReplicationSequenceNumber() {
     558      return osmosisReplicationSequenceNumber_;
     559    }
     560
     561    // optional string osmosis_replication_base_url = 34;
     562    public static final int OSMOSIS_REPLICATION_BASE_URL_FIELD_NUMBER = 34;
     563    private java.lang.Object osmosisReplicationBaseUrl_;
     564    /**
     565     * <code>optional string osmosis_replication_base_url = 34;</code>
     566     *
     567     * <pre>
     568     * replication base URL (from Osmosis' configuration.txt file)
     569     * </pre>
     570     */
     571    public boolean hasOsmosisReplicationBaseUrl() {
     572      return ((bitField0_ & 0x00000020) == 0x00000020);
     573    }
     574    /**
     575     * <code>optional string osmosis_replication_base_url = 34;</code>
     576     *
     577     * <pre>
     578     * replication base URL (from Osmosis' configuration.txt file)
     579     * </pre>
     580     */
     581    public java.lang.String getOsmosisReplicationBaseUrl() {
     582      java.lang.Object ref = osmosisReplicationBaseUrl_;
     583      if (ref instanceof java.lang.String) {
     584        return (java.lang.String) ref;
     585      } else {
     586        com.google.protobuf.ByteString bs =
     587            (com.google.protobuf.ByteString) ref;
     588        java.lang.String s = bs.toStringUtf8();
     589        if (bs.isValidUtf8()) {
     590          osmosisReplicationBaseUrl_ = s;
     591        }
     592        return s;
     593      }
     594    }
     595    /**
     596     * <code>optional string osmosis_replication_base_url = 34;</code>
     597     *
     598     * <pre>
     599     * replication base URL (from Osmosis' configuration.txt file)
     600     * </pre>
     601     */
     602    public com.google.protobuf.ByteString
     603        getOsmosisReplicationBaseUrlBytes() {
     604      java.lang.Object ref = osmosisReplicationBaseUrl_;
     605      if (ref instanceof java.lang.String) {
     606        com.google.protobuf.ByteString b =
     607            com.google.protobuf.ByteString.copyFromUtf8(
     608                (java.lang.String) ref);
     609        osmosisReplicationBaseUrl_ = b;
     610        return b;
     611      } else {
     612        return (com.google.protobuf.ByteString) ref;
     613      }
     614    }
     615
    157616    private void initFields() {
    158617      bbox_ = crosby.binary.Osmformat.HeaderBBox.getDefaultInstance();
     
    161620      writingprogram_ = "";
    162621      source_ = "";
     622      osmosisReplicationTimestamp_ = 0L;
     623      osmosisReplicationSequenceNumber_ = 0L;
     624      osmosisReplicationBaseUrl_ = "";
    163625    }
    164626    private byte memoizedIsInitialized = -1;
     
    166628      byte isInitialized = memoizedIsInitialized;
    167629      if (isInitialized != -1) return isInitialized == 1;
    168      
     630
    169631      if (hasBbox()) {
    170632        if (!getBbox().isInitialized()) {
     
    176638      return true;
    177639    }
    178    
     640
    179641    public void writeTo(com.google.protobuf.CodedOutputStream output)
    180642                        throws java.io.IOException {
     
    195657        output.writeBytes(17, getSourceBytes());
    196658      }
    197     }
    198    
     659      if (((bitField0_ & 0x00000008) == 0x00000008)) {
     660        output.writeInt64(32, osmosisReplicationTimestamp_);
     661      }
     662      if (((bitField0_ & 0x00000010) == 0x00000010)) {
     663        output.writeInt64(33, osmosisReplicationSequenceNumber_);
     664      }
     665      if (((bitField0_ & 0x00000020) == 0x00000020)) {
     666        output.writeBytes(34, getOsmosisReplicationBaseUrlBytes());
     667      }
     668    }
     669
    199670    private int memoizedSerializedSize = -1;
    200671    public int getSerializedSize() {
    201672      int size = memoizedSerializedSize;
    202673      if (size != -1) return size;
    203    
     674
    204675      size = 0;
    205676      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     
    233704          .computeBytesSize(17, getSourceBytes());
    234705      }
     706      if (((bitField0_ & 0x00000008) == 0x00000008)) {
     707        size += com.google.protobuf.CodedOutputStream
     708          .computeInt64Size(32, osmosisReplicationTimestamp_);
     709      }
     710      if (((bitField0_ & 0x00000010) == 0x00000010)) {
     711        size += com.google.protobuf.CodedOutputStream
     712          .computeInt64Size(33, osmosisReplicationSequenceNumber_);
     713      }
     714      if (((bitField0_ & 0x00000020) == 0x00000020)) {
     715        size += com.google.protobuf.CodedOutputStream
     716          .computeBytesSize(34, getOsmosisReplicationBaseUrlBytes());
     717      }
    235718      memoizedSerializedSize = size;
    236719      return size;
    237720    }
    238    
     721
    239722    private static final long serialVersionUID = 0L;
    240723    @java.lang.Override
     
    243726      return super.writeReplace();
    244727    }
    245    
     728
    246729    public static crosby.binary.Osmformat.HeaderBlock parseFrom(
    247730        com.google.protobuf.ByteString data)
    248731        throws com.google.protobuf.InvalidProtocolBufferException {
    249       return newBuilder().mergeFrom(data).buildParsed();
     732      return PARSER.parseFrom(data);
    250733    }
    251734    public static crosby.binary.Osmformat.HeaderBlock parseFrom(
     
    253736        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    254737        throws com.google.protobuf.InvalidProtocolBufferException {
    255       return newBuilder().mergeFrom(data, extensionRegistry)
    256                .buildParsed();
     738      return PARSER.parseFrom(data, extensionRegistry);
    257739    }
    258740    public static crosby.binary.Osmformat.HeaderBlock parseFrom(byte[] data)
    259741        throws com.google.protobuf.InvalidProtocolBufferException {
    260       return newBuilder().mergeFrom(data).buildParsed();
     742      return PARSER.parseFrom(data);
    261743    }
    262744    public static crosby.binary.Osmformat.HeaderBlock parseFrom(
     
    264746        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    265747        throws com.google.protobuf.InvalidProtocolBufferException {
    266       return newBuilder().mergeFrom(data, extensionRegistry)
    267                .buildParsed();
     748      return PARSER.parseFrom(data, extensionRegistry);
    268749    }
    269750    public static crosby.binary.Osmformat.HeaderBlock parseFrom(java.io.InputStream input)
    270751        throws java.io.IOException {
    271       return newBuilder().mergeFrom(input).buildParsed();
     752      return PARSER.parseFrom(input);
    272753    }
    273754    public static crosby.binary.Osmformat.HeaderBlock parseFrom(
     
    275756        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    276757        throws java.io.IOException {
    277       return newBuilder().mergeFrom(input, extensionRegistry)
    278                .buildParsed();
     758      return PARSER.parseFrom(input, extensionRegistry);
    279759    }
    280760    public static crosby.binary.Osmformat.HeaderBlock parseDelimitedFrom(java.io.InputStream input)
    281761        throws java.io.IOException {
    282       Builder builder = newBuilder();
    283       if (builder.mergeDelimitedFrom(input)) {
    284         return builder.buildParsed();
    285       } else {
    286         return null;
    287       }
     762      return PARSER.parseDelimitedFrom(input);
    288763    }
    289764    public static crosby.binary.Osmformat.HeaderBlock parseDelimitedFrom(
     
    291766        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    292767        throws java.io.IOException {
    293       Builder builder = newBuilder();
    294       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    295         return builder.buildParsed();
    296       } else {
    297         return null;
    298       }
     768      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    299769    }
    300770    public static crosby.binary.Osmformat.HeaderBlock parseFrom(
    301771        com.google.protobuf.CodedInputStream input)
    302772        throws java.io.IOException {
    303       return newBuilder().mergeFrom(input).buildParsed();
     773      return PARSER.parseFrom(input);
    304774    }
    305775    public static crosby.binary.Osmformat.HeaderBlock parseFrom(
     
    307777        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    308778        throws java.io.IOException {
    309       return newBuilder().mergeFrom(input, extensionRegistry)
    310                .buildParsed();
    311     }
    312    
     779      return PARSER.parseFrom(input, extensionRegistry);
     780    }
     781
    313782    public static Builder newBuilder() { return Builder.create(); }
    314783    public Builder newBuilderForType() { return newBuilder(); }
     
    317786    }
    318787    public Builder toBuilder() { return newBuilder(this); }
    319    
     788
     789    /**
     790     * Protobuf type {@code OSMPBF.HeaderBlock}
     791     */
    320792    public static final class Builder extends
    321793        com.google.protobuf.GeneratedMessageLite.Builder<
     
    326798        maybeForceBuilderInitialization();
    327799      }
    328      
     800
    329801      private void maybeForceBuilderInitialization() {
    330802      }
     
    332804        return new Builder();
    333805      }
    334      
     806
    335807      public Builder clear() {
    336808        super.clear();
     
    345817        source_ = "";
    346818        bitField0_ = (bitField0_ & ~0x00000010);
    347         return this;
    348       }
    349      
     819        osmosisReplicationTimestamp_ = 0L;
     820        bitField0_ = (bitField0_ & ~0x00000020);
     821        osmosisReplicationSequenceNumber_ = 0L;
     822        bitField0_ = (bitField0_ & ~0x00000040);
     823        osmosisReplicationBaseUrl_ = "";
     824        bitField0_ = (bitField0_ & ~0x00000080);
     825        return this;
     826      }
     827
    350828      public Builder clone() {
    351829        return create().mergeFrom(buildPartial());
    352830      }
    353      
     831
    354832      public crosby.binary.Osmformat.HeaderBlock getDefaultInstanceForType() {
    355833        return crosby.binary.Osmformat.HeaderBlock.getDefaultInstance();
    356834      }
    357      
     835
    358836      public crosby.binary.Osmformat.HeaderBlock build() {
    359837        crosby.binary.Osmformat.HeaderBlock result = buildPartial();
     
    363841        return result;
    364842      }
    365      
    366       private crosby.binary.Osmformat.HeaderBlock buildParsed()
    367           throws com.google.protobuf.InvalidProtocolBufferException {
    368         crosby.binary.Osmformat.HeaderBlock result = buildPartial();
    369         if (!result.isInitialized()) {
    370           throw newUninitializedMessageException(
    371             result).asInvalidProtocolBufferException();
    372         }
    373         return result;
    374       }
    375      
     843
    376844      public crosby.binary.Osmformat.HeaderBlock buildPartial() {
    377845        crosby.binary.Osmformat.HeaderBlock result = new crosby.binary.Osmformat.HeaderBlock(this);
     
    402870        }
    403871        result.source_ = source_;
     872        if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
     873          to_bitField0_ |= 0x00000008;
     874        }
     875        result.osmosisReplicationTimestamp_ = osmosisReplicationTimestamp_;
     876        if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
     877          to_bitField0_ |= 0x00000010;
     878        }
     879        result.osmosisReplicationSequenceNumber_ = osmosisReplicationSequenceNumber_;
     880        if (((from_bitField0_ & 0x00000080) == 0x00000080)) {
     881          to_bitField0_ |= 0x00000020;
     882        }
     883        result.osmosisReplicationBaseUrl_ = osmosisReplicationBaseUrl_;
    404884        result.bitField0_ = to_bitField0_;
    405885        return result;
    406886      }
    407      
     887
    408888      public Builder mergeFrom(crosby.binary.Osmformat.HeaderBlock other) {
    409889        if (other == crosby.binary.Osmformat.HeaderBlock.getDefaultInstance()) return this;
     
    432912        }
    433913        if (other.hasWritingprogram()) {
    434           setWritingprogram(other.getWritingprogram());
     914          bitField0_ |= 0x00000008;
     915          writingprogram_ = other.writingprogram_;
     916         
    435917        }
    436918        if (other.hasSource()) {
    437           setSource(other.getSource());
    438         }
    439         return this;
    440       }
    441      
     919          bitField0_ |= 0x00000010;
     920          source_ = other.source_;
     921         
     922        }
     923        if (other.hasOsmosisReplicationTimestamp()) {
     924          setOsmosisReplicationTimestamp(other.getOsmosisReplicationTimestamp());
     925        }
     926        if (other.hasOsmosisReplicationSequenceNumber()) {
     927          setOsmosisReplicationSequenceNumber(other.getOsmosisReplicationSequenceNumber());
     928        }
     929        if (other.hasOsmosisReplicationBaseUrl()) {
     930          bitField0_ |= 0x00000080;
     931          osmosisReplicationBaseUrl_ = other.osmosisReplicationBaseUrl_;
     932         
     933        }
     934        return this;
     935      }
     936
    442937      public final boolean isInitialized() {
    443938        if (hasBbox()) {
     
    449944        return true;
    450945      }
    451      
     946
    452947      public Builder mergeFrom(
    453948          com.google.protobuf.CodedInputStream input,
    454949          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    455950          throws java.io.IOException {
    456         while (true) {
    457           int tag = input.readTag();
    458           switch (tag) {
    459             case 0:
    460              
    461               return this;
    462             default: {
    463               if (!parseUnknownField(input, extensionRegistry, tag)) {
    464                
    465                 return this;
    466               }
    467               break;
    468             }
    469             case 10: {
    470               crosby.binary.Osmformat.HeaderBBox.Builder subBuilder = crosby.binary.Osmformat.HeaderBBox.newBuilder();
    471               if (hasBbox()) {
    472                 subBuilder.mergeFrom(getBbox());
    473               }
    474               input.readMessage(subBuilder, extensionRegistry);
    475               setBbox(subBuilder.buildPartial());
    476               break;
    477             }
    478             case 34: {
    479               ensureRequiredFeaturesIsMutable();
    480               requiredFeatures_.add(input.readBytes());
    481               break;
    482             }
    483             case 42: {
    484               ensureOptionalFeaturesIsMutable();
    485               optionalFeatures_.add(input.readBytes());
    486               break;
    487             }
    488             case 130: {
    489               bitField0_ |= 0x00000008;
    490               writingprogram_ = input.readBytes();
    491               break;
    492             }
    493             case 138: {
    494               bitField0_ |= 0x00000010;
    495               source_ = input.readBytes();
    496               break;
    497             }
     951        crosby.binary.Osmformat.HeaderBlock parsedMessage = null;
     952        try {
     953          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     954        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     955          parsedMessage = (crosby.binary.Osmformat.HeaderBlock) e.getUnfinishedMessage();
     956          throw e;
     957        } finally {
     958          if (parsedMessage != null) {
     959            mergeFrom(parsedMessage);
    498960          }
    499961        }
    500       }
    501      
     962        return this;
     963      }
    502964      private int bitField0_;
    503      
     965
    504966      // optional .OSMPBF.HeaderBBox bbox = 1;
    505967      private crosby.binary.Osmformat.HeaderBBox bbox_ = crosby.binary.Osmformat.HeaderBBox.getDefaultInstance();
     968      /**
     969       * <code>optional .OSMPBF.HeaderBBox bbox = 1;</code>
     970       */
    506971      public boolean hasBbox() {
    507972        return ((bitField0_ & 0x00000001) == 0x00000001);
    508973      }
     974      /**
     975       * <code>optional .OSMPBF.HeaderBBox bbox = 1;</code>
     976       */
    509977      public crosby.binary.Osmformat.HeaderBBox getBbox() {
    510978        return bbox_;
    511979      }
     980      /**
     981       * <code>optional .OSMPBF.HeaderBBox bbox = 1;</code>
     982       */
    512983      public Builder setBbox(crosby.binary.Osmformat.HeaderBBox value) {
    513984        if (value == null) {
     
    515986        }
    516987        bbox_ = value;
    517        
     988
    518989        bitField0_ |= 0x00000001;
    519990        return this;
    520991      }
     992      /**
     993       * <code>optional .OSMPBF.HeaderBBox bbox = 1;</code>
     994       */
    521995      public Builder setBbox(
    522996          crosby.binary.Osmformat.HeaderBBox.Builder builderForValue) {
    523997        bbox_ = builderForValue.build();
    524        
     998
    525999        bitField0_ |= 0x00000001;
    5261000        return this;
    5271001      }
     1002      /**
     1003       * <code>optional .OSMPBF.HeaderBBox bbox = 1;</code>
     1004       */
    5281005      public Builder mergeBbox(crosby.binary.Osmformat.HeaderBBox value) {
    5291006        if (((bitField0_ & 0x00000001) == 0x00000001) &&
     
    5341011          bbox_ = value;
    5351012        }
    536        
     1013
    5371014        bitField0_ |= 0x00000001;
    5381015        return this;
    5391016      }
     1017      /**
     1018       * <code>optional .OSMPBF.HeaderBBox bbox = 1;</code>
     1019       */
    5401020      public Builder clearBbox() {
    5411021        bbox_ = crosby.binary.Osmformat.HeaderBBox.getDefaultInstance();
    542        
     1022
    5431023        bitField0_ = (bitField0_ & ~0x00000001);
    5441024        return this;
    5451025      }
    546      
     1026
    5471027      // repeated string required_features = 4;
    5481028      private com.google.protobuf.LazyStringList requiredFeatures_ = com.google.protobuf.LazyStringArrayList.EMPTY;
     
    5531033         }
    5541034      }
    555       public java.util.List<String>
     1035      /**
     1036       * <code>repeated string required_features = 4;</code>
     1037       *
     1038       * <pre>
     1039       * Additional tags to aid in parsing this dataset
     1040       * </pre>
     1041       */
     1042      public java.util.List<java.lang.String>
    5561043          getRequiredFeaturesList() {
    5571044        return java.util.Collections.unmodifiableList(requiredFeatures_);
    5581045      }
     1046      /**
     1047       * <code>repeated string required_features = 4;</code>
     1048       *
     1049       * <pre>
     1050       * Additional tags to aid in parsing this dataset
     1051       * </pre>
     1052       */
    5591053      public int getRequiredFeaturesCount() {
    5601054        return requiredFeatures_.size();
    5611055      }
    562       public String getRequiredFeatures(int index) {
     1056      /**
     1057       * <code>repeated string required_features = 4;</code>
     1058       *
     1059       * <pre>
     1060       * Additional tags to aid in parsing this dataset
     1061       * </pre>
     1062       */
     1063      public java.lang.String getRequiredFeatures(int index) {
    5631064        return requiredFeatures_.get(index);
    5641065      }
     1066      /**
     1067       * <code>repeated string required_features = 4;</code>
     1068       *
     1069       * <pre>
     1070       * Additional tags to aid in parsing this dataset
     1071       * </pre>
     1072       */
     1073      public com.google.protobuf.ByteString
     1074          getRequiredFeaturesBytes(int index) {
     1075        return requiredFeatures_.getByteString(index);
     1076      }
     1077      /**
     1078       * <code>repeated string required_features = 4;</code>
     1079       *
     1080       * <pre>
     1081       * Additional tags to aid in parsing this dataset
     1082       * </pre>
     1083       */
    5651084      public Builder setRequiredFeatures(
    566           int index, String value) {
     1085          int index, java.lang.String value) {
    5671086        if (value == null) {
    5681087    throw new NullPointerException();
     
    5731092        return this;
    5741093      }
    575       public Builder addRequiredFeatures(String value) {
     1094      /**
     1095       * <code>repeated string required_features = 4;</code>
     1096       *
     1097       * <pre>
     1098       * Additional tags to aid in parsing this dataset
     1099       * </pre>
     1100       */
     1101      public Builder addRequiredFeatures(
     1102          java.lang.String value) {
    5761103        if (value == null) {
    5771104    throw new NullPointerException();
     
    5821109        return this;
    5831110      }
     1111      /**
     1112       * <code>repeated string required_features = 4;</code>
     1113       *
     1114       * <pre>
     1115       * Additional tags to aid in parsing this dataset
     1116       * </pre>
     1117       */
    5841118      public Builder addAllRequiredFeatures(
    585           java.lang.Iterable<String> values) {
     1119          java.lang.Iterable<java.lang.String> values) {
    5861120        ensureRequiredFeaturesIsMutable();
    5871121        super.addAll(values, requiredFeatures_);
     
    5891123        return this;
    5901124      }
     1125      /**
     1126       * <code>repeated string required_features = 4;</code>
     1127       *
     1128       * <pre>
     1129       * Additional tags to aid in parsing this dataset
     1130       * </pre>
     1131       */
    5911132      public Builder clearRequiredFeatures() {
    5921133        requiredFeatures_ = com.google.protobuf.LazyStringArrayList.EMPTY;
     
    5951136        return this;
    5961137      }
    597       void addRequiredFeatures(com.google.protobuf.ByteString value) {
    598         ensureRequiredFeaturesIsMutable();
     1138      /**
     1139       * <code>repeated string required_features = 4;</code>
     1140       *
     1141       * <pre>
     1142       * Additional tags to aid in parsing this dataset
     1143       * </pre>
     1144       */
     1145      public Builder addRequiredFeaturesBytes(
     1146          com.google.protobuf.ByteString value) {
     1147        if (value == null) {
     1148    throw new NullPointerException();
     1149  }
     1150  ensureRequiredFeaturesIsMutable();
    5991151        requiredFeatures_.add(value);
    6001152       
    601       }
    602      
     1153        return this;
     1154      }
     1155
    6031156      // repeated string optional_features = 5;
    6041157      private com.google.protobuf.LazyStringList optionalFeatures_ = com.google.protobuf.LazyStringArrayList.EMPTY;
     
    6091162         }
    6101163      }
    611       public java.util.List<String>
     1164      /**
     1165       * <code>repeated string optional_features = 5;</code>
     1166       */
     1167      public java.util.List<java.lang.String>
    6121168          getOptionalFeaturesList() {
    6131169        return java.util.Collections.unmodifiableList(optionalFeatures_);
    6141170      }
     1171      /**
     1172       * <code>repeated string optional_features = 5;</code>
     1173       */
    6151174      public int getOptionalFeaturesCount() {
    6161175        return optionalFeatures_.size();
    6171176      }
    618       public String getOptionalFeatures(int index) {
     1177      /**
     1178       * <code>repeated string optional_features = 5;</code>
     1179       */
     1180      public java.lang.String getOptionalFeatures(int index) {
    6191181        return optionalFeatures_.get(index);
    6201182      }
     1183      /**
     1184       * <code>repeated string optional_features = 5;</code>
     1185       */
     1186      public com.google.protobuf.ByteString
     1187          getOptionalFeaturesBytes(int index) {
     1188        return optionalFeatures_.getByteString(index);
     1189      }
     1190      /**
     1191       * <code>repeated string optional_features = 5;</code>
     1192       */
    6211193      public Builder setOptionalFeatures(
    622           int index, String value) {
     1194          int index, java.lang.String value) {
    6231195        if (value == null) {
    6241196    throw new NullPointerException();
     
    6291201        return this;
    6301202      }
    631       public Builder addOptionalFeatures(String value) {
     1203      /**
     1204       * <code>repeated string optional_features = 5;</code>
     1205       */
     1206      public Builder addOptionalFeatures(
     1207          java.lang.String value) {
    6321208        if (value == null) {
    6331209    throw new NullPointerException();
     
    6381214        return this;
    6391215      }
     1216      /**
     1217       * <code>repeated string optional_features = 5;</code>
     1218       */
    6401219      public Builder addAllOptionalFeatures(
    641           java.lang.Iterable<String> values) {
     1220          java.lang.Iterable<java.lang.String> values) {
    6421221        ensureOptionalFeaturesIsMutable();
    6431222        super.addAll(values, optionalFeatures_);
     
    6451224        return this;
    6461225      }
     1226      /**
     1227       * <code>repeated string optional_features = 5;</code>
     1228       */
    6471229      public Builder clearOptionalFeatures() {
    6481230        optionalFeatures_ = com.google.protobuf.LazyStringArrayList.EMPTY;
     
    6511233        return this;
    6521234      }
    653       void addOptionalFeatures(com.google.protobuf.ByteString value) {
    654         ensureOptionalFeaturesIsMutable();
     1235      /**
     1236       * <code>repeated string optional_features = 5;</code>
     1237       */
     1238      public Builder addOptionalFeaturesBytes(
     1239          com.google.protobuf.ByteString value) {
     1240        if (value == null) {
     1241    throw new NullPointerException();
     1242  }
     1243  ensureOptionalFeaturesIsMutable();
    6551244        optionalFeatures_.add(value);
    6561245       
    657       }
    658      
     1246        return this;
     1247      }
     1248
    6591249      // optional string writingprogram = 16;
    6601250      private java.lang.Object writingprogram_ = "";
     1251      /**
     1252       * <code>optional string writingprogram = 16;</code>
     1253       */
    6611254      public boolean hasWritingprogram() {
    6621255        return ((bitField0_ & 0x00000008) == 0x00000008);
    6631256      }
    664       public String getWritingprogram() {
     1257      /**
     1258       * <code>optional string writingprogram = 16;</code>
     1259       */
     1260      public java.lang.String getWritingprogram() {
    6651261        java.lang.Object ref = writingprogram_;
    666         if (!(ref instanceof String)) {
    667           String s = ((com.google.protobuf.ByteString) ref).toStringUtf8();
     1262        if (!(ref instanceof java.lang.String)) {
     1263          java.lang.String s = ((com.google.protobuf.ByteString) ref)
     1264              .toStringUtf8();
    6681265          writingprogram_ = s;
    6691266          return s;
    6701267        } else {
    671           return (String) ref;
    672         }
    673       }
    674       public Builder setWritingprogram(String value) {
     1268          return (java.lang.String) ref;
     1269        }
     1270      }
     1271      /**
     1272       * <code>optional string writingprogram = 16;</code>
     1273       */
     1274      public com.google.protobuf.ByteString
     1275          getWritingprogramBytes() {
     1276        java.lang.Object ref = writingprogram_;
     1277        if (ref instanceof String) {
     1278          com.google.protobuf.ByteString b =
     1279              com.google.protobuf.ByteString.copyFromUtf8(
     1280                  (java.lang.String) ref);
     1281          writingprogram_ = b;
     1282          return b;
     1283        } else {
     1284          return (com.google.protobuf.ByteString) ref;
     1285        }
     1286      }
     1287      /**
     1288       * <code>optional string writingprogram = 16;</code>
     1289       */
     1290      public Builder setWritingprogram(
     1291          java.lang.String value) {
    6751292        if (value == null) {
    6761293    throw new NullPointerException();
     
    6811298        return this;
    6821299      }
     1300      /**
     1301       * <code>optional string writingprogram = 16;</code>
     1302       */
    6831303      public Builder clearWritingprogram() {
    6841304        bitField0_ = (bitField0_ & ~0x00000008);
     
    6871307        return this;
    6881308      }
    689       void setWritingprogram(com.google.protobuf.ByteString value) {
    690         bitField0_ |= 0x00000008;
     1309      /**
     1310       * <code>optional string writingprogram = 16;</code>
     1311       */
     1312      public Builder setWritingprogramBytes(
     1313          com.google.protobuf.ByteString value) {
     1314        if (value == null) {
     1315    throw new NullPointerException();
     1316  }
     1317  bitField0_ |= 0x00000008;
    6911318        writingprogram_ = value;
    6921319       
    693       }
    694      
     1320        return this;
     1321      }
     1322
    6951323      // optional string source = 17;
    6961324      private java.lang.Object source_ = "";
     1325      /**
     1326       * <code>optional string source = 17;</code>
     1327       *
     1328       * <pre>
     1329       * From the bbox field.
     1330       * </pre>
     1331       */
    6971332      public boolean hasSource() {
    6981333        return ((bitField0_ & 0x00000010) == 0x00000010);
    6991334      }
    700       public String getSource() {
     1335      /**
     1336       * <code>optional string source = 17;</code>
     1337       *
     1338       * <pre>
     1339       * From the bbox field.
     1340       * </pre>
     1341       */
     1342      public java.lang.String getSource() {
    7011343        java.lang.Object ref = source_;
    702         if (!(ref instanceof String)) {
    703           String s = ((com.google.protobuf.ByteString) ref).toStringUtf8();
     1344        if (!(ref instanceof java.lang.String)) {
     1345          java.lang.String s = ((com.google.protobuf.ByteString) ref)
     1346              .toStringUtf8();
    7041347          source_ = s;
    7051348          return s;
    7061349        } else {
    707           return (String) ref;
    708         }
    709       }
    710       public Builder setSource(String value) {
     1350          return (java.lang.String) ref;
     1351        }
     1352      }
     1353      /**
     1354       * <code>optional string source = 17;</code>
     1355       *
     1356       * <pre>
     1357       * From the bbox field.
     1358       * </pre>
     1359       */
     1360      public com.google.protobuf.ByteString
     1361          getSourceBytes() {
     1362        java.lang.Object ref = source_;
     1363        if (ref instanceof String) {
     1364          com.google.protobuf.ByteString b =
     1365              com.google.protobuf.ByteString.copyFromUtf8(
     1366                  (java.lang.String) ref);
     1367          source_ = b;
     1368          return b;
     1369        } else {
     1370          return (com.google.protobuf.ByteString) ref;
     1371        }
     1372      }
     1373      /**
     1374       * <code>optional string source = 17;</code>
     1375       *
     1376       * <pre>
     1377       * From the bbox field.
     1378       * </pre>
     1379       */
     1380      public Builder setSource(
     1381          java.lang.String value) {
    7111382        if (value == null) {
    7121383    throw new NullPointerException();
     
    7171388        return this;
    7181389      }
     1390      /**
     1391       * <code>optional string source = 17;</code>
     1392       *
     1393       * <pre>
     1394       * From the bbox field.
     1395       * </pre>
     1396       */
    7191397      public Builder clearSource() {
    7201398        bitField0_ = (bitField0_ & ~0x00000010);
     
    7231401        return this;
    7241402      }
    725       void setSource(com.google.protobuf.ByteString value) {
    726         bitField0_ |= 0x00000010;
     1403      /**
     1404       * <code>optional string source = 17;</code>
     1405       *
     1406       * <pre>
     1407       * From the bbox field.
     1408       * </pre>
     1409       */
     1410      public Builder setSourceBytes(
     1411          com.google.protobuf.ByteString value) {
     1412        if (value == null) {
     1413    throw new NullPointerException();
     1414  }
     1415  bitField0_ |= 0x00000010;
    7271416        source_ = value;
    7281417       
    729       }
    730      
     1418        return this;
     1419      }
     1420
     1421      // optional int64 osmosis_replication_timestamp = 32;
     1422      private long osmosisReplicationTimestamp_ ;
     1423      /**
     1424       * <code>optional int64 osmosis_replication_timestamp = 32;</code>
     1425       *
     1426       * <pre>
     1427       * replication timestamp, expressed in seconds since the epoch,
     1428       * otherwise the same value as in the "timestamp=..." field
     1429       * in the state.txt file used by Osmosis
     1430       * </pre>
     1431       */
     1432      public boolean hasOsmosisReplicationTimestamp() {
     1433        return ((bitField0_ & 0x00000020) == 0x00000020);
     1434      }
     1435      /**
     1436       * <code>optional int64 osmosis_replication_timestamp = 32;</code>
     1437       *
     1438       * <pre>
     1439       * replication timestamp, expressed in seconds since the epoch,
     1440       * otherwise the same value as in the "timestamp=..." field
     1441       * in the state.txt file used by Osmosis
     1442       * </pre>
     1443       */
     1444      public long getOsmosisReplicationTimestamp() {
     1445        return osmosisReplicationTimestamp_;
     1446      }
     1447      /**
     1448       * <code>optional int64 osmosis_replication_timestamp = 32;</code>
     1449       *
     1450       * <pre>
     1451       * replication timestamp, expressed in seconds since the epoch,
     1452       * otherwise the same value as in the "timestamp=..." field
     1453       * in the state.txt file used by Osmosis
     1454       * </pre>
     1455       */
     1456      public Builder setOsmosisReplicationTimestamp(long value) {
     1457        bitField0_ |= 0x00000020;
     1458        osmosisReplicationTimestamp_ = value;
     1459       
     1460        return this;
     1461      }
     1462      /**
     1463       * <code>optional int64 osmosis_replication_timestamp = 32;</code>
     1464       *
     1465       * <pre>
     1466       * replication timestamp, expressed in seconds since the epoch,
     1467       * otherwise the same value as in the "timestamp=..." field
     1468       * in the state.txt file used by Osmosis
     1469       * </pre>
     1470       */
     1471      public Builder clearOsmosisReplicationTimestamp() {
     1472        bitField0_ = (bitField0_ & ~0x00000020);
     1473        osmosisReplicationTimestamp_ = 0L;
     1474       
     1475        return this;
     1476      }
     1477
     1478      // optional int64 osmosis_replication_sequence_number = 33;
     1479      private long osmosisReplicationSequenceNumber_ ;
     1480      /**
     1481       * <code>optional int64 osmosis_replication_sequence_number = 33;</code>
     1482       *
     1483       * <pre>
     1484       * replication sequence number (sequenceNumber in state.txt)
     1485       * </pre>
     1486       */
     1487      public boolean hasOsmosisReplicationSequenceNumber() {
     1488        return ((bitField0_ & 0x00000040) == 0x00000040);
     1489      }
     1490      /**
     1491       * <code>optional int64 osmosis_replication_sequence_number = 33;</code>
     1492       *
     1493       * <pre>
     1494       * replication sequence number (sequenceNumber in state.txt)
     1495       * </pre>
     1496       */
     1497      public long getOsmosisReplicationSequenceNumber() {
     1498        return osmosisReplicationSequenceNumber_;
     1499      }
     1500      /**
     1501       * <code>optional int64 osmosis_replication_sequence_number = 33;</code>
     1502       *
     1503       * <pre>
     1504       * replication sequence number (sequenceNumber in state.txt)
     1505       * </pre>
     1506       */
     1507      public Builder setOsmosisReplicationSequenceNumber(long value) {
     1508        bitField0_ |= 0x00000040;
     1509        osmosisReplicationSequenceNumber_ = value;
     1510       
     1511        return this;
     1512      }
     1513      /**
     1514       * <code>optional int64 osmosis_replication_sequence_number = 33;</code>
     1515       *
     1516       * <pre>
     1517       * replication sequence number (sequenceNumber in state.txt)
     1518       * </pre>
     1519       */
     1520      public Builder clearOsmosisReplicationSequenceNumber() {
     1521        bitField0_ = (bitField0_ & ~0x00000040);
     1522        osmosisReplicationSequenceNumber_ = 0L;
     1523       
     1524        return this;
     1525      }
     1526
     1527      // optional string osmosis_replication_base_url = 34;
     1528      private java.lang.Object osmosisReplicationBaseUrl_ = "";
     1529      /**
     1530       * <code>optional string osmosis_replication_base_url = 34;</code>
     1531       *
     1532       * <pre>
     1533       * replication base URL (from Osmosis' configuration.txt file)
     1534       * </pre>
     1535       */
     1536      public boolean hasOsmosisReplicationBaseUrl() {
     1537        return ((bitField0_ & 0x00000080) == 0x00000080);
     1538      }
     1539      /**
     1540       * <code>optional string osmosis_replication_base_url = 34;</code>
     1541       *
     1542       * <pre>
     1543       * replication base URL (from Osmosis' configuration.txt file)
     1544       * </pre>
     1545       */
     1546      public java.lang.String getOsmosisReplicationBaseUrl() {
     1547        java.lang.Object ref = osmosisReplicationBaseUrl_;
     1548        if (!(ref instanceof java.lang.String)) {
     1549          java.lang.String s = ((com.google.protobuf.ByteString) ref)
     1550              .toStringUtf8();
     1551          osmosisReplicationBaseUrl_ = s;
     1552          return s;
     1553        } else {
     1554          return (java.lang.String) ref;
     1555        }
     1556      }
     1557      /**
     1558       * <code>optional string osmosis_replication_base_url = 34;</code>
     1559       *
     1560       * <pre>
     1561       * replication base URL (from Osmosis' configuration.txt file)
     1562       * </pre>
     1563       */
     1564      public com.google.protobuf.ByteString
     1565          getOsmosisReplicationBaseUrlBytes() {
     1566        java.lang.Object ref = osmosisReplicationBaseUrl_;
     1567        if (ref instanceof String) {
     1568          com.google.protobuf.ByteString b =
     1569              com.google.protobuf.ByteString.copyFromUtf8(
     1570                  (java.lang.String) ref);
     1571          osmosisReplicationBaseUrl_ = b;
     1572          return b;
     1573        } else {
     1574          return (com.google.protobuf.ByteString) ref;
     1575        }
     1576      }
     1577      /**
     1578       * <code>optional string osmosis_replication_base_url = 34;</code>
     1579       *
     1580       * <pre>
     1581       * replication base URL (from Osmosis' configuration.txt file)
     1582       * </pre>
     1583       */
     1584      public Builder setOsmosisReplicationBaseUrl(
     1585          java.lang.String value) {
     1586        if (value == null) {
     1587    throw new NullPointerException();
     1588  }
     1589  bitField0_ |= 0x00000080;
     1590        osmosisReplicationBaseUrl_ = value;
     1591       
     1592        return this;
     1593      }
     1594      /**
     1595       * <code>optional string osmosis_replication_base_url = 34;</code>
     1596       *
     1597       * <pre>
     1598       * replication base URL (from Osmosis' configuration.txt file)
     1599       * </pre>
     1600       */
     1601      public Builder clearOsmosisReplicationBaseUrl() {
     1602        bitField0_ = (bitField0_ & ~0x00000080);
     1603        osmosisReplicationBaseUrl_ = getDefaultInstance().getOsmosisReplicationBaseUrl();
     1604       
     1605        return this;
     1606      }
     1607      /**
     1608       * <code>optional string osmosis_replication_base_url = 34;</code>
     1609       *
     1610       * <pre>
     1611       * replication base URL (from Osmosis' configuration.txt file)
     1612       * </pre>
     1613       */
     1614      public Builder setOsmosisReplicationBaseUrlBytes(
     1615          com.google.protobuf.ByteString value) {
     1616        if (value == null) {
     1617    throw new NullPointerException();
     1618  }
     1619  bitField0_ |= 0x00000080;
     1620        osmosisReplicationBaseUrl_ = value;
     1621       
     1622        return this;
     1623      }
     1624
    7311625      // @@protoc_insertion_point(builder_scope:OSMPBF.HeaderBlock)
    7321626    }
    733    
     1627
    7341628    static {
    7351629      defaultInstance = new HeaderBlock(true);
    7361630      defaultInstance.initFields();
    7371631    }
    738    
     1632
    7391633    // @@protoc_insertion_point(class_scope:OSMPBF.HeaderBlock)
    7401634  }
    741  
     1635
    7421636  public interface HeaderBBoxOrBuilder
    7431637      extends com.google.protobuf.MessageLiteOrBuilder {
    744    
     1638
    7451639    // required sint64 left = 1;
     1640    /**
     1641     * <code>required sint64 left = 1;</code>
     1642     */
    7461643    boolean hasLeft();
     1644    /**
     1645     * <code>required sint64 left = 1;</code>
     1646     */
    7471647    long getLeft();
    748    
     1648
    7491649    // required sint64 right = 2;
     1650    /**
     1651     * <code>required sint64 right = 2;</code>
     1652     */
    7501653    boolean hasRight();
     1654    /**
     1655     * <code>required sint64 right = 2;</code>
     1656     */
    7511657    long getRight();
    752    
     1658
    7531659    // required sint64 top = 3;
     1660    /**
     1661     * <code>required sint64 top = 3;</code>
     1662     */
    7541663    boolean hasTop();
     1664    /**
     1665     * <code>required sint64 top = 3;</code>
     1666     */
    7551667    long getTop();
    756    
     1668
    7571669    // required sint64 bottom = 4;
     1670    /**
     1671     * <code>required sint64 bottom = 4;</code>
     1672     */
    7581673    boolean hasBottom();
     1674    /**
     1675     * <code>required sint64 bottom = 4;</code>
     1676     */
    7591677    long getBottom();
    7601678  }
     1679  /**
     1680   * Protobuf type {@code OSMPBF.HeaderBBox}
     1681   */
    7611682  public static final class HeaderBBox extends
    7621683      com.google.protobuf.GeneratedMessageLite
    7631684      implements HeaderBBoxOrBuilder {
    7641685    // Use HeaderBBox.newBuilder() to construct.
    765     private HeaderBBox(Builder builder) {
     1686    private HeaderBBox(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    7661687      super(builder);
     1688
    7671689    }
    7681690    private HeaderBBox(boolean noInit) {}
    769    
     1691
    7701692    private static final HeaderBBox defaultInstance;
    7711693    public static HeaderBBox getDefaultInstance() {
    7721694      return defaultInstance;
    7731695    }
    774    
     1696
    7751697    public HeaderBBox getDefaultInstanceForType() {
    7761698      return defaultInstance;
    7771699    }
    778    
    779     private int bitField0_;
    780     // required sint64 left = 1;
    781     public static final int LEFT_FIELD_NUMBER = 1;
    782     private long left_;
    783     public boolean hasLeft() {
    784       return ((bitField0_ & 0x00000001) == 0x00000001);
    785     }
    786     public long getLeft() {
    787       return left_;
    788     }
    789    
    790     // required sint64 right = 2;
    791     public static final int RIGHT_FIELD_NUMBER = 2;
    792     private long right_;
    793     public boolean hasRight() {
    794       return ((bitField0_ & 0x00000002) == 0x00000002);
    795     }
    796     public long getRight() {
    797       return right_;
    798     }
    799    
    800     // required sint64 top = 3;
    801     public static final int TOP_FIELD_NUMBER = 3;
    802     private long top_;
    803     public boolean hasTop() {
    804       return ((bitField0_ & 0x00000004) == 0x00000004);
    805     }
    806     public long getTop() {
    807       return top_;
    808     }
    809    
    810     // required sint64 bottom = 4;
    811     public static final int BOTTOM_FIELD_NUMBER = 4;
    812     private long bottom_;
    813     public boolean hasBottom() {
    814       return ((bitField0_ & 0x00000008) == 0x00000008);
    815     }
    816     public long getBottom() {
    817       return bottom_;
    818     }
    819    
    820     private void initFields() {
    821       left_ = 0L;
    822       right_ = 0L;
    823       top_ = 0L;
    824       bottom_ = 0L;
    825     }
    826     private byte memoizedIsInitialized = -1;
    827     public final boolean isInitialized() {
    828       byte isInitialized = memoizedIsInitialized;
    829       if (isInitialized != -1) return isInitialized == 1;
    830      
    831       if (!hasLeft()) {
    832         memoizedIsInitialized = 0;
    833         return false;
    834       }
    835       if (!hasRight()) {
    836         memoizedIsInitialized = 0;
    837         return false;
    838       }
    839       if (!hasTop()) {
    840         memoizedIsInitialized = 0;
    841         return false;
    842       }
    843       if (!hasBottom()) {
    844         memoizedIsInitialized = 0;
    845         return false;
    846       }
    847       memoizedIsInitialized = 1;
    848       return true;
    849     }
    850    
    851     public void writeTo(com.google.protobuf.CodedOutputStream output)
    852                         throws java.io.IOException {
    853       getSerializedSize();
    854       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    855         output.writeSInt64(1, left_);
    856       }
    857       if (((bitField0_ & 0x00000002) == 0x00000002)) {
    858         output.writeSInt64(2, right_);
    859       }
    860       if (((bitField0_ & 0x00000004) == 0x00000004)) {
    861         output.writeSInt64(3, top_);
    862       }
    863       if (((bitField0_ & 0x00000008) == 0x00000008)) {
    864         output.writeSInt64(4, bottom_);
    865       }
    866     }
    867    
    868     private int memoizedSerializedSize = -1;
    869     public int getSerializedSize() {
    870       int size = memoizedSerializedSize;
    871       if (size != -1) return size;
    872    
    873       size = 0;
    874       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    875         size += com.google.protobuf.CodedOutputStream
    876           .computeSInt64Size(1, left_);
    877       }
    878       if (((bitField0_ & 0x00000002) == 0x00000002)) {
    879         size += com.google.protobuf.CodedOutputStream
    880           .computeSInt64Size(2, right_);
    881       }
    882       if (((bitField0_ & 0x00000004) == 0x00000004)) {
    883         size += com.google.protobuf.CodedOutputStream
    884           .computeSInt64Size(3, top_);
    885       }
    886       if (((bitField0_ & 0x00000008) == 0x00000008)) {
    887         size += com.google.protobuf.CodedOutputStream
    888           .computeSInt64Size(4, bottom_);
    889       }
    890       memoizedSerializedSize = size;
    891       return size;
    892     }
    893    
    894     private static final long serialVersionUID = 0L;
    895     @java.lang.Override
    896     protected java.lang.Object writeReplace()
    897         throws java.io.ObjectStreamException {
    898       return super.writeReplace();
    899     }
    900    
    901     public static crosby.binary.Osmformat.HeaderBBox parseFrom(
    902         com.google.protobuf.ByteString data)
    903         throws com.google.protobuf.InvalidProtocolBufferException {
    904       return newBuilder().mergeFrom(data).buildParsed();
    905     }
    906     public static crosby.binary.Osmformat.HeaderBBox parseFrom(
    907         com.google.protobuf.ByteString data,
     1700
     1701    private HeaderBBox(
     1702        com.google.protobuf.CodedInputStream input,
    9081703        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    9091704        throws com.google.protobuf.InvalidProtocolBufferException {
    910       return newBuilder().mergeFrom(data, extensionRegistry)
    911                .buildParsed();
    912     }
    913     public static crosby.binary.Osmformat.HeaderBBox parseFrom(byte[] data)
    914         throws com.google.protobuf.InvalidProtocolBufferException {
    915       return newBuilder().mergeFrom(data).buildParsed();
    916     }
    917     public static crosby.binary.Osmformat.HeaderBBox parseFrom(
    918         byte[] data,
    919         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    920         throws com.google.protobuf.InvalidProtocolBufferException {
    921       return newBuilder().mergeFrom(data, extensionRegistry)
    922                .buildParsed();
    923     }
    924     public static crosby.binary.Osmformat.HeaderBBox parseFrom(java.io.InputStream input)
    925         throws java.io.IOException {
    926       return newBuilder().mergeFrom(input).buildParsed();
    927     }
    928     public static crosby.binary.Osmformat.HeaderBBox parseFrom(
    929         java.io.InputStream input,
    930         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    931         throws java.io.IOException {
    932       return newBuilder().mergeFrom(input, extensionRegistry)
    933                .buildParsed();
    934     }
    935     public static crosby.binary.Osmformat.HeaderBBox parseDelimitedFrom(java.io.InputStream input)
    936         throws java.io.IOException {
    937       Builder builder = newBuilder();
    938       if (builder.mergeDelimitedFrom(input)) {
    939         return builder.buildParsed();
    940       } else {
    941         return null;
    942       }
    943     }
    944     public static crosby.binary.Osmformat.HeaderBBox parseDelimitedFrom(
    945         java.io.InputStream input,
    946         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    947         throws java.io.IOException {
    948       Builder builder = newBuilder();
    949       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    950         return builder.buildParsed();
    951       } else {
    952         return null;
    953       }
    954     }
    955     public static crosby.binary.Osmformat.HeaderBBox parseFrom(
    956         com.google.protobuf.CodedInputStream input)
    957         throws java.io.IOException {
    958       return newBuilder().mergeFrom(input).buildParsed();
    959     }
    960     public static crosby.binary.Osmformat.HeaderBBox parseFrom(
    961         com.google.protobuf.CodedInputStream input,
    962         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    963         throws java.io.IOException {
    964       return newBuilder().mergeFrom(input, extensionRegistry)
    965                .buildParsed();
    966     }
    967    
    968     public static Builder newBuilder() { return Builder.create(); }
    969     public Builder newBuilderForType() { return newBuilder(); }
    970     public static Builder newBuilder(crosby.binary.Osmformat.HeaderBBox prototype) {
    971       return newBuilder().mergeFrom(prototype);
    972     }
    973     public Builder toBuilder() { return newBuilder(this); }
    974    
    975     public static final class Builder extends
    976         com.google.protobuf.GeneratedMessageLite.Builder<
    977           crosby.binary.Osmformat.HeaderBBox, Builder>
    978         implements crosby.binary.Osmformat.HeaderBBoxOrBuilder {
    979       // Construct using crosby.binary.Osmformat.HeaderBBox.newBuilder()
    980       private Builder() {
    981         maybeForceBuilderInitialization();
    982       }
    983      
    984       private void maybeForceBuilderInitialization() {
    985       }
    986       private static Builder create() {
    987         return new Builder();
    988       }
    989      
    990       public Builder clear() {
    991         super.clear();
    992         left_ = 0L;
    993         bitField0_ = (bitField0_ & ~0x00000001);
    994         right_ = 0L;
    995         bitField0_ = (bitField0_ & ~0x00000002);
    996         top_ = 0L;
    997         bitField0_ = (bitField0_ & ~0x00000004);
    998         bottom_ = 0L;
    999         bitField0_ = (bitField0_ & ~0x00000008);
    1000         return this;
    1001       }
    1002      
    1003       public Builder clone() {
    1004         return create().mergeFrom(buildPartial());
    1005       }
    1006      
    1007       public crosby.binary.Osmformat.HeaderBBox getDefaultInstanceForType() {
    1008         return crosby.binary.Osmformat.HeaderBBox.getDefaultInstance();
    1009       }
    1010      
    1011       public crosby.binary.Osmformat.HeaderBBox build() {
    1012         crosby.binary.Osmformat.HeaderBBox result = buildPartial();
    1013         if (!result.isInitialized()) {
    1014           throw newUninitializedMessageException(result);
    1015         }
    1016         return result;
    1017       }
    1018      
    1019       private crosby.binary.Osmformat.HeaderBBox buildParsed()
    1020           throws com.google.protobuf.InvalidProtocolBufferException {
    1021         crosby.binary.Osmformat.HeaderBBox result = buildPartial();
    1022         if (!result.isInitialized()) {
    1023           throw newUninitializedMessageException(
    1024             result).asInvalidProtocolBufferException();
    1025         }
    1026         return result;
    1027       }
    1028      
    1029       public crosby.binary.Osmformat.HeaderBBox buildPartial() {
    1030         crosby.binary.Osmformat.HeaderBBox result = new crosby.binary.Osmformat.HeaderBBox(this);
    1031         int from_bitField0_ = bitField0_;
    1032         int to_bitField0_ = 0;
    1033         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
    1034           to_bitField0_ |= 0x00000001;
    1035         }
    1036         result.left_ = left_;
    1037         if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
    1038           to_bitField0_ |= 0x00000002;
    1039         }
    1040         result.right_ = right_;
    1041         if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
    1042           to_bitField0_ |= 0x00000004;
    1043         }
    1044         result.top_ = top_;
    1045         if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
    1046           to_bitField0_ |= 0x00000008;
    1047         }
    1048         result.bottom_ = bottom_;
    1049         result.bitField0_ = to_bitField0_;
    1050         return result;
    1051       }
    1052      
    1053       public Builder mergeFrom(crosby.binary.Osmformat.HeaderBBox other) {
    1054         if (other == crosby.binary.Osmformat.HeaderBBox.getDefaultInstance()) return this;
    1055         if (other.hasLeft()) {
    1056           setLeft(other.getLeft());
    1057         }
    1058         if (other.hasRight()) {
    1059           setRight(other.getRight());
    1060         }
    1061         if (other.hasTop()) {
    1062           setTop(other.getTop());
    1063         }
    1064         if (other.hasBottom()) {
    1065           setBottom(other.getBottom());
    1066         }
    1067         return this;
    1068       }
    1069      
    1070       public final boolean isInitialized() {
    1071         if (!hasLeft()) {
    1072          
    1073           return false;
    1074         }
    1075         if (!hasRight()) {
    1076          
    1077           return false;
    1078         }
    1079         if (!hasTop()) {
    1080          
    1081           return false;
    1082         }
    1083         if (!hasBottom()) {
    1084          
    1085           return false;
    1086         }
    1087         return true;
    1088       }
    1089      
    1090       public Builder mergeFrom(
    1091           com.google.protobuf.CodedInputStream input,
    1092           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    1093           throws java.io.IOException {
    1094         while (true) {
     1705      initFields();
     1706      int mutable_bitField0_ = 0;
     1707      try {
     1708        boolean done = false;
     1709        while (!done) {
    10951710          int tag = input.readTag();
    10961711          switch (tag) {
    10971712            case 0:
    1098              
    1099               return this;
     1713              done = true;
     1714              break;
    11001715            default: {
    1101               if (!parseUnknownField(input, extensionRegistry, tag)) {
    1102                
    1103                 return this;
     1716              if (!parseUnknownField(input,
     1717                                     extensionRegistry, tag)) {
     1718                done = true;
    11041719              }
    11051720              break;
     
    11271742          }
    11281743        }
    1129       }
    1130      
     1744      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     1745        throw e.setUnfinishedMessage(this);
     1746      } catch (java.io.IOException e) {
     1747        throw new com.google.protobuf.InvalidProtocolBufferException(
     1748            e.getMessage()).setUnfinishedMessage(this);
     1749      } finally {
     1750        makeExtensionsImmutable();
     1751      }
     1752    }
     1753    public static com.google.protobuf.Parser<HeaderBBox> PARSER =
     1754        new com.google.protobuf.AbstractParser<HeaderBBox>() {
     1755      public HeaderBBox parsePartialFrom(
     1756          com.google.protobuf.CodedInputStream input,
     1757          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1758          throws com.google.protobuf.InvalidProtocolBufferException {
     1759        return new HeaderBBox(input, extensionRegistry);
     1760      }
     1761    };
     1762
     1763    @java.lang.Override
     1764    public com.google.protobuf.Parser<HeaderBBox> getParserForType() {
     1765      return PARSER;
     1766    }
     1767
     1768    private int bitField0_;
     1769    // required sint64 left = 1;
     1770    public static final int LEFT_FIELD_NUMBER = 1;
     1771    private long left_;
     1772    /**
     1773     * <code>required sint64 left = 1;</code>
     1774     */
     1775    public boolean hasLeft() {
     1776      return ((bitField0_ & 0x00000001) == 0x00000001);
     1777    }
     1778    /**
     1779     * <code>required sint64 left = 1;</code>
     1780     */
     1781    public long getLeft() {
     1782      return left_;
     1783    }
     1784
     1785    // required sint64 right = 2;
     1786    public static final int RIGHT_FIELD_NUMBER = 2;
     1787    private long right_;
     1788    /**
     1789     * <code>required sint64 right = 2;</code>
     1790     */
     1791    public boolean hasRight() {
     1792      return ((bitField0_ & 0x00000002) == 0x00000002);
     1793    }
     1794    /**
     1795     * <code>required sint64 right = 2;</code>
     1796     */
     1797    public long getRight() {
     1798      return right_;
     1799    }
     1800
     1801    // required sint64 top = 3;
     1802    public static final int TOP_FIELD_NUMBER = 3;
     1803    private long top_;
     1804    /**
     1805     * <code>required sint64 top = 3;</code>
     1806     */
     1807    public boolean hasTop() {
     1808      return ((bitField0_ & 0x00000004) == 0x00000004);
     1809    }
     1810    /**
     1811     * <code>required sint64 top = 3;</code>
     1812     */
     1813    public long getTop() {
     1814      return top_;
     1815    }
     1816
     1817    // required sint64 bottom = 4;
     1818    public static final int BOTTOM_FIELD_NUMBER = 4;
     1819    private long bottom_;
     1820    /**
     1821     * <code>required sint64 bottom = 4;</code>
     1822     */
     1823    public boolean hasBottom() {
     1824      return ((bitField0_ & 0x00000008) == 0x00000008);
     1825    }
     1826    /**
     1827     * <code>required sint64 bottom = 4;</code>
     1828     */
     1829    public long getBottom() {
     1830      return bottom_;
     1831    }
     1832
     1833    private void initFields() {
     1834      left_ = 0L;
     1835      right_ = 0L;
     1836      top_ = 0L;
     1837      bottom_ = 0L;
     1838    }
     1839    private byte memoizedIsInitialized = -1;
     1840    public final boolean isInitialized() {
     1841      byte isInitialized = memoizedIsInitialized;
     1842      if (isInitialized != -1) return isInitialized == 1;
     1843
     1844      if (!hasLeft()) {
     1845        memoizedIsInitialized = 0;
     1846        return false;
     1847      }
     1848      if (!hasRight()) {
     1849        memoizedIsInitialized = 0;
     1850        return false;
     1851      }
     1852      if (!hasTop()) {
     1853        memoizedIsInitialized = 0;
     1854        return false;
     1855      }
     1856      if (!hasBottom()) {
     1857        memoizedIsInitialized = 0;
     1858        return false;
     1859      }
     1860      memoizedIsInitialized = 1;
     1861      return true;
     1862    }
     1863
     1864    public void writeTo(com.google.protobuf.CodedOutputStream output)
     1865                        throws java.io.IOException {
     1866      getSerializedSize();
     1867      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     1868        output.writeSInt64(1, left_);
     1869      }
     1870      if (((bitField0_ & 0x00000002) == 0x00000002)) {
     1871        output.writeSInt64(2, right_);
     1872      }
     1873      if (((bitField0_ & 0x00000004) == 0x00000004)) {
     1874        output.writeSInt64(3, top_);
     1875      }
     1876      if (((bitField0_ & 0x00000008) == 0x00000008)) {
     1877        output.writeSInt64(4, bottom_);
     1878      }
     1879    }
     1880
     1881    private int memoizedSerializedSize = -1;
     1882    public int getSerializedSize() {
     1883      int size = memoizedSerializedSize;
     1884      if (size != -1) return size;
     1885
     1886      size = 0;
     1887      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     1888        size += com.google.protobuf.CodedOutputStream
     1889          .computeSInt64Size(1, left_);
     1890      }
     1891      if (((bitField0_ & 0x00000002) == 0x00000002)) {
     1892        size += com.google.protobuf.CodedOutputStream
     1893          .computeSInt64Size(2, right_);
     1894      }
     1895      if (((bitField0_ & 0x00000004) == 0x00000004)) {
     1896        size += com.google.protobuf.CodedOutputStream
     1897          .computeSInt64Size(3, top_);
     1898      }
     1899      if (((bitField0_ & 0x00000008) == 0x00000008)) {
     1900        size += com.google.protobuf.CodedOutputStream
     1901          .computeSInt64Size(4, bottom_);
     1902      }
     1903      memoizedSerializedSize = size;
     1904      return size;
     1905    }
     1906
     1907    private static final long serialVersionUID = 0L;
     1908    @java.lang.Override
     1909    protected java.lang.Object writeReplace()
     1910        throws java.io.ObjectStreamException {
     1911      return super.writeReplace();
     1912    }
     1913
     1914    public static crosby.binary.Osmformat.HeaderBBox parseFrom(
     1915        com.google.protobuf.ByteString data)
     1916        throws com.google.protobuf.InvalidProtocolBufferException {
     1917      return PARSER.parseFrom(data);
     1918    }
     1919    public static crosby.binary.Osmformat.HeaderBBox parseFrom(
     1920        com.google.protobuf.ByteString data,
     1921        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1922        throws com.google.protobuf.InvalidProtocolBufferException {
     1923      return PARSER.parseFrom(data, extensionRegistry);
     1924    }
     1925    public static crosby.binary.Osmformat.HeaderBBox parseFrom(byte[] data)
     1926        throws com.google.protobuf.InvalidProtocolBufferException {
     1927      return PARSER.parseFrom(data);
     1928    }
     1929    public static crosby.binary.Osmformat.HeaderBBox parseFrom(
     1930        byte[] data,
     1931        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1932        throws com.google.protobuf.InvalidProtocolBufferException {
     1933      return PARSER.parseFrom(data, extensionRegistry);
     1934    }
     1935    public static crosby.binary.Osmformat.HeaderBBox parseFrom(java.io.InputStream input)
     1936        throws java.io.IOException {
     1937      return PARSER.parseFrom(input);
     1938    }
     1939    public static crosby.binary.Osmformat.HeaderBBox parseFrom(
     1940        java.io.InputStream input,
     1941        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1942        throws java.io.IOException {
     1943      return PARSER.parseFrom(input, extensionRegistry);
     1944    }
     1945    public static crosby.binary.Osmformat.HeaderBBox parseDelimitedFrom(java.io.InputStream input)
     1946        throws java.io.IOException {
     1947      return PARSER.parseDelimitedFrom(input);
     1948    }
     1949    public static crosby.binary.Osmformat.HeaderBBox parseDelimitedFrom(
     1950        java.io.InputStream input,
     1951        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1952        throws java.io.IOException {
     1953      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     1954    }
     1955    public static crosby.binary.Osmformat.HeaderBBox parseFrom(
     1956        com.google.protobuf.CodedInputStream input)
     1957        throws java.io.IOException {
     1958      return PARSER.parseFrom(input);
     1959    }
     1960    public static crosby.binary.Osmformat.HeaderBBox parseFrom(
     1961        com.google.protobuf.CodedInputStream input,
     1962        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     1963        throws java.io.IOException {
     1964      return PARSER.parseFrom(input, extensionRegistry);
     1965    }
     1966
     1967    public static Builder newBuilder() { return Builder.create(); }
     1968    public Builder newBuilderForType() { return newBuilder(); }
     1969    public static Builder newBuilder(crosby.binary.Osmformat.HeaderBBox prototype) {
     1970      return newBuilder().mergeFrom(prototype);
     1971    }
     1972    public Builder toBuilder() { return newBuilder(this); }
     1973
     1974    /**
     1975     * Protobuf type {@code OSMPBF.HeaderBBox}
     1976     */
     1977    public static final class Builder extends
     1978        com.google.protobuf.GeneratedMessageLite.Builder<
     1979          crosby.binary.Osmformat.HeaderBBox, Builder>
     1980        implements crosby.binary.Osmformat.HeaderBBoxOrBuilder {
     1981      // Construct using crosby.binary.Osmformat.HeaderBBox.newBuilder()
     1982      private Builder() {
     1983        maybeForceBuilderInitialization();
     1984      }
     1985
     1986      private void maybeForceBuilderInitialization() {
     1987      }
     1988      private static Builder create() {
     1989        return new Builder();
     1990      }
     1991
     1992      public Builder clear() {
     1993        super.clear();
     1994        left_ = 0L;
     1995        bitField0_ = (bitField0_ & ~0x00000001);
     1996        right_ = 0L;
     1997        bitField0_ = (bitField0_ & ~0x00000002);
     1998        top_ = 0L;
     1999        bitField0_ = (bitField0_ & ~0x00000004);
     2000        bottom_ = 0L;
     2001        bitField0_ = (bitField0_ & ~0x00000008);
     2002        return this;
     2003      }
     2004
     2005      public Builder clone() {
     2006        return create().mergeFrom(buildPartial());
     2007      }
     2008
     2009      public crosby.binary.Osmformat.HeaderBBox getDefaultInstanceForType() {
     2010        return crosby.binary.Osmformat.HeaderBBox.getDefaultInstance();
     2011      }
     2012
     2013      public crosby.binary.Osmformat.HeaderBBox build() {
     2014        crosby.binary.Osmformat.HeaderBBox result = buildPartial();
     2015        if (!result.isInitialized()) {
     2016          throw newUninitializedMessageException(result);
     2017        }
     2018        return result;
     2019      }
     2020
     2021      public crosby.binary.Osmformat.HeaderBBox buildPartial() {
     2022        crosby.binary.Osmformat.HeaderBBox result = new crosby.binary.Osmformat.HeaderBBox(this);
     2023        int from_bitField0_ = bitField0_;
     2024        int to_bitField0_ = 0;
     2025        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
     2026          to_bitField0_ |= 0x00000001;
     2027        }
     2028        result.left_ = left_;
     2029        if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
     2030          to_bitField0_ |= 0x00000002;
     2031        }
     2032        result.right_ = right_;
     2033        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
     2034          to_bitField0_ |= 0x00000004;
     2035        }
     2036        result.top_ = top_;
     2037        if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
     2038          to_bitField0_ |= 0x00000008;
     2039        }
     2040        result.bottom_ = bottom_;
     2041        result.bitField0_ = to_bitField0_;
     2042        return result;
     2043      }
     2044
     2045      public Builder mergeFrom(crosby.binary.Osmformat.HeaderBBox other) {
     2046        if (other == crosby.binary.Osmformat.HeaderBBox.getDefaultInstance()) return this;
     2047        if (other.hasLeft()) {
     2048          setLeft(other.getLeft());
     2049        }
     2050        if (other.hasRight()) {
     2051          setRight(other.getRight());
     2052        }
     2053        if (other.hasTop()) {
     2054          setTop(other.getTop());
     2055        }
     2056        if (other.hasBottom()) {
     2057          setBottom(other.getBottom());
     2058        }
     2059        return this;
     2060      }
     2061
     2062      public final boolean isInitialized() {
     2063        if (!hasLeft()) {
     2064         
     2065          return false;
     2066        }
     2067        if (!hasRight()) {
     2068         
     2069          return false;
     2070        }
     2071        if (!hasTop()) {
     2072         
     2073          return false;
     2074        }
     2075        if (!hasBottom()) {
     2076         
     2077          return false;
     2078        }
     2079        return true;
     2080      }
     2081
     2082      public Builder mergeFrom(
     2083          com.google.protobuf.CodedInputStream input,
     2084          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     2085          throws java.io.IOException {
     2086        crosby.binary.Osmformat.HeaderBBox parsedMessage = null;
     2087        try {
     2088          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     2089        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     2090          parsedMessage = (crosby.binary.Osmformat.HeaderBBox) e.getUnfinishedMessage();
     2091          throw e;
     2092        } finally {
     2093          if (parsedMessage != null) {
     2094            mergeFrom(parsedMessage);
     2095          }
     2096        }
     2097        return this;
     2098      }
    11312099      private int bitField0_;
    1132      
     2100
    11332101      // required sint64 left = 1;
    11342102      private long left_ ;
     2103      /**
     2104       * <code>required sint64 left = 1;</code>
     2105       */
    11352106      public boolean hasLeft() {
    11362107        return ((bitField0_ & 0x00000001) == 0x00000001);
    11372108      }
     2109      /**
     2110       * <code>required sint64 left = 1;</code>
     2111       */
    11382112      public long getLeft() {
    11392113        return left_;
    11402114      }
     2115      /**
     2116       * <code>required sint64 left = 1;</code>
     2117       */
    11412118      public Builder setLeft(long value) {
    11422119        bitField0_ |= 0x00000001;
     
    11452122        return this;
    11462123      }
     2124      /**
     2125       * <code>required sint64 left = 1;</code>
     2126       */
    11472127      public Builder clearLeft() {
    11482128        bitField0_ = (bitField0_ & ~0x00000001);
     
    11512131        return this;
    11522132      }
    1153      
     2133
    11542134      // required sint64 right = 2;
    11552135      private long right_ ;
     2136      /**
     2137       * <code>required sint64 right = 2;</code>
     2138       */
    11562139      public boolean hasRight() {
    11572140        return ((bitField0_ & 0x00000002) == 0x00000002);
    11582141      }
     2142      /**
     2143       * <code>required sint64 right = 2;</code>
     2144       */
    11592145      public long getRight() {
    11602146        return right_;
    11612147      }
     2148      /**
     2149       * <code>required sint64 right = 2;</code>
     2150       */
    11622151      public Builder setRight(long value) {
    11632152        bitField0_ |= 0x00000002;
     
    11662155        return this;
    11672156      }
     2157      /**
     2158       * <code>required sint64 right = 2;</code>
     2159       */
    11682160      public Builder clearRight() {
    11692161        bitField0_ = (bitField0_ & ~0x00000002);
     
    11722164        return this;
    11732165      }
    1174      
     2166
    11752167      // required sint64 top = 3;
    11762168      private long top_ ;
     2169      /**
     2170       * <code>required sint64 top = 3;</code>
     2171       */
    11772172      public boolean hasTop() {
    11782173        return ((bitField0_ & 0x00000004) == 0x00000004);
    11792174      }
     2175      /**
     2176       * <code>required sint64 top = 3;</code>
     2177       */
    11802178      public long getTop() {
    11812179        return top_;
    11822180      }
     2181      /**
     2182       * <code>required sint64 top = 3;</code>
     2183       */
    11832184      public Builder setTop(long value) {
    11842185        bitField0_ |= 0x00000004;
     
    11872188        return this;
    11882189      }
     2190      /**
     2191       * <code>required sint64 top = 3;</code>
     2192       */
    11892193      public Builder clearTop() {
    11902194        bitField0_ = (bitField0_ & ~0x00000004);
     
    11932197        return this;
    11942198      }
    1195      
     2199
    11962200      // required sint64 bottom = 4;
    11972201      private long bottom_ ;
     2202      /**
     2203       * <code>required sint64 bottom = 4;</code>
     2204       */
    11982205      public boolean hasBottom() {
    11992206        return ((bitField0_ & 0x00000008) == 0x00000008);
    12002207      }
     2208      /**
     2209       * <code>required sint64 bottom = 4;</code>
     2210       */
    12012211      public long getBottom() {
    12022212        return bottom_;
    12032213      }
     2214      /**
     2215       * <code>required sint64 bottom = 4;</code>
     2216       */
    12042217      public Builder setBottom(long value) {
    12052218        bitField0_ |= 0x00000008;
     
    12082221        return this;
    12092222      }
     2223      /**
     2224       * <code>required sint64 bottom = 4;</code>
     2225       */
    12102226      public Builder clearBottom() {
    12112227        bitField0_ = (bitField0_ & ~0x00000008);
     
    12142230        return this;
    12152231      }
    1216      
     2232
    12172233      // @@protoc_insertion_point(builder_scope:OSMPBF.HeaderBBox)
    12182234    }
    1219    
     2235
    12202236    static {
    12212237      defaultInstance = new HeaderBBox(true);
    12222238      defaultInstance.initFields();
    12232239    }
    1224    
     2240
    12252241    // @@protoc_insertion_point(class_scope:OSMPBF.HeaderBBox)
    12262242  }
    1227  
     2243
    12282244  public interface PrimitiveBlockOrBuilder
    12292245      extends com.google.protobuf.MessageLiteOrBuilder {
    1230    
     2246
    12312247    // required .OSMPBF.StringTable stringtable = 1;
     2248    /**
     2249     * <code>required .OSMPBF.StringTable stringtable = 1;</code>
     2250     */
    12322251    boolean hasStringtable();
     2252    /**
     2253     * <code>required .OSMPBF.StringTable stringtable = 1;</code>
     2254     */
    12332255    crosby.binary.Osmformat.StringTable getStringtable();
    1234    
     2256
    12352257    // repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;
     2258    /**
     2259     * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2260     */
    12362261    java.util.List<crosby.binary.Osmformat.PrimitiveGroup>
    12372262        getPrimitivegroupList();
     2263    /**
     2264     * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2265     */
    12382266    crosby.binary.Osmformat.PrimitiveGroup getPrimitivegroup(int index);
     2267    /**
     2268     * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2269     */
    12392270    int getPrimitivegroupCount();
    1240    
     2271
    12412272    // optional int32 granularity = 17 [default = 100];
     2273    /**
     2274     * <code>optional int32 granularity = 17 [default = 100];</code>
     2275     *
     2276     * <pre>
     2277     * Granularity, units of nanodegrees, used to store coordinates in this block
     2278     * </pre>
     2279     */
    12422280    boolean hasGranularity();
     2281    /**
     2282     * <code>optional int32 granularity = 17 [default = 100];</code>
     2283     *
     2284     * <pre>
     2285     * Granularity, units of nanodegrees, used to store coordinates in this block
     2286     * </pre>
     2287     */
    12432288    int getGranularity();
    1244    
     2289
    12452290    // optional int64 lat_offset = 19 [default = 0];
     2291    /**
     2292     * <code>optional int64 lat_offset = 19 [default = 0];</code>
     2293     *
     2294     * <pre>
     2295     * Offset value between the output coordinates coordinates and the granularity grid in unites of nanodegrees.
     2296     * </pre>
     2297     */
    12462298    boolean hasLatOffset();
     2299    /**
     2300     * <code>optional int64 lat_offset = 19 [default = 0];</code>
     2301     *
     2302     * <pre>
     2303     * Offset value between the output coordinates coordinates and the granularity grid in unites of nanodegrees.
     2304     * </pre>
     2305     */
    12472306    long getLatOffset();
    1248    
     2307
    12492308    // optional int64 lon_offset = 20 [default = 0];
     2309    /**
     2310     * <code>optional int64 lon_offset = 20 [default = 0];</code>
     2311     */
    12502312    boolean hasLonOffset();
     2313    /**
     2314     * <code>optional int64 lon_offset = 20 [default = 0];</code>
     2315     */
    12512316    long getLonOffset();
    1252    
     2317
    12532318    // optional int32 date_granularity = 18 [default = 1000];
     2319    /**
     2320     * <code>optional int32 date_granularity = 18 [default = 1000];</code>
     2321     *
     2322     * <pre>
     2323     * Granularity of dates, normally represented in units of milliseconds since the 1970 epoch.
     2324     * </pre>
     2325     */
    12542326    boolean hasDateGranularity();
     2327    /**
     2328     * <code>optional int32 date_granularity = 18 [default = 1000];</code>
     2329     *
     2330     * <pre>
     2331     * Granularity of dates, normally represented in units of milliseconds since the 1970 epoch.
     2332     * </pre>
     2333     */
    12552334    int getDateGranularity();
    12562335  }
     2336  /**
     2337   * Protobuf type {@code OSMPBF.PrimitiveBlock}
     2338   */
    12572339  public static final class PrimitiveBlock extends
    12582340      com.google.protobuf.GeneratedMessageLite
    12592341      implements PrimitiveBlockOrBuilder {
    12602342    // Use PrimitiveBlock.newBuilder() to construct.
    1261     private PrimitiveBlock(Builder builder) {
     2343    private PrimitiveBlock(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    12622344      super(builder);
     2345
    12632346    }
    12642347    private PrimitiveBlock(boolean noInit) {}
    1265    
     2348
    12662349    private static final PrimitiveBlock defaultInstance;
    12672350    public static PrimitiveBlock getDefaultInstance() {
    12682351      return defaultInstance;
    12692352    }
    1270    
     2353
    12712354    public PrimitiveBlock getDefaultInstanceForType() {
    12722355      return defaultInstance;
    12732356    }
    1274    
     2357
     2358    private PrimitiveBlock(
     2359        com.google.protobuf.CodedInputStream input,
     2360        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     2361        throws com.google.protobuf.InvalidProtocolBufferException {
     2362      initFields();
     2363      int mutable_bitField0_ = 0;
     2364      try {
     2365        boolean done = false;
     2366        while (!done) {
     2367          int tag = input.readTag();
     2368          switch (tag) {
     2369            case 0:
     2370              done = true;
     2371              break;
     2372            default: {
     2373              if (!parseUnknownField(input,
     2374                                     extensionRegistry, tag)) {
     2375                done = true;
     2376              }
     2377              break;
     2378            }
     2379            case 10: {
     2380              crosby.binary.Osmformat.StringTable.Builder subBuilder = null;
     2381              if (((bitField0_ & 0x00000001) == 0x00000001)) {
     2382                subBuilder = stringtable_.toBuilder();
     2383              }
     2384              stringtable_ = input.readMessage(crosby.binary.Osmformat.StringTable.PARSER, extensionRegistry);
     2385              if (subBuilder != null) {
     2386                subBuilder.mergeFrom(stringtable_);
     2387                stringtable_ = subBuilder.buildPartial();
     2388              }
     2389              bitField0_ |= 0x00000001;
     2390              break;
     2391            }
     2392            case 18: {
     2393              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     2394                primitivegroup_ = new java.util.ArrayList<crosby.binary.Osmformat.PrimitiveGroup>();
     2395                mutable_bitField0_ |= 0x00000002;
     2396              }
     2397              primitivegroup_.add(input.readMessage(crosby.binary.Osmformat.PrimitiveGroup.PARSER, extensionRegistry));
     2398              break;
     2399            }
     2400            case 136: {
     2401              bitField0_ |= 0x00000002;
     2402              granularity_ = input.readInt32();
     2403              break;
     2404            }
     2405            case 144: {
     2406              bitField0_ |= 0x00000010;
     2407              dateGranularity_ = input.readInt32();
     2408              break;
     2409            }
     2410            case 152: {
     2411              bitField0_ |= 0x00000004;
     2412              latOffset_ = input.readInt64();
     2413              break;
     2414            }
     2415            case 160: {
     2416              bitField0_ |= 0x00000008;
     2417              lonOffset_ = input.readInt64();
     2418              break;
     2419            }
     2420          }
     2421        }
     2422      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     2423        throw e.setUnfinishedMessage(this);
     2424      } catch (java.io.IOException e) {
     2425        throw new com.google.protobuf.InvalidProtocolBufferException(
     2426            e.getMessage()).setUnfinishedMessage(this);
     2427      } finally {
     2428        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     2429          primitivegroup_ = java.util.Collections.unmodifiableList(primitivegroup_);
     2430        }
     2431        makeExtensionsImmutable();
     2432      }
     2433    }
     2434    public static com.google.protobuf.Parser<PrimitiveBlock> PARSER =
     2435        new com.google.protobuf.AbstractParser<PrimitiveBlock>() {
     2436      public PrimitiveBlock parsePartialFrom(
     2437          com.google.protobuf.CodedInputStream input,
     2438          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     2439          throws com.google.protobuf.InvalidProtocolBufferException {
     2440        return new PrimitiveBlock(input, extensionRegistry);
     2441      }
     2442    };
     2443
     2444    @java.lang.Override
     2445    public com.google.protobuf.Parser<PrimitiveBlock> getParserForType() {
     2446      return PARSER;
     2447    }
     2448
    12752449    private int bitField0_;
    12762450    // required .OSMPBF.StringTable stringtable = 1;
    12772451    public static final int STRINGTABLE_FIELD_NUMBER = 1;
    12782452    private crosby.binary.Osmformat.StringTable stringtable_;
     2453    /**
     2454     * <code>required .OSMPBF.StringTable stringtable = 1;</code>
     2455     */
    12792456    public boolean hasStringtable() {
    12802457      return ((bitField0_ & 0x00000001) == 0x00000001);
    12812458    }
     2459    /**
     2460     * <code>required .OSMPBF.StringTable stringtable = 1;</code>
     2461     */
    12822462    public crosby.binary.Osmformat.StringTable getStringtable() {
    12832463      return stringtable_;
    12842464    }
    1285    
     2465
    12862466    // repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;
    12872467    public static final int PRIMITIVEGROUP_FIELD_NUMBER = 2;
    12882468    private java.util.List<crosby.binary.Osmformat.PrimitiveGroup> primitivegroup_;
     2469    /**
     2470     * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2471     */
    12892472    public java.util.List<crosby.binary.Osmformat.PrimitiveGroup> getPrimitivegroupList() {
    12902473      return primitivegroup_;
    12912474    }
     2475    /**
     2476     * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2477     */
    12922478    public java.util.List<? extends crosby.binary.Osmformat.PrimitiveGroupOrBuilder>
    12932479        getPrimitivegroupOrBuilderList() {
    12942480      return primitivegroup_;
    12952481    }
     2482    /**
     2483     * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2484     */
    12962485    public int getPrimitivegroupCount() {
    12972486      return primitivegroup_.size();
    12982487    }
     2488    /**
     2489     * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2490     */
    12992491    public crosby.binary.Osmformat.PrimitiveGroup getPrimitivegroup(int index) {
    13002492      return primitivegroup_.get(index);
    13012493    }
     2494    /**
     2495     * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2496     */
    13022497    public crosby.binary.Osmformat.PrimitiveGroupOrBuilder getPrimitivegroupOrBuilder(
    13032498        int index) {
    13042499      return primitivegroup_.get(index);
    13052500    }
    1306    
     2501
    13072502    // optional int32 granularity = 17 [default = 100];
    13082503    public static final int GRANULARITY_FIELD_NUMBER = 17;
    13092504    private int granularity_;
     2505    /**
     2506     * <code>optional int32 granularity = 17 [default = 100];</code>
     2507     *
     2508     * <pre>
     2509     * Granularity, units of nanodegrees, used to store coordinates in this block
     2510     * </pre>
     2511     */
    13102512    public boolean hasGranularity() {
    13112513      return ((bitField0_ & 0x00000002) == 0x00000002);
    13122514    }
     2515    /**
     2516     * <code>optional int32 granularity = 17 [default = 100];</code>
     2517     *
     2518     * <pre>
     2519     * Granularity, units of nanodegrees, used to store coordinates in this block
     2520     * </pre>
     2521     */
    13132522    public int getGranularity() {
    13142523      return granularity_;
    13152524    }
    1316    
     2525
    13172526    // optional int64 lat_offset = 19 [default = 0];
    13182527    public static final int LAT_OFFSET_FIELD_NUMBER = 19;
    13192528    private long latOffset_;
     2529    /**
     2530     * <code>optional int64 lat_offset = 19 [default = 0];</code>
     2531     *
     2532     * <pre>
     2533     * Offset value between the output coordinates coordinates and the granularity grid in unites of nanodegrees.
     2534     * </pre>
     2535     */
    13202536    public boolean hasLatOffset() {
    13212537      return ((bitField0_ & 0x00000004) == 0x00000004);
    13222538    }
     2539    /**
     2540     * <code>optional int64 lat_offset = 19 [default = 0];</code>
     2541     *
     2542     * <pre>
     2543     * Offset value between the output coordinates coordinates and the granularity grid in unites of nanodegrees.
     2544     * </pre>
     2545     */
    13232546    public long getLatOffset() {
    13242547      return latOffset_;
    13252548    }
    1326    
     2549
    13272550    // optional int64 lon_offset = 20 [default = 0];
    13282551    public static final int LON_OFFSET_FIELD_NUMBER = 20;
    13292552    private long lonOffset_;
     2553    /**
     2554     * <code>optional int64 lon_offset = 20 [default = 0];</code>
     2555     */
    13302556    public boolean hasLonOffset() {
    13312557      return ((bitField0_ & 0x00000008) == 0x00000008);
    13322558    }
     2559    /**
     2560     * <code>optional int64 lon_offset = 20 [default = 0];</code>
     2561     */
    13332562    public long getLonOffset() {
    13342563      return lonOffset_;
    13352564    }
    1336    
     2565
    13372566    // optional int32 date_granularity = 18 [default = 1000];
    13382567    public static final int DATE_GRANULARITY_FIELD_NUMBER = 18;
    13392568    private int dateGranularity_;
     2569    /**
     2570     * <code>optional int32 date_granularity = 18 [default = 1000];</code>
     2571     *
     2572     * <pre>
     2573     * Granularity of dates, normally represented in units of milliseconds since the 1970 epoch.
     2574     * </pre>
     2575     */
    13402576    public boolean hasDateGranularity() {
    13412577      return ((bitField0_ & 0x00000010) == 0x00000010);
    13422578    }
     2579    /**
     2580     * <code>optional int32 date_granularity = 18 [default = 1000];</code>
     2581     *
     2582     * <pre>
     2583     * Granularity of dates, normally represented in units of milliseconds since the 1970 epoch.
     2584     * </pre>
     2585     */
    13432586    public int getDateGranularity() {
    13442587      return dateGranularity_;
    13452588    }
    1346    
     2589
    13472590    private void initFields() {
    13482591      stringtable_ = crosby.binary.Osmformat.StringTable.getDefaultInstance();
     
    13572600      byte isInitialized = memoizedIsInitialized;
    13582601      if (isInitialized != -1) return isInitialized == 1;
    1359      
     2602
    13602603      if (!hasStringtable()) {
    13612604        memoizedIsInitialized = 0;
     
    13712614      return true;
    13722615    }
    1373    
     2616
    13742617    public void writeTo(com.google.protobuf.CodedOutputStream output)
    13752618                        throws java.io.IOException {
     
    13942637      }
    13952638    }
    1396    
     2639
    13972640    private int memoizedSerializedSize = -1;
    13982641    public int getSerializedSize() {
    13992642      int size = memoizedSerializedSize;
    14002643      if (size != -1) return size;
    1401    
     2644
    14022645      size = 0;
    14032646      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     
    14282671      return size;
    14292672    }
    1430    
     2673
    14312674    private static final long serialVersionUID = 0L;
    14322675    @java.lang.Override
     
    14352678      return super.writeReplace();
    14362679    }
    1437    
     2680
    14382681    public static crosby.binary.Osmformat.PrimitiveBlock parseFrom(
    14392682        com.google.protobuf.ByteString data)
    14402683        throws com.google.protobuf.InvalidProtocolBufferException {
    1441       return newBuilder().mergeFrom(data).buildParsed();
     2684      return PARSER.parseFrom(data);
    14422685    }
    14432686    public static crosby.binary.Osmformat.PrimitiveBlock parseFrom(
     
    14452688        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    14462689        throws com.google.protobuf.InvalidProtocolBufferException {
    1447       return newBuilder().mergeFrom(data, extensionRegistry)
    1448                .buildParsed();
     2690      return PARSER.parseFrom(data, extensionRegistry);
    14492691    }
    14502692    public static crosby.binary.Osmformat.PrimitiveBlock parseFrom(byte[] data)
    14512693        throws com.google.protobuf.InvalidProtocolBufferException {
    1452       return newBuilder().mergeFrom(data).buildParsed();
     2694      return PARSER.parseFrom(data);
    14532695    }
    14542696    public static crosby.binary.Osmformat.PrimitiveBlock parseFrom(
     
    14562698        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    14572699        throws com.google.protobuf.InvalidProtocolBufferException {
    1458       return newBuilder().mergeFrom(data, extensionRegistry)
    1459                .buildParsed();
     2700      return PARSER.parseFrom(data, extensionRegistry);
    14602701    }
    14612702    public static crosby.binary.Osmformat.PrimitiveBlock parseFrom(java.io.InputStream input)
    14622703        throws java.io.IOException {
    1463       return newBuilder().mergeFrom(input).buildParsed();
     2704      return PARSER.parseFrom(input);
    14642705    }
    14652706    public static crosby.binary.Osmformat.PrimitiveBlock parseFrom(
     
    14672708        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    14682709        throws java.io.IOException {
    1469       return newBuilder().mergeFrom(input, extensionRegistry)
    1470                .buildParsed();
     2710      return PARSER.parseFrom(input, extensionRegistry);
    14712711    }
    14722712    public static crosby.binary.Osmformat.PrimitiveBlock parseDelimitedFrom(java.io.InputStream input)
    14732713        throws java.io.IOException {
    1474       Builder builder = newBuilder();
    1475       if (builder.mergeDelimitedFrom(input)) {
    1476         return builder.buildParsed();
    1477       } else {
    1478         return null;
    1479       }
     2714      return PARSER.parseDelimitedFrom(input);
    14802715    }
    14812716    public static crosby.binary.Osmformat.PrimitiveBlock parseDelimitedFrom(
     
    14832718        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    14842719        throws java.io.IOException {
    1485       Builder builder = newBuilder();
    1486       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    1487         return builder.buildParsed();
    1488       } else {
    1489         return null;
    1490       }
     2720      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    14912721    }
    14922722    public static crosby.binary.Osmformat.PrimitiveBlock parseFrom(
    14932723        com.google.protobuf.CodedInputStream input)
    14942724        throws java.io.IOException {
    1495       return newBuilder().mergeFrom(input).buildParsed();
     2725      return PARSER.parseFrom(input);
    14962726    }
    14972727    public static crosby.binary.Osmformat.PrimitiveBlock parseFrom(
     
    14992729        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    15002730        throws java.io.IOException {
    1501       return newBuilder().mergeFrom(input, extensionRegistry)
    1502                .buildParsed();
    1503     }
    1504    
     2731      return PARSER.parseFrom(input, extensionRegistry);
     2732    }
     2733
    15052734    public static Builder newBuilder() { return Builder.create(); }
    15062735    public Builder newBuilderForType() { return newBuilder(); }
     
    15092738    }
    15102739    public Builder toBuilder() { return newBuilder(this); }
    1511    
     2740
     2741    /**
     2742     * Protobuf type {@code OSMPBF.PrimitiveBlock}
     2743     */
    15122744    public static final class Builder extends
    15132745        com.google.protobuf.GeneratedMessageLite.Builder<
     
    15182750        maybeForceBuilderInitialization();
    15192751      }
    1520      
     2752
    15212753      private void maybeForceBuilderInitialization() {
    15222754      }
     
    15242756        return new Builder();
    15252757      }
    1526      
     2758
    15272759      public Builder clear() {
    15282760        super.clear();
     
    15412773        return this;
    15422774      }
    1543      
     2775
    15442776      public Builder clone() {
    15452777        return create().mergeFrom(buildPartial());
    15462778      }
    1547      
     2779
    15482780      public crosby.binary.Osmformat.PrimitiveBlock getDefaultInstanceForType() {
    15492781        return crosby.binary.Osmformat.PrimitiveBlock.getDefaultInstance();
    15502782      }
    1551      
     2783
    15522784      public crosby.binary.Osmformat.PrimitiveBlock build() {
    15532785        crosby.binary.Osmformat.PrimitiveBlock result = buildPartial();
     
    15572789        return result;
    15582790      }
    1559      
    1560       private crosby.binary.Osmformat.PrimitiveBlock buildParsed()
    1561           throws com.google.protobuf.InvalidProtocolBufferException {
    1562         crosby.binary.Osmformat.PrimitiveBlock result = buildPartial();
    1563         if (!result.isInitialized()) {
    1564           throw newUninitializedMessageException(
    1565             result).asInvalidProtocolBufferException();
    1566         }
    1567         return result;
    1568       }
    1569      
     2791
    15702792      public crosby.binary.Osmformat.PrimitiveBlock buildPartial() {
    15712793        crosby.binary.Osmformat.PrimitiveBlock result = new crosby.binary.Osmformat.PrimitiveBlock(this);
     
    16002822        return result;
    16012823      }
    1602      
     2824
    16032825      public Builder mergeFrom(crosby.binary.Osmformat.PrimitiveBlock other) {
    16042826        if (other == crosby.binary.Osmformat.PrimitiveBlock.getDefaultInstance()) return this;
     
    16302852        return this;
    16312853      }
    1632      
     2854
    16332855      public final boolean isInitialized() {
    16342856        if (!hasStringtable()) {
     
    16442866        return true;
    16452867      }
    1646      
     2868
    16472869      public Builder mergeFrom(
    16482870          com.google.protobuf.CodedInputStream input,
    16492871          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    16502872          throws java.io.IOException {
    1651         while (true) {
    1652           int tag = input.readTag();
    1653           switch (tag) {
    1654             case 0:
    1655              
    1656               return this;
    1657             default: {
    1658               if (!parseUnknownField(input, extensionRegistry, tag)) {
    1659                
    1660                 return this;
    1661               }
    1662               break;
    1663             }
    1664             case 10: {
    1665               crosby.binary.Osmformat.StringTable.Builder subBuilder = crosby.binary.Osmformat.StringTable.newBuilder();
    1666               if (hasStringtable()) {
    1667                 subBuilder.mergeFrom(getStringtable());
    1668               }
    1669               input.readMessage(subBuilder, extensionRegistry);
    1670               setStringtable(subBuilder.buildPartial());
    1671               break;
    1672             }
    1673             case 18: {
    1674               crosby.binary.Osmformat.PrimitiveGroup.Builder subBuilder = crosby.binary.Osmformat.PrimitiveGroup.newBuilder();
    1675               input.readMessage(subBuilder, extensionRegistry);
    1676               addPrimitivegroup(subBuilder.buildPartial());
    1677               break;
    1678             }
    1679             case 136: {
    1680               bitField0_ |= 0x00000004;
    1681               granularity_ = input.readInt32();
    1682               break;
    1683             }
    1684             case 144: {
    1685               bitField0_ |= 0x00000020;
    1686               dateGranularity_ = input.readInt32();
    1687               break;
    1688             }
    1689             case 152: {
    1690               bitField0_ |= 0x00000008;
    1691               latOffset_ = input.readInt64();
    1692               break;
    1693             }
    1694             case 160: {
    1695               bitField0_ |= 0x00000010;
    1696               lonOffset_ = input.readInt64();
    1697               break;
    1698             }
     2873        crosby.binary.Osmformat.PrimitiveBlock parsedMessage = null;
     2874        try {
     2875          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     2876        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     2877          parsedMessage = (crosby.binary.Osmformat.PrimitiveBlock) e.getUnfinishedMessage();
     2878          throw e;
     2879        } finally {
     2880          if (parsedMessage != null) {
     2881            mergeFrom(parsedMessage);
    16992882          }
    17002883        }
    1701       }
    1702      
     2884        return this;
     2885      }
    17032886      private int bitField0_;
    1704      
     2887
    17052888      // required .OSMPBF.StringTable stringtable = 1;
    17062889      private crosby.binary.Osmformat.StringTable stringtable_ = crosby.binary.Osmformat.StringTable.getDefaultInstance();
     2890      /**
     2891       * <code>required .OSMPBF.StringTable stringtable = 1;</code>
     2892       */
    17072893      public boolean hasStringtable() {
    17082894        return ((bitField0_ & 0x00000001) == 0x00000001);
    17092895      }
     2896      /**
     2897       * <code>required .OSMPBF.StringTable stringtable = 1;</code>
     2898       */
    17102899      public crosby.binary.Osmformat.StringTable getStringtable() {
    17112900        return stringtable_;
    17122901      }
     2902      /**
     2903       * <code>required .OSMPBF.StringTable stringtable = 1;</code>
     2904       */
    17132905      public Builder setStringtable(crosby.binary.Osmformat.StringTable value) {
    17142906        if (value == null) {
     
    17162908        }
    17172909        stringtable_ = value;
    1718        
     2910
    17192911        bitField0_ |= 0x00000001;
    17202912        return this;
    17212913      }
     2914      /**
     2915       * <code>required .OSMPBF.StringTable stringtable = 1;</code>
     2916       */
    17222917      public Builder setStringtable(
    17232918          crosby.binary.Osmformat.StringTable.Builder builderForValue) {
    17242919        stringtable_ = builderForValue.build();
    1725        
     2920
    17262921        bitField0_ |= 0x00000001;
    17272922        return this;
    17282923      }
     2924      /**
     2925       * <code>required .OSMPBF.StringTable stringtable = 1;</code>
     2926       */
    17292927      public Builder mergeStringtable(crosby.binary.Osmformat.StringTable value) {
    17302928        if (((bitField0_ & 0x00000001) == 0x00000001) &&
     
    17352933          stringtable_ = value;
    17362934        }
    1737        
     2935
    17382936        bitField0_ |= 0x00000001;
    17392937        return this;
    17402938      }
     2939      /**
     2940       * <code>required .OSMPBF.StringTable stringtable = 1;</code>
     2941       */
    17412942      public Builder clearStringtable() {
    17422943        stringtable_ = crosby.binary.Osmformat.StringTable.getDefaultInstance();
    1743        
     2944
    17442945        bitField0_ = (bitField0_ & ~0x00000001);
    17452946        return this;
    17462947      }
    1747      
     2948
    17482949      // repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;
    17492950      private java.util.List<crosby.binary.Osmformat.PrimitiveGroup> primitivegroup_ =
     
    17552956         }
    17562957      }
    1757      
     2958
     2959      /**
     2960       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2961       */
    17582962      public java.util.List<crosby.binary.Osmformat.PrimitiveGroup> getPrimitivegroupList() {
    17592963        return java.util.Collections.unmodifiableList(primitivegroup_);
    17602964      }
     2965      /**
     2966       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2967       */
    17612968      public int getPrimitivegroupCount() {
    17622969        return primitivegroup_.size();
    17632970      }
     2971      /**
     2972       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2973       */
    17642974      public crosby.binary.Osmformat.PrimitiveGroup getPrimitivegroup(int index) {
    17652975        return primitivegroup_.get(index);
    17662976      }
     2977      /**
     2978       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2979       */
    17672980      public Builder setPrimitivegroup(
    17682981          int index, crosby.binary.Osmformat.PrimitiveGroup value) {
     
    17722985        ensurePrimitivegroupIsMutable();
    17732986        primitivegroup_.set(index, value);
    1774        
    1775         return this;
    1776       }
     2987
     2988        return this;
     2989      }
     2990      /**
     2991       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     2992       */
    17772993      public Builder setPrimitivegroup(
    17782994          int index, crosby.binary.Osmformat.PrimitiveGroup.Builder builderForValue) {
    17792995        ensurePrimitivegroupIsMutable();
    17802996        primitivegroup_.set(index, builderForValue.build());
    1781        
    1782         return this;
    1783       }
     2997
     2998        return this;
     2999      }
     3000      /**
     3001       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     3002       */
    17843003      public Builder addPrimitivegroup(crosby.binary.Osmformat.PrimitiveGroup value) {
    17853004        if (value == null) {
     
    17883007        ensurePrimitivegroupIsMutable();
    17893008        primitivegroup_.add(value);
    1790        
    1791         return this;
    1792       }
     3009
     3010        return this;
     3011      }
     3012      /**
     3013       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     3014       */
    17933015      public Builder addPrimitivegroup(
    17943016          int index, crosby.binary.Osmformat.PrimitiveGroup value) {
     
    17983020        ensurePrimitivegroupIsMutable();
    17993021        primitivegroup_.add(index, value);
    1800        
    1801         return this;
    1802       }
     3022
     3023        return this;
     3024      }
     3025      /**
     3026       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     3027       */
    18033028      public Builder addPrimitivegroup(
    18043029          crosby.binary.Osmformat.PrimitiveGroup.Builder builderForValue) {
    18053030        ensurePrimitivegroupIsMutable();
    18063031        primitivegroup_.add(builderForValue.build());
    1807        
    1808         return this;
    1809       }
     3032
     3033        return this;
     3034      }
     3035      /**
     3036       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     3037       */
    18103038      public Builder addPrimitivegroup(
    18113039          int index, crosby.binary.Osmformat.PrimitiveGroup.Builder builderForValue) {
    18123040        ensurePrimitivegroupIsMutable();
    18133041        primitivegroup_.add(index, builderForValue.build());
    1814        
    1815         return this;
    1816       }
     3042
     3043        return this;
     3044      }
     3045      /**
     3046       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     3047       */
    18173048      public Builder addAllPrimitivegroup(
    18183049          java.lang.Iterable<? extends crosby.binary.Osmformat.PrimitiveGroup> values) {
    18193050        ensurePrimitivegroupIsMutable();
    18203051        super.addAll(values, primitivegroup_);
    1821        
    1822         return this;
    1823       }
     3052
     3053        return this;
     3054      }
     3055      /**
     3056       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     3057       */
    18243058      public Builder clearPrimitivegroup() {
    18253059        primitivegroup_ = java.util.Collections.emptyList();
    18263060        bitField0_ = (bitField0_ & ~0x00000002);
    1827        
    1828         return this;
    1829       }
     3061
     3062        return this;
     3063      }
     3064      /**
     3065       * <code>repeated .OSMPBF.PrimitiveGroup primitivegroup = 2;</code>
     3066       */
    18303067      public Builder removePrimitivegroup(int index) {
    18313068        ensurePrimitivegroupIsMutable();
    18323069        primitivegroup_.remove(index);
    1833        
    1834         return this;
    1835       }
    1836      
     3070
     3071        return this;
     3072      }
     3073
    18373074      // optional int32 granularity = 17 [default = 100];
    18383075      private int granularity_ = 100;
     3076      /**
     3077       * <code>optional int32 granularity = 17 [default = 100];</code>
     3078       *
     3079       * <pre>
     3080       * Granularity, units of nanodegrees, used to store coordinates in this block
     3081       * </pre>
     3082       */
    18393083      public boolean hasGranularity() {
    18403084        return ((bitField0_ & 0x00000004) == 0x00000004);
    18413085      }
     3086      /**
     3087       * <code>optional int32 granularity = 17 [default = 100];</code>
     3088       *
     3089       * <pre>
     3090       * Granularity, units of nanodegrees, used to store coordinates in this block
     3091       * </pre>
     3092       */
    18423093      public int getGranularity() {
    18433094        return granularity_;
    18443095      }
     3096      /**
     3097       * <code>optional int32 granularity = 17 [default = 100];</code>
     3098       *
     3099       * <pre>
     3100       * Granularity, units of nanodegrees, used to store coordinates in this block
     3101       * </pre>
     3102       */
    18453103      public Builder setGranularity(int value) {
    18463104        bitField0_ |= 0x00000004;
     
    18493107        return this;
    18503108      }
     3109      /**
     3110       * <code>optional int32 granularity = 17 [default = 100];</code>
     3111       *
     3112       * <pre>
     3113       * Granularity, units of nanodegrees, used to store coordinates in this block
     3114       * </pre>
     3115       */
    18513116      public Builder clearGranularity() {
    18523117        bitField0_ = (bitField0_ & ~0x00000004);
     
    18553120        return this;
    18563121      }
    1857      
     3122
    18583123      // optional int64 lat_offset = 19 [default = 0];
    18593124      private long latOffset_ ;
     3125      /**
     3126       * <code>optional int64 lat_offset = 19 [default = 0];</code>
     3127       *
     3128       * <pre>
     3129       * Offset value between the output coordinates coordinates and the granularity grid in unites of nanodegrees.
     3130       * </pre>
     3131       */
    18603132      public boolean hasLatOffset() {
    18613133        return ((bitField0_ & 0x00000008) == 0x00000008);
    18623134      }
     3135      /**
     3136       * <code>optional int64 lat_offset = 19 [default = 0];</code>
     3137       *
     3138       * <pre>
     3139       * Offset value between the output coordinates coordinates and the granularity grid in unites of nanodegrees.
     3140       * </pre>
     3141       */
    18633142      public long getLatOffset() {
    18643143        return latOffset_;
    18653144      }
     3145      /**
     3146       * <code>optional int64 lat_offset = 19 [default = 0];</code>
     3147       *
     3148       * <pre>
     3149       * Offset value between the output coordinates coordinates and the granularity grid in unites of nanodegrees.
     3150       * </pre>
     3151       */
    18663152      public Builder setLatOffset(long value) {
    18673153        bitField0_ |= 0x00000008;
     
    18703156        return this;
    18713157      }
     3158      /**
     3159       * <code>optional int64 lat_offset = 19 [default = 0];</code>
     3160       *
     3161       * <pre>
     3162       * Offset value between the output coordinates coordinates and the granularity grid in unites of nanodegrees.
     3163       * </pre>
     3164       */
    18723165      public Builder clearLatOffset() {
    18733166        bitField0_ = (bitField0_ & ~0x00000008);
     
    18763169        return this;
    18773170      }
    1878      
     3171
    18793172      // optional int64 lon_offset = 20 [default = 0];
    18803173      private long lonOffset_ ;
     3174      /**
     3175       * <code>optional int64 lon_offset = 20 [default = 0];</code>
     3176       */
    18813177      public boolean hasLonOffset() {
    18823178        return ((bitField0_ & 0x00000010) == 0x00000010);
    18833179      }
     3180      /**
     3181       * <code>optional int64 lon_offset = 20 [default = 0];</code>
     3182       */
    18843183      public long getLonOffset() {
    18853184        return lonOffset_;
    18863185      }
     3186      /**
     3187       * <code>optional int64 lon_offset = 20 [default = 0];</code>
     3188       */
    18873189      public Builder setLonOffset(long value) {
    18883190        bitField0_ |= 0x00000010;
     
    18913193        return this;
    18923194      }
     3195      /**
     3196       * <code>optional int64 lon_offset = 20 [default = 0];</code>
     3197       */
    18933198      public Builder clearLonOffset() {
    18943199        bitField0_ = (bitField0_ & ~0x00000010);
     
    18973202        return this;
    18983203      }
    1899      
     3204
    19003205      // optional int32 date_granularity = 18 [default = 1000];
    19013206      private int dateGranularity_ = 1000;
     3207      /**
     3208       * <code>optional int32 date_granularity = 18 [default = 1000];</code>
     3209       *
     3210       * <pre>
     3211       * Granularity of dates, normally represented in units of milliseconds since the 1970 epoch.
     3212       * </pre>
     3213       */
    19023214      public boolean hasDateGranularity() {
    19033215        return ((bitField0_ & 0x00000020) == 0x00000020);
    19043216      }
     3217      /**
     3218       * <code>optional int32 date_granularity = 18 [default = 1000];</code>
     3219       *
     3220       * <pre>
     3221       * Granularity of dates, normally represented in units of milliseconds since the 1970 epoch.
     3222       * </pre>
     3223       */
    19053224      public int getDateGranularity() {
    19063225        return dateGranularity_;
    19073226      }
     3227      /**
     3228       * <code>optional int32 date_granularity = 18 [default = 1000];</code>
     3229       *
     3230       * <pre>
     3231       * Granularity of dates, normally represented in units of milliseconds since the 1970 epoch.
     3232       * </pre>
     3233       */
    19083234      public Builder setDateGranularity(int value) {
    19093235        bitField0_ |= 0x00000020;
     
    19123238        return this;
    19133239      }
     3240      /**
     3241       * <code>optional int32 date_granularity = 18 [default = 1000];</code>
     3242       *
     3243       * <pre>
     3244       * Granularity of dates, normally represented in units of milliseconds since the 1970 epoch.
     3245       * </pre>
     3246       */
    19143247      public Builder clearDateGranularity() {
    19153248        bitField0_ = (bitField0_ & ~0x00000020);
     
    19183251        return this;
    19193252      }
    1920      
     3253
    19213254      // @@protoc_insertion_point(builder_scope:OSMPBF.PrimitiveBlock)
    19223255    }
    1923    
     3256
    19243257    static {
    19253258      defaultInstance = new PrimitiveBlock(true);
    19263259      defaultInstance.initFields();
    19273260    }
    1928    
     3261
    19293262    // @@protoc_insertion_point(class_scope:OSMPBF.PrimitiveBlock)
    19303263  }
    1931  
     3264
    19323265  public interface PrimitiveGroupOrBuilder
    19333266      extends com.google.protobuf.MessageLiteOrBuilder {
    1934    
     3267
    19353268    // repeated .OSMPBF.Node nodes = 1;
     3269    /**
     3270     * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3271     */
    19363272    java.util.List<crosby.binary.Osmformat.Node>
    19373273        getNodesList();
     3274    /**
     3275     * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3276     */
    19383277    crosby.binary.Osmformat.Node getNodes(int index);
     3278    /**
     3279     * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3280     */
    19393281    int getNodesCount();
    1940    
     3282
    19413283    // optional .OSMPBF.DenseNodes dense = 2;
     3284    /**
     3285     * <code>optional .OSMPBF.DenseNodes dense = 2;</code>
     3286     */
    19423287    boolean hasDense();
     3288    /**
     3289     * <code>optional .OSMPBF.DenseNodes dense = 2;</code>
     3290     */
    19433291    crosby.binary.Osmformat.DenseNodes getDense();
    1944    
     3292
    19453293    // repeated .OSMPBF.Way ways = 3;
     3294    /**
     3295     * <code>repeated .OSMPBF.Way ways = 3;</code>
     3296     */
    19463297    java.util.List<crosby.binary.Osmformat.Way>
    19473298        getWaysList();
     3299    /**
     3300     * <code>repeated .OSMPBF.Way ways = 3;</code>
     3301     */
    19483302    crosby.binary.Osmformat.Way getWays(int index);
     3303    /**
     3304     * <code>repeated .OSMPBF.Way ways = 3;</code>
     3305     */
    19493306    int getWaysCount();
    1950    
     3307
    19513308    // repeated .OSMPBF.Relation relations = 4;
     3309    /**
     3310     * <code>repeated .OSMPBF.Relation relations = 4;</code>
     3311     */
    19523312    java.util.List<crosby.binary.Osmformat.Relation>
    19533313        getRelationsList();
     3314    /**
     3315     * <code>repeated .OSMPBF.Relation relations = 4;</code>
     3316     */
    19543317    crosby.binary.Osmformat.Relation getRelations(int index);
     3318    /**
     3319     * <code>repeated .OSMPBF.Relation relations = 4;</code>
     3320     */
    19553321    int getRelationsCount();
    1956    
     3322
    19573323    // repeated .OSMPBF.ChangeSet changesets = 5;
     3324    /**
     3325     * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     3326     */
    19583327    java.util.List<crosby.binary.Osmformat.ChangeSet>
    19593328        getChangesetsList();
     3329    /**
     3330     * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     3331     */
    19603332    crosby.binary.Osmformat.ChangeSet getChangesets(int index);
     3333    /**
     3334     * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     3335     */
    19613336    int getChangesetsCount();
    19623337  }
     3338  /**
     3339   * Protobuf type {@code OSMPBF.PrimitiveGroup}
     3340   *
     3341   * <pre>
     3342   * Group of OSMPrimitives. All primitives in a group must be the same type.
     3343   * </pre>
     3344   */
    19633345  public static final class PrimitiveGroup extends
    19643346      com.google.protobuf.GeneratedMessageLite
    19653347      implements PrimitiveGroupOrBuilder {
    19663348    // Use PrimitiveGroup.newBuilder() to construct.
    1967     private PrimitiveGroup(Builder builder) {
     3349    private PrimitiveGroup(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    19683350      super(builder);
     3351
    19693352    }
    19703353    private PrimitiveGroup(boolean noInit) {}
    1971    
     3354
    19723355    private static final PrimitiveGroup defaultInstance;
    19733356    public static PrimitiveGroup getDefaultInstance() {
    19743357      return defaultInstance;
    19753358    }
    1976    
     3359
    19773360    public PrimitiveGroup getDefaultInstanceForType() {
    19783361      return defaultInstance;
    19793362    }
    1980    
     3363
     3364    private PrimitiveGroup(
     3365        com.google.protobuf.CodedInputStream input,
     3366        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     3367        throws com.google.protobuf.InvalidProtocolBufferException {
     3368      initFields();
     3369      int mutable_bitField0_ = 0;
     3370      try {
     3371        boolean done = false;
     3372        while (!done) {
     3373          int tag = input.readTag();
     3374          switch (tag) {
     3375            case 0:
     3376              done = true;
     3377              break;
     3378            default: {
     3379              if (!parseUnknownField(input,
     3380                                     extensionRegistry, tag)) {
     3381                done = true;
     3382              }
     3383              break;
     3384            }
     3385            case 10: {
     3386              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
     3387                nodes_ = new java.util.ArrayList<crosby.binary.Osmformat.Node>();
     3388                mutable_bitField0_ |= 0x00000001;
     3389              }
     3390              nodes_.add(input.readMessage(crosby.binary.Osmformat.Node.PARSER, extensionRegistry));
     3391              break;
     3392            }
     3393            case 18: {
     3394              crosby.binary.Osmformat.DenseNodes.Builder subBuilder = null;
     3395              if (((bitField0_ & 0x00000001) == 0x00000001)) {
     3396                subBuilder = dense_.toBuilder();
     3397              }
     3398              dense_ = input.readMessage(crosby.binary.Osmformat.DenseNodes.PARSER, extensionRegistry);
     3399              if (subBuilder != null) {
     3400                subBuilder.mergeFrom(dense_);
     3401                dense_ = subBuilder.buildPartial();
     3402              }
     3403              bitField0_ |= 0x00000001;
     3404              break;
     3405            }
     3406            case 26: {
     3407              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     3408                ways_ = new java.util.ArrayList<crosby.binary.Osmformat.Way>();
     3409                mutable_bitField0_ |= 0x00000004;
     3410              }
     3411              ways_.add(input.readMessage(crosby.binary.Osmformat.Way.PARSER, extensionRegistry));
     3412              break;
     3413            }
     3414            case 34: {
     3415              if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
     3416                relations_ = new java.util.ArrayList<crosby.binary.Osmformat.Relation>();
     3417                mutable_bitField0_ |= 0x00000008;
     3418              }
     3419              relations_.add(input.readMessage(crosby.binary.Osmformat.Relation.PARSER, extensionRegistry));
     3420              break;
     3421            }
     3422            case 42: {
     3423              if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
     3424                changesets_ = new java.util.ArrayList<crosby.binary.Osmformat.ChangeSet>();
     3425                mutable_bitField0_ |= 0x00000010;
     3426              }
     3427              changesets_.add(input.readMessage(crosby.binary.Osmformat.ChangeSet.PARSER, extensionRegistry));
     3428              break;
     3429            }
     3430          }
     3431        }
     3432      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     3433        throw e.setUnfinishedMessage(this);
     3434      } catch (java.io.IOException e) {
     3435        throw new com.google.protobuf.InvalidProtocolBufferException(
     3436            e.getMessage()).setUnfinishedMessage(this);
     3437      } finally {
     3438        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
     3439          nodes_ = java.util.Collections.unmodifiableList(nodes_);
     3440        }
     3441        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     3442          ways_ = java.util.Collections.unmodifiableList(ways_);
     3443        }
     3444        if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
     3445          relations_ = java.util.Collections.unmodifiableList(relations_);
     3446        }
     3447        if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
     3448          changesets_ = java.util.Collections.unmodifiableList(changesets_);
     3449        }
     3450        makeExtensionsImmutable();
     3451      }
     3452    }
     3453    public static com.google.protobuf.Parser<PrimitiveGroup> PARSER =
     3454        new com.google.protobuf.AbstractParser<PrimitiveGroup>() {
     3455      public PrimitiveGroup parsePartialFrom(
     3456          com.google.protobuf.CodedInputStream input,
     3457          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     3458          throws com.google.protobuf.InvalidProtocolBufferException {
     3459        return new PrimitiveGroup(input, extensionRegistry);
     3460      }
     3461    };
     3462
     3463    @java.lang.Override
     3464    public com.google.protobuf.Parser<PrimitiveGroup> getParserForType() {
     3465      return PARSER;
     3466    }
     3467
    19813468    private int bitField0_;
    19823469    // repeated .OSMPBF.Node nodes = 1;
    19833470    public static final int NODES_FIELD_NUMBER = 1;
    19843471    private java.util.List<crosby.binary.Osmformat.Node> nodes_;
     3472    /**
     3473     * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3474     */
    19853475    public java.util.List<crosby.binary.Osmformat.Node> getNodesList() {
    19863476      return nodes_;
    19873477    }
     3478    /**
     3479     * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3480     */
    19883481    public java.util.List<? extends crosby.binary.Osmformat.NodeOrBuilder>
    19893482        getNodesOrBuilderList() {
    19903483      return nodes_;
    19913484    }
     3485    /**
     3486     * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3487     */
    19923488    public int getNodesCount() {
    19933489      return nodes_.size();
    19943490    }
     3491    /**
     3492     * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3493     */
    19953494    public crosby.binary.Osmformat.Node getNodes(int index) {
    19963495      return nodes_.get(index);
    19973496    }
     3497    /**
     3498     * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3499     */
    19983500    public crosby.binary.Osmformat.NodeOrBuilder getNodesOrBuilder(
    19993501        int index) {
    20003502      return nodes_.get(index);
    20013503    }
    2002    
     3504
    20033505    // optional .OSMPBF.DenseNodes dense = 2;
    20043506    public static final int DENSE_FIELD_NUMBER = 2;
    20053507    private crosby.binary.Osmformat.DenseNodes dense_;
     3508    /**
     3509     * <code>optional .OSMPBF.DenseNodes dense = 2;</code>
     3510     */
    20063511    public boolean hasDense() {
    20073512      return ((bitField0_ & 0x00000001) == 0x00000001);
    20083513    }
     3514    /**
     3515     * <code>optional .OSMPBF.DenseNodes dense = 2;</code>
     3516     */
    20093517    public crosby.binary.Osmformat.DenseNodes getDense() {
    20103518      return dense_;
    20113519    }
    2012    
     3520
    20133521    // repeated .OSMPBF.Way ways = 3;
    20143522    public static final int WAYS_FIELD_NUMBER = 3;
    20153523    private java.util.List<crosby.binary.Osmformat.Way> ways_;
     3524    /**
     3525     * <code>repeated .OSMPBF.Way ways = 3;</code>
     3526     */
    20163527    public java.util.List<crosby.binary.Osmformat.Way> getWaysList() {
    20173528      return ways_;
    20183529    }
     3530    /**
     3531     * <code>repeated .OSMPBF.Way ways = 3;</code>
     3532     */
    20193533    public java.util.List<? extends crosby.binary.Osmformat.WayOrBuilder>
    20203534        getWaysOrBuilderList() {
    20213535      return ways_;
    20223536    }
     3537    /**
     3538     * <code>repeated .OSMPBF.Way ways = 3;</code>
     3539     */
    20233540    public int getWaysCount() {
    20243541      return ways_.size();
    20253542    }
     3543    /**
     3544     * <code>repeated .OSMPBF.Way ways = 3;</code>
     3545     */
    20263546    public crosby.binary.Osmformat.Way getWays(int index) {
    20273547      return ways_.get(index);
    20283548    }
     3549    /**
     3550     * <code>repeated .OSMPBF.Way ways = 3;</code>
     3551     */
    20293552    public crosby.binary.Osmformat.WayOrBuilder getWaysOrBuilder(
    20303553        int index) {
    20313554      return ways_.get(index);
    20323555    }
    2033    
     3556
    20343557    // repeated .OSMPBF.Relation relations = 4;
    20353558    public static final int RELATIONS_FIELD_NUMBER = 4;
    20363559    private java.util.List<crosby.binary.Osmformat.Relation> relations_;
     3560    /**
     3561     * <code>repeated .OSMPBF.Relation relations = 4;</code>
     3562     */
    20373563    public java.util.List<crosby.binary.Osmformat.Relation> getRelationsList() {
    20383564      return relations_;
    20393565    }
     3566    /**
     3567     * <code>repeated .OSMPBF.Relation relations = 4;</code>
     3568     */
    20403569    public java.util.List<? extends crosby.binary.Osmformat.RelationOrBuilder>
    20413570        getRelationsOrBuilderList() {
    20423571      return relations_;
    20433572    }
     3573    /**
     3574     * <code>repeated .OSMPBF.Relation relations = 4;</code>
     3575     */
    20443576    public int getRelationsCount() {
    20453577      return relations_.size();
    20463578    }
     3579    /**
     3580     * <code>repeated .OSMPBF.Relation relations = 4;</code>
     3581     */
    20473582    public crosby.binary.Osmformat.Relation getRelations(int index) {
    20483583      return relations_.get(index);
    20493584    }
     3585    /**
     3586     * <code>repeated .OSMPBF.Relation relations = 4;</code>
     3587     */
    20503588    public crosby.binary.Osmformat.RelationOrBuilder getRelationsOrBuilder(
    20513589        int index) {
    20523590      return relations_.get(index);
    20533591    }
    2054    
     3592
    20553593    // repeated .OSMPBF.ChangeSet changesets = 5;
    20563594    public static final int CHANGESETS_FIELD_NUMBER = 5;
    20573595    private java.util.List<crosby.binary.Osmformat.ChangeSet> changesets_;
     3596    /**
     3597     * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     3598     */
    20583599    public java.util.List<crosby.binary.Osmformat.ChangeSet> getChangesetsList() {
    20593600      return changesets_;
    20603601    }
     3602    /**
     3603     * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     3604     */
    20613605    public java.util.List<? extends crosby.binary.Osmformat.ChangeSetOrBuilder>
    20623606        getChangesetsOrBuilderList() {
    20633607      return changesets_;
    20643608    }
     3609    /**
     3610     * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     3611     */
    20653612    public int getChangesetsCount() {
    20663613      return changesets_.size();
    20673614    }
     3615    /**
     3616     * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     3617     */
    20683618    public crosby.binary.Osmformat.ChangeSet getChangesets(int index) {
    20693619      return changesets_.get(index);
    20703620    }
     3621    /**
     3622     * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     3623     */
    20713624    public crosby.binary.Osmformat.ChangeSetOrBuilder getChangesetsOrBuilder(
    20723625        int index) {
    20733626      return changesets_.get(index);
    20743627    }
    2075    
     3628
    20763629    private void initFields() {
    20773630      nodes_ = java.util.Collections.emptyList();
     
    20853638      byte isInitialized = memoizedIsInitialized;
    20863639      if (isInitialized != -1) return isInitialized == 1;
    2087      
     3640
    20883641      for (int i = 0; i < getNodesCount(); i++) {
    20893642        if (!getNodes(i).isInitialized()) {
     
    21133666      return true;
    21143667    }
    2115    
     3668
    21163669    public void writeTo(com.google.protobuf.CodedOutputStream output)
    21173670                        throws java.io.IOException {
     
    21333686      }
    21343687    }
    2135    
     3688
    21363689    private int memoizedSerializedSize = -1;
    21373690    public int getSerializedSize() {
    21383691      int size = memoizedSerializedSize;
    21393692      if (size != -1) return size;
    2140    
     3693
    21413694      size = 0;
    21423695      for (int i = 0; i < nodes_.size(); i++) {
     
    21633716      return size;
    21643717    }
    2165    
     3718
    21663719    private static final long serialVersionUID = 0L;
    21673720    @java.lang.Override
     
    21703723      return super.writeReplace();
    21713724    }
    2172    
     3725
    21733726    public static crosby.binary.Osmformat.PrimitiveGroup parseFrom(
    21743727        com.google.protobuf.ByteString data)
    21753728        throws com.google.protobuf.InvalidProtocolBufferException {
    2176       return newBuilder().mergeFrom(data).buildParsed();
     3729      return PARSER.parseFrom(data);
    21773730    }
    21783731    public static crosby.binary.Osmformat.PrimitiveGroup parseFrom(
     
    21803733        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    21813734        throws com.google.protobuf.InvalidProtocolBufferException {
    2182       return newBuilder().mergeFrom(data, extensionRegistry)
    2183                .buildParsed();
     3735      return PARSER.parseFrom(data, extensionRegistry);
    21843736    }
    21853737    public static crosby.binary.Osmformat.PrimitiveGroup parseFrom(byte[] data)
    21863738        throws com.google.protobuf.InvalidProtocolBufferException {
    2187       return newBuilder().mergeFrom(data).buildParsed();
     3739      return PARSER.parseFrom(data);
    21883740    }
    21893741    public static crosby.binary.Osmformat.PrimitiveGroup parseFrom(
     
    21913743        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    21923744        throws com.google.protobuf.InvalidProtocolBufferException {
    2193       return newBuilder().mergeFrom(data, extensionRegistry)
    2194                .buildParsed();
     3745      return PARSER.parseFrom(data, extensionRegistry);
    21953746    }
    21963747    public static crosby.binary.Osmformat.PrimitiveGroup parseFrom(java.io.InputStream input)
    21973748        throws java.io.IOException {
    2198       return newBuilder().mergeFrom(input).buildParsed();
     3749      return PARSER.parseFrom(input);
    21993750    }
    22003751    public static crosby.binary.Osmformat.PrimitiveGroup parseFrom(
     
    22023753        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    22033754        throws java.io.IOException {
    2204       return newBuilder().mergeFrom(input, extensionRegistry)
    2205                .buildParsed();
     3755      return PARSER.parseFrom(input, extensionRegistry);
    22063756    }
    22073757    public static crosby.binary.Osmformat.PrimitiveGroup parseDelimitedFrom(java.io.InputStream input)
    22083758        throws java.io.IOException {
    2209       Builder builder = newBuilder();
    2210       if (builder.mergeDelimitedFrom(input)) {
    2211         return builder.buildParsed();
    2212       } else {
    2213         return null;
    2214       }
     3759      return PARSER.parseDelimitedFrom(input);
    22153760    }
    22163761    public static crosby.binary.Osmformat.PrimitiveGroup parseDelimitedFrom(
     
    22183763        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    22193764        throws java.io.IOException {
    2220       Builder builder = newBuilder();
    2221       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    2222         return builder.buildParsed();
    2223       } else {
    2224         return null;
    2225       }
     3765      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    22263766    }
    22273767    public static crosby.binary.Osmformat.PrimitiveGroup parseFrom(
    22283768        com.google.protobuf.CodedInputStream input)
    22293769        throws java.io.IOException {
    2230       return newBuilder().mergeFrom(input).buildParsed();
     3770      return PARSER.parseFrom(input);
    22313771    }
    22323772    public static crosby.binary.Osmformat.PrimitiveGroup parseFrom(
     
    22343774        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    22353775        throws java.io.IOException {
    2236       return newBuilder().mergeFrom(input, extensionRegistry)
    2237                .buildParsed();
    2238     }
    2239    
     3776      return PARSER.parseFrom(input, extensionRegistry);
     3777    }
     3778
    22403779    public static Builder newBuilder() { return Builder.create(); }
    22413780    public Builder newBuilderForType() { return newBuilder(); }
     
    22443783    }
    22453784    public Builder toBuilder() { return newBuilder(this); }
    2246    
     3785
     3786    /**
     3787     * Protobuf type {@code OSMPBF.PrimitiveGroup}
     3788     *
     3789     * <pre>
     3790     * Group of OSMPrimitives. All primitives in a group must be the same type.
     3791     * </pre>
     3792     */
    22473793    public static final class Builder extends
    22483794        com.google.protobuf.GeneratedMessageLite.Builder<
     
    22533799        maybeForceBuilderInitialization();
    22543800      }
    2255      
     3801
    22563802      private void maybeForceBuilderInitialization() {
    22573803      }
     
    22593805        return new Builder();
    22603806      }
    2261      
     3807
    22623808      public Builder clear() {
    22633809        super.clear();
     
    22743820        return this;
    22753821      }
    2276      
     3822
    22773823      public Builder clone() {
    22783824        return create().mergeFrom(buildPartial());
    22793825      }
    2280      
     3826
    22813827      public crosby.binary.Osmformat.PrimitiveGroup getDefaultInstanceForType() {
    22823828        return crosby.binary.Osmformat.PrimitiveGroup.getDefaultInstance();
    22833829      }
    2284      
     3830
    22853831      public crosby.binary.Osmformat.PrimitiveGroup build() {
    22863832        crosby.binary.Osmformat.PrimitiveGroup result = buildPartial();
     
    22903836        return result;
    22913837      }
    2292      
    2293       private crosby.binary.Osmformat.PrimitiveGroup buildParsed()
    2294           throws com.google.protobuf.InvalidProtocolBufferException {
    2295         crosby.binary.Osmformat.PrimitiveGroup result = buildPartial();
    2296         if (!result.isInitialized()) {
    2297           throw newUninitializedMessageException(
    2298             result).asInvalidProtocolBufferException();
    2299         }
    2300         return result;
    2301       }
    2302      
     3838
    23033839      public crosby.binary.Osmformat.PrimitiveGroup buildPartial() {
    23043840        crosby.binary.Osmformat.PrimitiveGroup result = new crosby.binary.Osmformat.PrimitiveGroup(this);
     
    23323868        return result;
    23333869      }
    2334      
     3870
    23353871      public Builder mergeFrom(crosby.binary.Osmformat.PrimitiveGroup other) {
    23363872        if (other == crosby.binary.Osmformat.PrimitiveGroup.getDefaultInstance()) return this;
     
    23803916        return this;
    23813917      }
    2382      
     3918
    23833919      public final boolean isInitialized() {
    23843920        for (int i = 0; i < getNodesCount(); i++) {
     
    24083944        return true;
    24093945      }
    2410      
     3946
    24113947      public Builder mergeFrom(
    24123948          com.google.protobuf.CodedInputStream input,
    24133949          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    24143950          throws java.io.IOException {
    2415         while (true) {
    2416           int tag = input.readTag();
    2417           switch (tag) {
    2418             case 0:
    2419              
    2420               return this;
    2421             default: {
    2422               if (!parseUnknownField(input, extensionRegistry, tag)) {
    2423                
    2424                 return this;
    2425               }
    2426               break;
    2427             }
    2428             case 10: {
    2429               crosby.binary.Osmformat.Node.Builder subBuilder = crosby.binary.Osmformat.Node.newBuilder();
    2430               input.readMessage(subBuilder, extensionRegistry);
    2431               addNodes(subBuilder.buildPartial());
    2432               break;
    2433             }
    2434             case 18: {
    2435               crosby.binary.Osmformat.DenseNodes.Builder subBuilder = crosby.binary.Osmformat.DenseNodes.newBuilder();
    2436               if (hasDense()) {
    2437                 subBuilder.mergeFrom(getDense());
    2438               }
    2439               input.readMessage(subBuilder, extensionRegistry);
    2440               setDense(subBuilder.buildPartial());
    2441               break;
    2442             }
    2443             case 26: {
    2444               crosby.binary.Osmformat.Way.Builder subBuilder = crosby.binary.Osmformat.Way.newBuilder();
    2445               input.readMessage(subBuilder, extensionRegistry);
    2446               addWays(subBuilder.buildPartial());
    2447               break;
    2448             }
    2449             case 34: {
    2450               crosby.binary.Osmformat.Relation.Builder subBuilder = crosby.binary.Osmformat.Relation.newBuilder();
    2451               input.readMessage(subBuilder, extensionRegistry);
    2452               addRelations(subBuilder.buildPartial());
    2453               break;
    2454             }
    2455             case 42: {
    2456               crosby.binary.Osmformat.ChangeSet.Builder subBuilder = crosby.binary.Osmformat.ChangeSet.newBuilder();
    2457               input.readMessage(subBuilder, extensionRegistry);
    2458               addChangesets(subBuilder.buildPartial());
    2459               break;
    2460             }
     3951        crosby.binary.Osmformat.PrimitiveGroup parsedMessage = null;
     3952        try {
     3953          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     3954        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     3955          parsedMessage = (crosby.binary.Osmformat.PrimitiveGroup) e.getUnfinishedMessage();
     3956          throw e;
     3957        } finally {
     3958          if (parsedMessage != null) {
     3959            mergeFrom(parsedMessage);
    24613960          }
    24623961        }
    2463       }
    2464      
     3962        return this;
     3963      }
    24653964      private int bitField0_;
    2466      
     3965
    24673966      // repeated .OSMPBF.Node nodes = 1;
    24683967      private java.util.List<crosby.binary.Osmformat.Node> nodes_ =
     
    24743973         }
    24753974      }
    2476      
     3975
     3976      /**
     3977       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3978       */
    24773979      public java.util.List<crosby.binary.Osmformat.Node> getNodesList() {
    24783980        return java.util.Collections.unmodifiableList(nodes_);
    24793981      }
     3982      /**
     3983       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3984       */
    24803985      public int getNodesCount() {
    24813986        return nodes_.size();
    24823987      }
     3988      /**
     3989       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3990       */
    24833991      public crosby.binary.Osmformat.Node getNodes(int index) {
    24843992        return nodes_.get(index);
    24853993      }
     3994      /**
     3995       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     3996       */
    24863997      public Builder setNodes(
    24873998          int index, crosby.binary.Osmformat.Node value) {
     
    24914002        ensureNodesIsMutable();
    24924003        nodes_.set(index, value);
    2493        
    2494         return this;
    2495       }
     4004
     4005        return this;
     4006      }
     4007      /**
     4008       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     4009       */
    24964010      public Builder setNodes(
    24974011          int index, crosby.binary.Osmformat.Node.Builder builderForValue) {
    24984012        ensureNodesIsMutable();
    24994013        nodes_.set(index, builderForValue.build());
    2500        
    2501         return this;
    2502       }
     4014
     4015        return this;
     4016      }
     4017      /**
     4018       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     4019       */
    25034020      public Builder addNodes(crosby.binary.Osmformat.Node value) {
    25044021        if (value == null) {
     
    25074024        ensureNodesIsMutable();
    25084025        nodes_.add(value);
    2509        
    2510         return this;
    2511       }
     4026
     4027        return this;
     4028      }
     4029      /**
     4030       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     4031       */
    25124032      public Builder addNodes(
    25134033          int index, crosby.binary.Osmformat.Node value) {
     
    25174037        ensureNodesIsMutable();
    25184038        nodes_.add(index, value);
    2519        
    2520         return this;
    2521       }
     4039
     4040        return this;
     4041      }
     4042      /**
     4043       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     4044       */
    25224045      public Builder addNodes(
    25234046          crosby.binary.Osmformat.Node.Builder builderForValue) {
    25244047        ensureNodesIsMutable();
    25254048        nodes_.add(builderForValue.build());
    2526        
    2527         return this;
    2528       }
     4049
     4050        return this;
     4051      }
     4052      /**
     4053       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     4054       */
    25294055      public Builder addNodes(
    25304056          int index, crosby.binary.Osmformat.Node.Builder builderForValue) {
    25314057        ensureNodesIsMutable();
    25324058        nodes_.add(index, builderForValue.build());
    2533        
    2534         return this;
    2535       }
     4059
     4060        return this;
     4061      }
     4062      /**
     4063       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     4064       */
    25364065      public Builder addAllNodes(
    25374066          java.lang.Iterable<? extends crosby.binary.Osmformat.Node> values) {
    25384067        ensureNodesIsMutable();
    25394068        super.addAll(values, nodes_);
    2540        
    2541         return this;
    2542       }
     4069
     4070        return this;
     4071      }
     4072      /**
     4073       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     4074       */
    25434075      public Builder clearNodes() {
    25444076        nodes_ = java.util.Collections.emptyList();
    25454077        bitField0_ = (bitField0_ & ~0x00000001);
    2546        
    2547         return this;
    2548       }
     4078
     4079        return this;
     4080      }
     4081      /**
     4082       * <code>repeated .OSMPBF.Node nodes = 1;</code>
     4083       */
    25494084      public Builder removeNodes(int index) {
    25504085        ensureNodesIsMutable();
    25514086        nodes_.remove(index);
    2552        
    2553         return this;
    2554       }
    2555      
     4087
     4088        return this;
     4089      }
     4090
    25564091      // optional .OSMPBF.DenseNodes dense = 2;
    25574092      private crosby.binary.Osmformat.DenseNodes dense_ = crosby.binary.Osmformat.DenseNodes.getDefaultInstance();
     4093      /**
     4094       * <code>optional .OSMPBF.DenseNodes dense = 2;</code>
     4095       */
    25584096      public boolean hasDense() {
    25594097        return ((bitField0_ & 0x00000002) == 0x00000002);
    25604098      }
     4099      /**
     4100       * <code>optional .OSMPBF.DenseNodes dense = 2;</code>
     4101       */
    25614102      public crosby.binary.Osmformat.DenseNodes getDense() {
    25624103        return dense_;
    25634104      }
     4105      /**
     4106       * <code>optional .OSMPBF.DenseNodes dense = 2;</code>
     4107       */
    25644108      public Builder setDense(crosby.binary.Osmformat.DenseNodes value) {
    25654109        if (value == null) {
     
    25674111        }
    25684112        dense_ = value;
    2569        
     4113
    25704114        bitField0_ |= 0x00000002;
    25714115        return this;
    25724116      }
     4117      /**
     4118       * <code>optional .OSMPBF.DenseNodes dense = 2;</code>
     4119       */
    25734120      public Builder setDense(
    25744121          crosby.binary.Osmformat.DenseNodes.Builder builderForValue) {
    25754122        dense_ = builderForValue.build();
    2576        
     4123
    25774124        bitField0_ |= 0x00000002;
    25784125        return this;
    25794126      }
     4127      /**
     4128       * <code>optional .OSMPBF.DenseNodes dense = 2;</code>
     4129       */
    25804130      public Builder mergeDense(crosby.binary.Osmformat.DenseNodes value) {
    25814131        if (((bitField0_ & 0x00000002) == 0x00000002) &&
     
    25864136          dense_ = value;
    25874137        }
    2588        
     4138
    25894139        bitField0_ |= 0x00000002;
    25904140        return this;
    25914141      }
     4142      /**
     4143       * <code>optional .OSMPBF.DenseNodes dense = 2;</code>
     4144       */
    25924145      public Builder clearDense() {
    25934146        dense_ = crosby.binary.Osmformat.DenseNodes.getDefaultInstance();
    2594        
     4147
    25954148        bitField0_ = (bitField0_ & ~0x00000002);
    25964149        return this;
    25974150      }
    2598      
     4151
    25994152      // repeated .OSMPBF.Way ways = 3;
    26004153      private java.util.List<crosby.binary.Osmformat.Way> ways_ =
     
    26064159         }
    26074160      }
    2608      
     4161
     4162      /**
     4163       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4164       */
    26094165      public java.util.List<crosby.binary.Osmformat.Way> getWaysList() {
    26104166        return java.util.Collections.unmodifiableList(ways_);
    26114167      }
     4168      /**
     4169       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4170       */
    26124171      public int getWaysCount() {
    26134172        return ways_.size();
    26144173      }
     4174      /**
     4175       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4176       */
    26154177      public crosby.binary.Osmformat.Way getWays(int index) {
    26164178        return ways_.get(index);
    26174179      }
     4180      /**
     4181       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4182       */
    26184183      public Builder setWays(
    26194184          int index, crosby.binary.Osmformat.Way value) {
     
    26234188        ensureWaysIsMutable();
    26244189        ways_.set(index, value);
    2625        
    2626         return this;
    2627       }
     4190
     4191        return this;
     4192      }
     4193      /**
     4194       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4195       */
    26284196      public Builder setWays(
    26294197          int index, crosby.binary.Osmformat.Way.Builder builderForValue) {
    26304198        ensureWaysIsMutable();
    26314199        ways_.set(index, builderForValue.build());
    2632        
    2633         return this;
    2634       }
     4200
     4201        return this;
     4202      }
     4203      /**
     4204       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4205       */
    26354206      public Builder addWays(crosby.binary.Osmformat.Way value) {
    26364207        if (value == null) {
     
    26394210        ensureWaysIsMutable();
    26404211        ways_.add(value);
    2641        
    2642         return this;
    2643       }
     4212
     4213        return this;
     4214      }
     4215      /**
     4216       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4217       */
    26444218      public Builder addWays(
    26454219          int index, crosby.binary.Osmformat.Way value) {
     
    26494223        ensureWaysIsMutable();
    26504224        ways_.add(index, value);
    2651        
    2652         return this;
    2653       }
     4225
     4226        return this;
     4227      }
     4228      /**
     4229       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4230       */
    26544231      public Builder addWays(
    26554232          crosby.binary.Osmformat.Way.Builder builderForValue) {
    26564233        ensureWaysIsMutable();
    26574234        ways_.add(builderForValue.build());
    2658        
    2659         return this;
    2660       }
     4235
     4236        return this;
     4237      }
     4238      /**
     4239       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4240       */
    26614241      public Builder addWays(
    26624242          int index, crosby.binary.Osmformat.Way.Builder builderForValue) {
    26634243        ensureWaysIsMutable();
    26644244        ways_.add(index, builderForValue.build());
    2665        
    2666         return this;
    2667       }
     4245
     4246        return this;
     4247      }
     4248      /**
     4249       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4250       */
    26684251      public Builder addAllWays(
    26694252          java.lang.Iterable<? extends crosby.binary.Osmformat.Way> values) {
    26704253        ensureWaysIsMutable();
    26714254        super.addAll(values, ways_);
    2672        
    2673         return this;
    2674       }
     4255
     4256        return this;
     4257      }
     4258      /**
     4259       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4260       */
    26754261      public Builder clearWays() {
    26764262        ways_ = java.util.Collections.emptyList();
    26774263        bitField0_ = (bitField0_ & ~0x00000004);
    2678        
    2679         return this;
    2680       }
     4264
     4265        return this;
     4266      }
     4267      /**
     4268       * <code>repeated .OSMPBF.Way ways = 3;</code>
     4269       */
    26814270      public Builder removeWays(int index) {
    26824271        ensureWaysIsMutable();
    26834272        ways_.remove(index);
    2684        
    2685         return this;
    2686       }
    2687      
     4273
     4274        return this;
     4275      }
     4276
    26884277      // repeated .OSMPBF.Relation relations = 4;
    26894278      private java.util.List<crosby.binary.Osmformat.Relation> relations_ =
     
    26954284         }
    26964285      }
    2697      
     4286
     4287      /**
     4288       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4289       */
    26984290      public java.util.List<crosby.binary.Osmformat.Relation> getRelationsList() {
    26994291        return java.util.Collections.unmodifiableList(relations_);
    27004292      }
     4293      /**
     4294       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4295       */
    27014296      public int getRelationsCount() {
    27024297        return relations_.size();
    27034298      }
     4299      /**
     4300       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4301       */
    27044302      public crosby.binary.Osmformat.Relation getRelations(int index) {
    27054303        return relations_.get(index);
    27064304      }
     4305      /**
     4306       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4307       */
    27074308      public Builder setRelations(
    27084309          int index, crosby.binary.Osmformat.Relation value) {
     
    27124313        ensureRelationsIsMutable();
    27134314        relations_.set(index, value);
    2714        
    2715         return this;
    2716       }
     4315
     4316        return this;
     4317      }
     4318      /**
     4319       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4320       */
    27174321      public Builder setRelations(
    27184322          int index, crosby.binary.Osmformat.Relation.Builder builderForValue) {
    27194323        ensureRelationsIsMutable();
    27204324        relations_.set(index, builderForValue.build());
    2721        
    2722         return this;
    2723       }
     4325
     4326        return this;
     4327      }
     4328      /**
     4329       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4330       */
    27244331      public Builder addRelations(crosby.binary.Osmformat.Relation value) {
    27254332        if (value == null) {
     
    27284335        ensureRelationsIsMutable();
    27294336        relations_.add(value);
    2730        
    2731         return this;
    2732       }
     4337
     4338        return this;
     4339      }
     4340      /**
     4341       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4342       */
    27334343      public Builder addRelations(
    27344344          int index, crosby.binary.Osmformat.Relation value) {
     
    27384348        ensureRelationsIsMutable();
    27394349        relations_.add(index, value);
    2740        
    2741         return this;
    2742       }
     4350
     4351        return this;
     4352      }
     4353      /**
     4354       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4355       */
    27434356      public Builder addRelations(
    27444357          crosby.binary.Osmformat.Relation.Builder builderForValue) {
    27454358        ensureRelationsIsMutable();
    27464359        relations_.add(builderForValue.build());
    2747        
    2748         return this;
    2749       }
     4360
     4361        return this;
     4362      }
     4363      /**
     4364       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4365       */
    27504366      public Builder addRelations(
    27514367          int index, crosby.binary.Osmformat.Relation.Builder builderForValue) {
    27524368        ensureRelationsIsMutable();
    27534369        relations_.add(index, builderForValue.build());
    2754        
    2755         return this;
    2756       }
     4370
     4371        return this;
     4372      }
     4373      /**
     4374       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4375       */
    27574376      public Builder addAllRelations(
    27584377          java.lang.Iterable<? extends crosby.binary.Osmformat.Relation> values) {
    27594378        ensureRelationsIsMutable();
    27604379        super.addAll(values, relations_);
    2761        
    2762         return this;
    2763       }
     4380
     4381        return this;
     4382      }
     4383      /**
     4384       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4385       */
    27644386      public Builder clearRelations() {
    27654387        relations_ = java.util.Collections.emptyList();
    27664388        bitField0_ = (bitField0_ & ~0x00000008);
    2767        
    2768         return this;
    2769       }
     4389
     4390        return this;
     4391      }
     4392      /**
     4393       * <code>repeated .OSMPBF.Relation relations = 4;</code>
     4394       */
    27704395      public Builder removeRelations(int index) {
    27714396        ensureRelationsIsMutable();
    27724397        relations_.remove(index);
    2773        
    2774         return this;
    2775       }
    2776      
     4398
     4399        return this;
     4400      }
     4401
    27774402      // repeated .OSMPBF.ChangeSet changesets = 5;
    27784403      private java.util.List<crosby.binary.Osmformat.ChangeSet> changesets_ =
     
    27844409         }
    27854410      }
    2786      
     4411
     4412      /**
     4413       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4414       */
    27874415      public java.util.List<crosby.binary.Osmformat.ChangeSet> getChangesetsList() {
    27884416        return java.util.Collections.unmodifiableList(changesets_);
    27894417      }
     4418      /**
     4419       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4420       */
    27904421      public int getChangesetsCount() {
    27914422        return changesets_.size();
    27924423      }
     4424      /**
     4425       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4426       */
    27934427      public crosby.binary.Osmformat.ChangeSet getChangesets(int index) {
    27944428        return changesets_.get(index);
    27954429      }
     4430      /**
     4431       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4432       */
    27964433      public Builder setChangesets(
    27974434          int index, crosby.binary.Osmformat.ChangeSet value) {
     
    28014438        ensureChangesetsIsMutable();
    28024439        changesets_.set(index, value);
    2803        
    2804         return this;
    2805       }
     4440
     4441        return this;
     4442      }
     4443      /**
     4444       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4445       */
    28064446      public Builder setChangesets(
    28074447          int index, crosby.binary.Osmformat.ChangeSet.Builder builderForValue) {
    28084448        ensureChangesetsIsMutable();
    28094449        changesets_.set(index, builderForValue.build());
    2810        
    2811         return this;
    2812       }
     4450
     4451        return this;
     4452      }
     4453      /**
     4454       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4455       */
    28134456      public Builder addChangesets(crosby.binary.Osmformat.ChangeSet value) {
    28144457        if (value == null) {
     
    28174460        ensureChangesetsIsMutable();
    28184461        changesets_.add(value);
    2819        
    2820         return this;
    2821       }
     4462
     4463        return this;
     4464      }
     4465      /**
     4466       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4467       */
    28224468      public Builder addChangesets(
    28234469          int index, crosby.binary.Osmformat.ChangeSet value) {
     
    28274473        ensureChangesetsIsMutable();
    28284474        changesets_.add(index, value);
    2829        
    2830         return this;
    2831       }
     4475
     4476        return this;
     4477      }
     4478      /**
     4479       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4480       */
    28324481      public Builder addChangesets(
    28334482          crosby.binary.Osmformat.ChangeSet.Builder builderForValue) {
    28344483        ensureChangesetsIsMutable();
    28354484        changesets_.add(builderForValue.build());
    2836        
    2837         return this;
    2838       }
     4485
     4486        return this;
     4487      }
     4488      /**
     4489       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4490       */
    28394491      public Builder addChangesets(
    28404492          int index, crosby.binary.Osmformat.ChangeSet.Builder builderForValue) {
    28414493        ensureChangesetsIsMutable();
    28424494        changesets_.add(index, builderForValue.build());
    2843        
    2844         return this;
    2845       }
     4495
     4496        return this;
     4497      }
     4498      /**
     4499       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4500       */
    28464501      public Builder addAllChangesets(
    28474502          java.lang.Iterable<? extends crosby.binary.Osmformat.ChangeSet> values) {
    28484503        ensureChangesetsIsMutable();
    28494504        super.addAll(values, changesets_);
    2850        
    2851         return this;
    2852       }
     4505
     4506        return this;
     4507      }
     4508      /**
     4509       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4510       */
    28534511      public Builder clearChangesets() {
    28544512        changesets_ = java.util.Collections.emptyList();
    28554513        bitField0_ = (bitField0_ & ~0x00000010);
    2856        
    2857         return this;
    2858       }
     4514
     4515        return this;
     4516      }
     4517      /**
     4518       * <code>repeated .OSMPBF.ChangeSet changesets = 5;</code>
     4519       */
    28594520      public Builder removeChangesets(int index) {
    28604521        ensureChangesetsIsMutable();
    28614522        changesets_.remove(index);
    2862        
    2863         return this;
    2864       }
    2865      
     4523
     4524        return this;
     4525      }
     4526
    28664527      // @@protoc_insertion_point(builder_scope:OSMPBF.PrimitiveGroup)
    28674528    }
    2868    
     4529
    28694530    static {
    28704531      defaultInstance = new PrimitiveGroup(true);
    28714532      defaultInstance.initFields();
    28724533    }
    2873    
     4534
    28744535    // @@protoc_insertion_point(class_scope:OSMPBF.PrimitiveGroup)
    28754536  }
    2876  
     4537
    28774538  public interface StringTableOrBuilder
    28784539      extends com.google.protobuf.MessageLiteOrBuilder {
    2879    
     4540
    28804541    // repeated bytes s = 1;
     4542    /**
     4543     * <code>repeated bytes s = 1;</code>
     4544     */
    28814545    java.util.List<com.google.protobuf.ByteString> getSList();
     4546    /**
     4547     * <code>repeated bytes s = 1;</code>
     4548     */
    28824549    int getSCount();
     4550    /**
     4551     * <code>repeated bytes s = 1;</code>
     4552     */
    28834553    com.google.protobuf.ByteString getS(int index);
    28844554  }
     4555  /**
     4556   * Protobuf type {@code OSMPBF.StringTable}
     4557   *
     4558   * <pre>
     4559   ** String table, contains the common strings in each block.
     4560   *
     4561   *Note that we reserve index '0' as a delimiter, so the entry at that
     4562   *index in the table is ALWAYS blank and unused.
     4563   * </pre>
     4564   */
    28854565  public static final class StringTable extends
    28864566      com.google.protobuf.GeneratedMessageLite
    28874567      implements StringTableOrBuilder {
    28884568    // Use StringTable.newBuilder() to construct.
    2889     private StringTable(Builder builder) {
     4569    private StringTable(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    28904570      super(builder);
     4571
    28914572    }
    28924573    private StringTable(boolean noInit) {}
    2893    
     4574
    28944575    private static final StringTable defaultInstance;
    28954576    public static StringTable getDefaultInstance() {
    28964577      return defaultInstance;
    28974578    }
    2898    
     4579
    28994580    public StringTable getDefaultInstanceForType() {
    29004581      return defaultInstance;
    29014582    }
    2902    
     4583
     4584    private StringTable(
     4585        com.google.protobuf.CodedInputStream input,
     4586        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     4587        throws com.google.protobuf.InvalidProtocolBufferException {
     4588      initFields();
     4589      int mutable_bitField0_ = 0;
     4590      try {
     4591        boolean done = false;
     4592        while (!done) {
     4593          int tag = input.readTag();
     4594          switch (tag) {
     4595            case 0:
     4596              done = true;
     4597              break;
     4598            default: {
     4599              if (!parseUnknownField(input,
     4600                                     extensionRegistry, tag)) {
     4601                done = true;
     4602              }
     4603              break;
     4604            }
     4605            case 10: {
     4606              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
     4607                s_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
     4608                mutable_bitField0_ |= 0x00000001;
     4609              }
     4610              s_.add(input.readBytes());
     4611              break;
     4612            }
     4613          }
     4614        }
     4615      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     4616        throw e.setUnfinishedMessage(this);
     4617      } catch (java.io.IOException e) {
     4618        throw new com.google.protobuf.InvalidProtocolBufferException(
     4619            e.getMessage()).setUnfinishedMessage(this);
     4620      } finally {
     4621        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
     4622          s_ = java.util.Collections.unmodifiableList(s_);
     4623        }
     4624        makeExtensionsImmutable();
     4625      }
     4626    }
     4627    public static com.google.protobuf.Parser<StringTable> PARSER =
     4628        new com.google.protobuf.AbstractParser<StringTable>() {
     4629      public StringTable parsePartialFrom(
     4630          com.google.protobuf.CodedInputStream input,
     4631          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     4632          throws com.google.protobuf.InvalidProtocolBufferException {
     4633        return new StringTable(input, extensionRegistry);
     4634      }
     4635    };
     4636
     4637    @java.lang.Override
     4638    public com.google.protobuf.Parser<StringTable> getParserForType() {
     4639      return PARSER;
     4640    }
     4641
    29034642    // repeated bytes s = 1;
    29044643    public static final int S_FIELD_NUMBER = 1;
    29054644    private java.util.List<com.google.protobuf.ByteString> s_;
     4645    /**
     4646     * <code>repeated bytes s = 1;</code>
     4647     */
    29064648    public java.util.List<com.google.protobuf.ByteString>
    29074649        getSList() {
    29084650      return s_;
    29094651    }
     4652    /**
     4653     * <code>repeated bytes s = 1;</code>
     4654     */
    29104655    public int getSCount() {
    29114656      return s_.size();
    29124657    }
     4658    /**
     4659     * <code>repeated bytes s = 1;</code>
     4660     */
    29134661    public com.google.protobuf.ByteString getS(int index) {
    29144662      return s_.get(index);
    29154663    }
    2916    
     4664
    29174665    private void initFields() {
    2918       s_ = java.util.Collections.emptyList();;
     4666      s_ = java.util.Collections.emptyList();
    29194667    }
    29204668    private byte memoizedIsInitialized = -1;
     
    29224670      byte isInitialized = memoizedIsInitialized;
    29234671      if (isInitialized != -1) return isInitialized == 1;
    2924      
     4672
    29254673      memoizedIsInitialized = 1;
    29264674      return true;
    29274675    }
    2928    
     4676
    29294677    public void writeTo(com.google.protobuf.CodedOutputStream output)
    29304678                        throws java.io.IOException {
     
    29344682      }
    29354683    }
    2936    
     4684
    29374685    private int memoizedSerializedSize = -1;
    29384686    public int getSerializedSize() {
    29394687      int size = memoizedSerializedSize;
    29404688      if (size != -1) return size;
    2941    
     4689
    29424690      size = 0;
    29434691      {
     
    29534701      return size;
    29544702    }
    2955    
     4703
    29564704    private static final long serialVersionUID = 0L;
    29574705    @java.lang.Override
     
    29604708      return super.writeReplace();
    29614709    }
    2962    
     4710
    29634711    public static crosby.binary.Osmformat.StringTable parseFrom(
    29644712        com.google.protobuf.ByteString data)
    29654713        throws com.google.protobuf.InvalidProtocolBufferException {
    2966       return newBuilder().mergeFrom(data).buildParsed();
     4714      return PARSER.parseFrom(data);
    29674715    }
    29684716    public static crosby.binary.Osmformat.StringTable parseFrom(
     
    29704718        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    29714719        throws com.google.protobuf.InvalidProtocolBufferException {
    2972       return newBuilder().mergeFrom(data, extensionRegistry)
    2973                .buildParsed();
     4720      return PARSER.parseFrom(data, extensionRegistry);
    29744721    }
    29754722    public static crosby.binary.Osmformat.StringTable parseFrom(byte[] data)
    29764723        throws com.google.protobuf.InvalidProtocolBufferException {
    2977       return newBuilder().mergeFrom(data).buildParsed();
     4724      return PARSER.parseFrom(data);
    29784725    }
    29794726    public static crosby.binary.Osmformat.StringTable parseFrom(
     
    29814728        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    29824729        throws com.google.protobuf.InvalidProtocolBufferException {
    2983       return newBuilder().mergeFrom(data, extensionRegistry)
    2984                .buildParsed();
     4730      return PARSER.parseFrom(data, extensionRegistry);
    29854731    }
    29864732    public static crosby.binary.Osmformat.StringTable parseFrom(java.io.InputStream input)
    29874733        throws java.io.IOException {
    2988       return newBuilder().mergeFrom(input).buildParsed();
     4734      return PARSER.parseFrom(input);
    29894735    }
    29904736    public static crosby.binary.Osmformat.StringTable parseFrom(
     
    29924738        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    29934739        throws java.io.IOException {
    2994       return newBuilder().mergeFrom(input, extensionRegistry)
    2995                .buildParsed();
     4740      return PARSER.parseFrom(input, extensionRegistry);
    29964741    }
    29974742    public static crosby.binary.Osmformat.StringTable parseDelimitedFrom(java.io.InputStream input)
    29984743        throws java.io.IOException {
    2999       Builder builder = newBuilder();
    3000       if (builder.mergeDelimitedFrom(input)) {
    3001         return builder.buildParsed();
    3002       } else {
    3003         return null;
    3004       }
     4744      return PARSER.parseDelimitedFrom(input);
    30054745    }
    30064746    public static crosby.binary.Osmformat.StringTable parseDelimitedFrom(
     
    30084748        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    30094749        throws java.io.IOException {
    3010       Builder builder = newBuilder();
    3011       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    3012         return builder.buildParsed();
    3013       } else {
    3014         return null;
    3015       }
     4750      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    30164751    }
    30174752    public static crosby.binary.Osmformat.StringTable parseFrom(
    30184753        com.google.protobuf.CodedInputStream input)
    30194754        throws java.io.IOException {
    3020       return newBuilder().mergeFrom(input).buildParsed();
     4755      return PARSER.parseFrom(input);
    30214756    }
    30224757    public static crosby.binary.Osmformat.StringTable parseFrom(
     
    30244759        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    30254760        throws java.io.IOException {
    3026       return newBuilder().mergeFrom(input, extensionRegistry)
    3027                .buildParsed();
    3028     }
    3029    
     4761      return PARSER.parseFrom(input, extensionRegistry);
     4762    }
     4763
    30304764    public static Builder newBuilder() { return Builder.create(); }
    30314765    public Builder newBuilderForType() { return newBuilder(); }
     
    30344768    }
    30354769    public Builder toBuilder() { return newBuilder(this); }
    3036    
     4770
     4771    /**
     4772     * Protobuf type {@code OSMPBF.StringTable}
     4773     *
     4774     * <pre>
     4775     ** String table, contains the common strings in each block.
     4776     *
     4777     *Note that we reserve index '0' as a delimiter, so the entry at that
     4778     *index in the table is ALWAYS blank and unused.
     4779     * </pre>
     4780     */
    30374781    public static final class Builder extends
    30384782        com.google.protobuf.GeneratedMessageLite.Builder<
     
    30434787        maybeForceBuilderInitialization();
    30444788      }
    3045      
     4789
    30464790      private void maybeForceBuilderInitialization() {
    30474791      }
     
    30494793        return new Builder();
    30504794      }
    3051      
     4795
    30524796      public Builder clear() {
    30534797        super.clear();
    3054         s_ = java.util.Collections.emptyList();;
     4798        s_ = java.util.Collections.emptyList();
    30554799        bitField0_ = (bitField0_ & ~0x00000001);
    30564800        return this;
    30574801      }
    3058      
     4802
    30594803      public Builder clone() {
    30604804        return create().mergeFrom(buildPartial());
    30614805      }
    3062      
     4806
    30634807      public crosby.binary.Osmformat.StringTable getDefaultInstanceForType() {
    30644808        return crosby.binary.Osmformat.StringTable.getDefaultInstance();
    30654809      }
    3066      
     4810
    30674811      public crosby.binary.Osmformat.StringTable build() {
    30684812        crosby.binary.Osmformat.StringTable result = buildPartial();
     
    30724816        return result;
    30734817      }
    3074      
    3075       private crosby.binary.Osmformat.StringTable buildParsed()
    3076           throws com.google.protobuf.InvalidProtocolBufferException {
    3077         crosby.binary.Osmformat.StringTable result = buildPartial();
    3078         if (!result.isInitialized()) {
    3079           throw newUninitializedMessageException(
    3080             result).asInvalidProtocolBufferException();
    3081         }
    3082         return result;
    3083       }
    3084      
     4818
    30854819      public crosby.binary.Osmformat.StringTable buildPartial() {
    30864820        crosby.binary.Osmformat.StringTable result = new crosby.binary.Osmformat.StringTable(this);
    3087         //int from_bitField0_ = bitField0_;
     4821        int from_bitField0_ = bitField0_;
    30884822        if (((bitField0_ & 0x00000001) == 0x00000001)) {
    30894823          s_ = java.util.Collections.unmodifiableList(s_);
     
    30934827        return result;
    30944828      }
    3095      
     4829
    30964830      public Builder mergeFrom(crosby.binary.Osmformat.StringTable other) {
    30974831        if (other == crosby.binary.Osmformat.StringTable.getDefaultInstance()) return this;
     
    31084842        return this;
    31094843      }
    3110      
     4844
    31114845      public final boolean isInitialized() {
    31124846        return true;
    31134847      }
    3114      
     4848
    31154849      public Builder mergeFrom(
    31164850          com.google.protobuf.CodedInputStream input,
    31174851          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    31184852          throws java.io.IOException {
    3119         while (true) {
    3120           int tag = input.readTag();
    3121           switch (tag) {
    3122             case 0:
    3123              
    3124               return this;
    3125             default: {
    3126               if (!parseUnknownField(input, extensionRegistry, tag)) {
    3127                
    3128                 return this;
    3129               }
    3130               break;
    3131             }
    3132             case 10: {
    3133               ensureSIsMutable();
    3134               s_.add(input.readBytes());
    3135               break;
    3136             }
     4853        crosby.binary.Osmformat.StringTable parsedMessage = null;
     4854        try {
     4855          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     4856        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     4857          parsedMessage = (crosby.binary.Osmformat.StringTable) e.getUnfinishedMessage();
     4858          throw e;
     4859        } finally {
     4860          if (parsedMessage != null) {
     4861            mergeFrom(parsedMessage);
    31374862          }
    31384863        }
    3139       }
    3140      
     4864        return this;
     4865      }
    31414866      private int bitField0_;
    3142      
     4867
    31434868      // repeated bytes s = 1;
    3144       private java.util.List<com.google.protobuf.ByteString> s_ = java.util.Collections.emptyList();;
     4869      private java.util.List<com.google.protobuf.ByteString> s_ = java.util.Collections.emptyList();
    31454870      private void ensureSIsMutable() {
    31464871        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
     
    31494874         }
    31504875      }
     4876      /**
     4877       * <code>repeated bytes s = 1;</code>
     4878       */
    31514879      public java.util.List<com.google.protobuf.ByteString>
    31524880          getSList() {
    31534881        return java.util.Collections.unmodifiableList(s_);
    31544882      }
     4883      /**
     4884       * <code>repeated bytes s = 1;</code>
     4885       */
    31554886      public int getSCount() {
    31564887        return s_.size();
    31574888      }
     4889      /**
     4890       * <code>repeated bytes s = 1;</code>
     4891       */
    31584892      public com.google.protobuf.ByteString getS(int index) {
    31594893        return s_.get(index);
    31604894      }
     4895      /**
     4896       * <code>repeated bytes s = 1;</code>
     4897       */
    31614898      public Builder setS(
    31624899          int index, com.google.protobuf.ByteString value) {
     
    31694906        return this;
    31704907      }
     4908      /**
     4909       * <code>repeated bytes s = 1;</code>
     4910       */
    31714911      public Builder addS(com.google.protobuf.ByteString value) {
    31724912        if (value == null) {
     
    31784918        return this;
    31794919      }
     4920      /**
     4921       * <code>repeated bytes s = 1;</code>
     4922       */
    31804923      public Builder addAllS(
    31814924          java.lang.Iterable<? extends com.google.protobuf.ByteString> values) {
     
    31854928        return this;
    31864929      }
     4930      /**
     4931       * <code>repeated bytes s = 1;</code>
     4932       */
    31874933      public Builder clearS() {
    3188         s_ = java.util.Collections.emptyList();;
     4934        s_ = java.util.Collections.emptyList();
    31894935        bitField0_ = (bitField0_ & ~0x00000001);
    31904936       
    31914937        return this;
    31924938      }
    3193      
     4939
    31944940      // @@protoc_insertion_point(builder_scope:OSMPBF.StringTable)
    31954941    }
    3196    
     4942
    31974943    static {
    31984944      defaultInstance = new StringTable(true);
    31994945      defaultInstance.initFields();
    32004946    }
    3201    
     4947
    32024948    // @@protoc_insertion_point(class_scope:OSMPBF.StringTable)
    32034949  }
    3204  
     4950
    32054951  public interface InfoOrBuilder
    32064952      extends com.google.protobuf.MessageLiteOrBuilder {
    3207    
     4953
    32084954    // optional int32 version = 1 [default = -1];
     4955    /**
     4956     * <code>optional int32 version = 1 [default = -1];</code>
     4957     */
    32094958    boolean hasVersion();
     4959    /**
     4960     * <code>optional int32 version = 1 [default = -1];</code>
     4961     */
    32104962    int getVersion();
    3211    
     4963
    32124964    // optional int64 timestamp = 2;
     4965    /**
     4966     * <code>optional int64 timestamp = 2;</code>
     4967     */
    32134968    boolean hasTimestamp();
     4969    /**
     4970     * <code>optional int64 timestamp = 2;</code>
     4971     */
    32144972    long getTimestamp();
    3215    
     4973
    32164974    // optional int64 changeset = 3;
     4975    /**
     4976     * <code>optional int64 changeset = 3;</code>
     4977     */
    32174978    boolean hasChangeset();
     4979    /**
     4980     * <code>optional int64 changeset = 3;</code>
     4981     */
    32184982    long getChangeset();
    3219    
     4983
    32204984    // optional int32 uid = 4;
     4985    /**
     4986     * <code>optional int32 uid = 4;</code>
     4987     */
    32214988    boolean hasUid();
     4989    /**
     4990     * <code>optional int32 uid = 4;</code>
     4991     */
    32224992    int getUid();
    3223    
     4993
    32244994    // optional uint32 user_sid = 5;
     4995    /**
     4996     * <code>optional uint32 user_sid = 5;</code>
     4997     *
     4998     * <pre>
     4999     * String IDs
     5000     * </pre>
     5001     */
    32255002    boolean hasUserSid();
     5003    /**
     5004     * <code>optional uint32 user_sid = 5;</code>
     5005     *
     5006     * <pre>
     5007     * String IDs
     5008     * </pre>
     5009     */
    32265010    int getUserSid();
     5011
     5012    // optional bool visible = 6;
     5013    /**
     5014     * <code>optional bool visible = 6;</code>
     5015     *
     5016     * <pre>
     5017     * The visible flag is used to store history information. It indicates that
     5018     * the current object version has been created by a delete operation on the
     5019     * OSM API.
     5020     * When a writer sets this flag, it MUST add a required_features tag with
     5021     * value "HistoricalInformation" to the HeaderBlock.
     5022     * If this flag is not available for some object it MUST be assumed to be
     5023     * true if the file has the required_features tag "HistoricalInformation"
     5024     * set.
     5025     * </pre>
     5026     */
     5027    boolean hasVisible();
     5028    /**
     5029     * <code>optional bool visible = 6;</code>
     5030     *
     5031     * <pre>
     5032     * The visible flag is used to store history information. It indicates that
     5033     * the current object version has been created by a delete operation on the
     5034     * OSM API.
     5035     * When a writer sets this flag, it MUST add a required_features tag with
     5036     * value "HistoricalInformation" to the HeaderBlock.
     5037     * If this flag is not available for some object it MUST be assumed to be
     5038     * true if the file has the required_features tag "HistoricalInformation"
     5039     * set.
     5040     * </pre>
     5041     */
     5042    boolean getVisible();
    32275043  }
     5044  /**
     5045   * Protobuf type {@code OSMPBF.Info}
     5046   *
     5047   * <pre>
     5048   * Optional metadata that may be included into each primitive.
     5049   * </pre>
     5050   */
    32285051  public static final class Info extends
    32295052      com.google.protobuf.GeneratedMessageLite
    32305053      implements InfoOrBuilder {
    32315054    // Use Info.newBuilder() to construct.
    3232     private Info(Builder builder) {
     5055    private Info(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    32335056      super(builder);
     5057
    32345058    }
    32355059    private Info(boolean noInit) {}
    3236    
     5060
    32375061    private static final Info defaultInstance;
    32385062    public static Info getDefaultInstance() {
    32395063      return defaultInstance;
    32405064    }
    3241    
     5065
    32425066    public Info getDefaultInstanceForType() {
    32435067      return defaultInstance;
    32445068    }
    3245    
    3246     private int bitField0_;
    3247     // optional int32 version = 1 [default = -1];
    3248     public static final int VERSION_FIELD_NUMBER = 1;
    3249     private int version_;
    3250     public boolean hasVersion() {
    3251       return ((bitField0_ & 0x00000001) == 0x00000001);
    3252     }
    3253     public int getVersion() {
    3254       return version_;
    3255     }
    3256    
    3257     // optional int64 timestamp = 2;
    3258     public static final int TIMESTAMP_FIELD_NUMBER = 2;
    3259     private long timestamp_;
    3260     public boolean hasTimestamp() {
    3261       return ((bitField0_ & 0x00000002) == 0x00000002);
    3262     }
    3263     public long getTimestamp() {
    3264       return timestamp_;
    3265     }
    3266    
    3267     // optional int64 changeset = 3;
    3268     public static final int CHANGESET_FIELD_NUMBER = 3;
    3269     private long changeset_;
    3270     public boolean hasChangeset() {
    3271       return ((bitField0_ & 0x00000004) == 0x00000004);
    3272     }
    3273     public long getChangeset() {
    3274       return changeset_;
    3275     }
    3276    
    3277     // optional int32 uid = 4;
    3278     public static final int UID_FIELD_NUMBER = 4;
    3279     private int uid_;
    3280     public boolean hasUid() {
    3281       return ((bitField0_ & 0x00000008) == 0x00000008);
    3282     }
    3283     public int getUid() {
    3284       return uid_;
    3285     }
    3286    
    3287     // optional uint32 user_sid = 5;
    3288     public static final int USER_SID_FIELD_NUMBER = 5;
    3289     private int userSid_;
    3290     public boolean hasUserSid() {
    3291       return ((bitField0_ & 0x00000010) == 0x00000010);
    3292     }
    3293     public int getUserSid() {
    3294       return userSid_;
    3295     }
    3296    
    3297     private void initFields() {
    3298       version_ = -1;
    3299       timestamp_ = 0L;
    3300       changeset_ = 0L;
    3301       uid_ = 0;
    3302       userSid_ = 0;
    3303     }
    3304     private byte memoizedIsInitialized = -1;
    3305     public final boolean isInitialized() {
    3306       byte isInitialized = memoizedIsInitialized;
    3307       if (isInitialized != -1) return isInitialized == 1;
    3308      
    3309       memoizedIsInitialized = 1;
    3310       return true;
    3311     }
    3312    
    3313     public void writeTo(com.google.protobuf.CodedOutputStream output)
    3314                         throws java.io.IOException {
    3315       getSerializedSize();
    3316       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    3317         output.writeInt32(1, version_);
    3318       }
    3319       if (((bitField0_ & 0x00000002) == 0x00000002)) {
    3320         output.writeInt64(2, timestamp_);
    3321       }
    3322       if (((bitField0_ & 0x00000004) == 0x00000004)) {
    3323         output.writeInt64(3, changeset_);
    3324       }
    3325       if (((bitField0_ & 0x00000008) == 0x00000008)) {
    3326         output.writeInt32(4, uid_);
    3327       }
    3328       if (((bitField0_ & 0x00000010) == 0x00000010)) {
    3329         output.writeUInt32(5, userSid_);
    3330       }
    3331     }
    3332    
    3333     private int memoizedSerializedSize = -1;
    3334     public int getSerializedSize() {
    3335       int size = memoizedSerializedSize;
    3336       if (size != -1) return size;
    3337    
    3338       size = 0;
    3339       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    3340         size += com.google.protobuf.CodedOutputStream
    3341           .computeInt32Size(1, version_);
    3342       }
    3343       if (((bitField0_ & 0x00000002) == 0x00000002)) {
    3344         size += com.google.protobuf.CodedOutputStream
    3345           .computeInt64Size(2, timestamp_);
    3346       }
    3347       if (((bitField0_ & 0x00000004) == 0x00000004)) {
    3348         size += com.google.protobuf.CodedOutputStream
    3349           .computeInt64Size(3, changeset_);
    3350       }
    3351       if (((bitField0_ & 0x00000008) == 0x00000008)) {
    3352         size += com.google.protobuf.CodedOutputStream
    3353           .computeInt32Size(4, uid_);
    3354       }
    3355       if (((bitField0_ & 0x00000010) == 0x00000010)) {
    3356         size += com.google.protobuf.CodedOutputStream
    3357           .computeUInt32Size(5, userSid_);
    3358       }
    3359       memoizedSerializedSize = size;
    3360       return size;
    3361     }
    3362    
    3363     private static final long serialVersionUID = 0L;
    3364     @java.lang.Override
    3365     protected java.lang.Object writeReplace()
    3366         throws java.io.ObjectStreamException {
    3367       return super.writeReplace();
    3368     }
    3369    
    3370     public static crosby.binary.Osmformat.Info parseFrom(
    3371         com.google.protobuf.ByteString data)
    3372         throws com.google.protobuf.InvalidProtocolBufferException {
    3373       return newBuilder().mergeFrom(data).buildParsed();
    3374     }
    3375     public static crosby.binary.Osmformat.Info parseFrom(
    3376         com.google.protobuf.ByteString data,
     5069
     5070    private Info(
     5071        com.google.protobuf.CodedInputStream input,
    33775072        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    33785073        throws com.google.protobuf.InvalidProtocolBufferException {
    3379       return newBuilder().mergeFrom(data, extensionRegistry)
    3380                .buildParsed();
    3381     }
    3382     public static crosby.binary.Osmformat.Info parseFrom(byte[] data)
    3383         throws com.google.protobuf.InvalidProtocolBufferException {
    3384       return newBuilder().mergeFrom(data).buildParsed();
    3385     }
    3386     public static crosby.binary.Osmformat.Info parseFrom(
    3387         byte[] data,
    3388         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    3389         throws com.google.protobuf.InvalidProtocolBufferException {
    3390       return newBuilder().mergeFrom(data, extensionRegistry)
    3391                .buildParsed();
    3392     }
    3393     public static crosby.binary.Osmformat.Info parseFrom(java.io.InputStream input)
    3394         throws java.io.IOException {
    3395       return newBuilder().mergeFrom(input).buildParsed();
    3396     }
    3397     public static crosby.binary.Osmformat.Info parseFrom(
    3398         java.io.InputStream input,
    3399         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    3400         throws java.io.IOException {
    3401       return newBuilder().mergeFrom(input, extensionRegistry)
    3402                .buildParsed();
    3403     }
    3404     public static crosby.binary.Osmformat.Info parseDelimitedFrom(java.io.InputStream input)
    3405         throws java.io.IOException {
    3406       Builder builder = newBuilder();
    3407       if (builder.mergeDelimitedFrom(input)) {
    3408         return builder.buildParsed();
    3409       } else {
    3410         return null;
    3411       }
    3412     }
    3413     public static crosby.binary.Osmformat.Info parseDelimitedFrom(
    3414         java.io.InputStream input,
    3415         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    3416         throws java.io.IOException {
    3417       Builder builder = newBuilder();
    3418       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    3419         return builder.buildParsed();
    3420       } else {
    3421         return null;
    3422       }
    3423     }
    3424     public static crosby.binary.Osmformat.Info parseFrom(
    3425         com.google.protobuf.CodedInputStream input)
    3426         throws java.io.IOException {
    3427       return newBuilder().mergeFrom(input).buildParsed();
    3428     }
    3429     public static crosby.binary.Osmformat.Info parseFrom(
    3430         com.google.protobuf.CodedInputStream input,
    3431         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    3432         throws java.io.IOException {
    3433       return newBuilder().mergeFrom(input, extensionRegistry)
    3434                .buildParsed();
    3435     }
    3436    
    3437     public static Builder newBuilder() { return Builder.create(); }
    3438     public Builder newBuilderForType() { return newBuilder(); }
    3439     public static Builder newBuilder(crosby.binary.Osmformat.Info prototype) {
    3440       return newBuilder().mergeFrom(prototype);
    3441     }
    3442     public Builder toBuilder() { return newBuilder(this); }
    3443    
    3444     public static final class Builder extends
    3445         com.google.protobuf.GeneratedMessageLite.Builder<
    3446           crosby.binary.Osmformat.Info, Builder>
    3447         implements crosby.binary.Osmformat.InfoOrBuilder {
    3448       // Construct using crosby.binary.Osmformat.Info.newBuilder()
    3449       private Builder() {
    3450         maybeForceBuilderInitialization();
    3451       }
    3452      
    3453       private void maybeForceBuilderInitialization() {
    3454       }
    3455       private static Builder create() {
    3456         return new Builder();
    3457       }
    3458      
    3459       public Builder clear() {
    3460         super.clear();
    3461         version_ = -1;
    3462         bitField0_ = (bitField0_ & ~0x00000001);
    3463         timestamp_ = 0L;
    3464         bitField0_ = (bitField0_ & ~0x00000002);
    3465         changeset_ = 0L;
    3466         bitField0_ = (bitField0_ & ~0x00000004);
    3467         uid_ = 0;
    3468         bitField0_ = (bitField0_ & ~0x00000008);
    3469         userSid_ = 0;
    3470         bitField0_ = (bitField0_ & ~0x00000010);
    3471         return this;
    3472       }
    3473      
    3474       public Builder clone() {
    3475         return create().mergeFrom(buildPartial());
    3476       }
    3477      
    3478       public crosby.binary.Osmformat.Info getDefaultInstanceForType() {
    3479         return crosby.binary.Osmformat.Info.getDefaultInstance();
    3480       }
    3481      
    3482       public crosby.binary.Osmformat.Info build() {
    3483         crosby.binary.Osmformat.Info result = buildPartial();
    3484         if (!result.isInitialized()) {
    3485           throw newUninitializedMessageException(result);
    3486         }
    3487         return result;
    3488       }
    3489      
    3490       private crosby.binary.Osmformat.Info buildParsed()
    3491           throws com.google.protobuf.InvalidProtocolBufferException {
    3492         crosby.binary.Osmformat.Info result = buildPartial();
    3493         if (!result.isInitialized()) {
    3494           throw newUninitializedMessageException(
    3495             result).asInvalidProtocolBufferException();
    3496         }
    3497         return result;
    3498       }
    3499      
    3500       public crosby.binary.Osmformat.Info buildPartial() {
    3501         crosby.binary.Osmformat.Info result = new crosby.binary.Osmformat.Info(this);
    3502         int from_bitField0_ = bitField0_;
    3503         int to_bitField0_ = 0;
    3504         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
    3505           to_bitField0_ |= 0x00000001;
    3506         }
    3507         result.version_ = version_;
    3508         if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
    3509           to_bitField0_ |= 0x00000002;
    3510         }
    3511         result.timestamp_ = timestamp_;
    3512         if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
    3513           to_bitField0_ |= 0x00000004;
    3514         }
    3515         result.changeset_ = changeset_;
    3516         if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
    3517           to_bitField0_ |= 0x00000008;
    3518         }
    3519         result.uid_ = uid_;
    3520         if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
    3521           to_bitField0_ |= 0x00000010;
    3522         }
    3523         result.userSid_ = userSid_;
    3524         result.bitField0_ = to_bitField0_;
    3525         return result;
    3526       }
    3527      
    3528       public Builder mergeFrom(crosby.binary.Osmformat.Info other) {
    3529         if (other == crosby.binary.Osmformat.Info.getDefaultInstance()) return this;
    3530         if (other.hasVersion()) {
    3531           setVersion(other.getVersion());
    3532         }
    3533         if (other.hasTimestamp()) {
    3534           setTimestamp(other.getTimestamp());
    3535         }
    3536         if (other.hasChangeset()) {
    3537           setChangeset(other.getChangeset());
    3538         }
    3539         if (other.hasUid()) {
    3540           setUid(other.getUid());
    3541         }
    3542         if (other.hasUserSid()) {
    3543           setUserSid(other.getUserSid());
    3544         }
    3545         return this;
    3546       }
    3547      
    3548       public final boolean isInitialized() {
    3549         return true;
    3550       }
    3551      
    3552       public Builder mergeFrom(
    3553           com.google.protobuf.CodedInputStream input,
    3554           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    3555           throws java.io.IOException {
    3556         while (true) {
     5074      initFields();
     5075      int mutable_bitField0_ = 0;
     5076      try {
     5077        boolean done = false;
     5078        while (!done) {
    35575079          int tag = input.readTag();
    35585080          switch (tag) {
    35595081            case 0:
    3560              
    3561               return this;
     5082              done = true;
     5083              break;
    35625084            default: {
    3563               if (!parseUnknownField(input, extensionRegistry, tag)) {
    3564                
    3565                 return this;
     5085              if (!parseUnknownField(input,
     5086                                     extensionRegistry, tag)) {
     5087                done = true;
    35665088              }
    35675089              break;
     
    35925114              break;
    35935115            }
     5116            case 48: {
     5117              bitField0_ |= 0x00000020;
     5118              visible_ = input.readBool();
     5119              break;
     5120            }
    35945121          }
    35955122        }
    3596       }
    3597      
     5123      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     5124        throw e.setUnfinishedMessage(this);
     5125      } catch (java.io.IOException e) {
     5126        throw new com.google.protobuf.InvalidProtocolBufferException(
     5127            e.getMessage()).setUnfinishedMessage(this);
     5128      } finally {
     5129        makeExtensionsImmutable();
     5130      }
     5131    }
     5132    public static com.google.protobuf.Parser<Info> PARSER =
     5133        new com.google.protobuf.AbstractParser<Info>() {
     5134      public Info parsePartialFrom(
     5135          com.google.protobuf.CodedInputStream input,
     5136          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     5137          throws com.google.protobuf.InvalidProtocolBufferException {
     5138        return new Info(input, extensionRegistry);
     5139      }
     5140    };
     5141
     5142    @java.lang.Override
     5143    public com.google.protobuf.Parser<Info> getParserForType() {
     5144      return PARSER;
     5145    }
     5146
     5147    private int bitField0_;
     5148    // optional int32 version = 1 [default = -1];
     5149    public static final int VERSION_FIELD_NUMBER = 1;
     5150    private int version_;
     5151    /**
     5152     * <code>optional int32 version = 1 [default = -1];</code>
     5153     */
     5154    public boolean hasVersion() {
     5155      return ((bitField0_ & 0x00000001) == 0x00000001);
     5156    }
     5157    /**
     5158     * <code>optional int32 version = 1 [default = -1];</code>
     5159     */
     5160    public int getVersion() {
     5161      return version_;
     5162    }
     5163
     5164    // optional int64 timestamp = 2;
     5165    public static final int TIMESTAMP_FIELD_NUMBER = 2;
     5166    private long timestamp_;
     5167    /**
     5168     * <code>optional int64 timestamp = 2;</code>
     5169     */
     5170    public boolean hasTimestamp() {
     5171      return ((bitField0_ & 0x00000002) == 0x00000002);
     5172    }
     5173    /**
     5174     * <code>optional int64 timestamp = 2;</code>
     5175     */
     5176    public long getTimestamp() {
     5177      return timestamp_;
     5178    }
     5179
     5180    // optional int64 changeset = 3;
     5181    public static final int CHANGESET_FIELD_NUMBER = 3;
     5182    private long changeset_;
     5183    /**
     5184     * <code>optional int64 changeset = 3;</code>
     5185     */
     5186    public boolean hasChangeset() {
     5187      return ((bitField0_ & 0x00000004) == 0x00000004);
     5188    }
     5189    /**
     5190     * <code>optional int64 changeset = 3;</code>
     5191     */
     5192    public long getChangeset() {
     5193      return changeset_;
     5194    }
     5195
     5196    // optional int32 uid = 4;
     5197    public static final int UID_FIELD_NUMBER = 4;
     5198    private int uid_;
     5199    /**
     5200     * <code>optional int32 uid = 4;</code>
     5201     */
     5202    public boolean hasUid() {
     5203      return ((bitField0_ & 0x00000008) == 0x00000008);
     5204    }
     5205    /**
     5206     * <code>optional int32 uid = 4;</code>
     5207     */
     5208    public int getUid() {
     5209      return uid_;
     5210    }
     5211
     5212    // optional uint32 user_sid = 5;
     5213    public static final int USER_SID_FIELD_NUMBER = 5;
     5214    private int userSid_;
     5215    /**
     5216     * <code>optional uint32 user_sid = 5;</code>
     5217     *
     5218     * <pre>
     5219     * String IDs
     5220     * </pre>
     5221     */
     5222    public boolean hasUserSid() {
     5223      return ((bitField0_ & 0x00000010) == 0x00000010);
     5224    }
     5225    /**
     5226     * <code>optional uint32 user_sid = 5;</code>
     5227     *
     5228     * <pre>
     5229     * String IDs
     5230     * </pre>
     5231     */
     5232    public int getUserSid() {
     5233      return userSid_;
     5234    }
     5235
     5236    // optional bool visible = 6;
     5237    public static final int VISIBLE_FIELD_NUMBER = 6;
     5238    private boolean visible_;
     5239    /**
     5240     * <code>optional bool visible = 6;</code>
     5241     *
     5242     * <pre>
     5243     * The visible flag is used to store history information. It indicates that
     5244     * the current object version has been created by a delete operation on the
     5245     * OSM API.
     5246     * When a writer sets this flag, it MUST add a required_features tag with
     5247     * value "HistoricalInformation" to the HeaderBlock.
     5248     * If this flag is not available for some object it MUST be assumed to be
     5249     * true if the file has the required_features tag "HistoricalInformation"
     5250     * set.
     5251     * </pre>
     5252     */
     5253    public boolean hasVisible() {
     5254      return ((bitField0_ & 0x00000020) == 0x00000020);
     5255    }
     5256    /**
     5257     * <code>optional bool visible = 6;</code>
     5258     *
     5259     * <pre>
     5260     * The visible flag is used to store history information. It indicates that
     5261     * the current object version has been created by a delete operation on the
     5262     * OSM API.
     5263     * When a writer sets this flag, it MUST add a required_features tag with
     5264     * value "HistoricalInformation" to the HeaderBlock.
     5265     * If this flag is not available for some object it MUST be assumed to be
     5266     * true if the file has the required_features tag "HistoricalInformation"
     5267     * set.
     5268     * </pre>
     5269     */
     5270    public boolean getVisible() {
     5271      return visible_;
     5272    }
     5273
     5274    private void initFields() {
     5275      version_ = -1;
     5276      timestamp_ = 0L;
     5277      changeset_ = 0L;
     5278      uid_ = 0;
     5279      userSid_ = 0;
     5280      visible_ = false;
     5281    }
     5282    private byte memoizedIsInitialized = -1;
     5283    public final boolean isInitialized() {
     5284      byte isInitialized = memoizedIsInitialized;
     5285      if (isInitialized != -1) return isInitialized == 1;
     5286
     5287      memoizedIsInitialized = 1;
     5288      return true;
     5289    }
     5290
     5291    public void writeTo(com.google.protobuf.CodedOutputStream output)
     5292                        throws java.io.IOException {
     5293      getSerializedSize();
     5294      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     5295        output.writeInt32(1, version_);
     5296      }
     5297      if (((bitField0_ & 0x00000002) == 0x00000002)) {
     5298        output.writeInt64(2, timestamp_);
     5299      }
     5300      if (((bitField0_ & 0x00000004) == 0x00000004)) {
     5301        output.writeInt64(3, changeset_);
     5302      }
     5303      if (((bitField0_ & 0x00000008) == 0x00000008)) {
     5304        output.writeInt32(4, uid_);
     5305      }
     5306      if (((bitField0_ & 0x00000010) == 0x00000010)) {
     5307        output.writeUInt32(5, userSid_);
     5308      }
     5309      if (((bitField0_ & 0x00000020) == 0x00000020)) {
     5310        output.writeBool(6, visible_);
     5311      }
     5312    }
     5313
     5314    private int memoizedSerializedSize = -1;
     5315    public int getSerializedSize() {
     5316      int size = memoizedSerializedSize;
     5317      if (size != -1) return size;
     5318
     5319      size = 0;
     5320      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     5321        size += com.google.protobuf.CodedOutputStream
     5322          .computeInt32Size(1, version_);
     5323      }
     5324      if (((bitField0_ & 0x00000002) == 0x00000002)) {
     5325        size += com.google.protobuf.CodedOutputStream
     5326          .computeInt64Size(2, timestamp_);
     5327      }
     5328      if (((bitField0_ & 0x00000004) == 0x00000004)) {
     5329        size += com.google.protobuf.CodedOutputStream
     5330          .computeInt64Size(3, changeset_);
     5331      }
     5332      if (((bitField0_ & 0x00000008) == 0x00000008)) {
     5333        size += com.google.protobuf.CodedOutputStream
     5334          .computeInt32Size(4, uid_);
     5335      }
     5336      if (((bitField0_ & 0x00000010) == 0x00000010)) {
     5337        size += com.google.protobuf.CodedOutputStream
     5338          .computeUInt32Size(5, userSid_);
     5339      }
     5340      if (((bitField0_ & 0x00000020) == 0x00000020)) {
     5341        size += com.google.protobuf.CodedOutputStream
     5342          .computeBoolSize(6, visible_);
     5343      }
     5344      memoizedSerializedSize = size;
     5345      return size;
     5346    }
     5347
     5348    private static final long serialVersionUID = 0L;
     5349    @java.lang.Override
     5350    protected java.lang.Object writeReplace()
     5351        throws java.io.ObjectStreamException {
     5352      return super.writeReplace();
     5353    }
     5354
     5355    public static crosby.binary.Osmformat.Info parseFrom(
     5356        com.google.protobuf.ByteString data)
     5357        throws com.google.protobuf.InvalidProtocolBufferException {
     5358      return PARSER.parseFrom(data);
     5359    }
     5360    public static crosby.binary.Osmformat.Info parseFrom(
     5361        com.google.protobuf.ByteString data,
     5362        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     5363        throws com.google.protobuf.InvalidProtocolBufferException {
     5364      return PARSER.parseFrom(data, extensionRegistry);
     5365    }
     5366    public static crosby.binary.Osmformat.Info parseFrom(byte[] data)
     5367        throws com.google.protobuf.InvalidProtocolBufferException {
     5368      return PARSER.parseFrom(data);
     5369    }
     5370    public static crosby.binary.Osmformat.Info parseFrom(
     5371        byte[] data,
     5372        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     5373        throws com.google.protobuf.InvalidProtocolBufferException {
     5374      return PARSER.parseFrom(data, extensionRegistry);
     5375    }
     5376    public static crosby.binary.Osmformat.Info parseFrom(java.io.InputStream input)
     5377        throws java.io.IOException {
     5378      return PARSER.parseFrom(input);
     5379    }
     5380    public static crosby.binary.Osmformat.Info parseFrom(
     5381        java.io.InputStream input,
     5382        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     5383        throws java.io.IOException {
     5384      return PARSER.parseFrom(input, extensionRegistry);
     5385    }
     5386    public static crosby.binary.Osmformat.Info parseDelimitedFrom(java.io.InputStream input)
     5387        throws java.io.IOException {
     5388      return PARSER.parseDelimitedFrom(input);
     5389    }
     5390    public static crosby.binary.Osmformat.Info parseDelimitedFrom(
     5391        java.io.InputStream input,
     5392        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     5393        throws java.io.IOException {
     5394      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     5395    }
     5396    public static crosby.binary.Osmformat.Info parseFrom(
     5397        com.google.protobuf.CodedInputStream input)
     5398        throws java.io.IOException {
     5399      return PARSER.parseFrom(input);
     5400    }
     5401    public static crosby.binary.Osmformat.Info parseFrom(
     5402        com.google.protobuf.CodedInputStream input,
     5403        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     5404        throws java.io.IOException {
     5405      return PARSER.parseFrom(input, extensionRegistry);
     5406    }
     5407
     5408    public static Builder newBuilder() { return Builder.create(); }
     5409    public Builder newBuilderForType() { return newBuilder(); }
     5410    public static Builder newBuilder(crosby.binary.Osmformat.Info prototype) {
     5411      return newBuilder().mergeFrom(prototype);
     5412    }
     5413    public Builder toBuilder() { return newBuilder(this); }
     5414
     5415    /**
     5416     * Protobuf type {@code OSMPBF.Info}
     5417     *
     5418     * <pre>
     5419     * Optional metadata that may be included into each primitive.
     5420     * </pre>
     5421     */
     5422    public static final class Builder extends
     5423        com.google.protobuf.GeneratedMessageLite.Builder<
     5424          crosby.binary.Osmformat.Info, Builder>
     5425        implements crosby.binary.Osmformat.InfoOrBuilder {
     5426      // Construct using crosby.binary.Osmformat.Info.newBuilder()
     5427      private Builder() {
     5428        maybeForceBuilderInitialization();
     5429      }
     5430
     5431      private void maybeForceBuilderInitialization() {
     5432      }
     5433      private static Builder create() {
     5434        return new Builder();
     5435      }
     5436
     5437      public Builder clear() {
     5438        super.clear();
     5439        version_ = -1;
     5440        bitField0_ = (bitField0_ & ~0x00000001);
     5441        timestamp_ = 0L;
     5442        bitField0_ = (bitField0_ & ~0x00000002);
     5443        changeset_ = 0L;
     5444        bitField0_ = (bitField0_ & ~0x00000004);
     5445        uid_ = 0;
     5446        bitField0_ = (bitField0_ & ~0x00000008);
     5447        userSid_ = 0;
     5448        bitField0_ = (bitField0_ & ~0x00000010);
     5449        visible_ = false;
     5450        bitField0_ = (bitField0_ & ~0x00000020);
     5451        return this;
     5452      }
     5453
     5454      public Builder clone() {
     5455        return create().mergeFrom(buildPartial());
     5456      }
     5457
     5458      public crosby.binary.Osmformat.Info getDefaultInstanceForType() {
     5459        return crosby.binary.Osmformat.Info.getDefaultInstance();
     5460      }
     5461
     5462      public crosby.binary.Osmformat.Info build() {
     5463        crosby.binary.Osmformat.Info result = buildPartial();
     5464        if (!result.isInitialized()) {
     5465          throw newUninitializedMessageException(result);
     5466        }
     5467        return result;
     5468      }
     5469
     5470      public crosby.binary.Osmformat.Info buildPartial() {
     5471        crosby.binary.Osmformat.Info result = new crosby.binary.Osmformat.Info(this);
     5472        int from_bitField0_ = bitField0_;
     5473        int to_bitField0_ = 0;
     5474        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
     5475          to_bitField0_ |= 0x00000001;
     5476        }
     5477        result.version_ = version_;
     5478        if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
     5479          to_bitField0_ |= 0x00000002;
     5480        }
     5481        result.timestamp_ = timestamp_;
     5482        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
     5483          to_bitField0_ |= 0x00000004;
     5484        }
     5485        result.changeset_ = changeset_;
     5486        if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
     5487          to_bitField0_ |= 0x00000008;
     5488        }
     5489        result.uid_ = uid_;
     5490        if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
     5491          to_bitField0_ |= 0x00000010;
     5492        }
     5493        result.userSid_ = userSid_;
     5494        if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
     5495          to_bitField0_ |= 0x00000020;
     5496        }
     5497        result.visible_ = visible_;
     5498        result.bitField0_ = to_bitField0_;
     5499        return result;
     5500      }
     5501
     5502      public Builder mergeFrom(crosby.binary.Osmformat.Info other) {
     5503        if (other == crosby.binary.Osmformat.Info.getDefaultInstance()) return this;
     5504        if (other.hasVersion()) {
     5505          setVersion(other.getVersion());
     5506        }
     5507        if (other.hasTimestamp()) {
     5508          setTimestamp(other.getTimestamp());
     5509        }
     5510        if (other.hasChangeset()) {
     5511          setChangeset(other.getChangeset());
     5512        }
     5513        if (other.hasUid()) {
     5514          setUid(other.getUid());
     5515        }
     5516        if (other.hasUserSid()) {
     5517          setUserSid(other.getUserSid());
     5518        }
     5519        if (other.hasVisible()) {
     5520          setVisible(other.getVisible());
     5521        }
     5522        return this;
     5523      }
     5524
     5525      public final boolean isInitialized() {
     5526        return true;
     5527      }
     5528
     5529      public Builder mergeFrom(
     5530          com.google.protobuf.CodedInputStream input,
     5531          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     5532          throws java.io.IOException {
     5533        crosby.binary.Osmformat.Info parsedMessage = null;
     5534        try {
     5535          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     5536        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     5537          parsedMessage = (crosby.binary.Osmformat.Info) e.getUnfinishedMessage();
     5538          throw e;
     5539        } finally {
     5540          if (parsedMessage != null) {
     5541            mergeFrom(parsedMessage);
     5542          }
     5543        }
     5544        return this;
     5545      }
    35985546      private int bitField0_;
    3599      
     5547
    36005548      // optional int32 version = 1 [default = -1];
    36015549      private int version_ = -1;
     5550      /**
     5551       * <code>optional int32 version = 1 [default = -1];</code>
     5552       */
    36025553      public boolean hasVersion() {
    36035554        return ((bitField0_ & 0x00000001) == 0x00000001);
    36045555      }
     5556      /**
     5557       * <code>optional int32 version = 1 [default = -1];</code>
     5558       */
    36055559      public int getVersion() {
    36065560        return version_;
    36075561      }
     5562      /**
     5563       * <code>optional int32 version = 1 [default = -1];</code>
     5564       */
    36085565      public Builder setVersion(int value) {
    36095566        bitField0_ |= 0x00000001;
     
    36125569        return this;
    36135570      }
     5571      /**
     5572       * <code>optional int32 version = 1 [default = -1];</code>
     5573       */
    36145574      public Builder clearVersion() {
    36155575        bitField0_ = (bitField0_ & ~0x00000001);
     
    36185578        return this;
    36195579      }
    3620      
     5580
    36215581      // optional int64 timestamp = 2;
    36225582      private long timestamp_ ;
     5583      /**
     5584       * <code>optional int64 timestamp = 2;</code>
     5585       */
    36235586      public boolean hasTimestamp() {
    36245587        return ((bitField0_ & 0x00000002) == 0x00000002);
    36255588      }
     5589      /**
     5590       * <code>optional int64 timestamp = 2;</code>
     5591       */
    36265592      public long getTimestamp() {
    36275593        return timestamp_;
    36285594      }
     5595      /**
     5596       * <code>optional int64 timestamp = 2;</code>
     5597       */
    36295598      public Builder setTimestamp(long value) {
    36305599        bitField0_ |= 0x00000002;
     
    36335602        return this;
    36345603      }
     5604      /**
     5605       * <code>optional int64 timestamp = 2;</code>
     5606       */
    36355607      public Builder clearTimestamp() {
    36365608        bitField0_ = (bitField0_ & ~0x00000002);
     
    36395611        return this;
    36405612      }
    3641      
     5613
    36425614      // optional int64 changeset = 3;
    36435615      private long changeset_ ;
     5616      /**
     5617       * <code>optional int64 changeset = 3;</code>
     5618       */
    36445619      public boolean hasChangeset() {
    36455620        return ((bitField0_ & 0x00000004) == 0x00000004);
    36465621      }
     5622      /**
     5623       * <code>optional int64 changeset = 3;</code>
     5624       */
    36475625      public long getChangeset() {
    36485626        return changeset_;
    36495627      }
     5628      /**
     5629       * <code>optional int64 changeset = 3;</code>
     5630       */
    36505631      public Builder setChangeset(long value) {
    36515632        bitField0_ |= 0x00000004;
     
    36545635        return this;
    36555636      }
     5637      /**
     5638       * <code>optional int64 changeset = 3;</code>
     5639       */
    36565640      public Builder clearChangeset() {
    36575641        bitField0_ = (bitField0_ & ~0x00000004);
     
    36605644        return this;
    36615645      }
    3662      
     5646
    36635647      // optional int32 uid = 4;
    36645648      private int uid_ ;
     5649      /**
     5650       * <code>optional int32 uid = 4;</code>
     5651       */
    36655652      public boolean hasUid() {
    36665653        return ((bitField0_ & 0x00000008) == 0x00000008);
    36675654      }
     5655      /**
     5656       * <code>optional int32 uid = 4;</code>
     5657       */
    36685658      public int getUid() {
    36695659        return uid_;
    36705660      }
     5661      /**
     5662       * <code>optional int32 uid = 4;</code>
     5663       */
    36715664      public Builder setUid(int value) {
    36725665        bitField0_ |= 0x00000008;
     
    36755668        return this;
    36765669      }
     5670      /**
     5671       * <code>optional int32 uid = 4;</code>
     5672       */
    36775673      public Builder clearUid() {
    36785674        bitField0_ = (bitField0_ & ~0x00000008);
     
    36815677        return this;
    36825678      }
    3683      
     5679
    36845680      // optional uint32 user_sid = 5;
    36855681      private int userSid_ ;
     5682      /**
     5683       * <code>optional uint32 user_sid = 5;</code>
     5684       *
     5685       * <pre>
     5686       * String IDs
     5687       * </pre>
     5688       */
    36865689      public boolean hasUserSid() {
    36875690        return ((bitField0_ & 0x00000010) == 0x00000010);
    36885691      }
     5692      /**
     5693       * <code>optional uint32 user_sid = 5;</code>
     5694       *
     5695       * <pre>
     5696       * String IDs
     5697       * </pre>
     5698       */
    36895699      public int getUserSid() {
    36905700        return userSid_;
    36915701      }
     5702      /**
     5703       * <code>optional uint32 user_sid = 5;</code>
     5704       *
     5705       * <pre>
     5706       * String IDs
     5707       * </pre>
     5708       */
    36925709      public Builder setUserSid(int value) {
    36935710        bitField0_ |= 0x00000010;
     
    36965713        return this;
    36975714      }
     5715      /**
     5716       * <code>optional uint32 user_sid = 5;</code>
     5717       *
     5718       * <pre>
     5719       * String IDs
     5720       * </pre>
     5721       */
    36985722      public Builder clearUserSid() {
    36995723        bitField0_ = (bitField0_ & ~0x00000010);
     
    37025726        return this;
    37035727      }
    3704      
     5728
     5729      // optional bool visible = 6;
     5730      private boolean visible_ ;
     5731      /**
     5732       * <code>optional bool visible = 6;</code>
     5733       *
     5734       * <pre>
     5735       * The visible flag is used to store history information. It indicates that
     5736       * the current object version has been created by a delete operation on the
     5737       * OSM API.
     5738       * When a writer sets this flag, it MUST add a required_features tag with
     5739       * value "HistoricalInformation" to the HeaderBlock.
     5740       * If this flag is not available for some object it MUST be assumed to be
     5741       * true if the file has the required_features tag "HistoricalInformation"
     5742       * set.
     5743       * </pre>
     5744       */
     5745      public boolean hasVisible() {
     5746        return ((bitField0_ & 0x00000020) == 0x00000020);
     5747      }
     5748      /**
     5749       * <code>optional bool visible = 6;</code>
     5750       *
     5751       * <pre>
     5752       * The visible flag is used to store history information. It indicates that
     5753       * the current object version has been created by a delete operation on the
     5754       * OSM API.
     5755       * When a writer sets this flag, it MUST add a required_features tag with
     5756       * value "HistoricalInformation" to the HeaderBlock.
     5757       * If this flag is not available for some object it MUST be assumed to be
     5758       * true if the file has the required_features tag "HistoricalInformation"
     5759       * set.
     5760       * </pre>
     5761       */
     5762      public boolean getVisible() {
     5763        return visible_;
     5764      }
     5765      /**
     5766       * <code>optional bool visible = 6;</code>
     5767       *
     5768       * <pre>
     5769       * The visible flag is used to store history information. It indicates that
     5770       * the current object version has been created by a delete operation on the
     5771       * OSM API.
     5772       * When a writer sets this flag, it MUST add a required_features tag with
     5773       * value "HistoricalInformation" to the HeaderBlock.
     5774       * If this flag is not available for some object it MUST be assumed to be
     5775       * true if the file has the required_features tag "HistoricalInformation"
     5776       * set.
     5777       * </pre>
     5778       */
     5779      public Builder setVisible(boolean value) {
     5780        bitField0_ |= 0x00000020;
     5781        visible_ = value;
     5782       
     5783        return this;
     5784      }
     5785      /**
     5786       * <code>optional bool visible = 6;</code>
     5787       *
     5788       * <pre>
     5789       * The visible flag is used to store history information. It indicates that
     5790       * the current object version has been created by a delete operation on the
     5791       * OSM API.
     5792       * When a writer sets this flag, it MUST add a required_features tag with
     5793       * value "HistoricalInformation" to the HeaderBlock.
     5794       * If this flag is not available for some object it MUST be assumed to be
     5795       * true if the file has the required_features tag "HistoricalInformation"
     5796       * set.
     5797       * </pre>
     5798       */
     5799      public Builder clearVisible() {
     5800        bitField0_ = (bitField0_ & ~0x00000020);
     5801        visible_ = false;
     5802       
     5803        return this;
     5804      }
     5805
    37055806      // @@protoc_insertion_point(builder_scope:OSMPBF.Info)
    37065807    }
    3707    
     5808
    37085809    static {
    37095810      defaultInstance = new Info(true);
    37105811      defaultInstance.initFields();
    37115812    }
    3712    
     5813
    37135814    // @@protoc_insertion_point(class_scope:OSMPBF.Info)
    37145815  }
    3715  
     5816
    37165817  public interface DenseInfoOrBuilder
    37175818      extends com.google.protobuf.MessageLiteOrBuilder {
    3718    
     5819
    37195820    // repeated int32 version = 1 [packed = true];
     5821    /**
     5822     * <code>repeated int32 version = 1 [packed = true];</code>
     5823     */
    37205824    java.util.List<java.lang.Integer> getVersionList();
     5825    /**
     5826     * <code>repeated int32 version = 1 [packed = true];</code>
     5827     */
    37215828    int getVersionCount();
     5829    /**
     5830     * <code>repeated int32 version = 1 [packed = true];</code>
     5831     */
    37225832    int getVersion(int index);
    3723    
     5833
    37245834    // repeated sint64 timestamp = 2 [packed = true];
     5835    /**
     5836     * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     5837     *
     5838     * <pre>
     5839     * DELTA coded
     5840     * </pre>
     5841     */
    37255842    java.util.List<java.lang.Long> getTimestampList();
     5843    /**
     5844     * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     5845     *
     5846     * <pre>
     5847     * DELTA coded
     5848     * </pre>
     5849     */
    37265850    int getTimestampCount();
     5851    /**
     5852     * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     5853     *
     5854     * <pre>
     5855     * DELTA coded
     5856     * </pre>
     5857     */
    37275858    long getTimestamp(int index);
    3728    
     5859
    37295860    // repeated sint64 changeset = 3 [packed = true];
     5861    /**
     5862     * <code>repeated sint64 changeset = 3 [packed = true];</code>
     5863     *
     5864     * <pre>
     5865     * DELTA coded
     5866     * </pre>
     5867     */
    37305868    java.util.List<java.lang.Long> getChangesetList();
     5869    /**
     5870     * <code>repeated sint64 changeset = 3 [packed = true];</code>
     5871     *
     5872     * <pre>
     5873     * DELTA coded
     5874     * </pre>
     5875     */
    37315876    int getChangesetCount();
     5877    /**
     5878     * <code>repeated sint64 changeset = 3 [packed = true];</code>
     5879     *
     5880     * <pre>
     5881     * DELTA coded
     5882     * </pre>
     5883     */
    37325884    long getChangeset(int index);
    3733    
     5885
    37345886    // repeated sint32 uid = 4 [packed = true];
     5887    /**
     5888     * <code>repeated sint32 uid = 4 [packed = true];</code>
     5889     *
     5890     * <pre>
     5891     * DELTA coded
     5892     * </pre>
     5893     */
    37355894    java.util.List<java.lang.Integer> getUidList();
     5895    /**
     5896     * <code>repeated sint32 uid = 4 [packed = true];</code>
     5897     *
     5898     * <pre>
     5899     * DELTA coded
     5900     * </pre>
     5901     */
    37365902    int getUidCount();
     5903    /**
     5904     * <code>repeated sint32 uid = 4 [packed = true];</code>
     5905     *
     5906     * <pre>
     5907     * DELTA coded
     5908     * </pre>
     5909     */
    37375910    int getUid(int index);
    3738    
     5911
    37395912    // repeated sint32 user_sid = 5 [packed = true];
     5913    /**
     5914     * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     5915     *
     5916     * <pre>
     5917     * String IDs for usernames. DELTA coded
     5918     * </pre>
     5919     */
    37405920    java.util.List<java.lang.Integer> getUserSidList();
     5921    /**
     5922     * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     5923     *
     5924     * <pre>
     5925     * String IDs for usernames. DELTA coded
     5926     * </pre>
     5927     */
    37415928    int getUserSidCount();
     5929    /**
     5930     * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     5931     *
     5932     * <pre>
     5933     * String IDs for usernames. DELTA coded
     5934     * </pre>
     5935     */
    37425936    int getUserSid(int index);
     5937
     5938    // repeated bool visible = 6 [packed = true];
     5939    /**
     5940     * <code>repeated bool visible = 6 [packed = true];</code>
     5941     *
     5942     * <pre>
     5943     * The visible flag is used to store history information. It indicates that
     5944     * the current object version has been created by a delete operation on the
     5945     * OSM API.
     5946     * When a writer sets this flag, it MUST add a required_features tag with
     5947     * value "HistoricalInformation" to the HeaderBlock.
     5948     * If this flag is not available for some object it MUST be assumed to be
     5949     * true if the file has the required_features tag "HistoricalInformation"
     5950     * set.
     5951     * </pre>
     5952     */
     5953    java.util.List<java.lang.Boolean> getVisibleList();
     5954    /**
     5955     * <code>repeated bool visible = 6 [packed = true];</code>
     5956     *
     5957     * <pre>
     5958     * The visible flag is used to store history information. It indicates that
     5959     * the current object version has been created by a delete operation on the
     5960     * OSM API.
     5961     * When a writer sets this flag, it MUST add a required_features tag with
     5962     * value "HistoricalInformation" to the HeaderBlock.
     5963     * If this flag is not available for some object it MUST be assumed to be
     5964     * true if the file has the required_features tag "HistoricalInformation"
     5965     * set.
     5966     * </pre>
     5967     */
     5968    int getVisibleCount();
     5969    /**
     5970     * <code>repeated bool visible = 6 [packed = true];</code>
     5971     *
     5972     * <pre>
     5973     * The visible flag is used to store history information. It indicates that
     5974     * the current object version has been created by a delete operation on the
     5975     * OSM API.
     5976     * When a writer sets this flag, it MUST add a required_features tag with
     5977     * value "HistoricalInformation" to the HeaderBlock.
     5978     * If this flag is not available for some object it MUST be assumed to be
     5979     * true if the file has the required_features tag "HistoricalInformation"
     5980     * set.
     5981     * </pre>
     5982     */
     5983    boolean getVisible(int index);
    37435984  }
     5985  /**
     5986   * Protobuf type {@code OSMPBF.DenseInfo}
     5987   *
     5988   * <pre>
     5989   ** Optional metadata that may be included into each primitive. Special dense format used in DenseNodes.
     5990   * </pre>
     5991   */
    37445992  public static final class DenseInfo extends
    37455993      com.google.protobuf.GeneratedMessageLite
    37465994      implements DenseInfoOrBuilder {
    37475995    // Use DenseInfo.newBuilder() to construct.
    3748     private DenseInfo(Builder builder) {
     5996    private DenseInfo(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    37495997      super(builder);
     5998
    37505999    }
    37516000    private DenseInfo(boolean noInit) {}
    3752    
     6001
    37536002    private static final DenseInfo defaultInstance;
    37546003    public static DenseInfo getDefaultInstance() {
    37556004      return defaultInstance;
    37566005    }
    3757    
     6006
    37586007    public DenseInfo getDefaultInstanceForType() {
    37596008      return defaultInstance;
    37606009    }
    3761    
     6010
     6011    private DenseInfo(
     6012        com.google.protobuf.CodedInputStream input,
     6013        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     6014        throws com.google.protobuf.InvalidProtocolBufferException {
     6015      initFields();
     6016      int mutable_bitField0_ = 0;
     6017      try {
     6018        boolean done = false;
     6019        while (!done) {
     6020          int tag = input.readTag();
     6021          switch (tag) {
     6022            case 0:
     6023              done = true;
     6024              break;
     6025            default: {
     6026              if (!parseUnknownField(input,
     6027                                     extensionRegistry, tag)) {
     6028                done = true;
     6029              }
     6030              break;
     6031            }
     6032            case 8: {
     6033              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
     6034                version_ = new java.util.ArrayList<java.lang.Integer>();
     6035                mutable_bitField0_ |= 0x00000001;
     6036              }
     6037              version_.add(input.readInt32());
     6038              break;
     6039            }
     6040            case 10: {
     6041              int length = input.readRawVarint32();
     6042              int limit = input.pushLimit(length);
     6043              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
     6044                version_ = new java.util.ArrayList<java.lang.Integer>();
     6045                mutable_bitField0_ |= 0x00000001;
     6046              }
     6047              while (input.getBytesUntilLimit() > 0) {
     6048                version_.add(input.readInt32());
     6049              }
     6050              input.popLimit(limit);
     6051              break;
     6052            }
     6053            case 16: {
     6054              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     6055                timestamp_ = new java.util.ArrayList<java.lang.Long>();
     6056                mutable_bitField0_ |= 0x00000002;
     6057              }
     6058              timestamp_.add(input.readSInt64());
     6059              break;
     6060            }
     6061            case 18: {
     6062              int length = input.readRawVarint32();
     6063              int limit = input.pushLimit(length);
     6064              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
     6065                timestamp_ = new java.util.ArrayList<java.lang.Long>();
     6066                mutable_bitField0_ |= 0x00000002;
     6067              }
     6068              while (input.getBytesUntilLimit() > 0) {
     6069                timestamp_.add(input.readSInt64());
     6070              }
     6071              input.popLimit(limit);
     6072              break;
     6073            }
     6074            case 24: {
     6075              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     6076                changeset_ = new java.util.ArrayList<java.lang.Long>();
     6077                mutable_bitField0_ |= 0x00000004;
     6078              }
     6079              changeset_.add(input.readSInt64());
     6080              break;
     6081            }
     6082            case 26: {
     6083              int length = input.readRawVarint32();
     6084              int limit = input.pushLimit(length);
     6085              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
     6086                changeset_ = new java.util.ArrayList<java.lang.Long>();
     6087                mutable_bitField0_ |= 0x00000004;
     6088              }
     6089              while (input.getBytesUntilLimit() > 0) {
     6090                changeset_.add(input.readSInt64());
     6091              }
     6092              input.popLimit(limit);
     6093              break;
     6094            }
     6095            case 32: {
     6096              if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
     6097                uid_ = new java.util.ArrayList<java.lang.Integer>();
     6098                mutable_bitField0_ |= 0x00000008;
     6099              }
     6100              uid_.add(input.readSInt32());
     6101              break;
     6102            }
     6103            case 34: {
     6104              int length = input.readRawVarint32();
     6105              int limit = input.pushLimit(length);
     6106              if (!((mutable_bitField0_ & 0x00000008) == 0x00000008) && input.getBytesUntilLimit() > 0) {
     6107                uid_ = new java.util.ArrayList<java.lang.Integer>();
     6108                mutable_bitField0_ |= 0x00000008;
     6109              }
     6110              while (input.getBytesUntilLimit() > 0) {
     6111                uid_.add(input.readSInt32());
     6112              }
     6113              input.popLimit(limit);
     6114              break;
     6115            }
     6116            case 40: {
     6117              if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
     6118                userSid_ = new java.util.ArrayList<java.lang.Integer>();
     6119                mutable_bitField0_ |= 0x00000010;
     6120              }
     6121              userSid_.add(input.readSInt32());
     6122              break;
     6123            }
     6124            case 42: {
     6125              int length = input.readRawVarint32();
     6126              int limit = input.pushLimit(length);
     6127              if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
     6128                userSid_ = new java.util.ArrayList<java.lang.Integer>();
     6129                mutable_bitField0_ |= 0x00000010;
     6130              }
     6131              while (input.getBytesUntilLimit() > 0) {
     6132                userSid_.add(input.readSInt32());
     6133              }
     6134              input.popLimit(limit);
     6135              break;
     6136            }
     6137            case 48: {
     6138              if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
     6139                visible_ = new java.util.ArrayList<java.lang.Boolean>();
     6140                mutable_bitField0_ |= 0x00000020;
     6141              }
     6142              visible_.add(input.readBool());
     6143              break;
     6144            }
     6145            case 50: {
     6146              int length = input.readRawVarint32();
     6147              int limit = input.pushLimit(length);
     6148              if (!((mutable_bitField0_ & 0x00000020) == 0x00000020) && input.getBytesUntilLimit() > 0) {
     6149                visible_ = new java.util.ArrayList<java.lang.Boolean>();
     6150                mutable_bitField0_ |= 0x00000020;
     6151              }
     6152              while (input.getBytesUntilLimit() > 0) {
     6153                visible_.add(input.readBool());
     6154              }
     6155              input.popLimit(limit);
     6156              break;
     6157            }
     6158          }
     6159        }
     6160      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     6161        throw e.setUnfinishedMessage(this);
     6162      } catch (java.io.IOException e) {
     6163        throw new com.google.protobuf.InvalidProtocolBufferException(
     6164            e.getMessage()).setUnfinishedMessage(this);
     6165      } finally {
     6166        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
     6167          version_ = java.util.Collections.unmodifiableList(version_);
     6168        }
     6169        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     6170          timestamp_ = java.util.Collections.unmodifiableList(timestamp_);
     6171        }
     6172        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     6173          changeset_ = java.util.Collections.unmodifiableList(changeset_);
     6174        }
     6175        if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
     6176          uid_ = java.util.Collections.unmodifiableList(uid_);
     6177        }
     6178        if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
     6179          userSid_ = java.util.Collections.unmodifiableList(userSid_);
     6180        }
     6181        if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
     6182          visible_ = java.util.Collections.unmodifiableList(visible_);
     6183        }
     6184        makeExtensionsImmutable();
     6185      }
     6186    }
     6187    public static com.google.protobuf.Parser<DenseInfo> PARSER =
     6188        new com.google.protobuf.AbstractParser<DenseInfo>() {
     6189      public DenseInfo parsePartialFrom(
     6190          com.google.protobuf.CodedInputStream input,
     6191          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     6192          throws com.google.protobuf.InvalidProtocolBufferException {
     6193        return new DenseInfo(input, extensionRegistry);
     6194      }
     6195    };
     6196
     6197    @java.lang.Override
     6198    public com.google.protobuf.Parser<DenseInfo> getParserForType() {
     6199      return PARSER;
     6200    }
     6201
    37626202    // repeated int32 version = 1 [packed = true];
    37636203    public static final int VERSION_FIELD_NUMBER = 1;
    37646204    private java.util.List<java.lang.Integer> version_;
     6205    /**
     6206     * <code>repeated int32 version = 1 [packed = true];</code>
     6207     */
    37656208    public java.util.List<java.lang.Integer>
    37666209        getVersionList() {
    37676210      return version_;
    37686211    }
     6212    /**
     6213     * <code>repeated int32 version = 1 [packed = true];</code>
     6214     */
    37696215    public int getVersionCount() {
    37706216      return version_.size();
    37716217    }
     6218    /**
     6219     * <code>repeated int32 version = 1 [packed = true];</code>
     6220     */
    37726221    public int getVersion(int index) {
    37736222      return version_.get(index);
    37746223    }
    37756224    private int versionMemoizedSerializedSize = -1;
    3776    
     6225
    37776226    // repeated sint64 timestamp = 2 [packed = true];
    37786227    public static final int TIMESTAMP_FIELD_NUMBER = 2;
    37796228    private java.util.List<java.lang.Long> timestamp_;
     6229    /**
     6230     * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     6231     *
     6232     * <pre>
     6233     * DELTA coded
     6234     * </pre>
     6235     */
    37806236    public java.util.List<java.lang.Long>
    37816237        getTimestampList() {
    37826238      return timestamp_;
    37836239    }
     6240    /**
     6241     * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     6242     *
     6243     * <pre>
     6244     * DELTA coded
     6245     * </pre>
     6246     */
    37846247    public int getTimestampCount() {
    37856248      return timestamp_.size();
    37866249    }
     6250    /**
     6251     * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     6252     *
     6253     * <pre>
     6254     * DELTA coded
     6255     * </pre>
     6256     */
    37876257    public long getTimestamp(int index) {
    37886258      return timestamp_.get(index);
    37896259    }
    37906260    private int timestampMemoizedSerializedSize = -1;
    3791    
     6261
    37926262    // repeated sint64 changeset = 3 [packed = true];
    37936263    public static final int CHANGESET_FIELD_NUMBER = 3;
    37946264    private java.util.List<java.lang.Long> changeset_;
     6265    /**
     6266     * <code>repeated sint64 changeset = 3 [packed = true];</code>
     6267     *
     6268     * <pre>
     6269     * DELTA coded
     6270     * </pre>
     6271     */
    37956272    public java.util.List<java.lang.Long>
    37966273        getChangesetList() {
    37976274      return changeset_;
    37986275    }
     6276    /**
     6277     * <code>repeated sint64 changeset = 3 [packed = true];</code>
     6278     *
     6279     * <pre>
     6280     * DELTA coded
     6281     * </pre>
     6282     */
    37996283    public int getChangesetCount() {
    38006284      return changeset_.size();
    38016285    }
     6286    /**
     6287     * <code>repeated sint64 changeset = 3 [packed = true];</code>
     6288     *
     6289     * <pre>
     6290     * DELTA coded
     6291     * </pre>
     6292     */
    38026293    public long getChangeset(int index) {
    38036294      return changeset_.get(index);
    38046295    }
    38056296    private int changesetMemoizedSerializedSize = -1;
    3806    
     6297
    38076298    // repeated sint32 uid = 4 [packed = true];
    38086299    public static final int UID_FIELD_NUMBER = 4;
    38096300    private java.util.List<java.lang.Integer> uid_;
     6301    /**
     6302     * <code>repeated sint32 uid = 4 [packed = true];</code>
     6303     *
     6304     * <pre>
     6305     * DELTA coded
     6306     * </pre>
     6307     */
    38106308    public java.util.List<java.lang.Integer>
    38116309        getUidList() {
    38126310      return uid_;
    38136311    }
     6312    /**
     6313     * <code>repeated sint32 uid = 4 [packed = true];</code>
     6314     *
     6315     * <pre>
     6316     * DELTA coded
     6317     * </pre>
     6318     */
    38146319    public int getUidCount() {
    38156320      return uid_.size();
    38166321    }
     6322    /**
     6323     * <code>repeated sint32 uid = 4 [packed = true];</code>
     6324     *
     6325     * <pre>
     6326     * DELTA coded
     6327     * </pre>
     6328     */
    38176329    public int getUid(int index) {
    38186330      return uid_.get(index);
    38196331    }
    38206332    private int uidMemoizedSerializedSize = -1;
    3821    
     6333
    38226334    // repeated sint32 user_sid = 5 [packed = true];
    38236335    public static final int USER_SID_FIELD_NUMBER = 5;
    38246336    private java.util.List<java.lang.Integer> userSid_;
     6337    /**
     6338     * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     6339     *
     6340     * <pre>
     6341     * String IDs for usernames. DELTA coded
     6342     * </pre>
     6343     */
    38256344    public java.util.List<java.lang.Integer>
    38266345        getUserSidList() {
    38276346      return userSid_;
    38286347    }
     6348    /**
     6349     * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     6350     *
     6351     * <pre>
     6352     * String IDs for usernames. DELTA coded
     6353     * </pre>
     6354     */
    38296355    public int getUserSidCount() {
    38306356      return userSid_.size();
    38316357    }
     6358    /**
     6359     * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     6360     *
     6361     * <pre>
     6362     * String IDs for usernames. DELTA coded
     6363     * </pre>
     6364     */
    38326365    public int getUserSid(int index) {
    38336366      return userSid_.get(index);
    38346367    }
    38356368    private int userSidMemoizedSerializedSize = -1;
    3836    
     6369
     6370    // repeated bool visible = 6 [packed = true];
     6371    public static final int VISIBLE_FIELD_NUMBER = 6;
     6372    private java.util.List<java.lang.Boolean> visible_;
     6373    /**
     6374     * <code>repeated bool visible = 6 [packed = true];</code>
     6375     *
     6376     * <pre>
     6377     * The visible flag is used to store history information. It indicates that
     6378     * the current object version has been created by a delete operation on the
     6379     * OSM API.
     6380     * When a writer sets this flag, it MUST add a required_features tag with
     6381     * value "HistoricalInformation" to the HeaderBlock.
     6382     * If this flag is not available for some object it MUST be assumed to be
     6383     * true if the file has the required_features tag "HistoricalInformation"
     6384     * set.
     6385     * </pre>
     6386     */
     6387    public java.util.List<java.lang.Boolean>
     6388        getVisibleList() {
     6389      return visible_;
     6390    }
     6391    /**
     6392     * <code>repeated bool visible = 6 [packed = true];</code>
     6393     *
     6394     * <pre>
     6395     * The visible flag is used to store history information. It indicates that
     6396     * the current object version has been created by a delete operation on the
     6397     * OSM API.
     6398     * When a writer sets this flag, it MUST add a required_features tag with
     6399     * value "HistoricalInformation" to the HeaderBlock.
     6400     * If this flag is not available for some object it MUST be assumed to be
     6401     * true if the file has the required_features tag "HistoricalInformation"
     6402     * set.
     6403     * </pre>
     6404     */
     6405    public int getVisibleCount() {
     6406      return visible_.size();
     6407    }
     6408    /**
     6409     * <code>repeated bool visible = 6 [packed = true];</code>
     6410     *
     6411     * <pre>
     6412     * The visible flag is used to store history information. It indicates that
     6413     * the current object version has been created by a delete operation on the
     6414     * OSM API.
     6415     * When a writer sets this flag, it MUST add a required_features tag with
     6416     * value "HistoricalInformation" to the HeaderBlock.
     6417     * If this flag is not available for some object it MUST be assumed to be
     6418     * true if the file has the required_features tag "HistoricalInformation"
     6419     * set.
     6420     * </pre>
     6421     */
     6422    public boolean getVisible(int index) {
     6423      return visible_.get(index);
     6424    }
     6425    private int visibleMemoizedSerializedSize = -1;
     6426
    38376427    private void initFields() {
    3838       version_ = java.util.Collections.emptyList();;
    3839       timestamp_ = java.util.Collections.emptyList();;
    3840       changeset_ = java.util.Collections.emptyList();;
    3841       uid_ = java.util.Collections.emptyList();;
    3842       userSid_ = java.util.Collections.emptyList();;
     6428      version_ = java.util.Collections.emptyList();
     6429      timestamp_ = java.util.Collections.emptyList();
     6430      changeset_ = java.util.Collections.emptyList();
     6431      uid_ = java.util.Collections.emptyList();
     6432      userSid_ = java.util.Collections.emptyList();
     6433      visible_ = java.util.Collections.emptyList();
    38436434    }
    38446435    private byte memoizedIsInitialized = -1;
     
    38466437      byte isInitialized = memoizedIsInitialized;
    38476438      if (isInitialized != -1) return isInitialized == 1;
    3848      
     6439
    38496440      memoizedIsInitialized = 1;
    38506441      return true;
    38516442    }
    3852    
     6443
    38536444    public void writeTo(com.google.protobuf.CodedOutputStream output)
    38546445                        throws java.io.IOException {
     
    38896480        output.writeSInt32NoTag(userSid_.get(i));
    38906481      }
    3891     }
    3892    
     6482      if (getVisibleList().size() > 0) {
     6483        output.writeRawVarint32(50);
     6484        output.writeRawVarint32(visibleMemoizedSerializedSize);
     6485      }
     6486      for (int i = 0; i < visible_.size(); i++) {
     6487        output.writeBoolNoTag(visible_.get(i));
     6488      }
     6489    }
     6490
    38936491    private int memoizedSerializedSize = -1;
    38946492    public int getSerializedSize() {
    38956493      int size = memoizedSerializedSize;
    38966494      if (size != -1) return size;
    3897    
     6495
    38986496      size = 0;
    38996497      {
     
    39676565        userSidMemoizedSerializedSize = dataSize;
    39686566      }
     6567      {
     6568        int dataSize = 0;
     6569        dataSize = 1 * getVisibleList().size();
     6570        size += dataSize;
     6571        if (!getVisibleList().isEmpty()) {
     6572          size += 1;
     6573          size += com.google.protobuf.CodedOutputStream
     6574              .computeInt32SizeNoTag(dataSize);
     6575        }
     6576        visibleMemoizedSerializedSize = dataSize;
     6577      }
    39696578      memoizedSerializedSize = size;
    39706579      return size;
    39716580    }
    3972    
     6581
    39736582    private static final long serialVersionUID = 0L;
    39746583    @java.lang.Override
     
    39776586      return super.writeReplace();
    39786587    }
    3979    
     6588
    39806589    public static crosby.binary.Osmformat.DenseInfo parseFrom(
    39816590        com.google.protobuf.ByteString data)
    39826591        throws com.google.protobuf.InvalidProtocolBufferException {
    3983       return newBuilder().mergeFrom(data).buildParsed();
     6592      return PARSER.parseFrom(data);
    39846593    }
    39856594    public static crosby.binary.Osmformat.DenseInfo parseFrom(
     
    39876596        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    39886597        throws com.google.protobuf.InvalidProtocolBufferException {
    3989       return newBuilder().mergeFrom(data, extensionRegistry)
    3990                .buildParsed();
     6598      return PARSER.parseFrom(data, extensionRegistry);
    39916599    }
    39926600    public static crosby.binary.Osmformat.DenseInfo parseFrom(byte[] data)
    39936601        throws com.google.protobuf.InvalidProtocolBufferException {
    3994       return newBuilder().mergeFrom(data).buildParsed();
     6602      return PARSER.parseFrom(data);
    39956603    }
    39966604    public static crosby.binary.Osmformat.DenseInfo parseFrom(
     
    39986606        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    39996607        throws com.google.protobuf.InvalidProtocolBufferException {
    4000       return newBuilder().mergeFrom(data, extensionRegistry)
    4001                .buildParsed();
     6608      return PARSER.parseFrom(data, extensionRegistry);
    40026609    }
    40036610    public static crosby.binary.Osmformat.DenseInfo parseFrom(java.io.InputStream input)
    40046611        throws java.io.IOException {
    4005       return newBuilder().mergeFrom(input).buildParsed();
     6612      return PARSER.parseFrom(input);
    40066613    }
    40076614    public static crosby.binary.Osmformat.DenseInfo parseFrom(
     
    40096616        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    40106617        throws java.io.IOException {
    4011       return newBuilder().mergeFrom(input, extensionRegistry)
    4012                .buildParsed();
     6618      return PARSER.parseFrom(input, extensionRegistry);
    40136619    }
    40146620    public static crosby.binary.Osmformat.DenseInfo parseDelimitedFrom(java.io.InputStream input)
    40156621        throws java.io.IOException {
    4016       Builder builder = newBuilder();
    4017       if (builder.mergeDelimitedFrom(input)) {
    4018         return builder.buildParsed();
    4019       } else {
    4020         return null;
    4021       }
     6622      return PARSER.parseDelimitedFrom(input);
    40226623    }
    40236624    public static crosby.binary.Osmformat.DenseInfo parseDelimitedFrom(
     
    40256626        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    40266627        throws java.io.IOException {
    4027       Builder builder = newBuilder();
    4028       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    4029         return builder.buildParsed();
    4030       } else {
    4031         return null;
    4032       }
     6628      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    40336629    }
    40346630    public static crosby.binary.Osmformat.DenseInfo parseFrom(
    40356631        com.google.protobuf.CodedInputStream input)
    40366632        throws java.io.IOException {
    4037       return newBuilder().mergeFrom(input).buildParsed();
     6633      return PARSER.parseFrom(input);
    40386634    }
    40396635    public static crosby.binary.Osmformat.DenseInfo parseFrom(
     
    40416637        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    40426638        throws java.io.IOException {
    4043       return newBuilder().mergeFrom(input, extensionRegistry)
    4044                .buildParsed();
    4045     }
    4046    
     6639      return PARSER.parseFrom(input, extensionRegistry);
     6640    }
     6641
    40476642    public static Builder newBuilder() { return Builder.create(); }
    40486643    public Builder newBuilderForType() { return newBuilder(); }
     
    40516646    }
    40526647    public Builder toBuilder() { return newBuilder(this); }
    4053    
     6648
     6649    /**
     6650     * Protobuf type {@code OSMPBF.DenseInfo}
     6651     *
     6652     * <pre>
     6653     ** Optional metadata that may be included into each primitive. Special dense format used in DenseNodes.
     6654     * </pre>
     6655     */
    40546656    public static final class Builder extends
    40556657        com.google.protobuf.GeneratedMessageLite.Builder<
     
    40606662        maybeForceBuilderInitialization();
    40616663      }
    4062      
     6664
    40636665      private void maybeForceBuilderInitialization() {
    40646666      }
     
    40666668        return new Builder();
    40676669      }
    4068      
     6670
    40696671      public Builder clear() {
    40706672        super.clear();
    4071         version_ = java.util.Collections.emptyList();;
     6673        version_ = java.util.Collections.emptyList();
    40726674        bitField0_ = (bitField0_ & ~0x00000001);
    4073         timestamp_ = java.util.Collections.emptyList();;
     6675        timestamp_ = java.util.Collections.emptyList();
    40746676        bitField0_ = (bitField0_ & ~0x00000002);
    4075         changeset_ = java.util.Collections.emptyList();;
     6677        changeset_ = java.util.Collections.emptyList();
    40766678        bitField0_ = (bitField0_ & ~0x00000004);
    4077         uid_ = java.util.Collections.emptyList();;
     6679        uid_ = java.util.Collections.emptyList();
    40786680        bitField0_ = (bitField0_ & ~0x00000008);
    4079         userSid_ = java.util.Collections.emptyList();;
     6681        userSid_ = java.util.Collections.emptyList();
    40806682        bitField0_ = (bitField0_ & ~0x00000010);
    4081         return this;
    4082       }
    4083      
     6683        visible_ = java.util.Collections.emptyList();
     6684        bitField0_ = (bitField0_ & ~0x00000020);
     6685        return this;
     6686      }
     6687
    40846688      public Builder clone() {
    40856689        return create().mergeFrom(buildPartial());
    40866690      }
    4087      
     6691
    40886692      public crosby.binary.Osmformat.DenseInfo getDefaultInstanceForType() {
    40896693        return crosby.binary.Osmformat.DenseInfo.getDefaultInstance();
    40906694      }
    4091      
     6695
    40926696      public crosby.binary.Osmformat.DenseInfo build() {
    40936697        crosby.binary.Osmformat.DenseInfo result = buildPartial();
     
    40976701        return result;
    40986702      }
    4099      
    4100       private crosby.binary.Osmformat.DenseInfo buildParsed()
    4101           throws com.google.protobuf.InvalidProtocolBufferException {
    4102         crosby.binary.Osmformat.DenseInfo result = buildPartial();
    4103         if (!result.isInitialized()) {
    4104           throw newUninitializedMessageException(
    4105             result).asInvalidProtocolBufferException();
    4106         }
    4107         return result;
    4108       }
    4109      
     6703
    41106704      public crosby.binary.Osmformat.DenseInfo buildPartial() {
    41116705        crosby.binary.Osmformat.DenseInfo result = new crosby.binary.Osmformat.DenseInfo(this);
    4112         //int from_bitField0_ = bitField0_;
     6706        int from_bitField0_ = bitField0_;
    41136707        if (((bitField0_ & 0x00000001) == 0x00000001)) {
    41146708          version_ = java.util.Collections.unmodifiableList(version_);
     
    41366730        }
    41376731        result.userSid_ = userSid_;
     6732        if (((bitField0_ & 0x00000020) == 0x00000020)) {
     6733          visible_ = java.util.Collections.unmodifiableList(visible_);
     6734          bitField0_ = (bitField0_ & ~0x00000020);
     6735        }
     6736        result.visible_ = visible_;
    41386737        return result;
    41396738      }
    4140      
     6739
    41416740      public Builder mergeFrom(crosby.binary.Osmformat.DenseInfo other) {
    41426741        if (other == crosby.binary.Osmformat.DenseInfo.getDefaultInstance()) return this;
     
    41916790         
    41926791        }
    4193         return this;
    4194       }
    4195      
     6792        if (!other.visible_.isEmpty()) {
     6793          if (visible_.isEmpty()) {
     6794            visible_ = other.visible_;
     6795            bitField0_ = (bitField0_ & ~0x00000020);
     6796          } else {
     6797            ensureVisibleIsMutable();
     6798            visible_.addAll(other.visible_);
     6799          }
     6800         
     6801        }
     6802        return this;
     6803      }
     6804
    41966805      public final boolean isInitialized() {
    41976806        return true;
    41986807      }
    4199      
     6808
    42006809      public Builder mergeFrom(
    42016810          com.google.protobuf.CodedInputStream input,
    42026811          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    42036812          throws java.io.IOException {
    4204         while (true) {
    4205           int tag = input.readTag();
    4206           switch (tag) {
    4207             case 0:
    4208              
    4209               return this;
    4210             default: {
    4211               if (!parseUnknownField(input, extensionRegistry, tag)) {
    4212                
    4213                 return this;
    4214               }
    4215               break;
    4216             }
    4217             case 8: {
    4218               ensureVersionIsMutable();
    4219               version_.add(input.readInt32());
    4220               break;
    4221             }
    4222             case 10: {
    4223               int length = input.readRawVarint32();
    4224               int limit = input.pushLimit(length);
    4225               while (input.getBytesUntilLimit() > 0) {
    4226                 addVersion(input.readInt32());
    4227               }
    4228               input.popLimit(limit);
    4229               break;
    4230             }
    4231             case 16: {
    4232               ensureTimestampIsMutable();
    4233               timestamp_.add(input.readSInt64());
    4234               break;
    4235             }
    4236             case 18: {
    4237               int length = input.readRawVarint32();
    4238               int limit = input.pushLimit(length);
    4239               while (input.getBytesUntilLimit() > 0) {
    4240                 addTimestamp(input.readSInt64());
    4241               }
    4242               input.popLimit(limit);
    4243               break;
    4244             }
    4245             case 24: {
    4246               ensureChangesetIsMutable();
    4247               changeset_.add(input.readSInt64());
    4248               break;
    4249             }
    4250             case 26: {
    4251               int length = input.readRawVarint32();
    4252               int limit = input.pushLimit(length);
    4253               while (input.getBytesUntilLimit() > 0) {
    4254                 addChangeset(input.readSInt64());
    4255               }
    4256               input.popLimit(limit);
    4257               break;
    4258             }
    4259             case 32: {
    4260               ensureUidIsMutable();
    4261               uid_.add(input.readSInt32());
    4262               break;
    4263             }
    4264             case 34: {
    4265               int length = input.readRawVarint32();
    4266               int limit = input.pushLimit(length);
    4267               while (input.getBytesUntilLimit() > 0) {
    4268                 addUid(input.readSInt32());
    4269               }
    4270               input.popLimit(limit);
    4271               break;
    4272             }
    4273             case 40: {
    4274               ensureUserSidIsMutable();
    4275               userSid_.add(input.readSInt32());
    4276               break;
    4277             }
    4278             case 42: {
    4279               int length = input.readRawVarint32();
    4280               int limit = input.pushLimit(length);
    4281               while (input.getBytesUntilLimit() > 0) {
    4282                 addUserSid(input.readSInt32());
    4283               }
    4284               input.popLimit(limit);
    4285               break;
    4286             }
     6813        crosby.binary.Osmformat.DenseInfo parsedMessage = null;
     6814        try {
     6815          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     6816        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     6817          parsedMessage = (crosby.binary.Osmformat.DenseInfo) e.getUnfinishedMessage();
     6818          throw e;
     6819        } finally {
     6820          if (parsedMessage != null) {
     6821            mergeFrom(parsedMessage);
    42876822          }
    42886823        }
    4289       }
    4290      
     6824        return this;
     6825      }
    42916826      private int bitField0_;
    4292      
     6827
    42936828      // repeated int32 version = 1 [packed = true];
    4294       private java.util.List<java.lang.Integer> version_ = java.util.Collections.emptyList();;
     6829      private java.util.List<java.lang.Integer> version_ = java.util.Collections.emptyList();
    42956830      private void ensureVersionIsMutable() {
    42966831        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
     
    42996834         }
    43006835      }
     6836      /**
     6837       * <code>repeated int32 version = 1 [packed = true];</code>
     6838       */
    43016839      public java.util.List<java.lang.Integer>
    43026840          getVersionList() {
    43036841        return java.util.Collections.unmodifiableList(version_);
    43046842      }
     6843      /**
     6844       * <code>repeated int32 version = 1 [packed = true];</code>
     6845       */
    43056846      public int getVersionCount() {
    43066847        return version_.size();
    43076848      }
     6849      /**
     6850       * <code>repeated int32 version = 1 [packed = true];</code>
     6851       */
    43086852      public int getVersion(int index) {
    43096853        return version_.get(index);
    43106854      }
     6855      /**
     6856       * <code>repeated int32 version = 1 [packed = true];</code>
     6857       */
    43116858      public Builder setVersion(
    43126859          int index, int value) {
     
    43166863        return this;
    43176864      }
     6865      /**
     6866       * <code>repeated int32 version = 1 [packed = true];</code>
     6867       */
    43186868      public Builder addVersion(int value) {
    43196869        ensureVersionIsMutable();
     
    43226872        return this;
    43236873      }
     6874      /**
     6875       * <code>repeated int32 version = 1 [packed = true];</code>
     6876       */
    43246877      public Builder addAllVersion(
    43256878          java.lang.Iterable<? extends java.lang.Integer> values) {
     
    43296882        return this;
    43306883      }
     6884      /**
     6885       * <code>repeated int32 version = 1 [packed = true];</code>
     6886       */
    43316887      public Builder clearVersion() {
    4332         version_ = java.util.Collections.emptyList();;
     6888        version_ = java.util.Collections.emptyList();
    43336889        bitField0_ = (bitField0_ & ~0x00000001);
    43346890       
    43356891        return this;
    43366892      }
    4337      
     6893
    43386894      // repeated sint64 timestamp = 2 [packed = true];
    4339       private java.util.List<java.lang.Long> timestamp_ = java.util.Collections.emptyList();;
     6895      private java.util.List<java.lang.Long> timestamp_ = java.util.Collections.emptyList();
    43406896      private void ensureTimestampIsMutable() {
    43416897        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
     
    43446900         }
    43456901      }
     6902      /**
     6903       * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     6904       *
     6905       * <pre>
     6906       * DELTA coded
     6907       * </pre>
     6908       */
    43466909      public java.util.List<java.lang.Long>
    43476910          getTimestampList() {
    43486911        return java.util.Collections.unmodifiableList(timestamp_);
    43496912      }
     6913      /**
     6914       * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     6915       *
     6916       * <pre>
     6917       * DELTA coded
     6918       * </pre>
     6919       */
    43506920      public int getTimestampCount() {
    43516921        return timestamp_.size();
    43526922      }
     6923      /**
     6924       * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     6925       *
     6926       * <pre>
     6927       * DELTA coded
     6928       * </pre>
     6929       */
    43536930      public long getTimestamp(int index) {
    43546931        return timestamp_.get(index);
    43556932      }
     6933      /**
     6934       * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     6935       *
     6936       * <pre>
     6937       * DELTA coded
     6938       * </pre>
     6939       */
    43566940      public Builder setTimestamp(
    43576941          int index, long value) {
     
    43616945        return this;
    43626946      }
     6947      /**
     6948       * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     6949       *
     6950       * <pre>
     6951       * DELTA coded
     6952       * </pre>
     6953       */
    43636954      public Builder addTimestamp(long value) {
    43646955        ensureTimestampIsMutable();
     
    43676958        return this;
    43686959      }
     6960      /**
     6961       * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     6962       *
     6963       * <pre>
     6964       * DELTA coded
     6965       * </pre>
     6966       */
    43696967      public Builder addAllTimestamp(
    43706968          java.lang.Iterable<? extends java.lang.Long> values) {
     
    43746972        return this;
    43756973      }
     6974      /**
     6975       * <code>repeated sint64 timestamp = 2 [packed = true];</code>
     6976       *
     6977       * <pre>
     6978       * DELTA coded
     6979       * </pre>
     6980       */
    43766981      public Builder clearTimestamp() {
    4377         timestamp_ = java.util.Collections.emptyList();;
     6982        timestamp_ = java.util.Collections.emptyList();
    43786983        bitField0_ = (bitField0_ & ~0x00000002);
    43796984       
    43806985        return this;
    43816986      }
    4382      
     6987
    43836988      // repeated sint64 changeset = 3 [packed = true];
    4384       private java.util.List<java.lang.Long> changeset_ = java.util.Collections.emptyList();;
     6989      private java.util.List<java.lang.Long> changeset_ = java.util.Collections.emptyList();
    43856990      private void ensureChangesetIsMutable() {
    43866991        if (!((bitField0_ & 0x00000004) == 0x00000004)) {
     
    43896994         }
    43906995      }
     6996      /**
     6997       * <code>repeated sint64 changeset = 3 [packed = true];</code>
     6998       *
     6999       * <pre>
     7000       * DELTA coded
     7001       * </pre>
     7002       */
    43917003      public java.util.List<java.lang.Long>
    43927004          getChangesetList() {
    43937005        return java.util.Collections.unmodifiableList(changeset_);
    43947006      }
     7007      /**
     7008       * <code>repeated sint64 changeset = 3 [packed = true];</code>
     7009       *
     7010       * <pre>
     7011       * DELTA coded
     7012       * </pre>
     7013       */
    43957014      public int getChangesetCount() {
    43967015        return changeset_.size();
    43977016      }
     7017      /**
     7018       * <code>repeated sint64 changeset = 3 [packed = true];</code>
     7019       *
     7020       * <pre>
     7021       * DELTA coded
     7022       * </pre>
     7023       */
    43987024      public long getChangeset(int index) {
    43997025        return changeset_.get(index);
    44007026      }
     7027      /**
     7028       * <code>repeated sint64 changeset = 3 [packed = true];</code>
     7029       *
     7030       * <pre>
     7031       * DELTA coded
     7032       * </pre>
     7033       */
    44017034      public Builder setChangeset(
    44027035          int index, long value) {
     
    44067039        return this;
    44077040      }
     7041      /**
     7042       * <code>repeated sint64 changeset = 3 [packed = true];</code>
     7043       *
     7044       * <pre>
     7045       * DELTA coded
     7046       * </pre>
     7047       */
    44087048      public Builder addChangeset(long value) {
    44097049        ensureChangesetIsMutable();
     
    44127052        return this;
    44137053      }
     7054      /**
     7055       * <code>repeated sint64 changeset = 3 [packed = true];</code>
     7056       *
     7057       * <pre>
     7058       * DELTA coded
     7059       * </pre>
     7060       */
    44147061      public Builder addAllChangeset(
    44157062          java.lang.Iterable<? extends java.lang.Long> values) {
     
    44197066        return this;
    44207067      }
     7068      /**
     7069       * <code>repeated sint64 changeset = 3 [packed = true];</code>
     7070       *
     7071       * <pre>
     7072       * DELTA coded
     7073       * </pre>
     7074       */
    44217075      public Builder clearChangeset() {
    4422         changeset_ = java.util.Collections.emptyList();;
     7076        changeset_ = java.util.Collections.emptyList();
    44237077        bitField0_ = (bitField0_ & ~0x00000004);
    44247078       
    44257079        return this;
    44267080      }
    4427      
     7081
    44287082      // repeated sint32 uid = 4 [packed = true];
    4429       private java.util.List<java.lang.Integer> uid_ = java.util.Collections.emptyList();;
     7083      private java.util.List<java.lang.Integer> uid_ = java.util.Collections.emptyList();
    44307084      private void ensureUidIsMutable() {
    44317085        if (!((bitField0_ & 0x00000008) == 0x00000008)) {
     
    44347088         }
    44357089      }
     7090      /**
     7091       * <code>repeated sint32 uid = 4 [packed = true];</code>
     7092       *
     7093       * <pre>
     7094       * DELTA coded
     7095       * </pre>
     7096       */
    44367097      public java.util.List<java.lang.Integer>
    44377098          getUidList() {
    44387099        return java.util.Collections.unmodifiableList(uid_);
    44397100      }
     7101      /**
     7102       * <code>repeated sint32 uid = 4 [packed = true];</code>
     7103       *
     7104       * <pre>
     7105       * DELTA coded
     7106       * </pre>
     7107       */
    44407108      public int getUidCount() {
    44417109        return uid_.size();
    44427110      }
     7111      /**
     7112       * <code>repeated sint32 uid = 4 [packed = true];</code>
     7113       *
     7114       * <pre>
     7115       * DELTA coded
     7116       * </pre>
     7117       */
    44437118      public int getUid(int index) {
    44447119        return uid_.get(index);
    44457120      }
     7121      /**
     7122       * <code>repeated sint32 uid = 4 [packed = true];</code>
     7123       *
     7124       * <pre>
     7125       * DELTA coded
     7126       * </pre>
     7127       */
    44467128      public Builder setUid(
    44477129          int index, int value) {
     
    44517133        return this;
    44527134      }
     7135      /**
     7136       * <code>repeated sint32 uid = 4 [packed = true];</code>
     7137       *
     7138       * <pre>
     7139       * DELTA coded
     7140       * </pre>
     7141       */
    44537142      public Builder addUid(int value) {
    44547143        ensureUidIsMutable();
     
    44577146        return this;
    44587147      }
     7148      /**
     7149       * <code>repeated sint32 uid = 4 [packed = true];</code>
     7150       *
     7151       * <pre>
     7152       * DELTA coded
     7153       * </pre>
     7154       */
    44597155      public Builder addAllUid(
    44607156          java.lang.Iterable<? extends java.lang.Integer> values) {
     
    44647160        return this;
    44657161      }
     7162      /**
     7163       * <code>repeated sint32 uid = 4 [packed = true];</code>
     7164       *
     7165       * <pre>
     7166       * DELTA coded
     7167       * </pre>
     7168       */
    44667169      public Builder clearUid() {
    4467         uid_ = java.util.Collections.emptyList();;
     7170        uid_ = java.util.Collections.emptyList();
    44687171        bitField0_ = (bitField0_ & ~0x00000008);
    44697172       
    44707173        return this;
    44717174      }
    4472      
     7175
    44737176      // repeated sint32 user_sid = 5 [packed = true];
    4474       private java.util.List<java.lang.Integer> userSid_ = java.util.Collections.emptyList();;
     7177      private java.util.List<java.lang.Integer> userSid_ = java.util.Collections.emptyList();
    44757178      private void ensureUserSidIsMutable() {
    44767179        if (!((bitField0_ & 0x00000010) == 0x00000010)) {
     
    44797182         }
    44807183      }
     7184      /**
     7185       * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     7186       *
     7187       * <pre>
     7188       * String IDs for usernames. DELTA coded
     7189       * </pre>
     7190       */
    44817191      public java.util.List<java.lang.Integer>
    44827192          getUserSidList() {
    44837193        return java.util.Collections.unmodifiableList(userSid_);
    44847194      }
     7195      /**
     7196       * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     7197       *
     7198       * <pre>
     7199       * String IDs for usernames. DELTA coded
     7200       * </pre>
     7201       */
    44857202      public int getUserSidCount() {
    44867203        return userSid_.size();
    44877204      }
     7205      /**
     7206       * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     7207       *
     7208       * <pre>
     7209       * String IDs for usernames. DELTA coded
     7210       * </pre>
     7211       */
    44887212      public int getUserSid(int index) {
    44897213        return userSid_.get(index);
    44907214      }
     7215      /**
     7216       * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     7217       *
     7218       * <pre>
     7219       * String IDs for usernames. DELTA coded
     7220       * </pre>
     7221       */
    44917222      public Builder setUserSid(
    44927223          int index, int value) {
     
    44967227        return this;
    44977228      }
     7229      /**
     7230       * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     7231       *
     7232       * <pre>
     7233       * String IDs for usernames. DELTA coded
     7234       * </pre>
     7235       */
    44987236      public Builder addUserSid(int value) {
    44997237        ensureUserSidIsMutable();
     
    45027240        return this;
    45037241      }
     7242      /**
     7243       * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     7244       *
     7245       * <pre>
     7246       * String IDs for usernames. DELTA coded
     7247       * </pre>
     7248       */
    45047249      public Builder addAllUserSid(
    45057250          java.lang.Iterable<? extends java.lang.Integer> values) {
     
    45097254        return this;
    45107255      }
     7256      /**
     7257       * <code>repeated sint32 user_sid = 5 [packed = true];</code>
     7258       *
     7259       * <pre>
     7260       * String IDs for usernames. DELTA coded
     7261       * </pre>
     7262       */
    45117263      public Builder clearUserSid() {
    4512         userSid_ = java.util.Collections.emptyList();;
     7264        userSid_ = java.util.Collections.emptyList();
    45137265        bitField0_ = (bitField0_ & ~0x00000010);
    45147266       
    45157267        return this;
    45167268      }
    4517      
     7269
     7270      // repeated bool visible = 6 [packed = true];
     7271      private java.util.List<java.lang.Boolean> visible_ = java.util.Collections.emptyList();
     7272      private void ensureVisibleIsMutable() {
     7273        if (!((bitField0_ & 0x00000020) == 0x00000020)) {
     7274          visible_ = new java.util.ArrayList<java.lang.Boolean>(visible_);
     7275          bitField0_ |= 0x00000020;
     7276         }
     7277      }
     7278      /**
     7279       * <code>repeated bool visible = 6 [packed = true];</code>
     7280       *
     7281       * <pre>
     7282       * The visible flag is used to store history information. It indicates that
     7283       * the current object version has been created by a delete operation on the
     7284       * OSM API.
     7285       * When a writer sets this flag, it MUST add a required_features tag with
     7286       * value "HistoricalInformation" to the HeaderBlock.
     7287       * If this flag is not available for some object it MUST be assumed to be
     7288       * true if the file has the required_features tag "HistoricalInformation"
     7289       * set.
     7290       * </pre>
     7291       */
     7292      public java.util.List<java.lang.Boolean>
     7293          getVisibleList() {
     7294        return java.util.Collections.unmodifiableList(visible_);
     7295      }
     7296      /**
     7297       * <code>repeated bool visible = 6 [packed = true];</code>
     7298       *
     7299       * <pre>
     7300       * The visible flag is used to store history information. It indicates that
     7301       * the current object version has been created by a delete operation on the
     7302       * OSM API.
     7303       * When a writer sets this flag, it MUST add a required_features tag with
     7304       * value "HistoricalInformation" to the HeaderBlock.
     7305       * If this flag is not available for some object it MUST be assumed to be
     7306       * true if the file has the required_features tag "HistoricalInformation"
     7307       * set.
     7308       * </pre>
     7309       */
     7310      public int getVisibleCount() {
     7311        return visible_.size();
     7312      }
     7313      /**
     7314       * <code>repeated bool visible = 6 [packed = true];</code>
     7315       *
     7316       * <pre>
     7317       * The visible flag is used to store history information. It indicates that
     7318       * the current object version has been created by a delete operation on the
     7319       * OSM API.
     7320       * When a writer sets this flag, it MUST add a required_features tag with
     7321       * value "HistoricalInformation" to the HeaderBlock.
     7322       * If this flag is not available for some object it MUST be assumed to be
     7323       * true if the file has the required_features tag "HistoricalInformation"
     7324       * set.
     7325       * </pre>
     7326       */
     7327      public boolean getVisible(int index) {
     7328        return visible_.get(index);
     7329      }
     7330      /**
     7331       * <code>repeated bool visible = 6 [packed = true];</code>
     7332       *
     7333       * <pre>
     7334       * The visible flag is used to store history information. It indicates that
     7335       * the current object version has been created by a delete operation on the
     7336       * OSM API.
     7337       * When a writer sets this flag, it MUST add a required_features tag with
     7338       * value "HistoricalInformation" to the HeaderBlock.
     7339       * If this flag is not available for some object it MUST be assumed to be
     7340       * true if the file has the required_features tag "HistoricalInformation"
     7341       * set.
     7342       * </pre>
     7343       */
     7344      public Builder setVisible(
     7345          int index, boolean value) {
     7346        ensureVisibleIsMutable();
     7347        visible_.set(index, value);
     7348       
     7349        return this;
     7350      }
     7351      /**
     7352       * <code>repeated bool visible = 6 [packed = true];</code>
     7353       *
     7354       * <pre>
     7355       * The visible flag is used to store history information. It indicates that
     7356       * the current object version has been created by a delete operation on the
     7357       * OSM API.
     7358       * When a writer sets this flag, it MUST add a required_features tag with
     7359       * value "HistoricalInformation" to the HeaderBlock.
     7360       * If this flag is not available for some object it MUST be assumed to be
     7361       * true if the file has the required_features tag "HistoricalInformation"
     7362       * set.
     7363       * </pre>
     7364       */
     7365      public Builder addVisible(boolean value) {
     7366        ensureVisibleIsMutable();
     7367        visible_.add(value);
     7368       
     7369        return this;
     7370      }
     7371      /**
     7372       * <code>repeated bool visible = 6 [packed = true];</code>
     7373       *
     7374       * <pre>
     7375       * The visible flag is used to store history information. It indicates that
     7376       * the current object version has been created by a delete operation on the
     7377       * OSM API.
     7378       * When a writer sets this flag, it MUST add a required_features tag with
     7379       * value "HistoricalInformation" to the HeaderBlock.
     7380       * If this flag is not available for some object it MUST be assumed to be
     7381       * true if the file has the required_features tag "HistoricalInformation"
     7382       * set.
     7383       * </pre>
     7384       */
     7385      public Builder addAllVisible(
     7386          java.lang.Iterable<? extends java.lang.Boolean> values) {
     7387        ensureVisibleIsMutable();
     7388        super.addAll(values, visible_);
     7389       
     7390        return this;
     7391      }
     7392      /**
     7393       * <code>repeated bool visible = 6 [packed = true];</code>
     7394       *
     7395       * <pre>
     7396       * The visible flag is used to store history information. It indicates that
     7397       * the current object version has been created by a delete operation on the
     7398       * OSM API.
     7399       * When a writer sets this flag, it MUST add a required_features tag with
     7400       * value "HistoricalInformation" to the HeaderBlock.
     7401       * If this flag is not available for some object it MUST be assumed to be
     7402       * true if the file has the required_features tag "HistoricalInformation"
     7403       * set.
     7404       * </pre>
     7405       */
     7406      public Builder clearVisible() {
     7407        visible_ = java.util.Collections.emptyList();
     7408        bitField0_ = (bitField0_ & ~0x00000020);
     7409       
     7410        return this;
     7411      }
     7412
    45187413      // @@protoc_insertion_point(builder_scope:OSMPBF.DenseInfo)
    45197414    }
    4520    
     7415
    45217416    static {
    45227417      defaultInstance = new DenseInfo(true);
    45237418      defaultInstance.initFields();
    45247419    }
    4525    
     7420
    45267421    // @@protoc_insertion_point(class_scope:OSMPBF.DenseInfo)
    45277422  }
    4528  
     7423
    45297424  public interface ChangeSetOrBuilder
    45307425      extends com.google.protobuf.MessageLiteOrBuilder {
    4531    
     7426
    45327427    // required int64 id = 1;
     7428    /**
     7429     * <code>required int64 id = 1;</code>
     7430     *
     7431     * <pre>
     7432     *   
     7433     *   // Parallel arrays.
     7434     *   repeated uint32 keys = 2 [packed = true]; // String IDs.
     7435     *   repeated uint32 vals = 3 [packed = true]; // String IDs.
     7436     *
     7437     *   optional Info info = 4;
     7438     * </pre>
     7439     */
    45337440    boolean hasId();
     7441    /**
     7442     * <code>required int64 id = 1;</code>
     7443     *
     7444     * <pre>
     7445     *   
     7446     *   // Parallel arrays.
     7447     *   repeated uint32 keys = 2 [packed = true]; // String IDs.
     7448     *   repeated uint32 vals = 3 [packed = true]; // String IDs.
     7449     *
     7450     *   optional Info info = 4;
     7451     * </pre>
     7452     */
    45347453    long getId();
    45357454  }
     7455  /**
     7456   * Protobuf type {@code OSMPBF.ChangeSet}
     7457   *
     7458   * <pre>
     7459   * THIS IS STUB DESIGN FOR CHANGESETS. NOT USED RIGHT NOW.
     7460   * TODO:    REMOVE THIS?
     7461   * </pre>
     7462   */
    45367463  public static final class ChangeSet extends
    45377464      com.google.protobuf.GeneratedMessageLite
    45387465      implements ChangeSetOrBuilder {
    45397466    // Use ChangeSet.newBuilder() to construct.
    4540     private ChangeSet(Builder builder) {
     7467    private ChangeSet(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    45417468      super(builder);
     7469
    45427470    }
    45437471    private ChangeSet(boolean noInit) {}
    4544    
     7472
    45457473    private static final ChangeSet defaultInstance;
    45467474    public static ChangeSet getDefaultInstance() {
    45477475      return defaultInstance;
    45487476    }
    4549    
     7477
    45507478    public ChangeSet getDefaultInstanceForType() {
    45517479      return defaultInstance;
    45527480    }
    4553    
    4554     private int bitField0_;
    4555     // required int64 id = 1;
    4556     public static final int ID_FIELD_NUMBER = 1;
    4557     private long id_;
    4558     public boolean hasId() {
    4559       return ((bitField0_ & 0x00000001) == 0x00000001);
    4560     }
    4561     public long getId() {
    4562       return id_;
    4563     }
    4564    
    4565     private void initFields() {
    4566       id_ = 0L;
    4567     }
    4568     private byte memoizedIsInitialized = -1;
    4569     public final boolean isInitialized() {
    4570       byte isInitialized = memoizedIsInitialized;
    4571       if (isInitialized != -1) return isInitialized == 1;
    4572      
    4573       if (!hasId()) {
    4574         memoizedIsInitialized = 0;
    4575         return false;
    4576       }
    4577       memoizedIsInitialized = 1;
    4578       return true;
    4579     }
    4580    
    4581     public void writeTo(com.google.protobuf.CodedOutputStream output)
    4582                         throws java.io.IOException {
    4583       getSerializedSize();
    4584       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    4585         output.writeInt64(1, id_);
    4586       }
    4587     }
    4588    
    4589     private int memoizedSerializedSize = -1;
    4590     public int getSerializedSize() {
    4591       int size = memoizedSerializedSize;
    4592       if (size != -1) return size;
    4593    
    4594       size = 0;
    4595       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    4596         size += com.google.protobuf.CodedOutputStream
    4597           .computeInt64Size(1, id_);
    4598       }
    4599       memoizedSerializedSize = size;
    4600       return size;
    4601     }
    4602    
    4603     private static final long serialVersionUID = 0L;
    4604     @java.lang.Override
    4605     protected java.lang.Object writeReplace()
    4606         throws java.io.ObjectStreamException {
    4607       return super.writeReplace();
    4608     }
    4609    
    4610     public static crosby.binary.Osmformat.ChangeSet parseFrom(
    4611         com.google.protobuf.ByteString data)
    4612         throws com.google.protobuf.InvalidProtocolBufferException {
    4613       return newBuilder().mergeFrom(data).buildParsed();
    4614     }
    4615     public static crosby.binary.Osmformat.ChangeSet parseFrom(
    4616         com.google.protobuf.ByteString data,
     7481
     7482    private ChangeSet(
     7483        com.google.protobuf.CodedInputStream input,
    46177484        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    46187485        throws com.google.protobuf.InvalidProtocolBufferException {
    4619       return newBuilder().mergeFrom(data, extensionRegistry)
    4620                .buildParsed();
    4621     }
    4622     public static crosby.binary.Osmformat.ChangeSet parseFrom(byte[] data)
    4623         throws com.google.protobuf.InvalidProtocolBufferException {
    4624       return newBuilder().mergeFrom(data).buildParsed();
    4625     }
    4626     public static crosby.binary.Osmformat.ChangeSet parseFrom(
    4627         byte[] data,
    4628         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    4629         throws com.google.protobuf.InvalidProtocolBufferException {
    4630       return newBuilder().mergeFrom(data, extensionRegistry)
    4631                .buildParsed();
    4632     }
    4633     public static crosby.binary.Osmformat.ChangeSet parseFrom(java.io.InputStream input)
    4634         throws java.io.IOException {
    4635       return newBuilder().mergeFrom(input).buildParsed();
    4636     }
    4637     public static crosby.binary.Osmformat.ChangeSet parseFrom(
    4638         java.io.InputStream input,
    4639         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    4640         throws java.io.IOException {
    4641       return newBuilder().mergeFrom(input, extensionRegistry)
    4642                .buildParsed();
    4643     }
    4644     public static crosby.binary.Osmformat.ChangeSet parseDelimitedFrom(java.io.InputStream input)
    4645         throws java.io.IOException {
    4646       Builder builder = newBuilder();
    4647       if (builder.mergeDelimitedFrom(input)) {
    4648         return builder.buildParsed();
    4649       } else {
    4650         return null;
    4651       }
    4652     }
    4653     public static crosby.binary.Osmformat.ChangeSet parseDelimitedFrom(
    4654         java.io.InputStream input,
    4655         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    4656         throws java.io.IOException {
    4657       Builder builder = newBuilder();
    4658       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    4659         return builder.buildParsed();
    4660       } else {
    4661         return null;
    4662       }
    4663     }
    4664     public static crosby.binary.Osmformat.ChangeSet parseFrom(
    4665         com.google.protobuf.CodedInputStream input)
    4666         throws java.io.IOException {
    4667       return newBuilder().mergeFrom(input).buildParsed();
    4668     }
    4669     public static crosby.binary.Osmformat.ChangeSet parseFrom(
    4670         com.google.protobuf.CodedInputStream input,
    4671         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    4672         throws java.io.IOException {
    4673       return newBuilder().mergeFrom(input, extensionRegistry)
    4674                .buildParsed();
    4675     }
    4676    
    4677     public static Builder newBuilder() { return Builder.create(); }
    4678     public Builder newBuilderForType() { return newBuilder(); }
    4679     public static Builder newBuilder(crosby.binary.Osmformat.ChangeSet prototype) {
    4680       return newBuilder().mergeFrom(prototype);
    4681     }
    4682     public Builder toBuilder() { return newBuilder(this); }
    4683    
    4684     public static final class Builder extends
    4685         com.google.protobuf.GeneratedMessageLite.Builder<
    4686           crosby.binary.Osmformat.ChangeSet, Builder>
    4687         implements crosby.binary.Osmformat.ChangeSetOrBuilder {
    4688       // Construct using crosby.binary.Osmformat.ChangeSet.newBuilder()
    4689       private Builder() {
    4690         maybeForceBuilderInitialization();
    4691       }
    4692      
    4693       private void maybeForceBuilderInitialization() {
    4694       }
    4695       private static Builder create() {
    4696         return new Builder();
    4697       }
    4698      
    4699       public Builder clear() {
    4700         super.clear();
    4701         id_ = 0L;
    4702         bitField0_ = (bitField0_ & ~0x00000001);
    4703         return this;
    4704       }
    4705      
    4706       public Builder clone() {
    4707         return create().mergeFrom(buildPartial());
    4708       }
    4709      
    4710       public crosby.binary.Osmformat.ChangeSet getDefaultInstanceForType() {
    4711         return crosby.binary.Osmformat.ChangeSet.getDefaultInstance();
    4712       }
    4713      
    4714       public crosby.binary.Osmformat.ChangeSet build() {
    4715         crosby.binary.Osmformat.ChangeSet result = buildPartial();
    4716         if (!result.isInitialized()) {
    4717           throw newUninitializedMessageException(result);
    4718         }
    4719         return result;
    4720       }
    4721      
    4722       private crosby.binary.Osmformat.ChangeSet buildParsed()
    4723           throws com.google.protobuf.InvalidProtocolBufferException {
    4724         crosby.binary.Osmformat.ChangeSet result = buildPartial();
    4725         if (!result.isInitialized()) {
    4726           throw newUninitializedMessageException(
    4727             result).asInvalidProtocolBufferException();
    4728         }
    4729         return result;
    4730       }
    4731      
    4732       public crosby.binary.Osmformat.ChangeSet buildPartial() {
    4733         crosby.binary.Osmformat.ChangeSet result = new crosby.binary.Osmformat.ChangeSet(this);
    4734         int from_bitField0_ = bitField0_;
    4735         int to_bitField0_ = 0;
    4736         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
    4737           to_bitField0_ |= 0x00000001;
    4738         }
    4739         result.id_ = id_;
    4740         result.bitField0_ = to_bitField0_;
    4741         return result;
    4742       }
    4743      
    4744       public Builder mergeFrom(crosby.binary.Osmformat.ChangeSet other) {
    4745         if (other == crosby.binary.Osmformat.ChangeSet.getDefaultInstance()) return this;
    4746         if (other.hasId()) {
    4747           setId(other.getId());
    4748         }
    4749         return this;
    4750       }
    4751      
    4752       public final boolean isInitialized() {
    4753         if (!hasId()) {
    4754          
    4755           return false;
    4756         }
    4757         return true;
    4758       }
    4759      
    4760       public Builder mergeFrom(
    4761           com.google.protobuf.CodedInputStream input,
    4762           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    4763           throws java.io.IOException {
    4764         while (true) {
     7486      initFields();
     7487      int mutable_bitField0_ = 0;
     7488      try {
     7489        boolean done = false;
     7490        while (!done) {
    47657491          int tag = input.readTag();
    47667492          switch (tag) {
    47677493            case 0:
    4768              
    4769               return this;
     7494              done = true;
     7495              break;
    47707496            default: {
    4771               if (!parseUnknownField(input, extensionRegistry, tag)) {
    4772                
    4773                 return this;
     7497              if (!parseUnknownField(input,
     7498                                     extensionRegistry, tag)) {
     7499                done = true;
    47747500              }
    47757501              break;
     
    47827508          }
    47837509        }
    4784       }
    4785      
     7510      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     7511        throw e.setUnfinishedMessage(this);
     7512      } catch (java.io.IOException e) {
     7513        throw new com.google.protobuf.InvalidProtocolBufferException(
     7514            e.getMessage()).setUnfinishedMessage(this);
     7515      } finally {
     7516        makeExtensionsImmutable();
     7517      }
     7518    }
     7519    public static com.google.protobuf.Parser<ChangeSet> PARSER =
     7520        new com.google.protobuf.AbstractParser<ChangeSet>() {
     7521      public ChangeSet parsePartialFrom(
     7522          com.google.protobuf.CodedInputStream input,
     7523          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     7524          throws com.google.protobuf.InvalidProtocolBufferException {
     7525        return new ChangeSet(input, extensionRegistry);
     7526      }
     7527    };
     7528
     7529    @java.lang.Override
     7530    public com.google.protobuf.Parser<ChangeSet> getParserForType() {
     7531      return PARSER;
     7532    }
     7533
     7534    private int bitField0_;
     7535    // required int64 id = 1;
     7536    public static final int ID_FIELD_NUMBER = 1;
     7537    private long id_;
     7538    /**
     7539     * <code>required int64 id = 1;</code>
     7540     *
     7541     * <pre>
     7542     *   
     7543     *   // Parallel arrays.
     7544     *   repeated uint32 keys = 2 [packed = true]; // String IDs.
     7545     *   repeated uint32 vals = 3 [packed = true]; // String IDs.
     7546     *
     7547     *   optional Info info = 4;
     7548     * </pre>
     7549     */
     7550    public boolean hasId() {
     7551      return ((bitField0_ & 0x00000001) == 0x00000001);
     7552    }
     7553    /**
     7554     * <code>required int64 id = 1;</code>
     7555     *
     7556     * <pre>
     7557     *   
     7558     *   // Parallel arrays.
     7559     *   repeated uint32 keys = 2 [packed = true]; // String IDs.
     7560     *   repeated uint32 vals = 3 [packed = true]; // String IDs.
     7561     *
     7562     *   optional Info info = 4;
     7563     * </pre>
     7564     */
     7565    public long getId() {
     7566      return id_;
     7567    }
     7568
     7569    private void initFields() {
     7570      id_ = 0L;
     7571    }
     7572    private byte memoizedIsInitialized = -1;
     7573    public final boolean isInitialized() {
     7574      byte isInitialized = memoizedIsInitialized;
     7575      if (isInitialized != -1) return isInitialized == 1;
     7576
     7577      if (!hasId()) {
     7578        memoizedIsInitialized = 0;
     7579        return false;
     7580      }
     7581      memoizedIsInitialized = 1;
     7582      return true;
     7583    }
     7584
     7585    public void writeTo(com.google.protobuf.CodedOutputStream output)
     7586                        throws java.io.IOException {
     7587      getSerializedSize();
     7588      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     7589        output.writeInt64(1, id_);
     7590      }
     7591    }
     7592
     7593    private int memoizedSerializedSize = -1;
     7594    public int getSerializedSize() {
     7595      int size = memoizedSerializedSize;
     7596      if (size != -1) return size;
     7597
     7598      size = 0;
     7599      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     7600        size += com.google.protobuf.CodedOutputStream
     7601          .computeInt64Size(1, id_);
     7602      }
     7603      memoizedSerializedSize = size;
     7604      return size;
     7605    }
     7606
     7607    private static final long serialVersionUID = 0L;
     7608    @java.lang.Override
     7609    protected java.lang.Object writeReplace()
     7610        throws java.io.ObjectStreamException {
     7611      return super.writeReplace();
     7612    }
     7613
     7614    public static crosby.binary.Osmformat.ChangeSet parseFrom(
     7615        com.google.protobuf.ByteString data)
     7616        throws com.google.protobuf.InvalidProtocolBufferException {
     7617      return PARSER.parseFrom(data);
     7618    }
     7619    public static crosby.binary.Osmformat.ChangeSet parseFrom(
     7620        com.google.protobuf.ByteString data,
     7621        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     7622        throws com.google.protobuf.InvalidProtocolBufferException {
     7623      return PARSER.parseFrom(data, extensionRegistry);
     7624    }
     7625    public static crosby.binary.Osmformat.ChangeSet parseFrom(byte[] data)
     7626        throws com.google.protobuf.InvalidProtocolBufferException {
     7627      return PARSER.parseFrom(data);
     7628    }
     7629    public static crosby.binary.Osmformat.ChangeSet parseFrom(
     7630        byte[] data,
     7631        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     7632        throws com.google.protobuf.InvalidProtocolBufferException {
     7633      return PARSER.parseFrom(data, extensionRegistry);
     7634    }
     7635    public static crosby.binary.Osmformat.ChangeSet parseFrom(java.io.InputStream input)
     7636        throws java.io.IOException {
     7637      return PARSER.parseFrom(input);
     7638    }
     7639    public static crosby.binary.Osmformat.ChangeSet parseFrom(
     7640        java.io.InputStream input,
     7641        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     7642        throws java.io.IOException {
     7643      return PARSER.parseFrom(input, extensionRegistry);
     7644    }
     7645    public static crosby.binary.Osmformat.ChangeSet parseDelimitedFrom(java.io.InputStream input)
     7646        throws java.io.IOException {
     7647      return PARSER.parseDelimitedFrom(input);
     7648    }
     7649    public static crosby.binary.Osmformat.ChangeSet parseDelimitedFrom(
     7650        java.io.InputStream input,
     7651        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     7652        throws java.io.IOException {
     7653      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     7654    }
     7655    public static crosby.binary.Osmformat.ChangeSet parseFrom(
     7656        com.google.protobuf.CodedInputStream input)
     7657        throws java.io.IOException {
     7658      return PARSER.parseFrom(input);
     7659    }
     7660    public static crosby.binary.Osmformat.ChangeSet parseFrom(
     7661        com.google.protobuf.CodedInputStream input,
     7662        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     7663        throws java.io.IOException {
     7664      return PARSER.parseFrom(input, extensionRegistry);
     7665    }
     7666
     7667    public static Builder newBuilder() { return Builder.create(); }
     7668    public Builder newBuilderForType() { return newBuilder(); }
     7669    public static Builder newBuilder(crosby.binary.Osmformat.ChangeSet prototype) {
     7670      return newBuilder().mergeFrom(prototype);
     7671    }
     7672    public Builder toBuilder() { return newBuilder(this); }
     7673
     7674    /**
     7675     * Protobuf type {@code OSMPBF.ChangeSet}
     7676     *
     7677     * <pre>
     7678     * THIS IS STUB DESIGN FOR CHANGESETS. NOT USED RIGHT NOW.
     7679     * TODO:    REMOVE THIS?
     7680     * </pre>
     7681     */
     7682    public static final class Builder extends
     7683        com.google.protobuf.GeneratedMessageLite.Builder<
     7684          crosby.binary.Osmformat.ChangeSet, Builder>
     7685        implements crosby.binary.Osmformat.ChangeSetOrBuilder {
     7686      // Construct using crosby.binary.Osmformat.ChangeSet.newBuilder()
     7687      private Builder() {
     7688        maybeForceBuilderInitialization();
     7689      }
     7690
     7691      private void maybeForceBuilderInitialization() {
     7692      }
     7693      private static Builder create() {
     7694        return new Builder();
     7695      }
     7696
     7697      public Builder clear() {
     7698        super.clear();
     7699        id_ = 0L;
     7700        bitField0_ = (bitField0_ & ~0x00000001);
     7701        return this;
     7702      }
     7703
     7704      public Builder clone() {
     7705        return create().mergeFrom(buildPartial());
     7706      }
     7707
     7708      public crosby.binary.Osmformat.ChangeSet getDefaultInstanceForType() {
     7709        return crosby.binary.Osmformat.ChangeSet.getDefaultInstance();
     7710      }
     7711
     7712      public crosby.binary.Osmformat.ChangeSet build() {
     7713        crosby.binary.Osmformat.ChangeSet result = buildPartial();
     7714        if (!result.isInitialized()) {
     7715          throw newUninitializedMessageException(result);
     7716        }
     7717        return result;
     7718      }
     7719
     7720      public crosby.binary.Osmformat.ChangeSet buildPartial() {
     7721        crosby.binary.Osmformat.ChangeSet result = new crosby.binary.Osmformat.ChangeSet(this);
     7722        int from_bitField0_ = bitField0_;
     7723        int to_bitField0_ = 0;
     7724        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
     7725          to_bitField0_ |= 0x00000001;
     7726        }
     7727        result.id_ = id_;
     7728        result.bitField0_ = to_bitField0_;
     7729        return result;
     7730      }
     7731
     7732      public Builder mergeFrom(crosby.binary.Osmformat.ChangeSet other) {
     7733        if (other == crosby.binary.Osmformat.ChangeSet.getDefaultInstance()) return this;
     7734        if (other.hasId()) {
     7735          setId(other.getId());
     7736        }
     7737        return this;
     7738      }
     7739
     7740      public final boolean isInitialized() {
     7741        if (!hasId()) {
     7742         
     7743          return false;
     7744        }
     7745        return true;
     7746      }
     7747
     7748      public Builder mergeFrom(
     7749          com.google.protobuf.CodedInputStream input,
     7750          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     7751          throws java.io.IOException {
     7752        crosby.binary.Osmformat.ChangeSet parsedMessage = null;
     7753        try {
     7754          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     7755        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     7756          parsedMessage = (crosby.binary.Osmformat.ChangeSet) e.getUnfinishedMessage();
     7757          throw e;
     7758        } finally {
     7759          if (parsedMessage != null) {
     7760            mergeFrom(parsedMessage);
     7761          }
     7762        }
     7763        return this;
     7764      }
    47867765      private int bitField0_;
    4787      
     7766
    47887767      // required int64 id = 1;
    47897768      private long id_ ;
     7769      /**
     7770       * <code>required int64 id = 1;</code>
     7771       *
     7772       * <pre>
     7773       *   
     7774       *   // Parallel arrays.
     7775       *   repeated uint32 keys = 2 [packed = true]; // String IDs.
     7776       *   repeated uint32 vals = 3 [packed = true]; // String IDs.
     7777       *
     7778       *   optional Info info = 4;
     7779       * </pre>
     7780       */
    47907781      public boolean hasId() {
    47917782        return ((bitField0_ & 0x00000001) == 0x00000001);
    47927783      }
     7784      /**
     7785       * <code>required int64 id = 1;</code>
     7786       *
     7787       * <pre>
     7788       *   
     7789       *   // Parallel arrays.
     7790       *   repeated uint32 keys = 2 [packed = true]; // String IDs.
     7791       *   repeated uint32 vals = 3 [packed = true]; // String IDs.
     7792       *
     7793       *   optional Info info = 4;
     7794       * </pre>
     7795       */
    47937796      public long getId() {
    47947797        return id_;
    47957798      }
     7799      /**
     7800       * <code>required int64 id = 1;</code>
     7801       *
     7802       * <pre>
     7803       *   
     7804       *   // Parallel arrays.
     7805       *   repeated uint32 keys = 2 [packed = true]; // String IDs.
     7806       *   repeated uint32 vals = 3 [packed = true]; // String IDs.
     7807       *
     7808       *   optional Info info = 4;
     7809       * </pre>
     7810       */
    47967811      public Builder setId(long value) {
    47977812        bitField0_ |= 0x00000001;
     
    48007815        return this;
    48017816      }
     7817      /**
     7818       * <code>required int64 id = 1;</code>
     7819       *
     7820       * <pre>
     7821       *   
     7822       *   // Parallel arrays.
     7823       *   repeated uint32 keys = 2 [packed = true]; // String IDs.
     7824       *   repeated uint32 vals = 3 [packed = true]; // String IDs.
     7825       *
     7826       *   optional Info info = 4;
     7827       * </pre>
     7828       */
    48027829      public Builder clearId() {
    48037830        bitField0_ = (bitField0_ & ~0x00000001);
     
    48067833        return this;
    48077834      }
    4808      
     7835
    48097836      // @@protoc_insertion_point(builder_scope:OSMPBF.ChangeSet)
    48107837    }
    4811    
     7838
    48127839    static {
    48137840      defaultInstance = new ChangeSet(true);
    48147841      defaultInstance.initFields();
    48157842    }
    4816    
     7843
    48177844    // @@protoc_insertion_point(class_scope:OSMPBF.ChangeSet)
    48187845  }
    4819  
     7846
    48207847  public interface NodeOrBuilder
    48217848      extends com.google.protobuf.MessageLiteOrBuilder {
    4822    
     7849
    48237850    // required sint64 id = 1;
     7851    /**
     7852     * <code>required sint64 id = 1;</code>
     7853     */
    48247854    boolean hasId();
     7855    /**
     7856     * <code>required sint64 id = 1;</code>
     7857     */
    48257858    long getId();
    4826    
     7859
    48277860    // repeated uint32 keys = 2 [packed = true];
     7861    /**
     7862     * <code>repeated uint32 keys = 2 [packed = true];</code>
     7863     *
     7864     * <pre>
     7865     * Parallel arrays.
     7866     * </pre>
     7867     */
    48287868    java.util.List<java.lang.Integer> getKeysList();
     7869    /**
     7870     * <code>repeated uint32 keys = 2 [packed = true];</code>
     7871     *
     7872     * <pre>
     7873     * Parallel arrays.
     7874     * </pre>
     7875     */
    48297876    int getKeysCount();
     7877    /**
     7878     * <code>repeated uint32 keys = 2 [packed = true];</code>
     7879     *
     7880     * <pre>
     7881     * Parallel arrays.
     7882     * </pre>
     7883     */
    48307884    int getKeys(int index);
    4831    
     7885
    48327886    // repeated uint32 vals = 3 [packed = true];
     7887    /**
     7888     * <code>repeated uint32 vals = 3 [packed = true];</code>
     7889     *
     7890     * <pre>
     7891     * String IDs.
     7892     * </pre>
     7893     */
    48337894    java.util.List<java.lang.Integer> getValsList();
     7895    /**
     7896     * <code>repeated uint32 vals = 3 [packed = true];</code>
     7897     *
     7898     * <pre>
     7899     * String IDs.
     7900     * </pre>
     7901     */
    48347902    int getValsCount();
     7903    /**
     7904     * <code>repeated uint32 vals = 3 [packed = true];</code>
     7905     *
     7906     * <pre>
     7907     * String IDs.
     7908     * </pre>
     7909     */
    48357910    int getVals(int index);
    4836    
     7911
    48377912    // optional .OSMPBF.Info info = 4;
     7913    /**
     7914     * <code>optional .OSMPBF.Info info = 4;</code>
     7915     *
     7916     * <pre>
     7917     * May be omitted in omitmeta
     7918     * </pre>
     7919     */
    48387920    boolean hasInfo();
     7921    /**
     7922     * <code>optional .OSMPBF.Info info = 4;</code>
     7923     *
     7924     * <pre>
     7925     * May be omitted in omitmeta
     7926     * </pre>
     7927     */
    48397928    crosby.binary.Osmformat.Info getInfo();
    4840    
     7929
    48417930    // required sint64 lat = 8;
     7931    /**
     7932     * <code>required sint64 lat = 8;</code>
     7933     */
    48427934    boolean hasLat();
     7935    /**
     7936     * <code>required sint64 lat = 8;</code>
     7937     */
    48437938    long getLat();
    4844    
     7939
    48457940    // required sint64 lon = 9;
     7941    /**
     7942     * <code>required sint64 lon = 9;</code>
     7943     */
    48467944    boolean hasLon();
     7945    /**
     7946     * <code>required sint64 lon = 9;</code>
     7947     */
    48477948    long getLon();
    48487949  }
     7950  /**
     7951   * Protobuf type {@code OSMPBF.Node}
     7952   */
    48497953  public static final class Node extends
    48507954      com.google.protobuf.GeneratedMessageLite
    48517955      implements NodeOrBuilder {
    48527956    // Use Node.newBuilder() to construct.
    4853     private Node(Builder builder) {
     7957    private Node(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    48547958      super(builder);
     7959
    48557960    }
    48567961    private Node(boolean noInit) {}
    4857    
     7962
    48587963    private static final Node defaultInstance;
    48597964    public static Node getDefaultInstance() {
    48607965      return defaultInstance;
    48617966    }
    4862    
     7967
    48637968    public Node getDefaultInstanceForType() {
    48647969      return defaultInstance;
    48657970    }
    4866    
     7971
     7972    private Node(
     7973        com.google.protobuf.CodedInputStream input,
     7974        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     7975        throws com.google.protobuf.InvalidProtocolBufferException {
     7976      initFields();
     7977      int mutable_bitField0_ = 0;
     7978      try {
     7979        boolean done = false;
     7980        while (!done) {
     7981          int tag = input.readTag();
     7982          switch (tag) {
     7983            case 0:
     7984              done = true;
     7985              break;
     7986            default: {
     7987              if (!parseUnknownField(input,
     7988                                     extensionRegistry, tag)) {
     7989                done = true;
     7990              }
     7991              break;
     7992            }
     7993            case 8: {
     7994              bitField0_ |= 0x00000001;
     7995              id_ = input.readSInt64();
     7996              break;
     7997            }
     7998            case 16: {
     7999              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     8000                keys_ = new java.util.ArrayList<java.lang.Integer>();
     8001                mutable_bitField0_ |= 0x00000002;
     8002              }
     8003              keys_.add(input.readUInt32());
     8004              break;
     8005            }
     8006            case 18: {
     8007              int length = input.readRawVarint32();
     8008              int limit = input.pushLimit(length);
     8009              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
     8010                keys_ = new java.util.ArrayList<java.lang.Integer>();
     8011                mutable_bitField0_ |= 0x00000002;
     8012              }
     8013              while (input.getBytesUntilLimit() > 0) {
     8014                keys_.add(input.readUInt32());
     8015              }
     8016              input.popLimit(limit);
     8017              break;
     8018            }
     8019            case 24: {
     8020              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     8021                vals_ = new java.util.ArrayList<java.lang.Integer>();
     8022                mutable_bitField0_ |= 0x00000004;
     8023              }
     8024              vals_.add(input.readUInt32());
     8025              break;
     8026            }
     8027            case 26: {
     8028              int length = input.readRawVarint32();
     8029              int limit = input.pushLimit(length);
     8030              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
     8031                vals_ = new java.util.ArrayList<java.lang.Integer>();
     8032                mutable_bitField0_ |= 0x00000004;
     8033              }
     8034              while (input.getBytesUntilLimit() > 0) {
     8035                vals_.add(input.readUInt32());
     8036              }
     8037              input.popLimit(limit);
     8038              break;
     8039            }
     8040            case 34: {
     8041              crosby.binary.Osmformat.Info.Builder subBuilder = null;
     8042              if (((bitField0_ & 0x00000002) == 0x00000002)) {
     8043                subBuilder = info_.toBuilder();
     8044              }
     8045              info_ = input.readMessage(crosby.binary.Osmformat.Info.PARSER, extensionRegistry);
     8046              if (subBuilder != null) {
     8047                subBuilder.mergeFrom(info_);
     8048                info_ = subBuilder.buildPartial();
     8049              }
     8050              bitField0_ |= 0x00000002;
     8051              break;
     8052            }
     8053            case 64: {
     8054              bitField0_ |= 0x00000004;
     8055              lat_ = input.readSInt64();
     8056              break;
     8057            }
     8058            case 72: {
     8059              bitField0_ |= 0x00000008;
     8060              lon_ = input.readSInt64();
     8061              break;
     8062            }
     8063          }
     8064        }
     8065      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     8066        throw e.setUnfinishedMessage(this);
     8067      } catch (java.io.IOException e) {
     8068        throw new com.google.protobuf.InvalidProtocolBufferException(
     8069            e.getMessage()).setUnfinishedMessage(this);
     8070      } finally {
     8071        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     8072          keys_ = java.util.Collections.unmodifiableList(keys_);
     8073        }
     8074        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     8075          vals_ = java.util.Collections.unmodifiableList(vals_);
     8076        }
     8077        makeExtensionsImmutable();
     8078      }
     8079    }
     8080    public static com.google.protobuf.Parser<Node> PARSER =
     8081        new com.google.protobuf.AbstractParser<Node>() {
     8082      public Node parsePartialFrom(
     8083          com.google.protobuf.CodedInputStream input,
     8084          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     8085          throws com.google.protobuf.InvalidProtocolBufferException {
     8086        return new Node(input, extensionRegistry);
     8087      }
     8088    };
     8089
     8090    @java.lang.Override
     8091    public com.google.protobuf.Parser<Node> getParserForType() {
     8092      return PARSER;
     8093    }
     8094
    48678095    private int bitField0_;
    48688096    // required sint64 id = 1;
    48698097    public static final int ID_FIELD_NUMBER = 1;
    48708098    private long id_;
     8099    /**
     8100     * <code>required sint64 id = 1;</code>
     8101     */
    48718102    public boolean hasId() {
    48728103      return ((bitField0_ & 0x00000001) == 0x00000001);
    48738104    }
     8105    /**
     8106     * <code>required sint64 id = 1;</code>
     8107     */
    48748108    public long getId() {
    48758109      return id_;
    48768110    }
    4877    
     8111
    48788112    // repeated uint32 keys = 2 [packed = true];
    48798113    public static final int KEYS_FIELD_NUMBER = 2;
    48808114    private java.util.List<java.lang.Integer> keys_;
     8115    /**
     8116     * <code>repeated uint32 keys = 2 [packed = true];</code>
     8117     *
     8118     * <pre>
     8119     * Parallel arrays.
     8120     * </pre>
     8121     */
    48818122    public java.util.List<java.lang.Integer>
    48828123        getKeysList() {
    48838124      return keys_;
    48848125    }
     8126    /**
     8127     * <code>repeated uint32 keys = 2 [packed = true];</code>
     8128     *
     8129     * <pre>
     8130     * Parallel arrays.
     8131     * </pre>
     8132     */
    48858133    public int getKeysCount() {
    48868134      return keys_.size();
    48878135    }
     8136    /**
     8137     * <code>repeated uint32 keys = 2 [packed = true];</code>
     8138     *
     8139     * <pre>
     8140     * Parallel arrays.
     8141     * </pre>
     8142     */
    48888143    public int getKeys(int index) {
    48898144      return keys_.get(index);
    48908145    }
    48918146    private int keysMemoizedSerializedSize = -1;
    4892    
     8147
    48938148    // repeated uint32 vals = 3 [packed = true];
    48948149    public static final int VALS_FIELD_NUMBER = 3;
    48958150    private java.util.List<java.lang.Integer> vals_;
     8151    /**
     8152     * <code>repeated uint32 vals = 3 [packed = true];</code>
     8153     *
     8154     * <pre>
     8155     * String IDs.
     8156     * </pre>
     8157     */
    48968158    public java.util.List<java.lang.Integer>
    48978159        getValsList() {
    48988160      return vals_;
    48998161    }
     8162    /**
     8163     * <code>repeated uint32 vals = 3 [packed = true];</code>
     8164     *
     8165     * <pre>
     8166     * String IDs.
     8167     * </pre>
     8168     */
    49008169    public int getValsCount() {
    49018170      return vals_.size();
    49028171    }
     8172    /**
     8173     * <code>repeated uint32 vals = 3 [packed = true];</code>
     8174     *
     8175     * <pre>
     8176     * String IDs.
     8177     * </pre>
     8178     */
    49038179    public int getVals(int index) {
    49048180      return vals_.get(index);
    49058181    }
    49068182    private int valsMemoizedSerializedSize = -1;
    4907    
     8183
    49088184    // optional .OSMPBF.Info info = 4;
    49098185    public static final int INFO_FIELD_NUMBER = 4;
    49108186    private crosby.binary.Osmformat.Info info_;
     8187    /**
     8188     * <code>optional .OSMPBF.Info info = 4;</code>
     8189     *
     8190     * <pre>
     8191     * May be omitted in omitmeta
     8192     * </pre>
     8193     */
    49118194    public boolean hasInfo() {
    49128195      return ((bitField0_ & 0x00000002) == 0x00000002);
    49138196    }
     8197    /**
     8198     * <code>optional .OSMPBF.Info info = 4;</code>
     8199     *
     8200     * <pre>
     8201     * May be omitted in omitmeta
     8202     * </pre>
     8203     */
    49148204    public crosby.binary.Osmformat.Info getInfo() {
    49158205      return info_;
    49168206    }
    4917    
     8207
    49188208    // required sint64 lat = 8;
    49198209    public static final int LAT_FIELD_NUMBER = 8;
    49208210    private long lat_;
     8211    /**
     8212     * <code>required sint64 lat = 8;</code>
     8213     */
    49218214    public boolean hasLat() {
    49228215      return ((bitField0_ & 0x00000004) == 0x00000004);
    49238216    }
     8217    /**
     8218     * <code>required sint64 lat = 8;</code>
     8219     */
    49248220    public long getLat() {
    49258221      return lat_;
    49268222    }
    4927    
     8223
    49288224    // required sint64 lon = 9;
    49298225    public static final int LON_FIELD_NUMBER = 9;
    49308226    private long lon_;
     8227    /**
     8228     * <code>required sint64 lon = 9;</code>
     8229     */
    49318230    public boolean hasLon() {
    49328231      return ((bitField0_ & 0x00000008) == 0x00000008);
    49338232    }
     8233    /**
     8234     * <code>required sint64 lon = 9;</code>
     8235     */
    49348236    public long getLon() {
    49358237      return lon_;
    49368238    }
    4937    
     8239
    49388240    private void initFields() {
    49398241      id_ = 0L;
    4940       keys_ = java.util.Collections.emptyList();;
    4941       vals_ = java.util.Collections.emptyList();;
     8242      keys_ = java.util.Collections.emptyList();
     8243      vals_ = java.util.Collections.emptyList();
    49428244      info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
    49438245      lat_ = 0L;
     
    49488250      byte isInitialized = memoizedIsInitialized;
    49498251      if (isInitialized != -1) return isInitialized == 1;
    4950      
     8252
    49518253      if (!hasId()) {
    49528254        memoizedIsInitialized = 0;
     
    49648266      return true;
    49658267    }
    4966    
     8268
    49678269    public void writeTo(com.google.protobuf.CodedOutputStream output)
    49688270                        throws java.io.IOException {
     
    49958297      }
    49968298    }
    4997    
     8299
    49988300    private int memoizedSerializedSize = -1;
    49998301    public int getSerializedSize() {
    50008302      int size = memoizedSerializedSize;
    50018303      if (size != -1) return size;
    5002    
     8304
    50038305      size = 0;
    50048306      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     
    50498351      return size;
    50508352    }
    5051    
     8353
    50528354    private static final long serialVersionUID = 0L;
    50538355    @java.lang.Override
     
    50568358      return super.writeReplace();
    50578359    }
    5058    
     8360
    50598361    public static crosby.binary.Osmformat.Node parseFrom(
    50608362        com.google.protobuf.ByteString data)
    50618363        throws com.google.protobuf.InvalidProtocolBufferException {
    5062       return newBuilder().mergeFrom(data).buildParsed();
     8364      return PARSER.parseFrom(data);
    50638365    }
    50648366    public static crosby.binary.Osmformat.Node parseFrom(
     
    50668368        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    50678369        throws com.google.protobuf.InvalidProtocolBufferException {
    5068       return newBuilder().mergeFrom(data, extensionRegistry)
    5069                .buildParsed();
     8370      return PARSER.parseFrom(data, extensionRegistry);
    50708371    }
    50718372    public static crosby.binary.Osmformat.Node parseFrom(byte[] data)
    50728373        throws com.google.protobuf.InvalidProtocolBufferException {
    5073       return newBuilder().mergeFrom(data).buildParsed();
     8374      return PARSER.parseFrom(data);
    50748375    }
    50758376    public static crosby.binary.Osmformat.Node parseFrom(
     
    50778378        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    50788379        throws com.google.protobuf.InvalidProtocolBufferException {
    5079       return newBuilder().mergeFrom(data, extensionRegistry)
    5080                .buildParsed();
     8380      return PARSER.parseFrom(data, extensionRegistry);
    50818381    }
    50828382    public static crosby.binary.Osmformat.Node parseFrom(java.io.InputStream input)
    50838383        throws java.io.IOException {
    5084       return newBuilder().mergeFrom(input).buildParsed();
     8384      return PARSER.parseFrom(input);
    50858385    }
    50868386    public static crosby.binary.Osmformat.Node parseFrom(
     
    50888388        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    50898389        throws java.io.IOException {
    5090       return newBuilder().mergeFrom(input, extensionRegistry)
    5091                .buildParsed();
     8390      return PARSER.parseFrom(input, extensionRegistry);
    50928391    }
    50938392    public static crosby.binary.Osmformat.Node parseDelimitedFrom(java.io.InputStream input)
    50948393        throws java.io.IOException {
    5095       Builder builder = newBuilder();
    5096       if (builder.mergeDelimitedFrom(input)) {
    5097         return builder.buildParsed();
    5098       } else {
    5099         return null;
    5100       }
     8394      return PARSER.parseDelimitedFrom(input);
    51018395    }
    51028396    public static crosby.binary.Osmformat.Node parseDelimitedFrom(
     
    51048398        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    51058399        throws java.io.IOException {
    5106       Builder builder = newBuilder();
    5107       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    5108         return builder.buildParsed();
    5109       } else {
    5110         return null;
    5111       }
     8400      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    51128401    }
    51138402    public static crosby.binary.Osmformat.Node parseFrom(
    51148403        com.google.protobuf.CodedInputStream input)
    51158404        throws java.io.IOException {
    5116       return newBuilder().mergeFrom(input).buildParsed();
     8405      return PARSER.parseFrom(input);
    51178406    }
    51188407    public static crosby.binary.Osmformat.Node parseFrom(
     
    51208409        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    51218410        throws java.io.IOException {
    5122       return newBuilder().mergeFrom(input, extensionRegistry)
    5123                .buildParsed();
    5124     }
    5125    
     8411      return PARSER.parseFrom(input, extensionRegistry);
     8412    }
     8413
    51268414    public static Builder newBuilder() { return Builder.create(); }
    51278415    public Builder newBuilderForType() { return newBuilder(); }
     
    51308418    }
    51318419    public Builder toBuilder() { return newBuilder(this); }
    5132    
     8420
     8421    /**
     8422     * Protobuf type {@code OSMPBF.Node}
     8423     */
    51338424    public static final class Builder extends
    51348425        com.google.protobuf.GeneratedMessageLite.Builder<
     
    51398430        maybeForceBuilderInitialization();
    51408431      }
    5141      
     8432
    51428433      private void maybeForceBuilderInitialization() {
    51438434      }
     
    51458436        return new Builder();
    51468437      }
    5147      
     8438
    51488439      public Builder clear() {
    51498440        super.clear();
    51508441        id_ = 0L;
    51518442        bitField0_ = (bitField0_ & ~0x00000001);
    5152         keys_ = java.util.Collections.emptyList();;
     8443        keys_ = java.util.Collections.emptyList();
    51538444        bitField0_ = (bitField0_ & ~0x00000002);
    5154         vals_ = java.util.Collections.emptyList();;
     8445        vals_ = java.util.Collections.emptyList();
    51558446        bitField0_ = (bitField0_ & ~0x00000004);
    51568447        info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
     
    51628453        return this;
    51638454      }
    5164      
     8455
    51658456      public Builder clone() {
    51668457        return create().mergeFrom(buildPartial());
    51678458      }
    5168      
     8459
    51698460      public crosby.binary.Osmformat.Node getDefaultInstanceForType() {
    51708461        return crosby.binary.Osmformat.Node.getDefaultInstance();
    51718462      }
    5172      
     8463
    51738464      public crosby.binary.Osmformat.Node build() {
    51748465        crosby.binary.Osmformat.Node result = buildPartial();
     
    51788469        return result;
    51798470      }
    5180      
    5181       private crosby.binary.Osmformat.Node buildParsed()
    5182           throws com.google.protobuf.InvalidProtocolBufferException {
    5183         crosby.binary.Osmformat.Node result = buildPartial();
    5184         if (!result.isInitialized()) {
    5185           throw newUninitializedMessageException(
    5186             result).asInvalidProtocolBufferException();
    5187         }
    5188         return result;
    5189       }
    5190      
     8471
    51918472      public crosby.binary.Osmformat.Node buildPartial() {
    51928473        crosby.binary.Osmformat.Node result = new crosby.binary.Osmformat.Node(this);
     
    52228503        return result;
    52238504      }
    5224      
     8505
    52258506      public Builder mergeFrom(crosby.binary.Osmformat.Node other) {
    52268507        if (other == crosby.binary.Osmformat.Node.getDefaultInstance()) return this;
     
    52598540        return this;
    52608541      }
    5261      
     8542
    52628543      public final boolean isInitialized() {
    52638544        if (!hasId()) {
     
    52758556        return true;
    52768557      }
    5277      
     8558
    52788559      public Builder mergeFrom(
    52798560          com.google.protobuf.CodedInputStream input,
    52808561          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    52818562          throws java.io.IOException {
    5282         while (true) {
    5283           int tag = input.readTag();
    5284           switch (tag) {
    5285             case 0:
    5286              
    5287               return this;
    5288             default: {
    5289               if (!parseUnknownField(input, extensionRegistry, tag)) {
    5290                
    5291                 return this;
    5292               }
    5293               break;
    5294             }
    5295             case 8: {
    5296               bitField0_ |= 0x00000001;
    5297               id_ = input.readSInt64();
    5298               break;
    5299             }
    5300             case 16: {
    5301               ensureKeysIsMutable();
    5302               keys_.add(input.readUInt32());
    5303               break;
    5304             }
    5305             case 18: {
    5306               int length = input.readRawVarint32();
    5307               int limit = input.pushLimit(length);
    5308               while (input.getBytesUntilLimit() > 0) {
    5309                 addKeys(input.readUInt32());
    5310               }
    5311               input.popLimit(limit);
    5312               break;
    5313             }
    5314             case 24: {
    5315               ensureValsIsMutable();
    5316               vals_.add(input.readUInt32());
    5317               break;
    5318             }
    5319             case 26: {
    5320               int length = input.readRawVarint32();
    5321               int limit = input.pushLimit(length);
    5322               while (input.getBytesUntilLimit() > 0) {
    5323                 addVals(input.readUInt32());
    5324               }
    5325               input.popLimit(limit);
    5326               break;
    5327             }
    5328             case 34: {
    5329               crosby.binary.Osmformat.Info.Builder subBuilder = crosby.binary.Osmformat.Info.newBuilder();
    5330               if (hasInfo()) {
    5331                 subBuilder.mergeFrom(getInfo());
    5332               }
    5333               input.readMessage(subBuilder, extensionRegistry);
    5334               setInfo(subBuilder.buildPartial());
    5335               break;
    5336             }
    5337             case 64: {
    5338               bitField0_ |= 0x00000010;
    5339               lat_ = input.readSInt64();
    5340               break;
    5341             }
    5342             case 72: {
    5343               bitField0_ |= 0x00000020;
    5344               lon_ = input.readSInt64();
    5345               break;
    5346             }
     8563        crosby.binary.Osmformat.Node parsedMessage = null;
     8564        try {
     8565          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     8566        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     8567          parsedMessage = (crosby.binary.Osmformat.Node) e.getUnfinishedMessage();
     8568          throw e;
     8569        } finally {
     8570          if (parsedMessage != null) {
     8571            mergeFrom(parsedMessage);
    53478572          }
    53488573        }
    5349       }
    5350      
     8574        return this;
     8575      }
    53518576      private int bitField0_;
    5352      
     8577
    53538578      // required sint64 id = 1;
    53548579      private long id_ ;
     8580      /**
     8581       * <code>required sint64 id = 1;</code>
     8582       */
    53558583      public boolean hasId() {
    53568584        return ((bitField0_ & 0x00000001) == 0x00000001);
    53578585      }
     8586      /**
     8587       * <code>required sint64 id = 1;</code>
     8588       */
    53588589      public long getId() {
    53598590        return id_;
    53608591      }
     8592      /**
     8593       * <code>required sint64 id = 1;</code>
     8594       */
    53618595      public Builder setId(long value) {
    53628596        bitField0_ |= 0x00000001;
     
    53658599        return this;
    53668600      }
     8601      /**
     8602       * <code>required sint64 id = 1;</code>
     8603       */
    53678604      public Builder clearId() {
    53688605        bitField0_ = (bitField0_ & ~0x00000001);
     
    53718608        return this;
    53728609      }
    5373      
     8610
    53748611      // repeated uint32 keys = 2 [packed = true];
    5375       private java.util.List<java.lang.Integer> keys_ = java.util.Collections.emptyList();;
     8612      private java.util.List<java.lang.Integer> keys_ = java.util.Collections.emptyList();
    53768613      private void ensureKeysIsMutable() {
    53778614        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
     
    53808617         }
    53818618      }
     8619      /**
     8620       * <code>repeated uint32 keys = 2 [packed = true];</code>
     8621       *
     8622       * <pre>
     8623       * Parallel arrays.
     8624       * </pre>
     8625       */
    53828626      public java.util.List<java.lang.Integer>
    53838627          getKeysList() {
    53848628        return java.util.Collections.unmodifiableList(keys_);
    53858629      }
     8630      /**
     8631       * <code>repeated uint32 keys = 2 [packed = true];</code>
     8632       *
     8633       * <pre>
     8634       * Parallel arrays.
     8635       * </pre>
     8636       */
    53868637      public int getKeysCount() {
    53878638        return keys_.size();
    53888639      }
     8640      /**
     8641       * <code>repeated uint32 keys = 2 [packed = true];</code>
     8642       *
     8643       * <pre>
     8644       * Parallel arrays.
     8645       * </pre>
     8646       */
    53898647      public int getKeys(int index) {
    53908648        return keys_.get(index);
    53918649      }
     8650      /**
     8651       * <code>repeated uint32 keys = 2 [packed = true];</code>
     8652       *
     8653       * <pre>
     8654       * Parallel arrays.
     8655       * </pre>
     8656       */
    53928657      public Builder setKeys(
    53938658          int index, int value) {
     
    53978662        return this;
    53988663      }
     8664      /**
     8665       * <code>repeated uint32 keys = 2 [packed = true];</code>
     8666       *
     8667       * <pre>
     8668       * Parallel arrays.
     8669       * </pre>
     8670       */
    53998671      public Builder addKeys(int value) {
    54008672        ensureKeysIsMutable();
     
    54038675        return this;
    54048676      }
     8677      /**
     8678       * <code>repeated uint32 keys = 2 [packed = true];</code>
     8679       *
     8680       * <pre>
     8681       * Parallel arrays.
     8682       * </pre>
     8683       */
    54058684      public Builder addAllKeys(
    54068685          java.lang.Iterable<? extends java.lang.Integer> values) {
     
    54108689        return this;
    54118690      }
     8691      /**
     8692       * <code>repeated uint32 keys = 2 [packed = true];</code>
     8693       *
     8694       * <pre>
     8695       * Parallel arrays.
     8696       * </pre>
     8697       */
    54128698      public Builder clearKeys() {
    5413         keys_ = java.util.Collections.emptyList();;
     8699        keys_ = java.util.Collections.emptyList();
    54148700        bitField0_ = (bitField0_ & ~0x00000002);
    54158701       
    54168702        return this;
    54178703      }
    5418      
     8704
    54198705      // repeated uint32 vals = 3 [packed = true];
    5420       private java.util.List<java.lang.Integer> vals_ = java.util.Collections.emptyList();;
     8706      private java.util.List<java.lang.Integer> vals_ = java.util.Collections.emptyList();
    54218707      private void ensureValsIsMutable() {
    54228708        if (!((bitField0_ & 0x00000004) == 0x00000004)) {
     
    54258711         }
    54268712      }
     8713      /**
     8714       * <code>repeated uint32 vals = 3 [packed = true];</code>
     8715       *
     8716       * <pre>
     8717       * String IDs.
     8718       * </pre>
     8719       */
    54278720      public java.util.List<java.lang.Integer>
    54288721          getValsList() {
    54298722        return java.util.Collections.unmodifiableList(vals_);
    54308723      }
     8724      /**
     8725       * <code>repeated uint32 vals = 3 [packed = true];</code>
     8726       *
     8727       * <pre>
     8728       * String IDs.
     8729       * </pre>
     8730       */
    54318731      public int getValsCount() {
    54328732        return vals_.size();
    54338733      }
     8734      /**
     8735       * <code>repeated uint32 vals = 3 [packed = true];</code>
     8736       *
     8737       * <pre>
     8738       * String IDs.
     8739       * </pre>
     8740       */
    54348741      public int getVals(int index) {
    54358742        return vals_.get(index);
    54368743      }
     8744      /**
     8745       * <code>repeated uint32 vals = 3 [packed = true];</code>
     8746       *
     8747       * <pre>
     8748       * String IDs.
     8749       * </pre>
     8750       */
    54378751      public Builder setVals(
    54388752          int index, int value) {
     
    54428756        return this;
    54438757      }
     8758      /**
     8759       * <code>repeated uint32 vals = 3 [packed = true];</code>
     8760       *
     8761       * <pre>
     8762       * String IDs.
     8763       * </pre>
     8764       */
    54448765      public Builder addVals(int value) {
    54458766        ensureValsIsMutable();
     
    54488769        return this;
    54498770      }
     8771      /**
     8772       * <code>repeated uint32 vals = 3 [packed = true];</code>
     8773       *
     8774       * <pre>
     8775       * String IDs.
     8776       * </pre>
     8777       */
    54508778      public Builder addAllVals(
    54518779          java.lang.Iterable<? extends java.lang.Integer> values) {
     
    54558783        return this;
    54568784      }
     8785      /**
     8786       * <code>repeated uint32 vals = 3 [packed = true];</code>
     8787       *
     8788       * <pre>
     8789       * String IDs.
     8790       * </pre>
     8791       */
    54578792      public Builder clearVals() {
    5458         vals_ = java.util.Collections.emptyList();;
     8793        vals_ = java.util.Collections.emptyList();
    54598794        bitField0_ = (bitField0_ & ~0x00000004);
    54608795       
    54618796        return this;
    54628797      }
    5463      
     8798
    54648799      // optional .OSMPBF.Info info = 4;
    54658800      private crosby.binary.Osmformat.Info info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
     8801      /**
     8802       * <code>optional .OSMPBF.Info info = 4;</code>
     8803       *
     8804       * <pre>
     8805       * May be omitted in omitmeta
     8806       * </pre>
     8807       */
    54668808      public boolean hasInfo() {
    54678809        return ((bitField0_ & 0x00000008) == 0x00000008);
    54688810      }
     8811      /**
     8812       * <code>optional .OSMPBF.Info info = 4;</code>
     8813       *
     8814       * <pre>
     8815       * May be omitted in omitmeta
     8816       * </pre>
     8817       */
    54698818      public crosby.binary.Osmformat.Info getInfo() {
    54708819        return info_;
    54718820      }
     8821      /**
     8822       * <code>optional .OSMPBF.Info info = 4;</code>
     8823       *
     8824       * <pre>
     8825       * May be omitted in omitmeta
     8826       * </pre>
     8827       */
    54728828      public Builder setInfo(crosby.binary.Osmformat.Info value) {
    54738829        if (value == null) {
     
    54758831        }
    54768832        info_ = value;
    5477        
     8833
    54788834        bitField0_ |= 0x00000008;
    54798835        return this;
    54808836      }
     8837      /**
     8838       * <code>optional .OSMPBF.Info info = 4;</code>
     8839       *
     8840       * <pre>
     8841       * May be omitted in omitmeta
     8842       * </pre>
     8843       */
    54818844      public Builder setInfo(
    54828845          crosby.binary.Osmformat.Info.Builder builderForValue) {
    54838846        info_ = builderForValue.build();
    5484        
     8847
    54858848        bitField0_ |= 0x00000008;
    54868849        return this;
    54878850      }
     8851      /**
     8852       * <code>optional .OSMPBF.Info info = 4;</code>
     8853       *
     8854       * <pre>
     8855       * May be omitted in omitmeta
     8856       * </pre>
     8857       */
    54888858      public Builder mergeInfo(crosby.binary.Osmformat.Info value) {
    54898859        if (((bitField0_ & 0x00000008) == 0x00000008) &&
     
    54948864          info_ = value;
    54958865        }
    5496        
     8866
    54978867        bitField0_ |= 0x00000008;
    54988868        return this;
    54998869      }
     8870      /**
     8871       * <code>optional .OSMPBF.Info info = 4;</code>
     8872       *
     8873       * <pre>
     8874       * May be omitted in omitmeta
     8875       * </pre>
     8876       */
    55008877      public Builder clearInfo() {
    55018878        info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
    5502        
     8879
    55038880        bitField0_ = (bitField0_ & ~0x00000008);
    55048881        return this;
    55058882      }
    5506      
     8883
    55078884      // required sint64 lat = 8;
    55088885      private long lat_ ;
     8886      /**
     8887       * <code>required sint64 lat = 8;</code>
     8888       */
    55098889      public boolean hasLat() {
    55108890        return ((bitField0_ & 0x00000010) == 0x00000010);
    55118891      }
     8892      /**
     8893       * <code>required sint64 lat = 8;</code>
     8894       */
    55128895      public long getLat() {
    55138896        return lat_;
    55148897      }
     8898      /**
     8899       * <code>required sint64 lat = 8;</code>
     8900       */
    55158901      public Builder setLat(long value) {
    55168902        bitField0_ |= 0x00000010;
     
    55198905        return this;
    55208906      }
     8907      /**
     8908       * <code>required sint64 lat = 8;</code>
     8909       */
    55218910      public Builder clearLat() {
    55228911        bitField0_ = (bitField0_ & ~0x00000010);
     
    55258914        return this;
    55268915      }
    5527      
     8916
    55288917      // required sint64 lon = 9;
    55298918      private long lon_ ;
     8919      /**
     8920       * <code>required sint64 lon = 9;</code>
     8921       */
    55308922      public boolean hasLon() {
    55318923        return ((bitField0_ & 0x00000020) == 0x00000020);
    55328924      }
     8925      /**
     8926       * <code>required sint64 lon = 9;</code>
     8927       */
    55338928      public long getLon() {
    55348929        return lon_;
    55358930      }
     8931      /**
     8932       * <code>required sint64 lon = 9;</code>
     8933       */
    55368934      public Builder setLon(long value) {
    55378935        bitField0_ |= 0x00000020;
     
    55408938        return this;
    55418939      }
     8940      /**
     8941       * <code>required sint64 lon = 9;</code>
     8942       */
    55428943      public Builder clearLon() {
    55438944        bitField0_ = (bitField0_ & ~0x00000020);
     
    55468947        return this;
    55478948      }
    5548      
     8949
    55498950      // @@protoc_insertion_point(builder_scope:OSMPBF.Node)
    55508951    }
    5551    
     8952
    55528953    static {
    55538954      defaultInstance = new Node(true);
    55548955      defaultInstance.initFields();
    55558956    }
    5556    
     8957
    55578958    // @@protoc_insertion_point(class_scope:OSMPBF.Node)
    55588959  }
    5559  
     8960
    55608961  public interface DenseNodesOrBuilder
    55618962      extends com.google.protobuf.MessageLiteOrBuilder {
    5562    
     8963
    55638964    // repeated sint64 id = 1 [packed = true];
     8965    /**
     8966     * <code>repeated sint64 id = 1 [packed = true];</code>
     8967     *
     8968     * <pre>
     8969     * DELTA coded
     8970     * </pre>
     8971     */
    55648972    java.util.List<java.lang.Long> getIdList();
     8973    /**
     8974     * <code>repeated sint64 id = 1 [packed = true];</code>
     8975     *
     8976     * <pre>
     8977     * DELTA coded
     8978     * </pre>
     8979     */
    55658980    int getIdCount();
     8981    /**
     8982     * <code>repeated sint64 id = 1 [packed = true];</code>
     8983     *
     8984     * <pre>
     8985     * DELTA coded
     8986     * </pre>
     8987     */
    55668988    long getId(int index);
    5567    
     8989
    55688990    // optional .OSMPBF.DenseInfo denseinfo = 5;
     8991    /**
     8992     * <code>optional .OSMPBF.DenseInfo denseinfo = 5;</code>
     8993     *
     8994     * <pre>
     8995     *repeated Info info = 4;
     8996     * </pre>
     8997     */
    55698998    boolean hasDenseinfo();
     8999    /**
     9000     * <code>optional .OSMPBF.DenseInfo denseinfo = 5;</code>
     9001     *
     9002     * <pre>
     9003     *repeated Info info = 4;
     9004     * </pre>
     9005     */
    55709006    crosby.binary.Osmformat.DenseInfo getDenseinfo();
    5571    
     9007
    55729008    // repeated sint64 lat = 8 [packed = true];
     9009    /**
     9010     * <code>repeated sint64 lat = 8 [packed = true];</code>
     9011     *
     9012     * <pre>
     9013     * DELTA coded
     9014     * </pre>
     9015     */
    55739016    java.util.List<java.lang.Long> getLatList();
     9017    /**
     9018     * <code>repeated sint64 lat = 8 [packed = true];</code>
     9019     *
     9020     * <pre>
     9021     * DELTA coded
     9022     * </pre>
     9023     */
    55749024    int getLatCount();
     9025    /**
     9026     * <code>repeated sint64 lat = 8 [packed = true];</code>
     9027     *
     9028     * <pre>
     9029     * DELTA coded
     9030     * </pre>
     9031     */
    55759032    long getLat(int index);
    5576    
     9033
    55779034    // repeated sint64 lon = 9 [packed = true];
     9035    /**
     9036     * <code>repeated sint64 lon = 9 [packed = true];</code>
     9037     *
     9038     * <pre>
     9039     * DELTA coded
     9040     * </pre>
     9041     */
    55789042    java.util.List<java.lang.Long> getLonList();
     9043    /**
     9044     * <code>repeated sint64 lon = 9 [packed = true];</code>
     9045     *
     9046     * <pre>
     9047     * DELTA coded
     9048     * </pre>
     9049     */
    55799050    int getLonCount();
     9051    /**
     9052     * <code>repeated sint64 lon = 9 [packed = true];</code>
     9053     *
     9054     * <pre>
     9055     * DELTA coded
     9056     * </pre>
     9057     */
    55809058    long getLon(int index);
    5581    
     9059
    55829060    // repeated int32 keys_vals = 10 [packed = true];
     9061    /**
     9062     * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     9063     *
     9064     * <pre>
     9065     * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     9066     * </pre>
     9067     */
    55839068    java.util.List<java.lang.Integer> getKeysValsList();
     9069    /**
     9070     * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     9071     *
     9072     * <pre>
     9073     * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     9074     * </pre>
     9075     */
    55849076    int getKeysValsCount();
     9077    /**
     9078     * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     9079     *
     9080     * <pre>
     9081     * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     9082     * </pre>
     9083     */
    55859084    int getKeysVals(int index);
    55869085  }
     9086  /**
     9087   * Protobuf type {@code OSMPBF.DenseNodes}
     9088   */
    55879089  public static final class DenseNodes extends
    55889090      com.google.protobuf.GeneratedMessageLite
    55899091      implements DenseNodesOrBuilder {
    55909092    // Use DenseNodes.newBuilder() to construct.
    5591     private DenseNodes(Builder builder) {
     9093    private DenseNodes(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    55929094      super(builder);
     9095
    55939096    }
    55949097    private DenseNodes(boolean noInit) {}
    5595    
     9098
    55969099    private static final DenseNodes defaultInstance;
    55979100    public static DenseNodes getDefaultInstance() {
    55989101      return defaultInstance;
    55999102    }
    5600    
     9103
    56019104    public DenseNodes getDefaultInstanceForType() {
    56029105      return defaultInstance;
    56039106    }
    5604    
     9107
     9108    private DenseNodes(
     9109        com.google.protobuf.CodedInputStream input,
     9110        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     9111        throws com.google.protobuf.InvalidProtocolBufferException {
     9112      initFields();
     9113      int mutable_bitField0_ = 0;
     9114      try {
     9115        boolean done = false;
     9116        while (!done) {
     9117          int tag = input.readTag();
     9118          switch (tag) {
     9119            case 0:
     9120              done = true;
     9121              break;
     9122            default: {
     9123              if (!parseUnknownField(input,
     9124                                     extensionRegistry, tag)) {
     9125                done = true;
     9126              }
     9127              break;
     9128            }
     9129            case 8: {
     9130              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
     9131                id_ = new java.util.ArrayList<java.lang.Long>();
     9132                mutable_bitField0_ |= 0x00000001;
     9133              }
     9134              id_.add(input.readSInt64());
     9135              break;
     9136            }
     9137            case 10: {
     9138              int length = input.readRawVarint32();
     9139              int limit = input.pushLimit(length);
     9140              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
     9141                id_ = new java.util.ArrayList<java.lang.Long>();
     9142                mutable_bitField0_ |= 0x00000001;
     9143              }
     9144              while (input.getBytesUntilLimit() > 0) {
     9145                id_.add(input.readSInt64());
     9146              }
     9147              input.popLimit(limit);
     9148              break;
     9149            }
     9150            case 42: {
     9151              crosby.binary.Osmformat.DenseInfo.Builder subBuilder = null;
     9152              if (((bitField0_ & 0x00000001) == 0x00000001)) {
     9153                subBuilder = denseinfo_.toBuilder();
     9154              }
     9155              denseinfo_ = input.readMessage(crosby.binary.Osmformat.DenseInfo.PARSER, extensionRegistry);
     9156              if (subBuilder != null) {
     9157                subBuilder.mergeFrom(denseinfo_);
     9158                denseinfo_ = subBuilder.buildPartial();
     9159              }
     9160              bitField0_ |= 0x00000001;
     9161              break;
     9162            }
     9163            case 64: {
     9164              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     9165                lat_ = new java.util.ArrayList<java.lang.Long>();
     9166                mutable_bitField0_ |= 0x00000004;
     9167              }
     9168              lat_.add(input.readSInt64());
     9169              break;
     9170            }
     9171            case 66: {
     9172              int length = input.readRawVarint32();
     9173              int limit = input.pushLimit(length);
     9174              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
     9175                lat_ = new java.util.ArrayList<java.lang.Long>();
     9176                mutable_bitField0_ |= 0x00000004;
     9177              }
     9178              while (input.getBytesUntilLimit() > 0) {
     9179                lat_.add(input.readSInt64());
     9180              }
     9181              input.popLimit(limit);
     9182              break;
     9183            }
     9184            case 72: {
     9185              if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
     9186                lon_ = new java.util.ArrayList<java.lang.Long>();
     9187                mutable_bitField0_ |= 0x00000008;
     9188              }
     9189              lon_.add(input.readSInt64());
     9190              break;
     9191            }
     9192            case 74: {
     9193              int length = input.readRawVarint32();
     9194              int limit = input.pushLimit(length);
     9195              if (!((mutable_bitField0_ & 0x00000008) == 0x00000008) && input.getBytesUntilLimit() > 0) {
     9196                lon_ = new java.util.ArrayList<java.lang.Long>();
     9197                mutable_bitField0_ |= 0x00000008;
     9198              }
     9199              while (input.getBytesUntilLimit() > 0) {
     9200                lon_.add(input.readSInt64());
     9201              }
     9202              input.popLimit(limit);
     9203              break;
     9204            }
     9205            case 80: {
     9206              if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
     9207                keysVals_ = new java.util.ArrayList<java.lang.Integer>();
     9208                mutable_bitField0_ |= 0x00000010;
     9209              }
     9210              keysVals_.add(input.readInt32());
     9211              break;
     9212            }
     9213            case 82: {
     9214              int length = input.readRawVarint32();
     9215              int limit = input.pushLimit(length);
     9216              if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
     9217                keysVals_ = new java.util.ArrayList<java.lang.Integer>();
     9218                mutable_bitField0_ |= 0x00000010;
     9219              }
     9220              while (input.getBytesUntilLimit() > 0) {
     9221                keysVals_.add(input.readInt32());
     9222              }
     9223              input.popLimit(limit);
     9224              break;
     9225            }
     9226          }
     9227        }
     9228      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     9229        throw e.setUnfinishedMessage(this);
     9230      } catch (java.io.IOException e) {
     9231        throw new com.google.protobuf.InvalidProtocolBufferException(
     9232            e.getMessage()).setUnfinishedMessage(this);
     9233      } finally {
     9234        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
     9235          id_ = java.util.Collections.unmodifiableList(id_);
     9236        }
     9237        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     9238          lat_ = java.util.Collections.unmodifiableList(lat_);
     9239        }
     9240        if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
     9241          lon_ = java.util.Collections.unmodifiableList(lon_);
     9242        }
     9243        if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
     9244          keysVals_ = java.util.Collections.unmodifiableList(keysVals_);
     9245        }
     9246        makeExtensionsImmutable();
     9247      }
     9248    }
     9249    public static com.google.protobuf.Parser<DenseNodes> PARSER =
     9250        new com.google.protobuf.AbstractParser<DenseNodes>() {
     9251      public DenseNodes parsePartialFrom(
     9252          com.google.protobuf.CodedInputStream input,
     9253          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     9254          throws com.google.protobuf.InvalidProtocolBufferException {
     9255        return new DenseNodes(input, extensionRegistry);
     9256      }
     9257    };
     9258
     9259    @java.lang.Override
     9260    public com.google.protobuf.Parser<DenseNodes> getParserForType() {
     9261      return PARSER;
     9262    }
     9263
    56059264    private int bitField0_;
    56069265    // repeated sint64 id = 1 [packed = true];
    56079266    public static final int ID_FIELD_NUMBER = 1;
    56089267    private java.util.List<java.lang.Long> id_;
     9268    /**
     9269     * <code>repeated sint64 id = 1 [packed = true];</code>
     9270     *
     9271     * <pre>
     9272     * DELTA coded
     9273     * </pre>
     9274     */
    56099275    public java.util.List<java.lang.Long>
    56109276        getIdList() {
    56119277      return id_;
    56129278    }
     9279    /**
     9280     * <code>repeated sint64 id = 1 [packed = true];</code>
     9281     *
     9282     * <pre>
     9283     * DELTA coded
     9284     * </pre>
     9285     */
    56139286    public int getIdCount() {
    56149287      return id_.size();
    56159288    }
     9289    /**
     9290     * <code>repeated sint64 id = 1 [packed = true];</code>
     9291     *
     9292     * <pre>
     9293     * DELTA coded
     9294     * </pre>
     9295     */
    56169296    public long getId(int index) {
    56179297      return id_.get(index);
    56189298    }
    56199299    private int idMemoizedSerializedSize = -1;
    5620    
     9300
    56219301    // optional .OSMPBF.DenseInfo denseinfo = 5;
    56229302    public static final int DENSEINFO_FIELD_NUMBER = 5;
    56239303    private crosby.binary.Osmformat.DenseInfo denseinfo_;
     9304    /**
     9305     * <code>optional .OSMPBF.DenseInfo denseinfo = 5;</code>
     9306     *
     9307     * <pre>
     9308     *repeated Info info = 4;
     9309     * </pre>
     9310     */
    56249311    public boolean hasDenseinfo() {
    56259312      return ((bitField0_ & 0x00000001) == 0x00000001);
    56269313    }
     9314    /**
     9315     * <code>optional .OSMPBF.DenseInfo denseinfo = 5;</code>
     9316     *
     9317     * <pre>
     9318     *repeated Info info = 4;
     9319     * </pre>
     9320     */
    56279321    public crosby.binary.Osmformat.DenseInfo getDenseinfo() {
    56289322      return denseinfo_;
    56299323    }
    5630    
     9324
    56319325    // repeated sint64 lat = 8 [packed = true];
    56329326    public static final int LAT_FIELD_NUMBER = 8;
    56339327    private java.util.List<java.lang.Long> lat_;
     9328    /**
     9329     * <code>repeated sint64 lat = 8 [packed = true];</code>
     9330     *
     9331     * <pre>
     9332     * DELTA coded
     9333     * </pre>
     9334     */
    56349335    public java.util.List<java.lang.Long>
    56359336        getLatList() {
    56369337      return lat_;
    56379338    }
     9339    /**
     9340     * <code>repeated sint64 lat = 8 [packed = true];</code>
     9341     *
     9342     * <pre>
     9343     * DELTA coded
     9344     * </pre>
     9345     */
    56389346    public int getLatCount() {
    56399347      return lat_.size();
    56409348    }
     9349    /**
     9350     * <code>repeated sint64 lat = 8 [packed = true];</code>
     9351     *
     9352     * <pre>
     9353     * DELTA coded
     9354     * </pre>
     9355     */
    56419356    public long getLat(int index) {
    56429357      return lat_.get(index);
    56439358    }
    56449359    private int latMemoizedSerializedSize = -1;
    5645    
     9360
    56469361    // repeated sint64 lon = 9 [packed = true];
    56479362    public static final int LON_FIELD_NUMBER = 9;
    56489363    private java.util.List<java.lang.Long> lon_;
     9364    /**
     9365     * <code>repeated sint64 lon = 9 [packed = true];</code>
     9366     *
     9367     * <pre>
     9368     * DELTA coded
     9369     * </pre>
     9370     */
    56499371    public java.util.List<java.lang.Long>
    56509372        getLonList() {
    56519373      return lon_;
    56529374    }
     9375    /**
     9376     * <code>repeated sint64 lon = 9 [packed = true];</code>
     9377     *
     9378     * <pre>
     9379     * DELTA coded
     9380     * </pre>
     9381     */
    56539382    public int getLonCount() {
    56549383      return lon_.size();
    56559384    }
     9385    /**
     9386     * <code>repeated sint64 lon = 9 [packed = true];</code>
     9387     *
     9388     * <pre>
     9389     * DELTA coded
     9390     * </pre>
     9391     */
    56569392    public long getLon(int index) {
    56579393      return lon_.get(index);
    56589394    }
    56599395    private int lonMemoizedSerializedSize = -1;
    5660    
     9396
    56619397    // repeated int32 keys_vals = 10 [packed = true];
    56629398    public static final int KEYS_VALS_FIELD_NUMBER = 10;
    56639399    private java.util.List<java.lang.Integer> keysVals_;
     9400    /**
     9401     * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     9402     *
     9403     * <pre>
     9404     * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     9405     * </pre>
     9406     */
    56649407    public java.util.List<java.lang.Integer>
    56659408        getKeysValsList() {
    56669409      return keysVals_;
    56679410    }
     9411    /**
     9412     * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     9413     *
     9414     * <pre>
     9415     * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     9416     * </pre>
     9417     */
    56689418    public int getKeysValsCount() {
    56699419      return keysVals_.size();
    56709420    }
     9421    /**
     9422     * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     9423     *
     9424     * <pre>
     9425     * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     9426     * </pre>
     9427     */
    56719428    public int getKeysVals(int index) {
    56729429      return keysVals_.get(index);
    56739430    }
    56749431    private int keysValsMemoizedSerializedSize = -1;
    5675    
     9432
    56769433    private void initFields() {
    5677       id_ = java.util.Collections.emptyList();;
     9434      id_ = java.util.Collections.emptyList();
    56789435      denseinfo_ = crosby.binary.Osmformat.DenseInfo.getDefaultInstance();
    5679       lat_ = java.util.Collections.emptyList();;
    5680       lon_ = java.util.Collections.emptyList();;
    5681       keysVals_ = java.util.Collections.emptyList();;
     9436      lat_ = java.util.Collections.emptyList();
     9437      lon_ = java.util.Collections.emptyList();
     9438      keysVals_ = java.util.Collections.emptyList();
    56829439    }
    56839440    private byte memoizedIsInitialized = -1;
     
    56859442      byte isInitialized = memoizedIsInitialized;
    56869443      if (isInitialized != -1) return isInitialized == 1;
    5687      
     9444
    56889445      memoizedIsInitialized = 1;
    56899446      return true;
    56909447    }
    5691    
     9448
    56929449    public void writeTo(com.google.protobuf.CodedOutputStream output)
    56939450                        throws java.io.IOException {
     
    57259482      }
    57269483    }
    5727    
     9484
    57289485    private int memoizedSerializedSize = -1;
    57299486    public int getSerializedSize() {
    57309487      int size = memoizedSerializedSize;
    57319488      if (size != -1) return size;
    5732    
     9489
    57339490      size = 0;
    57349491      {
     
    57959552      return size;
    57969553    }
    5797    
     9554
    57989555    private static final long serialVersionUID = 0L;
    57999556    @java.lang.Override
     
    58029559      return super.writeReplace();
    58039560    }
    5804    
     9561
    58059562    public static crosby.binary.Osmformat.DenseNodes parseFrom(
    58069563        com.google.protobuf.ByteString data)
    58079564        throws com.google.protobuf.InvalidProtocolBufferException {
    5808       return newBuilder().mergeFrom(data).buildParsed();
     9565      return PARSER.parseFrom(data);
    58099566    }
    58109567    public static crosby.binary.Osmformat.DenseNodes parseFrom(
     
    58129569        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    58139570        throws com.google.protobuf.InvalidProtocolBufferException {
    5814       return newBuilder().mergeFrom(data, extensionRegistry)
    5815                .buildParsed();
     9571      return PARSER.parseFrom(data, extensionRegistry);
    58169572    }
    58179573    public static crosby.binary.Osmformat.DenseNodes parseFrom(byte[] data)
    58189574        throws com.google.protobuf.InvalidProtocolBufferException {
    5819       return newBuilder().mergeFrom(data).buildParsed();
     9575      return PARSER.parseFrom(data);
    58209576    }
    58219577    public static crosby.binary.Osmformat.DenseNodes parseFrom(
     
    58239579        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    58249580        throws com.google.protobuf.InvalidProtocolBufferException {
    5825       return newBuilder().mergeFrom(data, extensionRegistry)
    5826                .buildParsed();
     9581      return PARSER.parseFrom(data, extensionRegistry);
    58279582    }
    58289583    public static crosby.binary.Osmformat.DenseNodes parseFrom(java.io.InputStream input)
    58299584        throws java.io.IOException {
    5830       return newBuilder().mergeFrom(input).buildParsed();
     9585      return PARSER.parseFrom(input);
    58319586    }
    58329587    public static crosby.binary.Osmformat.DenseNodes parseFrom(
     
    58349589        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    58359590        throws java.io.IOException {
    5836       return newBuilder().mergeFrom(input, extensionRegistry)
    5837                .buildParsed();
     9591      return PARSER.parseFrom(input, extensionRegistry);
    58389592    }
    58399593    public static crosby.binary.Osmformat.DenseNodes parseDelimitedFrom(java.io.InputStream input)
    58409594        throws java.io.IOException {
    5841       Builder builder = newBuilder();
    5842       if (builder.mergeDelimitedFrom(input)) {
    5843         return builder.buildParsed();
    5844       } else {
    5845         return null;
    5846       }
     9595      return PARSER.parseDelimitedFrom(input);
    58479596    }
    58489597    public static crosby.binary.Osmformat.DenseNodes parseDelimitedFrom(
     
    58509599        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    58519600        throws java.io.IOException {
    5852       Builder builder = newBuilder();
    5853       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    5854         return builder.buildParsed();
    5855       } else {
    5856         return null;
    5857       }
     9601      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    58589602    }
    58599603    public static crosby.binary.Osmformat.DenseNodes parseFrom(
    58609604        com.google.protobuf.CodedInputStream input)
    58619605        throws java.io.IOException {
    5862       return newBuilder().mergeFrom(input).buildParsed();
     9606      return PARSER.parseFrom(input);
    58639607    }
    58649608    public static crosby.binary.Osmformat.DenseNodes parseFrom(
     
    58669610        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    58679611        throws java.io.IOException {
    5868       return newBuilder().mergeFrom(input, extensionRegistry)
    5869                .buildParsed();
    5870     }
    5871    
     9612      return PARSER.parseFrom(input, extensionRegistry);
     9613    }
     9614
    58729615    public static Builder newBuilder() { return Builder.create(); }
    58739616    public Builder newBuilderForType() { return newBuilder(); }
     
    58769619    }
    58779620    public Builder toBuilder() { return newBuilder(this); }
    5878    
     9621
     9622    /**
     9623     * Protobuf type {@code OSMPBF.DenseNodes}
     9624     */
    58799625    public static final class Builder extends
    58809626        com.google.protobuf.GeneratedMessageLite.Builder<
     
    58859631        maybeForceBuilderInitialization();
    58869632      }
    5887      
     9633
    58889634      private void maybeForceBuilderInitialization() {
    58899635      }
     
    58919637        return new Builder();
    58929638      }
    5893      
     9639
    58949640      public Builder clear() {
    58959641        super.clear();
    5896         id_ = java.util.Collections.emptyList();;
     9642        id_ = java.util.Collections.emptyList();
    58979643        bitField0_ = (bitField0_ & ~0x00000001);
    58989644        denseinfo_ = crosby.binary.Osmformat.DenseInfo.getDefaultInstance();
    58999645        bitField0_ = (bitField0_ & ~0x00000002);
    5900         lat_ = java.util.Collections.emptyList();;
     9646        lat_ = java.util.Collections.emptyList();
    59019647        bitField0_ = (bitField0_ & ~0x00000004);
    5902         lon_ = java.util.Collections.emptyList();;
     9648        lon_ = java.util.Collections.emptyList();
    59039649        bitField0_ = (bitField0_ & ~0x00000008);
    5904         keysVals_ = java.util.Collections.emptyList();;
     9650        keysVals_ = java.util.Collections.emptyList();
    59059651        bitField0_ = (bitField0_ & ~0x00000010);
    59069652        return this;
    59079653      }
    5908      
     9654
    59099655      public Builder clone() {
    59109656        return create().mergeFrom(buildPartial());
    59119657      }
    5912      
     9658
    59139659      public crosby.binary.Osmformat.DenseNodes getDefaultInstanceForType() {
    59149660        return crosby.binary.Osmformat.DenseNodes.getDefaultInstance();
    59159661      }
    5916      
     9662
    59179663      public crosby.binary.Osmformat.DenseNodes build() {
    59189664        crosby.binary.Osmformat.DenseNodes result = buildPartial();
     
    59229668        return result;
    59239669      }
    5924      
    5925       private crosby.binary.Osmformat.DenseNodes buildParsed()
    5926           throws com.google.protobuf.InvalidProtocolBufferException {
    5927         crosby.binary.Osmformat.DenseNodes result = buildPartial();
    5928         if (!result.isInitialized()) {
    5929           throw newUninitializedMessageException(
    5930             result).asInvalidProtocolBufferException();
    5931         }
    5932         return result;
    5933       }
    5934      
     9670
    59359671      public crosby.binary.Osmformat.DenseNodes buildPartial() {
    59369672        crosby.binary.Osmformat.DenseNodes result = new crosby.binary.Osmformat.DenseNodes(this);
     
    59649700        return result;
    59659701      }
    5966      
     9702
    59679703      public Builder mergeFrom(crosby.binary.Osmformat.DenseNodes other) {
    59689704        if (other == crosby.binary.Osmformat.DenseNodes.getDefaultInstance()) return this;
     
    60129748        return this;
    60139749      }
    6014      
     9750
    60159751      public final boolean isInitialized() {
    60169752        return true;
    60179753      }
    6018      
     9754
    60199755      public Builder mergeFrom(
    60209756          com.google.protobuf.CodedInputStream input,
    60219757          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    60229758          throws java.io.IOException {
    6023         while (true) {
    6024           int tag = input.readTag();
    6025           switch (tag) {
    6026             case 0:
    6027              
    6028               return this;
    6029             default: {
    6030               if (!parseUnknownField(input, extensionRegistry, tag)) {
    6031                
    6032                 return this;
    6033               }
    6034               break;
    6035             }
    6036             case 8: {
    6037               ensureIdIsMutable();
    6038               id_.add(input.readSInt64());
    6039               break;
    6040             }
    6041             case 10: {
    6042               int length = input.readRawVarint32();
    6043               int limit = input.pushLimit(length);
    6044               while (input.getBytesUntilLimit() > 0) {
    6045                 addId(input.readSInt64());
    6046               }
    6047               input.popLimit(limit);
    6048               break;
    6049             }
    6050             case 42: {
    6051               crosby.binary.Osmformat.DenseInfo.Builder subBuilder = crosby.binary.Osmformat.DenseInfo.newBuilder();
    6052               if (hasDenseinfo()) {
    6053                 subBuilder.mergeFrom(getDenseinfo());
    6054               }
    6055               input.readMessage(subBuilder, extensionRegistry);
    6056               setDenseinfo(subBuilder.buildPartial());
    6057               break;
    6058             }
    6059             case 64: {
    6060               ensureLatIsMutable();
    6061               lat_.add(input.readSInt64());
    6062               break;
    6063             }
    6064             case 66: {
    6065               int length = input.readRawVarint32();
    6066               int limit = input.pushLimit(length);
    6067               while (input.getBytesUntilLimit() > 0) {
    6068                 addLat(input.readSInt64());
    6069               }
    6070               input.popLimit(limit);
    6071               break;
    6072             }
    6073             case 72: {
    6074               ensureLonIsMutable();
    6075               lon_.add(input.readSInt64());
    6076               break;
    6077             }
    6078             case 74: {
    6079               int length = input.readRawVarint32();
    6080               int limit = input.pushLimit(length);
    6081               while (input.getBytesUntilLimit() > 0) {
    6082                 addLon(input.readSInt64());
    6083               }
    6084               input.popLimit(limit);
    6085               break;
    6086             }
    6087             case 80: {
    6088               ensureKeysValsIsMutable();
    6089               keysVals_.add(input.readInt32());
    6090               break;
    6091             }
    6092             case 82: {
    6093               int length = input.readRawVarint32();
    6094               int limit = input.pushLimit(length);
    6095               while (input.getBytesUntilLimit() > 0) {
    6096                 addKeysVals(input.readInt32());
    6097               }
    6098               input.popLimit(limit);
    6099               break;
    6100             }
     9759        crosby.binary.Osmformat.DenseNodes parsedMessage = null;
     9760        try {
     9761          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     9762        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     9763          parsedMessage = (crosby.binary.Osmformat.DenseNodes) e.getUnfinishedMessage();
     9764          throw e;
     9765        } finally {
     9766          if (parsedMessage != null) {
     9767            mergeFrom(parsedMessage);
    61019768          }
    61029769        }
    6103       }
    6104      
     9770        return this;
     9771      }
    61059772      private int bitField0_;
    6106      
     9773
    61079774      // repeated sint64 id = 1 [packed = true];
    6108       private java.util.List<java.lang.Long> id_ = java.util.Collections.emptyList();;
     9775      private java.util.List<java.lang.Long> id_ = java.util.Collections.emptyList();
    61099776      private void ensureIdIsMutable() {
    61109777        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
     
    61139780         }
    61149781      }
     9782      /**
     9783       * <code>repeated sint64 id = 1 [packed = true];</code>
     9784       *
     9785       * <pre>
     9786       * DELTA coded
     9787       * </pre>
     9788       */
    61159789      public java.util.List<java.lang.Long>
    61169790          getIdList() {
    61179791        return java.util.Collections.unmodifiableList(id_);
    61189792      }
     9793      /**
     9794       * <code>repeated sint64 id = 1 [packed = true];</code>
     9795       *
     9796       * <pre>
     9797       * DELTA coded
     9798       * </pre>
     9799       */
    61199800      public int getIdCount() {
    61209801        return id_.size();
    61219802      }
     9803      /**
     9804       * <code>repeated sint64 id = 1 [packed = true];</code>
     9805       *
     9806       * <pre>
     9807       * DELTA coded
     9808       * </pre>
     9809       */
    61229810      public long getId(int index) {
    61239811        return id_.get(index);
    61249812      }
     9813      /**
     9814       * <code>repeated sint64 id = 1 [packed = true];</code>
     9815       *
     9816       * <pre>
     9817       * DELTA coded
     9818       * </pre>
     9819       */
    61259820      public Builder setId(
    61269821          int index, long value) {
     
    61309825        return this;
    61319826      }
     9827      /**
     9828       * <code>repeated sint64 id = 1 [packed = true];</code>
     9829       *
     9830       * <pre>
     9831       * DELTA coded
     9832       * </pre>
     9833       */
    61329834      public Builder addId(long value) {
    61339835        ensureIdIsMutable();
     
    61369838        return this;
    61379839      }
     9840      /**
     9841       * <code>repeated sint64 id = 1 [packed = true];</code>
     9842       *
     9843       * <pre>
     9844       * DELTA coded
     9845       * </pre>
     9846       */
    61389847      public Builder addAllId(
    61399848          java.lang.Iterable<? extends java.lang.Long> values) {
     
    61439852        return this;
    61449853      }
     9854      /**
     9855       * <code>repeated sint64 id = 1 [packed = true];</code>
     9856       *
     9857       * <pre>
     9858       * DELTA coded
     9859       * </pre>
     9860       */
    61459861      public Builder clearId() {
    6146         id_ = java.util.Collections.emptyList();;
     9862        id_ = java.util.Collections.emptyList();
    61479863        bitField0_ = (bitField0_ & ~0x00000001);
    61489864       
    61499865        return this;
    61509866      }
    6151      
     9867
    61529868      // optional .OSMPBF.DenseInfo denseinfo = 5;
    61539869      private crosby.binary.Osmformat.DenseInfo denseinfo_ = crosby.binary.Osmformat.DenseInfo.getDefaultInstance();
     9870      /**
     9871       * <code>optional .OSMPBF.DenseInfo denseinfo = 5;</code>
     9872       *
     9873       * <pre>
     9874       *repeated Info info = 4;
     9875       * </pre>
     9876       */
    61549877      public boolean hasDenseinfo() {
    61559878        return ((bitField0_ & 0x00000002) == 0x00000002);
    61569879      }
     9880      /**
     9881       * <code>optional .OSMPBF.DenseInfo denseinfo = 5;</code>
     9882       *
     9883       * <pre>
     9884       *repeated Info info = 4;
     9885       * </pre>
     9886       */
    61579887      public crosby.binary.Osmformat.DenseInfo getDenseinfo() {
    61589888        return denseinfo_;
    61599889      }
     9890      /**
     9891       * <code>optional .OSMPBF.DenseInfo denseinfo = 5;</code>
     9892       *
     9893       * <pre>
     9894       *repeated Info info = 4;
     9895       * </pre>
     9896       */
    61609897      public Builder setDenseinfo(crosby.binary.Osmformat.DenseInfo value) {
    61619898        if (value == null) {
     
    61639900        }
    61649901        denseinfo_ = value;
    6165        
     9902
    61669903        bitField0_ |= 0x00000002;
    61679904        return this;
    61689905      }
     9906      /**
     9907       * <code>optional .OSMPBF.DenseInfo denseinfo = 5;</code>
     9908       *
     9909       * <pre>
     9910       *repeated Info info = 4;
     9911       * </pre>
     9912       */
    61699913      public Builder setDenseinfo(
    61709914          crosby.binary.Osmformat.DenseInfo.Builder builderForValue) {
    61719915        denseinfo_ = builderForValue.build();
    6172        
     9916
    61739917        bitField0_ |= 0x00000002;
    61749918        return this;
    61759919      }
     9920      /**
     9921       * <code>optional .OSMPBF.DenseInfo denseinfo = 5;</code>
     9922       *
     9923       * <pre>
     9924       *repeated Info info = 4;
     9925       * </pre>
     9926       */
    61769927      public Builder mergeDenseinfo(crosby.binary.Osmformat.DenseInfo value) {
    61779928        if (((bitField0_ & 0x00000002) == 0x00000002) &&
     
    61829933          denseinfo_ = value;
    61839934        }
    6184        
     9935
    61859936        bitField0_ |= 0x00000002;
    61869937        return this;
    61879938      }
     9939      /**
     9940       * <code>optional .OSMPBF.DenseInfo denseinfo = 5;</code>
     9941       *
     9942       * <pre>
     9943       *repeated Info info = 4;
     9944       * </pre>
     9945       */
    61889946      public Builder clearDenseinfo() {
    61899947        denseinfo_ = crosby.binary.Osmformat.DenseInfo.getDefaultInstance();
    6190        
     9948
    61919949        bitField0_ = (bitField0_ & ~0x00000002);
    61929950        return this;
    61939951      }
    6194      
     9952
    61959953      // repeated sint64 lat = 8 [packed = true];
    6196       private java.util.List<java.lang.Long> lat_ = java.util.Collections.emptyList();;
     9954      private java.util.List<java.lang.Long> lat_ = java.util.Collections.emptyList();
    61979955      private void ensureLatIsMutable() {
    61989956        if (!((bitField0_ & 0x00000004) == 0x00000004)) {
     
    62019959         }
    62029960      }
     9961      /**
     9962       * <code>repeated sint64 lat = 8 [packed = true];</code>
     9963       *
     9964       * <pre>
     9965       * DELTA coded
     9966       * </pre>
     9967       */
    62039968      public java.util.List<java.lang.Long>
    62049969          getLatList() {
    62059970        return java.util.Collections.unmodifiableList(lat_);
    62069971      }
     9972      /**
     9973       * <code>repeated sint64 lat = 8 [packed = true];</code>
     9974       *
     9975       * <pre>
     9976       * DELTA coded
     9977       * </pre>
     9978       */
    62079979      public int getLatCount() {
    62089980        return lat_.size();
    62099981      }
     9982      /**
     9983       * <code>repeated sint64 lat = 8 [packed = true];</code>
     9984       *
     9985       * <pre>
     9986       * DELTA coded
     9987       * </pre>
     9988       */
    62109989      public long getLat(int index) {
    62119990        return lat_.get(index);
    62129991      }
     9992      /**
     9993       * <code>repeated sint64 lat = 8 [packed = true];</code>
     9994       *
     9995       * <pre>
     9996       * DELTA coded
     9997       * </pre>
     9998       */
    62139999      public Builder setLat(
    621410000          int index, long value) {
     
    621810004        return this;
    621910005      }
     10006      /**
     10007       * <code>repeated sint64 lat = 8 [packed = true];</code>
     10008       *
     10009       * <pre>
     10010       * DELTA coded
     10011       * </pre>
     10012       */
    622010013      public Builder addLat(long value) {
    622110014        ensureLatIsMutable();
     
    622410017        return this;
    622510018      }
     10019      /**
     10020       * <code>repeated sint64 lat = 8 [packed = true];</code>
     10021       *
     10022       * <pre>
     10023       * DELTA coded
     10024       * </pre>
     10025       */
    622610026      public Builder addAllLat(
    622710027          java.lang.Iterable<? extends java.lang.Long> values) {
     
    623110031        return this;
    623210032      }
     10033      /**
     10034       * <code>repeated sint64 lat = 8 [packed = true];</code>
     10035       *
     10036       * <pre>
     10037       * DELTA coded
     10038       * </pre>
     10039       */
    623310040      public Builder clearLat() {
    6234         lat_ = java.util.Collections.emptyList();;
     10041        lat_ = java.util.Collections.emptyList();
    623510042        bitField0_ = (bitField0_ & ~0x00000004);
    623610043       
    623710044        return this;
    623810045      }
    6239      
     10046
    624010047      // repeated sint64 lon = 9 [packed = true];
    6241       private java.util.List<java.lang.Long> lon_ = java.util.Collections.emptyList();;
     10048      private java.util.List<java.lang.Long> lon_ = java.util.Collections.emptyList();
    624210049      private void ensureLonIsMutable() {
    624310050        if (!((bitField0_ & 0x00000008) == 0x00000008)) {
     
    624610053         }
    624710054      }
     10055      /**
     10056       * <code>repeated sint64 lon = 9 [packed = true];</code>
     10057       *
     10058       * <pre>
     10059       * DELTA coded
     10060       * </pre>
     10061       */
    624810062      public java.util.List<java.lang.Long>
    624910063          getLonList() {
    625010064        return java.util.Collections.unmodifiableList(lon_);
    625110065      }
     10066      /**
     10067       * <code>repeated sint64 lon = 9 [packed = true];</code>
     10068       *
     10069       * <pre>
     10070       * DELTA coded
     10071       * </pre>
     10072       */
    625210073      public int getLonCount() {
    625310074        return lon_.size();
    625410075      }
     10076      /**
     10077       * <code>repeated sint64 lon = 9 [packed = true];</code>
     10078       *
     10079       * <pre>
     10080       * DELTA coded
     10081       * </pre>
     10082       */
    625510083      public long getLon(int index) {
    625610084        return lon_.get(index);
    625710085      }
     10086      /**
     10087       * <code>repeated sint64 lon = 9 [packed = true];</code>
     10088       *
     10089       * <pre>
     10090       * DELTA coded
     10091       * </pre>
     10092       */
    625810093      public Builder setLon(
    625910094          int index, long value) {
     
    626310098        return this;
    626410099      }
     10100      /**
     10101       * <code>repeated sint64 lon = 9 [packed = true];</code>
     10102       *
     10103       * <pre>
     10104       * DELTA coded
     10105       * </pre>
     10106       */
    626510107      public Builder addLon(long value) {
    626610108        ensureLonIsMutable();
     
    626910111        return this;
    627010112      }
     10113      /**
     10114       * <code>repeated sint64 lon = 9 [packed = true];</code>
     10115       *
     10116       * <pre>
     10117       * DELTA coded
     10118       * </pre>
     10119       */
    627110120      public Builder addAllLon(
    627210121          java.lang.Iterable<? extends java.lang.Long> values) {
     
    627610125        return this;
    627710126      }
     10127      /**
     10128       * <code>repeated sint64 lon = 9 [packed = true];</code>
     10129       *
     10130       * <pre>
     10131       * DELTA coded
     10132       * </pre>
     10133       */
    627810134      public Builder clearLon() {
    6279         lon_ = java.util.Collections.emptyList();;
     10135        lon_ = java.util.Collections.emptyList();
    628010136        bitField0_ = (bitField0_ & ~0x00000008);
    628110137       
    628210138        return this;
    628310139      }
    6284      
     10140
    628510141      // repeated int32 keys_vals = 10 [packed = true];
    6286       private java.util.List<java.lang.Integer> keysVals_ = java.util.Collections.emptyList();;
     10142      private java.util.List<java.lang.Integer> keysVals_ = java.util.Collections.emptyList();
    628710143      private void ensureKeysValsIsMutable() {
    628810144        if (!((bitField0_ & 0x00000010) == 0x00000010)) {
     
    629110147         }
    629210148      }
     10149      /**
     10150       * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     10151       *
     10152       * <pre>
     10153       * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     10154       * </pre>
     10155       */
    629310156      public java.util.List<java.lang.Integer>
    629410157          getKeysValsList() {
    629510158        return java.util.Collections.unmodifiableList(keysVals_);
    629610159      }
     10160      /**
     10161       * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     10162       *
     10163       * <pre>
     10164       * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     10165       * </pre>
     10166       */
    629710167      public int getKeysValsCount() {
    629810168        return keysVals_.size();
    629910169      }
     10170      /**
     10171       * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     10172       *
     10173       * <pre>
     10174       * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     10175       * </pre>
     10176       */
    630010177      public int getKeysVals(int index) {
    630110178        return keysVals_.get(index);
    630210179      }
     10180      /**
     10181       * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     10182       *
     10183       * <pre>
     10184       * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     10185       * </pre>
     10186       */
    630310187      public Builder setKeysVals(
    630410188          int index, int value) {
     
    630810192        return this;
    630910193      }
     10194      /**
     10195       * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     10196       *
     10197       * <pre>
     10198       * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     10199       * </pre>
     10200       */
    631010201      public Builder addKeysVals(int value) {
    631110202        ensureKeysValsIsMutable();
     
    631410205        return this;
    631510206      }
     10207      /**
     10208       * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     10209       *
     10210       * <pre>
     10211       * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     10212       * </pre>
     10213       */
    631610214      public Builder addAllKeysVals(
    631710215          java.lang.Iterable<? extends java.lang.Integer> values) {
     
    632110219        return this;
    632210220      }
     10221      /**
     10222       * <code>repeated int32 keys_vals = 10 [packed = true];</code>
     10223       *
     10224       * <pre>
     10225       * Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
     10226       * </pre>
     10227       */
    632310228      public Builder clearKeysVals() {
    6324         keysVals_ = java.util.Collections.emptyList();;
     10229        keysVals_ = java.util.Collections.emptyList();
    632510230        bitField0_ = (bitField0_ & ~0x00000010);
    632610231       
    632710232        return this;
    632810233      }
    6329      
     10234
    633010235      // @@protoc_insertion_point(builder_scope:OSMPBF.DenseNodes)
    633110236    }
    6332    
     10237
    633310238    static {
    633410239      defaultInstance = new DenseNodes(true);
    633510240      defaultInstance.initFields();
    633610241    }
    6337    
     10242
    633810243    // @@protoc_insertion_point(class_scope:OSMPBF.DenseNodes)
    633910244  }
    6340  
     10245
    634110246  public interface WayOrBuilder
    634210247      extends com.google.protobuf.MessageLiteOrBuilder {
    6343    
     10248
    634410249    // required int64 id = 1;
     10250    /**
     10251     * <code>required int64 id = 1;</code>
     10252     */
    634510253    boolean hasId();
     10254    /**
     10255     * <code>required int64 id = 1;</code>
     10256     */
    634610257    long getId();
    6347    
     10258
    634810259    // repeated uint32 keys = 2 [packed = true];
     10260    /**
     10261     * <code>repeated uint32 keys = 2 [packed = true];</code>
     10262     *
     10263     * <pre>
     10264     * Parallel arrays.
     10265     * </pre>
     10266     */
    634910267    java.util.List<java.lang.Integer> getKeysList();
     10268    /**
     10269     * <code>repeated uint32 keys = 2 [packed = true];</code>
     10270     *
     10271     * <pre>
     10272     * Parallel arrays.
     10273     * </pre>
     10274     */
    635010275    int getKeysCount();
     10276    /**
     10277     * <code>repeated uint32 keys = 2 [packed = true];</code>
     10278     *
     10279     * <pre>
     10280     * Parallel arrays.
     10281     * </pre>
     10282     */
    635110283    int getKeys(int index);
    6352    
     10284
    635310285    // repeated uint32 vals = 3 [packed = true];
     10286    /**
     10287     * <code>repeated uint32 vals = 3 [packed = true];</code>
     10288     */
    635410289    java.util.List<java.lang.Integer> getValsList();
     10290    /**
     10291     * <code>repeated uint32 vals = 3 [packed = true];</code>
     10292     */
    635510293    int getValsCount();
     10294    /**
     10295     * <code>repeated uint32 vals = 3 [packed = true];</code>
     10296     */
    635610297    int getVals(int index);
    6357    
     10298
    635810299    // optional .OSMPBF.Info info = 4;
     10300    /**
     10301     * <code>optional .OSMPBF.Info info = 4;</code>
     10302     */
    635910303    boolean hasInfo();
     10304    /**
     10305     * <code>optional .OSMPBF.Info info = 4;</code>
     10306     */
    636010307    crosby.binary.Osmformat.Info getInfo();
    6361    
     10308
    636210309    // repeated sint64 refs = 8 [packed = true];
     10310    /**
     10311     * <code>repeated sint64 refs = 8 [packed = true];</code>
     10312     *
     10313     * <pre>
     10314     * DELTA coded
     10315     * </pre>
     10316     */
    636310317    java.util.List<java.lang.Long> getRefsList();
     10318    /**
     10319     * <code>repeated sint64 refs = 8 [packed = true];</code>
     10320     *
     10321     * <pre>
     10322     * DELTA coded
     10323     * </pre>
     10324     */
    636410325    int getRefsCount();
     10326    /**
     10327     * <code>repeated sint64 refs = 8 [packed = true];</code>
     10328     *
     10329     * <pre>
     10330     * DELTA coded
     10331     * </pre>
     10332     */
    636510333    long getRefs(int index);
    636610334  }
     10335  /**
     10336   * Protobuf type {@code OSMPBF.Way}
     10337   */
    636710338  public static final class Way extends
    636810339      com.google.protobuf.GeneratedMessageLite
    636910340      implements WayOrBuilder {
    637010341    // Use Way.newBuilder() to construct.
    6371     private Way(Builder builder) {
     10342    private Way(com.google.protobuf.GeneratedMessageLite.Builder builder) {
    637210343      super(builder);
     10344
    637310345    }
    637410346    private Way(boolean noInit) {}
    6375    
     10347
    637610348    private static final Way defaultInstance;
    637710349    public static Way getDefaultInstance() {
    637810350      return defaultInstance;
    637910351    }
    6380    
     10352
    638110353    public Way getDefaultInstanceForType() {
    638210354      return defaultInstance;
    638310355    }
    6384    
     10356
     10357    private Way(
     10358        com.google.protobuf.CodedInputStream input,
     10359        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     10360        throws com.google.protobuf.InvalidProtocolBufferException {
     10361      initFields();
     10362      int mutable_bitField0_ = 0;
     10363      try {
     10364        boolean done = false;
     10365        while (!done) {
     10366          int tag = input.readTag();
     10367          switch (tag) {
     10368            case 0:
     10369              done = true;
     10370              break;
     10371            default: {
     10372              if (!parseUnknownField(input,
     10373                                     extensionRegistry, tag)) {
     10374                done = true;
     10375              }
     10376              break;
     10377            }
     10378            case 8: {
     10379              bitField0_ |= 0x00000001;
     10380              id_ = input.readInt64();
     10381              break;
     10382            }
     10383            case 16: {
     10384              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     10385                keys_ = new java.util.ArrayList<java.lang.Integer>();
     10386                mutable_bitField0_ |= 0x00000002;
     10387              }
     10388              keys_.add(input.readUInt32());
     10389              break;
     10390            }
     10391            case 18: {
     10392              int length = input.readRawVarint32();
     10393              int limit = input.pushLimit(length);
     10394              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
     10395                keys_ = new java.util.ArrayList<java.lang.Integer>();
     10396                mutable_bitField0_ |= 0x00000002;
     10397              }
     10398              while (input.getBytesUntilLimit() > 0) {
     10399                keys_.add(input.readUInt32());
     10400              }
     10401              input.popLimit(limit);
     10402              break;
     10403            }
     10404            case 24: {
     10405              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     10406                vals_ = new java.util.ArrayList<java.lang.Integer>();
     10407                mutable_bitField0_ |= 0x00000004;
     10408              }
     10409              vals_.add(input.readUInt32());
     10410              break;
     10411            }
     10412            case 26: {
     10413              int length = input.readRawVarint32();
     10414              int limit = input.pushLimit(length);
     10415              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
     10416                vals_ = new java.util.ArrayList<java.lang.Integer>();
     10417                mutable_bitField0_ |= 0x00000004;
     10418              }
     10419              while (input.getBytesUntilLimit() > 0) {
     10420                vals_.add(input.readUInt32());
     10421              }
     10422              input.popLimit(limit);
     10423              break;
     10424            }
     10425            case 34: {
     10426              crosby.binary.Osmformat.Info.Builder subBuilder = null;
     10427              if (((bitField0_ & 0x00000002) == 0x00000002)) {
     10428                subBuilder = info_.toBuilder();
     10429              }
     10430              info_ = input.readMessage(crosby.binary.Osmformat.Info.PARSER, extensionRegistry);
     10431              if (subBuilder != null) {
     10432                subBuilder.mergeFrom(info_);
     10433                info_ = subBuilder.buildPartial();
     10434              }
     10435              bitField0_ |= 0x00000002;
     10436              break;
     10437            }
     10438            case 64: {
     10439              if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
     10440                refs_ = new java.util.ArrayList<java.lang.Long>();
     10441                mutable_bitField0_ |= 0x00000010;
     10442              }
     10443              refs_.add(input.readSInt64());
     10444              break;
     10445            }
     10446            case 66: {
     10447              int length = input.readRawVarint32();
     10448              int limit = input.pushLimit(length);
     10449              if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
     10450                refs_ = new java.util.ArrayList<java.lang.Long>();
     10451                mutable_bitField0_ |= 0x00000010;
     10452              }
     10453              while (input.getBytesUntilLimit() > 0) {
     10454                refs_.add(input.readSInt64());
     10455              }
     10456              input.popLimit(limit);
     10457              break;
     10458            }
     10459          }
     10460        }
     10461      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     10462        throw e.setUnfinishedMessage(this);
     10463      } catch (java.io.IOException e) {
     10464        throw new com.google.protobuf.InvalidProtocolBufferException(
     10465            e.getMessage()).setUnfinishedMessage(this);
     10466      } finally {
     10467        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     10468          keys_ = java.util.Collections.unmodifiableList(keys_);
     10469        }
     10470        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     10471          vals_ = java.util.Collections.unmodifiableList(vals_);
     10472        }
     10473        if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
     10474          refs_ = java.util.Collections.unmodifiableList(refs_);
     10475        }
     10476        makeExtensionsImmutable();
     10477      }
     10478    }
     10479    public static com.google.protobuf.Parser<Way> PARSER =
     10480        new com.google.protobuf.AbstractParser<Way>() {
     10481      public Way parsePartialFrom(
     10482          com.google.protobuf.CodedInputStream input,
     10483          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     10484          throws com.google.protobuf.InvalidProtocolBufferException {
     10485        return new Way(input, extensionRegistry);
     10486      }
     10487    };
     10488
     10489    @java.lang.Override
     10490    public com.google.protobuf.Parser<Way> getParserForType() {
     10491      return PARSER;
     10492    }
     10493
    638510494    private int bitField0_;
    638610495    // required int64 id = 1;
    638710496    public static final int ID_FIELD_NUMBER = 1;
    638810497    private long id_;
     10498    /**
     10499     * <code>required int64 id = 1;</code>
     10500     */
    638910501    public boolean hasId() {
    639010502      return ((bitField0_ & 0x00000001) == 0x00000001);
    639110503    }
     10504    /**
     10505     * <code>required int64 id = 1;</code>
     10506     */
    639210507    public long getId() {
    639310508      return id_;
    639410509    }
    6395    
     10510
    639610511    // repeated uint32 keys = 2 [packed = true];
    639710512    public static final int KEYS_FIELD_NUMBER = 2;
    639810513    private java.util.List<java.lang.Integer> keys_;
     10514    /**
     10515     * <code>repeated uint32 keys = 2 [packed = true];</code>
     10516     *
     10517     * <pre>
     10518     * Parallel arrays.
     10519     * </pre>
     10520     */
    639910521    public java.util.List<java.lang.Integer>
    640010522        getKeysList() {
    640110523      return keys_;
    640210524    }
     10525    /**
     10526     * <code>repeated uint32 keys = 2 [packed = true];</code>
     10527     *
     10528     * <pre>
     10529     * Parallel arrays.
     10530     * </pre>
     10531     */
    640310532    public int getKeysCount() {
    640410533      return keys_.size();
    640510534    }
     10535    /**
     10536     * <code>repeated uint32 keys = 2 [packed = true];</code>
     10537     *
     10538     * <pre>
     10539     * Parallel arrays.
     10540     * </pre>
     10541     */
    640610542    public int getKeys(int index) {
    640710543      return keys_.get(index);
    640810544    }
    640910545    private int keysMemoizedSerializedSize = -1;
    6410    
     10546
    641110547    // repeated uint32 vals = 3 [packed = true];
    641210548    public static final int VALS_FIELD_NUMBER = 3;
    641310549    private java.util.List<java.lang.Integer> vals_;
     10550    /**
     10551     * <code>repeated uint32 vals = 3 [packed = true];</code>
     10552     */
    641410553    public java.util.List<java.lang.Integer>
    641510554        getValsList() {
    641610555      return vals_;
    641710556    }
     10557    /**
     10558     * <code>repeated uint32 vals = 3 [packed = true];</code>
     10559     */
    641810560    public int getValsCount() {
    641910561      return vals_.size();
    642010562    }
     10563    /**
     10564     * <code>repeated uint32 vals = 3 [packed = true];</code>
     10565     */
    642110566    public int getVals(int index) {
    642210567      return vals_.get(index);
    642310568    }
    642410569    private int valsMemoizedSerializedSize = -1;
    6425    
     10570
    642610571    // optional .OSMPBF.Info info = 4;
    642710572    public static final int INFO_FIELD_NUMBER = 4;
    642810573    private crosby.binary.Osmformat.Info info_;
     10574    /**
     10575     * <code>optional .OSMPBF.Info info = 4;</code>
     10576     */
    642910577    public boolean hasInfo() {
    643010578      return ((bitField0_ & 0x00000002) == 0x00000002);
    643110579    }
     10580    /**
     10581     * <code>optional .OSMPBF.Info info = 4;</code>
     10582     */
    643210583    public crosby.binary.Osmformat.Info getInfo() {
    643310584      return info_;
    643410585    }
    6435    
     10586
    643610587    // repeated sint64 refs = 8 [packed = true];
    643710588    public static final int REFS_FIELD_NUMBER = 8;
    643810589    private java.util.List<java.lang.Long> refs_;
     10590    /**
     10591     * <code>repeated sint64 refs = 8 [packed = true];</code>
     10592     *
     10593     * <pre>
     10594     * DELTA coded
     10595     * </pre>
     10596     */
    643910597    public java.util.List<java.lang.Long>
    644010598        getRefsList() {
    644110599      return refs_;
    644210600    }
     10601    /**
     10602     * <code>repeated sint64 refs = 8 [packed = true];</code>
     10603     *
     10604     * <pre>
     10605     * DELTA coded
     10606     * </pre>
     10607     */
    644310608    public int getRefsCount() {
    644410609      return refs_.size();
    644510610    }
     10611    /**
     10612     * <code>repeated sint64 refs = 8 [packed = true];</code>
     10613     *
     10614     * <pre>
     10615     * DELTA coded
     10616     * </pre>
     10617     */
    644610618    public long getRefs(int index) {
    644710619      return refs_.get(index);
    644810620    }
    644910621    private int refsMemoizedSerializedSize = -1;
    6450    
     10622
    645110623    private void initFields() {
    645210624      id_ = 0L;
    6453       keys_ = java.util.Collections.emptyList();;
    6454       vals_ = java.util.Collections.emptyList();;
     10625      keys_ = java.util.Collections.emptyList();
     10626      vals_ = java.util.Collections.emptyList();
    645510627      info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
    6456       refs_ = java.util.Collections.emptyList();;
     10628      refs_ = java.util.Collections.emptyList();
    645710629    }
    645810630    private byte memoizedIsInitialized = -1;
     
    646010632      byte isInitialized = memoizedIsInitialized;
    646110633      if (isInitialized != -1) return isInitialized == 1;
    6462      
     10634
    646310635      if (!hasId()) {
    646410636        memoizedIsInitialized = 0;
     
    646810640      return true;
    646910641    }
    6470    
     10642
    647110643    public void writeTo(com.google.protobuf.CodedOutputStream output)
    647210644                        throws java.io.IOException {
     
    650010672      }
    650110673    }
    6502    
     10674
    650310675    private int memoizedSerializedSize = -1;
    650410676    public int getSerializedSize() {
    650510677      int size = memoizedSerializedSize;
    650610678      if (size != -1) return size;
    6507    
     10679
    650810680      size = 0;
    650910681      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     
    656010732      return size;
    656110733    }
    6562    
     10734
    656310735    private static final long serialVersionUID = 0L;
    656410736    @java.lang.Override
     
    656710739      return super.writeReplace();
    656810740    }
    6569    
     10741
    657010742    public static crosby.binary.Osmformat.Way parseFrom(
    657110743        com.google.protobuf.ByteString data)
    657210744        throws com.google.protobuf.InvalidProtocolBufferException {
    6573       return newBuilder().mergeFrom(data).buildParsed();
     10745      return PARSER.parseFrom(data);
    657410746    }
    657510747    public static crosby.binary.Osmformat.Way parseFrom(
     
    657710749        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    657810750        throws com.google.protobuf.InvalidProtocolBufferException {
    6579       return newBuilder().mergeFrom(data, extensionRegistry)
    6580                .buildParsed();
     10751      return PARSER.parseFrom(data, extensionRegistry);
    658110752    }
    658210753    public static crosby.binary.Osmformat.Way parseFrom(byte[] data)
    658310754        throws com.google.protobuf.InvalidProtocolBufferException {
    6584       return newBuilder().mergeFrom(data).buildParsed();
     10755      return PARSER.parseFrom(data);
    658510756    }
    658610757    public static crosby.binary.Osmformat.Way parseFrom(
     
    658810759        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    658910760        throws com.google.protobuf.InvalidProtocolBufferException {
    6590       return newBuilder().mergeFrom(data, extensionRegistry)
    6591                .buildParsed();
     10761      return PARSER.parseFrom(data, extensionRegistry);
    659210762    }
    659310763    public static crosby.binary.Osmformat.Way parseFrom(java.io.InputStream input)
    659410764        throws java.io.IOException {
    6595       return newBuilder().mergeFrom(input).buildParsed();
     10765      return PARSER.parseFrom(input);
    659610766    }
    659710767    public static crosby.binary.Osmformat.Way parseFrom(
     
    659910769        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    660010770        throws java.io.IOException {
    6601       return newBuilder().mergeFrom(input, extensionRegistry)
    6602                .buildParsed();
     10771      return PARSER.parseFrom(input, extensionRegistry);
    660310772    }
    660410773    public static crosby.binary.Osmformat.Way parseDelimitedFrom(java.io.InputStream input)
    660510774        throws java.io.IOException {
    6606       Builder builder = newBuilder();
    6607       if (builder.mergeDelimitedFrom(input)) {
    6608         return builder.buildParsed();
    6609       } else {
    6610         return null;
    6611       }
     10775      return PARSER.parseDelimitedFrom(input);
    661210776    }
    661310777    public static crosby.binary.Osmformat.Way parseDelimitedFrom(
     
    661510779        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    661610780        throws java.io.IOException {
    6617       Builder builder = newBuilder();
    6618       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    6619         return builder.buildParsed();
    6620       } else {
    6621         return null;
    6622       }
     10781      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    662310782    }
    662410783    public static crosby.binary.Osmformat.Way parseFrom(
    662510784        com.google.protobuf.CodedInputStream input)
    662610785        throws java.io.IOException {
    6627       return newBuilder().mergeFrom(input).buildParsed();
     10786      return PARSER.parseFrom(input);
    662810787    }
    662910788    public static crosby.binary.Osmformat.Way parseFrom(
     
    663110790        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    663210791        throws java.io.IOException {
    6633       return newBuilder().mergeFrom(input, extensionRegistry)
    6634                .buildParsed();
    6635     }
    6636    
     10792      return PARSER.parseFrom(input, extensionRegistry);
     10793    }
     10794
    663710795    public static Builder newBuilder() { return Builder.create(); }
    663810796    public Builder newBuilderForType() { return newBuilder(); }
     
    664110799    }
    664210800    public Builder toBuilder() { return newBuilder(this); }
    6643    
     10801
     10802    /**
     10803     * Protobuf type {@code OSMPBF.Way}
     10804     */
    664410805    public static final class Builder extends
    664510806        com.google.protobuf.GeneratedMessageLite.Builder<
     
    665010811        maybeForceBuilderInitialization();
    665110812      }
    6652      
     10813
    665310814      private void maybeForceBuilderInitialization() {
    665410815      }
     
    665610817        return new Builder();
    665710818      }
    6658      
     10819
    665910820      public Builder clear() {
    666010821        super.clear();
    666110822        id_ = 0L;
    666210823        bitField0_ = (bitField0_ & ~0x00000001);
    6663         keys_ = java.util.Collections.emptyList();;
     10824        keys_ = java.util.Collections.emptyList();
    666410825        bitField0_ = (bitField0_ & ~0x00000002);
    6665         vals_ = java.util.Collections.emptyList();;
     10826        vals_ = java.util.Collections.emptyList();
    666610827        bitField0_ = (bitField0_ & ~0x00000004);
    666710828        info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
    666810829        bitField0_ = (bitField0_ & ~0x00000008);
    6669         refs_ = java.util.Collections.emptyList();;
     10830        refs_ = java.util.Collections.emptyList();
    667010831        bitField0_ = (bitField0_ & ~0x00000010);
    667110832        return this;
    667210833      }
    6673      
     10834
    667410835      public Builder clone() {
    667510836        return create().mergeFrom(buildPartial());
    667610837      }
    6677      
     10838
    667810839      public crosby.binary.Osmformat.Way getDefaultInstanceForType() {
    667910840        return crosby.binary.Osmformat.Way.getDefaultInstance();
    668010841      }
    6681      
     10842
    668210843      public crosby.binary.Osmformat.Way build() {
    668310844        crosby.binary.Osmformat.Way result = buildPartial();
     
    668710848        return result;
    668810849      }
    6689      
    6690       private crosby.binary.Osmformat.Way buildParsed()
    6691           throws com.google.protobuf.InvalidProtocolBufferException {
    6692         crosby.binary.Osmformat.Way result = buildPartial();
    6693         if (!result.isInitialized()) {
    6694           throw newUninitializedMessageException(
    6695             result).asInvalidProtocolBufferException();
    6696         }
    6697         return result;
    6698       }
    6699      
     10850
    670010851      public crosby.binary.Osmformat.Way buildPartial() {
    670110852        crosby.binary.Osmformat.Way result = new crosby.binary.Osmformat.Way(this);
     
    672810879        return result;
    672910880      }
    6730      
     10881
    673110882      public Builder mergeFrom(crosby.binary.Osmformat.Way other) {
    673210883        if (other == crosby.binary.Osmformat.Way.getDefaultInstance()) return this;
     
    676910920        return this;
    677010921      }
    6771      
     10922
    677210923      public final boolean isInitialized() {
    677310924        if (!hasId()) {
     
    677710928        return true;
    677810929      }
    6779      
     10930
    678010931      public Builder mergeFrom(
    678110932          com.google.protobuf.CodedInputStream input,
    678210933          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    678310934          throws java.io.IOException {
    6784         while (true) {
     10935        crosby.binary.Osmformat.Way parsedMessage = null;
     10936        try {
     10937          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     10938        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     10939          parsedMessage = (crosby.binary.Osmformat.Way) e.getUnfinishedMessage();
     10940          throw e;
     10941        } finally {
     10942          if (parsedMessage != null) {
     10943            mergeFrom(parsedMessage);
     10944          }
     10945        }
     10946        return this;
     10947      }
     10948      private int bitField0_;
     10949
     10950      // required int64 id = 1;
     10951      private long id_ ;
     10952      /**
     10953       * <code>required int64 id = 1;</code>
     10954       */
     10955      public boolean hasId() {
     10956        return ((bitField0_ & 0x00000001) == 0x00000001);
     10957      }
     10958      /**
     10959       * <code>required int64 id = 1;</code>
     10960       */
     10961      public long getId() {
     10962        return id_;
     10963      }
     10964      /**
     10965       * <code>required int64 id = 1;</code>
     10966       */
     10967      public Builder setId(long value) {
     10968        bitField0_ |= 0x00000001;
     10969        id_ = value;
     10970       
     10971        return this;
     10972      }
     10973      /**
     10974       * <code>required int64 id = 1;</code>
     10975       */
     10976      public Builder clearId() {
     10977        bitField0_ = (bitField0_ & ~0x00000001);
     10978        id_ = 0L;
     10979       
     10980        return this;
     10981      }
     10982
     10983      // repeated uint32 keys = 2 [packed = true];
     10984      private java.util.List<java.lang.Integer> keys_ = java.util.Collections.emptyList();
     10985      private void ensureKeysIsMutable() {
     10986        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
     10987          keys_ = new java.util.ArrayList<java.lang.Integer>(keys_);
     10988          bitField0_ |= 0x00000002;
     10989         }
     10990      }
     10991      /**
     10992       * <code>repeated uint32 keys = 2 [packed = true];</code>
     10993       *
     10994       * <pre>
     10995       * Parallel arrays.
     10996       * </pre>
     10997       */
     10998      public java.util.List<java.lang.Integer>
     10999          getKeysList() {
     11000        return java.util.Collections.unmodifiableList(keys_);
     11001      }
     11002      /**
     11003       * <code>repeated uint32 keys = 2 [packed = true];</code>
     11004       *
     11005       * <pre>
     11006       * Parallel arrays.
     11007       * </pre>
     11008       */
     11009      public int getKeysCount() {
     11010        return keys_.size();
     11011      }
     11012      /**
     11013       * <code>repeated uint32 keys = 2 [packed = true];</code>
     11014       *
     11015       * <pre>
     11016       * Parallel arrays.
     11017       * </pre>
     11018       */
     11019      public int getKeys(int index) {
     11020        return keys_.get(index);
     11021      }
     11022      /**
     11023       * <code>repeated uint32 keys = 2 [packed = true];</code>
     11024       *
     11025       * <pre>
     11026       * Parallel arrays.
     11027       * </pre>
     11028       */
     11029      public Builder setKeys(
     11030          int index, int value) {
     11031        ensureKeysIsMutable();
     11032        keys_.set(index, value);
     11033       
     11034        return this;
     11035      }
     11036      /**
     11037       * <code>repeated uint32 keys = 2 [packed = true];</code>
     11038       *
     11039       * <pre>
     11040       * Parallel arrays.
     11041       * </pre>
     11042       */
     11043      public Builder addKeys(int value) {
     11044        ensureKeysIsMutable();
     11045        keys_.add(value);
     11046       
     11047        return this;
     11048      }
     11049      /**
     11050       * <code>repeated uint32 keys = 2 [packed = true];</code>
     11051       *
     11052       * <pre>
     11053       * Parallel arrays.
     11054       * </pre>
     11055       */
     11056      public Builder addAllKeys(
     11057          java.lang.Iterable<? extends java.lang.Integer> values) {
     11058        ensureKeysIsMutable();
     11059        super.addAll(values, keys_);
     11060       
     11061        return this;
     11062      }
     11063      /**
     11064       * <code>repeated uint32 keys = 2 [packed = true];</code>
     11065       *
     11066       * <pre>
     11067       * Parallel arrays.
     11068       * </pre>
     11069       */
     11070      public Builder clearKeys() {
     11071        keys_ = java.util.Collections.emptyList();
     11072        bitField0_ = (bitField0_ & ~0x00000002);
     11073       
     11074        return this;
     11075      }
     11076
     11077      // repeated uint32 vals = 3 [packed = true];
     11078      private java.util.List<java.lang.Integer> vals_ = java.util.Collections.emptyList();
     11079      private void ensureValsIsMutable() {
     11080        if (!((bitField0_ & 0x00000004) == 0x00000004)) {
     11081          vals_ = new java.util.ArrayList<java.lang.Integer>(vals_);
     11082          bitField0_ |= 0x00000004;
     11083         }
     11084      }
     11085      /**
     11086       * <code>repeated uint32 vals = 3 [packed = true];</code>
     11087       */
     11088      public java.util.List<java.lang.Integer>
     11089          getValsList() {
     11090        return java.util.Collections.unmodifiableList(vals_);
     11091      }
     11092      /**
     11093       * <code>repeated uint32 vals = 3 [packed = true];</code>
     11094       */
     11095      public int getValsCount() {
     11096        return vals_.size();
     11097      }
     11098      /**
     11099       * <code>repeated uint32 vals = 3 [packed = true];</code>
     11100       */
     11101      public int getVals(int index) {
     11102        return vals_.get(index);
     11103      }
     11104      /**
     11105       * <code>repeated uint32 vals = 3 [packed = true];</code>
     11106       */
     11107      public Builder setVals(
     11108          int index, int value) {
     11109        ensureValsIsMutable();
     11110        vals_.set(index, value);
     11111       
     11112        return this;
     11113      }
     11114      /**
     11115       * <code>repeated uint32 vals = 3 [packed = true];</code>
     11116       */
     11117      public Builder addVals(int value) {
     11118        ensureValsIsMutable();
     11119        vals_.add(value);
     11120       
     11121        return this;
     11122      }
     11123      /**
     11124       * <code>repeated uint32 vals = 3 [packed = true];</code>
     11125       */
     11126      public Builder addAllVals(
     11127          java.lang.Iterable<? extends java.lang.Integer> values) {
     11128        ensureValsIsMutable();
     11129        super.addAll(values, vals_);
     11130       
     11131        return this;
     11132      }
     11133      /**
     11134       * <code>repeated uint32 vals = 3 [packed = true];</code>
     11135       */
     11136      public Builder clearVals() {
     11137        vals_ = java.util.Collections.emptyList();
     11138        bitField0_ = (bitField0_ & ~0x00000004);
     11139       
     11140        return this;
     11141      }
     11142
     11143      // optional .OSMPBF.Info info = 4;
     11144      private crosby.binary.Osmformat.Info info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
     11145      /**
     11146       * <code>optional .OSMPBF.Info info = 4;</code>
     11147       */
     11148      public boolean hasInfo() {
     11149        return ((bitField0_ & 0x00000008) == 0x00000008);
     11150      }
     11151      /**
     11152       * <code>optional .OSMPBF.Info info = 4;</code>
     11153       */
     11154      public crosby.binary.Osmformat.Info getInfo() {
     11155        return info_;
     11156      }
     11157      /**
     11158       * <code>optional .OSMPBF.Info info = 4;</code>
     11159       */
     11160      public Builder setInfo(crosby.binary.Osmformat.Info value) {
     11161        if (value == null) {
     11162          throw new NullPointerException();
     11163        }
     11164        info_ = value;
     11165
     11166        bitField0_ |= 0x00000008;
     11167        return this;
     11168      }
     11169      /**
     11170       * <code>optional .OSMPBF.Info info = 4;</code>
     11171       */
     11172      public Builder setInfo(
     11173          crosby.binary.Osmformat.Info.Builder builderForValue) {
     11174        info_ = builderForValue.build();
     11175
     11176        bitField0_ |= 0x00000008;
     11177        return this;
     11178      }
     11179      /**
     11180       * <code>optional .OSMPBF.Info info = 4;</code>
     11181       */
     11182      public Builder mergeInfo(crosby.binary.Osmformat.Info value) {
     11183        if (((bitField0_ & 0x00000008) == 0x00000008) &&
     11184            info_ != crosby.binary.Osmformat.Info.getDefaultInstance()) {
     11185          info_ =
     11186            crosby.binary.Osmformat.Info.newBuilder(info_).mergeFrom(value).buildPartial();
     11187        } else {
     11188          info_ = value;
     11189        }
     11190
     11191        bitField0_ |= 0x00000008;
     11192        return this;
     11193      }
     11194      /**
     11195       * <code>optional .OSMPBF.Info info = 4;</code>
     11196       */
     11197      public Builder clearInfo() {
     11198        info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
     11199
     11200        bitField0_ = (bitField0_ & ~0x00000008);
     11201        return this;
     11202      }
     11203
     11204      // repeated sint64 refs = 8 [packed = true];
     11205      private java.util.List<java.lang.Long> refs_ = java.util.Collections.emptyList();
     11206      private void ensureRefsIsMutable() {
     11207        if (!((bitField0_ & 0x00000010) == 0x00000010)) {
     11208          refs_ = new java.util.ArrayList<java.lang.Long>(refs_);
     11209          bitField0_ |= 0x00000010;
     11210         }
     11211      }
     11212      /**
     11213       * <code>repeated sint64 refs = 8 [packed = true];</code>
     11214       *
     11215       * <pre>
     11216       * DELTA coded
     11217       * </pre>
     11218       */
     11219      public java.util.List<java.lang.Long>
     11220          getRefsList() {
     11221        return java.util.Collections.unmodifiableList(refs_);
     11222      }
     11223      /**
     11224       * <code>repeated sint64 refs = 8 [packed = true];</code>
     11225       *
     11226       * <pre>
     11227       * DELTA coded
     11228       * </pre>
     11229       */
     11230      public int getRefsCount() {
     11231        return refs_.size();
     11232      }
     11233      /**
     11234       * <code>repeated sint64 refs = 8 [packed = true];</code>
     11235       *
     11236       * <pre>
     11237       * DELTA coded
     11238       * </pre>
     11239       */
     11240      public long getRefs(int index) {
     11241        return refs_.get(index);
     11242      }
     11243      /**
     11244       * <code>repeated sint64 refs = 8 [packed = true];</code>
     11245       *
     11246       * <pre>
     11247       * DELTA coded
     11248       * </pre>
     11249       */
     11250      public Builder setRefs(
     11251          int index, long value) {
     11252        ensureRefsIsMutable();
     11253        refs_.set(index, value);
     11254       
     11255        return this;
     11256      }
     11257      /**
     11258       * <code>repeated sint64 refs = 8 [packed = true];</code>
     11259       *
     11260       * <pre>
     11261       * DELTA coded
     11262       * </pre>
     11263       */
     11264      public Builder addRefs(long value) {
     11265        ensureRefsIsMutable();
     11266        refs_.add(value);
     11267       
     11268        return this;
     11269      }
     11270      /**
     11271       * <code>repeated sint64 refs = 8 [packed = true];</code>
     11272       *
     11273       * <pre>
     11274       * DELTA coded
     11275       * </pre>
     11276       */
     11277      public Builder addAllRefs(
     11278          java.lang.Iterable<? extends java.lang.Long> values) {
     11279        ensureRefsIsMutable();
     11280        super.addAll(values, refs_);
     11281       
     11282        return this;
     11283      }
     11284      /**
     11285       * <code>repeated sint64 refs = 8 [packed = true];</code>
     11286       *
     11287       * <pre>
     11288       * DELTA coded
     11289       * </pre>
     11290       */
     11291      public Builder clearRefs() {
     11292        refs_ = java.util.Collections.emptyList();
     11293        bitField0_ = (bitField0_ & ~0x00000010);
     11294       
     11295        return this;
     11296      }
     11297
     11298      // @@protoc_insertion_point(builder_scope:OSMPBF.Way)
     11299    }
     11300
     11301    static {
     11302      defaultInstance = new Way(true);
     11303      defaultInstance.initFields();
     11304    }
     11305
     11306    // @@protoc_insertion_point(class_scope:OSMPBF.Way)
     11307  }
     11308
     11309  public interface RelationOrBuilder
     11310      extends com.google.protobuf.MessageLiteOrBuilder {
     11311
     11312    // required int64 id = 1;
     11313    /**
     11314     * <code>required int64 id = 1;</code>
     11315     */
     11316    boolean hasId();
     11317    /**
     11318     * <code>required int64 id = 1;</code>
     11319     */
     11320    long getId();
     11321
     11322    // repeated uint32 keys = 2 [packed = true];
     11323    /**
     11324     * <code>repeated uint32 keys = 2 [packed = true];</code>
     11325     *
     11326     * <pre>
     11327     * Parallel arrays.
     11328     * </pre>
     11329     */
     11330    java.util.List<java.lang.Integer> getKeysList();
     11331    /**
     11332     * <code>repeated uint32 keys = 2 [packed = true];</code>
     11333     *
     11334     * <pre>
     11335     * Parallel arrays.
     11336     * </pre>
     11337     */
     11338    int getKeysCount();
     11339    /**
     11340     * <code>repeated uint32 keys = 2 [packed = true];</code>
     11341     *
     11342     * <pre>
     11343     * Parallel arrays.
     11344     * </pre>
     11345     */
     11346    int getKeys(int index);
     11347
     11348    // repeated uint32 vals = 3 [packed = true];
     11349    /**
     11350     * <code>repeated uint32 vals = 3 [packed = true];</code>
     11351     */
     11352    java.util.List<java.lang.Integer> getValsList();
     11353    /**
     11354     * <code>repeated uint32 vals = 3 [packed = true];</code>
     11355     */
     11356    int getValsCount();
     11357    /**
     11358     * <code>repeated uint32 vals = 3 [packed = true];</code>
     11359     */
     11360    int getVals(int index);
     11361
     11362    // optional .OSMPBF.Info info = 4;
     11363    /**
     11364     * <code>optional .OSMPBF.Info info = 4;</code>
     11365     */
     11366    boolean hasInfo();
     11367    /**
     11368     * <code>optional .OSMPBF.Info info = 4;</code>
     11369     */
     11370    crosby.binary.Osmformat.Info getInfo();
     11371
     11372    // repeated int32 roles_sid = 8 [packed = true];
     11373    /**
     11374     * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     11375     *
     11376     * <pre>
     11377     * Parallel arrays
     11378     * </pre>
     11379     */
     11380    java.util.List<java.lang.Integer> getRolesSidList();
     11381    /**
     11382     * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     11383     *
     11384     * <pre>
     11385     * Parallel arrays
     11386     * </pre>
     11387     */
     11388    int getRolesSidCount();
     11389    /**
     11390     * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     11391     *
     11392     * <pre>
     11393     * Parallel arrays
     11394     * </pre>
     11395     */
     11396    int getRolesSid(int index);
     11397
     11398    // repeated sint64 memids = 9 [packed = true];
     11399    /**
     11400     * <code>repeated sint64 memids = 9 [packed = true];</code>
     11401     *
     11402     * <pre>
     11403     * DELTA encoded
     11404     * </pre>
     11405     */
     11406    java.util.List<java.lang.Long> getMemidsList();
     11407    /**
     11408     * <code>repeated sint64 memids = 9 [packed = true];</code>
     11409     *
     11410     * <pre>
     11411     * DELTA encoded
     11412     * </pre>
     11413     */
     11414    int getMemidsCount();
     11415    /**
     11416     * <code>repeated sint64 memids = 9 [packed = true];</code>
     11417     *
     11418     * <pre>
     11419     * DELTA encoded
     11420     * </pre>
     11421     */
     11422    long getMemids(int index);
     11423
     11424    // repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];
     11425    /**
     11426     * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     11427     */
     11428    java.util.List<crosby.binary.Osmformat.Relation.MemberType> getTypesList();
     11429    /**
     11430     * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     11431     */
     11432    int getTypesCount();
     11433    /**
     11434     * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     11435     */
     11436    crosby.binary.Osmformat.Relation.MemberType getTypes(int index);
     11437  }
     11438  /**
     11439   * Protobuf type {@code OSMPBF.Relation}
     11440   */
     11441  public static final class Relation extends
     11442      com.google.protobuf.GeneratedMessageLite
     11443      implements RelationOrBuilder {
     11444    // Use Relation.newBuilder() to construct.
     11445    private Relation(com.google.protobuf.GeneratedMessageLite.Builder builder) {
     11446      super(builder);
     11447
     11448    }
     11449    private Relation(boolean noInit) {}
     11450
     11451    private static final Relation defaultInstance;
     11452    public static Relation getDefaultInstance() {
     11453      return defaultInstance;
     11454    }
     11455
     11456    public Relation getDefaultInstanceForType() {
     11457      return defaultInstance;
     11458    }
     11459
     11460    private Relation(
     11461        com.google.protobuf.CodedInputStream input,
     11462        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     11463        throws com.google.protobuf.InvalidProtocolBufferException {
     11464      initFields();
     11465      int mutable_bitField0_ = 0;
     11466      try {
     11467        boolean done = false;
     11468        while (!done) {
    678511469          int tag = input.readTag();
    678611470          switch (tag) {
    678711471            case 0:
    6788              
    6789               return this;
     11472              done = true;
     11473              break;
    679011474            default: {
    6791               if (!parseUnknownField(input, extensionRegistry, tag)) {
    6792                
    6793                 return this;
     11475              if (!parseUnknownField(input,
     11476                                     extensionRegistry, tag)) {
     11477                done = true;
    679411478              }
    679511479              break;
     
    680111485            }
    680211486            case 16: {
    6803               ensureKeysIsMutable();
     11487              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     11488                keys_ = new java.util.ArrayList<java.lang.Integer>();
     11489                mutable_bitField0_ |= 0x00000002;
     11490              }
    680411491              keys_.add(input.readUInt32());
    680511492              break;
     
    680811495              int length = input.readRawVarint32();
    680911496              int limit = input.pushLimit(length);
     11497              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
     11498                keys_ = new java.util.ArrayList<java.lang.Integer>();
     11499                mutable_bitField0_ |= 0x00000002;
     11500              }
    681011501              while (input.getBytesUntilLimit() > 0) {
    6811                 addKeys(input.readUInt32());
     11502                keys_.add(input.readUInt32());
    681211503              }
    681311504              input.popLimit(limit);
     
    681511506            }
    681611507            case 24: {
    6817               ensureValsIsMutable();
     11508              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     11509                vals_ = new java.util.ArrayList<java.lang.Integer>();
     11510                mutable_bitField0_ |= 0x00000004;
     11511              }
    681811512              vals_.add(input.readUInt32());
    681911513              break;
     
    682211516              int length = input.readRawVarint32();
    682311517              int limit = input.pushLimit(length);
     11518              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
     11519                vals_ = new java.util.ArrayList<java.lang.Integer>();
     11520                mutable_bitField0_ |= 0x00000004;
     11521              }
    682411522              while (input.getBytesUntilLimit() > 0) {
    6825                 addVals(input.readUInt32());
     11523                vals_.add(input.readUInt32());
    682611524              }
    682711525              input.popLimit(limit);
     
    682911527            }
    683011528            case 34: {
    6831               crosby.binary.Osmformat.Info.Builder subBuilder = crosby.binary.Osmformat.Info.newBuilder();
    6832               if (hasInfo()) {
    6833                 subBuilder.mergeFrom(getInfo());
     11529              crosby.binary.Osmformat.Info.Builder subBuilder = null;
     11530              if (((bitField0_ & 0x00000002) == 0x00000002)) {
     11531                subBuilder = info_.toBuilder();
    683411532              }
    6835               input.readMessage(subBuilder, extensionRegistry);
    6836               setInfo(subBuilder.buildPartial());
     11533              info_ = input.readMessage(crosby.binary.Osmformat.Info.PARSER, extensionRegistry);
     11534              if (subBuilder != null) {
     11535                subBuilder.mergeFrom(info_);
     11536                info_ = subBuilder.buildPartial();
     11537              }
     11538              bitField0_ |= 0x00000002;
    683711539              break;
    683811540            }
    683911541            case 64: {
    6840               ensureRefsIsMutable();
    6841               refs_.add(input.readSInt64());
    6842               break;
    6843             }
    6844             case 66: {
    6845               int length = input.readRawVarint32();
    6846               int limit = input.pushLimit(length);
    6847               while (input.getBytesUntilLimit() > 0) {
    6848                 addRefs(input.readSInt64());
     11542              if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
     11543                rolesSid_ = new java.util.ArrayList<java.lang.Integer>();
     11544                mutable_bitField0_ |= 0x00000010;
    684911545              }
    6850               input.popLimit(limit);
    6851               break;
    6852             }
    6853           }
    6854         }
    6855       }
    6856      
    6857       private int bitField0_;
    6858      
    6859       // required int64 id = 1;
    6860       private long id_ ;
    6861       public boolean hasId() {
    6862         return ((bitField0_ & 0x00000001) == 0x00000001);
    6863       }
    6864       public long getId() {
    6865         return id_;
    6866       }
    6867       public Builder setId(long value) {
    6868         bitField0_ |= 0x00000001;
    6869         id_ = value;
    6870        
    6871         return this;
    6872       }
    6873       public Builder clearId() {
    6874         bitField0_ = (bitField0_ & ~0x00000001);
    6875         id_ = 0L;
    6876        
    6877         return this;
    6878       }
    6879      
    6880       // repeated uint32 keys = 2 [packed = true];
    6881       private java.util.List<java.lang.Integer> keys_ = java.util.Collections.emptyList();;
    6882       private void ensureKeysIsMutable() {
    6883         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
    6884           keys_ = new java.util.ArrayList<java.lang.Integer>(keys_);
    6885           bitField0_ |= 0x00000002;
    6886          }
    6887       }
    6888       public java.util.List<java.lang.Integer>
    6889           getKeysList() {
    6890         return java.util.Collections.unmodifiableList(keys_);
    6891       }
    6892       public int getKeysCount() {
    6893         return keys_.size();
    6894       }
    6895       public int getKeys(int index) {
    6896         return keys_.get(index);
    6897       }
    6898       public Builder setKeys(
    6899           int index, int value) {
    6900         ensureKeysIsMutable();
    6901         keys_.set(index, value);
    6902        
    6903         return this;
    6904       }
    6905       public Builder addKeys(int value) {
    6906         ensureKeysIsMutable();
    6907         keys_.add(value);
    6908        
    6909         return this;
    6910       }
    6911       public Builder addAllKeys(
    6912           java.lang.Iterable<? extends java.lang.Integer> values) {
    6913         ensureKeysIsMutable();
    6914         super.addAll(values, keys_);
    6915        
    6916         return this;
    6917       }
    6918       public Builder clearKeys() {
    6919         keys_ = java.util.Collections.emptyList();;
    6920         bitField0_ = (bitField0_ & ~0x00000002);
    6921        
    6922         return this;
    6923       }
    6924      
    6925       // repeated uint32 vals = 3 [packed = true];
    6926       private java.util.List<java.lang.Integer> vals_ = java.util.Collections.emptyList();;
    6927       private void ensureValsIsMutable() {
    6928         if (!((bitField0_ & 0x00000004) == 0x00000004)) {
    6929           vals_ = new java.util.ArrayList<java.lang.Integer>(vals_);
    6930           bitField0_ |= 0x00000004;
    6931          }
    6932       }
    6933       public java.util.List<java.lang.Integer>
    6934           getValsList() {
    6935         return java.util.Collections.unmodifiableList(vals_);
    6936       }
    6937       public int getValsCount() {
    6938         return vals_.size();
    6939       }
    6940       public int getVals(int index) {
    6941         return vals_.get(index);
    6942       }
    6943       public Builder setVals(
    6944           int index, int value) {
    6945         ensureValsIsMutable();
    6946         vals_.set(index, value);
    6947        
    6948         return this;
    6949       }
    6950       public Builder addVals(int value) {
    6951         ensureValsIsMutable();
    6952         vals_.add(value);
    6953        
    6954         return this;
    6955       }
    6956       public Builder addAllVals(
    6957           java.lang.Iterable<? extends java.lang.Integer> values) {
    6958         ensureValsIsMutable();
    6959         super.addAll(values, vals_);
    6960        
    6961         return this;
    6962       }
    6963       public Builder clearVals() {
    6964         vals_ = java.util.Collections.emptyList();;
    6965         bitField0_ = (bitField0_ & ~0x00000004);
    6966        
    6967         return this;
    6968       }
    6969      
    6970       // optional .OSMPBF.Info info = 4;
    6971       private crosby.binary.Osmformat.Info info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
    6972       public boolean hasInfo() {
    6973         return ((bitField0_ & 0x00000008) == 0x00000008);
    6974       }
    6975       public crosby.binary.Osmformat.Info getInfo() {
    6976         return info_;
    6977       }
    6978       public Builder setInfo(crosby.binary.Osmformat.Info value) {
    6979         if (value == null) {
    6980           throw new NullPointerException();
    6981         }
    6982         info_ = value;
    6983        
    6984         bitField0_ |= 0x00000008;
    6985         return this;
    6986       }
    6987       public Builder setInfo(
    6988           crosby.binary.Osmformat.Info.Builder builderForValue) {
    6989         info_ = builderForValue.build();
    6990        
    6991         bitField0_ |= 0x00000008;
    6992         return this;
    6993       }
    6994       public Builder mergeInfo(crosby.binary.Osmformat.Info value) {
    6995         if (((bitField0_ & 0x00000008) == 0x00000008) &&
    6996             info_ != crosby.binary.Osmformat.Info.getDefaultInstance()) {
    6997           info_ =
    6998             crosby.binary.Osmformat.Info.newBuilder(info_).mergeFrom(value).buildPartial();
    6999         } else {
    7000           info_ = value;
    7001         }
    7002        
    7003         bitField0_ |= 0x00000008;
    7004         return this;
    7005       }
    7006       public Builder clearInfo() {
    7007         info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
    7008        
    7009         bitField0_ = (bitField0_ & ~0x00000008);
    7010         return this;
    7011       }
    7012      
    7013       // repeated sint64 refs = 8 [packed = true];
    7014       private java.util.List<java.lang.Long> refs_ = java.util.Collections.emptyList();;
    7015       private void ensureRefsIsMutable() {
    7016         if (!((bitField0_ & 0x00000010) == 0x00000010)) {
    7017           refs_ = new java.util.ArrayList<java.lang.Long>(refs_);
    7018           bitField0_ |= 0x00000010;
    7019          }
    7020       }
    7021       public java.util.List<java.lang.Long>
    7022           getRefsList() {
    7023         return java.util.Collections.unmodifiableList(refs_);
    7024       }
    7025       public int getRefsCount() {
    7026         return refs_.size();
    7027       }
    7028       public long getRefs(int index) {
    7029         return refs_.get(index);
    7030       }
    7031       public Builder setRefs(
    7032           int index, long value) {
    7033         ensureRefsIsMutable();
    7034         refs_.set(index, value);
    7035        
    7036         return this;
    7037       }
    7038       public Builder addRefs(long value) {
    7039         ensureRefsIsMutable();
    7040         refs_.add(value);
    7041        
    7042         return this;
    7043       }
    7044       public Builder addAllRefs(
    7045           java.lang.Iterable<? extends java.lang.Long> values) {
    7046         ensureRefsIsMutable();
    7047         super.addAll(values, refs_);
    7048        
    7049         return this;
    7050       }
    7051       public Builder clearRefs() {
    7052         refs_ = java.util.Collections.emptyList();;
    7053         bitField0_ = (bitField0_ & ~0x00000010);
    7054        
    7055         return this;
    7056       }
    7057      
    7058       // @@protoc_insertion_point(builder_scope:OSMPBF.Way)
    7059     }
    7060    
    7061     static {
    7062       defaultInstance = new Way(true);
    7063       defaultInstance.initFields();
    7064     }
    7065    
    7066     // @@protoc_insertion_point(class_scope:OSMPBF.Way)
    7067   }
    7068  
    7069   public interface RelationOrBuilder
    7070       extends com.google.protobuf.MessageLiteOrBuilder {
    7071    
    7072     // required int64 id = 1;
    7073     boolean hasId();
    7074     long getId();
    7075    
    7076     // repeated uint32 keys = 2 [packed = true];
    7077     java.util.List<java.lang.Integer> getKeysList();
    7078     int getKeysCount();
    7079     int getKeys(int index);
    7080    
    7081     // repeated uint32 vals = 3 [packed = true];
    7082     java.util.List<java.lang.Integer> getValsList();
    7083     int getValsCount();
    7084     int getVals(int index);
    7085    
    7086     // optional .OSMPBF.Info info = 4;
    7087     boolean hasInfo();
    7088     crosby.binary.Osmformat.Info getInfo();
    7089    
    7090     // repeated int32 roles_sid = 8 [packed = true];
    7091     java.util.List<java.lang.Integer> getRolesSidList();
    7092     int getRolesSidCount();
    7093     int getRolesSid(int index);
    7094    
    7095     // repeated sint64 memids = 9 [packed = true];
    7096     java.util.List<java.lang.Long> getMemidsList();
    7097     int getMemidsCount();
    7098     long getMemids(int index);
    7099    
    7100     // repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];
    7101     java.util.List<crosby.binary.Osmformat.Relation.MemberType> getTypesList();
    7102     int getTypesCount();
    7103     crosby.binary.Osmformat.Relation.MemberType getTypes(int index);
    7104   }
    7105   public static final class Relation extends
    7106       com.google.protobuf.GeneratedMessageLite
    7107       implements RelationOrBuilder {
    7108     // Use Relation.newBuilder() to construct.
    7109     private Relation(Builder builder) {
    7110       super(builder);
    7111     }
    7112     private Relation(boolean noInit) {}
    7113    
    7114     private static final Relation defaultInstance;
    7115     public static Relation getDefaultInstance() {
    7116       return defaultInstance;
    7117     }
    7118    
    7119     public Relation getDefaultInstanceForType() {
    7120       return defaultInstance;
    7121     }
    7122    
    7123     public enum MemberType
    7124         implements com.google.protobuf.Internal.EnumLite {
    7125       NODE(0, 0),
    7126       WAY(1, 1),
    7127       RELATION(2, 2),
    7128       ;
    7129      
    7130       public static final int NODE_VALUE = 0;
    7131       public static final int WAY_VALUE = 1;
    7132       public static final int RELATION_VALUE = 2;
    7133      
    7134      
    7135       public final int getNumber() { return value; }
    7136      
    7137       public static MemberType valueOf(int value) {
    7138         switch (value) {
    7139           case 0: return NODE;
    7140           case 1: return WAY;
    7141           case 2: return RELATION;
    7142           default: return null;
    7143         }
    7144       }
    7145      
    7146       public static com.google.protobuf.Internal.EnumLiteMap<MemberType>
    7147           internalGetValueMap() {
    7148         return internalValueMap;
    7149       }
    7150       private static com.google.protobuf.Internal.EnumLiteMap<MemberType>
    7151           internalValueMap =
    7152             new com.google.protobuf.Internal.EnumLiteMap<MemberType>() {
    7153               public MemberType findValueByNumber(int number) {
    7154                 return MemberType.valueOf(number);
    7155               }
    7156             };
    7157      
    7158       private final int value;
    7159      
    7160       private MemberType(int index, int value) {
    7161         this.value = value;
    7162       }
    7163      
    7164       // @@protoc_insertion_point(enum_scope:OSMPBF.Relation.MemberType)
    7165     }
    7166    
    7167     private int bitField0_;
    7168     // required int64 id = 1;
    7169     public static final int ID_FIELD_NUMBER = 1;
    7170     private long id_;
    7171     public boolean hasId() {
    7172       return ((bitField0_ & 0x00000001) == 0x00000001);
    7173     }
    7174     public long getId() {
    7175       return id_;
    7176     }
    7177    
    7178     // repeated uint32 keys = 2 [packed = true];
    7179     public static final int KEYS_FIELD_NUMBER = 2;
    7180     private java.util.List<java.lang.Integer> keys_;
    7181     public java.util.List<java.lang.Integer>
    7182         getKeysList() {
    7183       return keys_;
    7184     }
    7185     public int getKeysCount() {
    7186       return keys_.size();
    7187     }
    7188     public int getKeys(int index) {
    7189       return keys_.get(index);
    7190     }
    7191     private int keysMemoizedSerializedSize = -1;
    7192    
    7193     // repeated uint32 vals = 3 [packed = true];
    7194     public static final int VALS_FIELD_NUMBER = 3;
    7195     private java.util.List<java.lang.Integer> vals_;
    7196     public java.util.List<java.lang.Integer>
    7197         getValsList() {
    7198       return vals_;
    7199     }
    7200     public int getValsCount() {
    7201       return vals_.size();
    7202     }
    7203     public int getVals(int index) {
    7204       return vals_.get(index);
    7205     }
    7206     private int valsMemoizedSerializedSize = -1;
    7207    
    7208     // optional .OSMPBF.Info info = 4;
    7209     public static final int INFO_FIELD_NUMBER = 4;
    7210     private crosby.binary.Osmformat.Info info_;
    7211     public boolean hasInfo() {
    7212       return ((bitField0_ & 0x00000002) == 0x00000002);
    7213     }
    7214     public crosby.binary.Osmformat.Info getInfo() {
    7215       return info_;
    7216     }
    7217    
    7218     // repeated int32 roles_sid = 8 [packed = true];
    7219     public static final int ROLES_SID_FIELD_NUMBER = 8;
    7220     private java.util.List<java.lang.Integer> rolesSid_;
    7221     public java.util.List<java.lang.Integer>
    7222         getRolesSidList() {
    7223       return rolesSid_;
    7224     }
    7225     public int getRolesSidCount() {
    7226       return rolesSid_.size();
    7227     }
    7228     public int getRolesSid(int index) {
    7229       return rolesSid_.get(index);
    7230     }
    7231     private int rolesSidMemoizedSerializedSize = -1;
    7232    
    7233     // repeated sint64 memids = 9 [packed = true];
    7234     public static final int MEMIDS_FIELD_NUMBER = 9;
    7235     private java.util.List<java.lang.Long> memids_;
    7236     public java.util.List<java.lang.Long>
    7237         getMemidsList() {
    7238       return memids_;
    7239     }
    7240     public int getMemidsCount() {
    7241       return memids_.size();
    7242     }
    7243     public long getMemids(int index) {
    7244       return memids_.get(index);
    7245     }
    7246     private int memidsMemoizedSerializedSize = -1;
    7247    
    7248     // repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];
    7249     public static final int TYPES_FIELD_NUMBER = 10;
    7250     private java.util.List<crosby.binary.Osmformat.Relation.MemberType> types_;
    7251     public java.util.List<crosby.binary.Osmformat.Relation.MemberType> getTypesList() {
    7252       return types_;
    7253     }
    7254     public int getTypesCount() {
    7255       return types_.size();
    7256     }
    7257     public crosby.binary.Osmformat.Relation.MemberType getTypes(int index) {
    7258       return types_.get(index);
    7259     }
    7260     private int typesMemoizedSerializedSize;
    7261    
    7262     private void initFields() {
    7263       id_ = 0L;
    7264       keys_ = java.util.Collections.emptyList();;
    7265       vals_ = java.util.Collections.emptyList();;
    7266       info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
    7267       rolesSid_ = java.util.Collections.emptyList();;
    7268       memids_ = java.util.Collections.emptyList();;
    7269       types_ = java.util.Collections.emptyList();
    7270     }
    7271     private byte memoizedIsInitialized = -1;
    7272     public final boolean isInitialized() {
    7273       byte isInitialized = memoizedIsInitialized;
    7274       if (isInitialized != -1) return isInitialized == 1;
    7275      
    7276       if (!hasId()) {
    7277         memoizedIsInitialized = 0;
    7278         return false;
    7279       }
    7280       memoizedIsInitialized = 1;
    7281       return true;
    7282     }
    7283    
    7284     public void writeTo(com.google.protobuf.CodedOutputStream output)
    7285                         throws java.io.IOException {
    7286       getSerializedSize();
    7287       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    7288         output.writeInt64(1, id_);
    7289       }
    7290       if (getKeysList().size() > 0) {
    7291         output.writeRawVarint32(18);
    7292         output.writeRawVarint32(keysMemoizedSerializedSize);
    7293       }
    7294       for (int i = 0; i < keys_.size(); i++) {
    7295         output.writeUInt32NoTag(keys_.get(i));
    7296       }
    7297       if (getValsList().size() > 0) {
    7298         output.writeRawVarint32(26);
    7299         output.writeRawVarint32(valsMemoizedSerializedSize);
    7300       }
    7301       for (int i = 0; i < vals_.size(); i++) {
    7302         output.writeUInt32NoTag(vals_.get(i));
    7303       }
    7304       if (((bitField0_ & 0x00000002) == 0x00000002)) {
    7305         output.writeMessage(4, info_);
    7306       }
    7307       if (getRolesSidList().size() > 0) {
    7308         output.writeRawVarint32(66);
    7309         output.writeRawVarint32(rolesSidMemoizedSerializedSize);
    7310       }
    7311       for (int i = 0; i < rolesSid_.size(); i++) {
    7312         output.writeInt32NoTag(rolesSid_.get(i));
    7313       }
    7314       if (getMemidsList().size() > 0) {
    7315         output.writeRawVarint32(74);
    7316         output.writeRawVarint32(memidsMemoizedSerializedSize);
    7317       }
    7318       for (int i = 0; i < memids_.size(); i++) {
    7319         output.writeSInt64NoTag(memids_.get(i));
    7320       }
    7321       if (getTypesList().size() > 0) {
    7322         output.writeRawVarint32(82);
    7323         output.writeRawVarint32(typesMemoizedSerializedSize);
    7324       }
    7325       for (int i = 0; i < types_.size(); i++) {
    7326         output.writeEnumNoTag(types_.get(i).getNumber());
    7327       }
    7328     }
    7329    
    7330     private int memoizedSerializedSize = -1;
    7331     public int getSerializedSize() {
    7332       int size = memoizedSerializedSize;
    7333       if (size != -1) return size;
    7334    
    7335       size = 0;
    7336       if (((bitField0_ & 0x00000001) == 0x00000001)) {
    7337         size += com.google.protobuf.CodedOutputStream
    7338           .computeInt64Size(1, id_);
    7339       }
    7340       {
    7341         int dataSize = 0;
    7342         for (int i = 0; i < keys_.size(); i++) {
    7343           dataSize += com.google.protobuf.CodedOutputStream
    7344             .computeUInt32SizeNoTag(keys_.get(i));
    7345         }
    7346         size += dataSize;
    7347         if (!getKeysList().isEmpty()) {
    7348           size += 1;
    7349           size += com.google.protobuf.CodedOutputStream
    7350               .computeInt32SizeNoTag(dataSize);
    7351         }
    7352         keysMemoizedSerializedSize = dataSize;
    7353       }
    7354       {
    7355         int dataSize = 0;
    7356         for (int i = 0; i < vals_.size(); i++) {
    7357           dataSize += com.google.protobuf.CodedOutputStream
    7358             .computeUInt32SizeNoTag(vals_.get(i));
    7359         }
    7360         size += dataSize;
    7361         if (!getValsList().isEmpty()) {
    7362           size += 1;
    7363           size += com.google.protobuf.CodedOutputStream
    7364               .computeInt32SizeNoTag(dataSize);
    7365         }
    7366         valsMemoizedSerializedSize = dataSize;
    7367       }
    7368       if (((bitField0_ & 0x00000002) == 0x00000002)) {
    7369         size += com.google.protobuf.CodedOutputStream
    7370           .computeMessageSize(4, info_);
    7371       }
    7372       {
    7373         int dataSize = 0;
    7374         for (int i = 0; i < rolesSid_.size(); i++) {
    7375           dataSize += com.google.protobuf.CodedOutputStream
    7376             .computeInt32SizeNoTag(rolesSid_.get(i));
    7377         }
    7378         size += dataSize;
    7379         if (!getRolesSidList().isEmpty()) {
    7380           size += 1;
    7381           size += com.google.protobuf.CodedOutputStream
    7382               .computeInt32SizeNoTag(dataSize);
    7383         }
    7384         rolesSidMemoizedSerializedSize = dataSize;
    7385       }
    7386       {
    7387         int dataSize = 0;
    7388         for (int i = 0; i < memids_.size(); i++) {
    7389           dataSize += com.google.protobuf.CodedOutputStream
    7390             .computeSInt64SizeNoTag(memids_.get(i));
    7391         }
    7392         size += dataSize;
    7393         if (!getMemidsList().isEmpty()) {
    7394           size += 1;
    7395           size += com.google.protobuf.CodedOutputStream
    7396               .computeInt32SizeNoTag(dataSize);
    7397         }
    7398         memidsMemoizedSerializedSize = dataSize;
    7399       }
    7400       {
    7401         int dataSize = 0;
    7402         for (int i = 0; i < types_.size(); i++) {
    7403           dataSize += com.google.protobuf.CodedOutputStream
    7404             .computeEnumSizeNoTag(types_.get(i).getNumber());
    7405         }
    7406         size += dataSize;
    7407         if (!getTypesList().isEmpty()) {  size += 1;
    7408           size += com.google.protobuf.CodedOutputStream
    7409             .computeRawVarint32Size(dataSize);
    7410         }typesMemoizedSerializedSize = dataSize;
    7411       }
    7412       memoizedSerializedSize = size;
    7413       return size;
    7414     }
    7415    
    7416     private static final long serialVersionUID = 0L;
    7417     @java.lang.Override
    7418     protected java.lang.Object writeReplace()
    7419         throws java.io.ObjectStreamException {
    7420       return super.writeReplace();
    7421     }
    7422    
    7423     public static crosby.binary.Osmformat.Relation parseFrom(
    7424         com.google.protobuf.ByteString data)
    7425         throws com.google.protobuf.InvalidProtocolBufferException {
    7426       return newBuilder().mergeFrom(data).buildParsed();
    7427     }
    7428     public static crosby.binary.Osmformat.Relation parseFrom(
    7429         com.google.protobuf.ByteString data,
    7430         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    7431         throws com.google.protobuf.InvalidProtocolBufferException {
    7432       return newBuilder().mergeFrom(data, extensionRegistry)
    7433                .buildParsed();
    7434     }
    7435     public static crosby.binary.Osmformat.Relation parseFrom(byte[] data)
    7436         throws com.google.protobuf.InvalidProtocolBufferException {
    7437       return newBuilder().mergeFrom(data).buildParsed();
    7438     }
    7439     public static crosby.binary.Osmformat.Relation parseFrom(
    7440         byte[] data,
    7441         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    7442         throws com.google.protobuf.InvalidProtocolBufferException {
    7443       return newBuilder().mergeFrom(data, extensionRegistry)
    7444                .buildParsed();
    7445     }
    7446     public static crosby.binary.Osmformat.Relation parseFrom(java.io.InputStream input)
    7447         throws java.io.IOException {
    7448       return newBuilder().mergeFrom(input).buildParsed();
    7449     }
    7450     public static crosby.binary.Osmformat.Relation parseFrom(
    7451         java.io.InputStream input,
    7452         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    7453         throws java.io.IOException {
    7454       return newBuilder().mergeFrom(input, extensionRegistry)
    7455                .buildParsed();
    7456     }
    7457     public static crosby.binary.Osmformat.Relation parseDelimitedFrom(java.io.InputStream input)
    7458         throws java.io.IOException {
    7459       Builder builder = newBuilder();
    7460       if (builder.mergeDelimitedFrom(input)) {
    7461         return builder.buildParsed();
    7462       } else {
    7463         return null;
    7464       }
    7465     }
    7466     public static crosby.binary.Osmformat.Relation parseDelimitedFrom(
    7467         java.io.InputStream input,
    7468         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    7469         throws java.io.IOException {
    7470       Builder builder = newBuilder();
    7471       if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
    7472         return builder.buildParsed();
    7473       } else {
    7474         return null;
    7475       }
    7476     }
    7477     public static crosby.binary.Osmformat.Relation parseFrom(
    7478         com.google.protobuf.CodedInputStream input)
    7479         throws java.io.IOException {
    7480       return newBuilder().mergeFrom(input).buildParsed();
    7481     }
    7482     public static crosby.binary.Osmformat.Relation parseFrom(
    7483         com.google.protobuf.CodedInputStream input,
    7484         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    7485         throws java.io.IOException {
    7486       return newBuilder().mergeFrom(input, extensionRegistry)
    7487                .buildParsed();
    7488     }
    7489    
    7490     public static Builder newBuilder() { return Builder.create(); }
    7491     public Builder newBuilderForType() { return newBuilder(); }
    7492     public static Builder newBuilder(crosby.binary.Osmformat.Relation prototype) {
    7493       return newBuilder().mergeFrom(prototype);
    7494     }
    7495     public Builder toBuilder() { return newBuilder(this); }
    7496    
    7497     public static final class Builder extends
    7498         com.google.protobuf.GeneratedMessageLite.Builder<
    7499           crosby.binary.Osmformat.Relation, Builder>
    7500         implements crosby.binary.Osmformat.RelationOrBuilder {
    7501       // Construct using crosby.binary.Osmformat.Relation.newBuilder()
    7502       private Builder() {
    7503         maybeForceBuilderInitialization();
    7504       }
    7505      
    7506       private void maybeForceBuilderInitialization() {
    7507       }
    7508       private static Builder create() {
    7509         return new Builder();
    7510       }
    7511      
    7512       public Builder clear() {
    7513         super.clear();
    7514         id_ = 0L;
    7515         bitField0_ = (bitField0_ & ~0x00000001);
    7516         keys_ = java.util.Collections.emptyList();;
    7517         bitField0_ = (bitField0_ & ~0x00000002);
    7518         vals_ = java.util.Collections.emptyList();;
    7519         bitField0_ = (bitField0_ & ~0x00000004);
    7520         info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
    7521         bitField0_ = (bitField0_ & ~0x00000008);
    7522         rolesSid_ = java.util.Collections.emptyList();;
    7523         bitField0_ = (bitField0_ & ~0x00000010);
    7524         memids_ = java.util.Collections.emptyList();;
    7525         bitField0_ = (bitField0_ & ~0x00000020);
    7526         types_ = java.util.Collections.emptyList();
    7527         bitField0_ = (bitField0_ & ~0x00000040);
    7528         return this;
    7529       }
    7530      
    7531       public Builder clone() {
    7532         return create().mergeFrom(buildPartial());
    7533       }
    7534      
    7535       public crosby.binary.Osmformat.Relation getDefaultInstanceForType() {
    7536         return crosby.binary.Osmformat.Relation.getDefaultInstance();
    7537       }
    7538      
    7539       public crosby.binary.Osmformat.Relation build() {
    7540         crosby.binary.Osmformat.Relation result = buildPartial();
    7541         if (!result.isInitialized()) {
    7542           throw newUninitializedMessageException(result);
    7543         }
    7544         return result;
    7545       }
    7546      
    7547       private crosby.binary.Osmformat.Relation buildParsed()
    7548           throws com.google.protobuf.InvalidProtocolBufferException {
    7549         crosby.binary.Osmformat.Relation result = buildPartial();
    7550         if (!result.isInitialized()) {
    7551           throw newUninitializedMessageException(
    7552             result).asInvalidProtocolBufferException();
    7553         }
    7554         return result;
    7555       }
    7556      
    7557       public crosby.binary.Osmformat.Relation buildPartial() {
    7558         crosby.binary.Osmformat.Relation result = new crosby.binary.Osmformat.Relation(this);
    7559         int from_bitField0_ = bitField0_;
    7560         int to_bitField0_ = 0;
    7561         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
    7562           to_bitField0_ |= 0x00000001;
    7563         }
    7564         result.id_ = id_;
    7565         if (((bitField0_ & 0x00000002) == 0x00000002)) {
    7566           keys_ = java.util.Collections.unmodifiableList(keys_);
    7567           bitField0_ = (bitField0_ & ~0x00000002);
    7568         }
    7569         result.keys_ = keys_;
    7570         if (((bitField0_ & 0x00000004) == 0x00000004)) {
    7571           vals_ = java.util.Collections.unmodifiableList(vals_);
    7572           bitField0_ = (bitField0_ & ~0x00000004);
    7573         }
    7574         result.vals_ = vals_;
    7575         if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
    7576           to_bitField0_ |= 0x00000002;
    7577         }
    7578         result.info_ = info_;
    7579         if (((bitField0_ & 0x00000010) == 0x00000010)) {
    7580           rolesSid_ = java.util.Collections.unmodifiableList(rolesSid_);
    7581           bitField0_ = (bitField0_ & ~0x00000010);
    7582         }
    7583         result.rolesSid_ = rolesSid_;
    7584         if (((bitField0_ & 0x00000020) == 0x00000020)) {
    7585           memids_ = java.util.Collections.unmodifiableList(memids_);
    7586           bitField0_ = (bitField0_ & ~0x00000020);
    7587         }
    7588         result.memids_ = memids_;
    7589         if (((bitField0_ & 0x00000040) == 0x00000040)) {
    7590           types_ = java.util.Collections.unmodifiableList(types_);
    7591           bitField0_ = (bitField0_ & ~0x00000040);
    7592         }
    7593         result.types_ = types_;
    7594         result.bitField0_ = to_bitField0_;
    7595         return result;
    7596       }
    7597      
    7598       public Builder mergeFrom(crosby.binary.Osmformat.Relation other) {
    7599         if (other == crosby.binary.Osmformat.Relation.getDefaultInstance()) return this;
    7600         if (other.hasId()) {
    7601           setId(other.getId());
    7602         }
    7603         if (!other.keys_.isEmpty()) {
    7604           if (keys_.isEmpty()) {
    7605             keys_ = other.keys_;
    7606             bitField0_ = (bitField0_ & ~0x00000002);
    7607           } else {
    7608             ensureKeysIsMutable();
    7609             keys_.addAll(other.keys_);
    7610           }
    7611          
    7612         }
    7613         if (!other.vals_.isEmpty()) {
    7614           if (vals_.isEmpty()) {
    7615             vals_ = other.vals_;
    7616             bitField0_ = (bitField0_ & ~0x00000004);
    7617           } else {
    7618             ensureValsIsMutable();
    7619             vals_.addAll(other.vals_);
    7620           }
    7621          
    7622         }
    7623         if (other.hasInfo()) {
    7624           mergeInfo(other.getInfo());
    7625         }
    7626         if (!other.rolesSid_.isEmpty()) {
    7627           if (rolesSid_.isEmpty()) {
    7628             rolesSid_ = other.rolesSid_;
    7629             bitField0_ = (bitField0_ & ~0x00000010);
    7630           } else {
    7631             ensureRolesSidIsMutable();
    7632             rolesSid_.addAll(other.rolesSid_);
    7633           }
    7634          
    7635         }
    7636         if (!other.memids_.isEmpty()) {
    7637           if (memids_.isEmpty()) {
    7638             memids_ = other.memids_;
    7639             bitField0_ = (bitField0_ & ~0x00000020);
    7640           } else {
    7641             ensureMemidsIsMutable();
    7642             memids_.addAll(other.memids_);
    7643           }
    7644          
    7645         }
    7646         if (!other.types_.isEmpty()) {
    7647           if (types_.isEmpty()) {
    7648             types_ = other.types_;
    7649             bitField0_ = (bitField0_ & ~0x00000040);
    7650           } else {
    7651             ensureTypesIsMutable();
    7652             types_.addAll(other.types_);
    7653           }
    7654          
    7655         }
    7656         return this;
    7657       }
    7658      
    7659       public final boolean isInitialized() {
    7660         if (!hasId()) {
    7661          
    7662           return false;
    7663         }
    7664         return true;
    7665       }
    7666      
    7667       public Builder mergeFrom(
    7668           com.google.protobuf.CodedInputStream input,
    7669           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
    7670           throws java.io.IOException {
    7671         while (true) {
    7672           int tag = input.readTag();
    7673           switch (tag) {
    7674             case 0:
    7675              
    7676               return this;
    7677             default: {
    7678               if (!parseUnknownField(input, extensionRegistry, tag)) {
    7679                
    7680                 return this;
    7681               }
    7682               break;
    7683             }
    7684             case 8: {
    7685               bitField0_ |= 0x00000001;
    7686               id_ = input.readInt64();
    7687               break;
    7688             }
    7689             case 16: {
    7690               ensureKeysIsMutable();
    7691               keys_.add(input.readUInt32());
    7692               break;
    7693             }
    7694             case 18: {
    7695               int length = input.readRawVarint32();
    7696               int limit = input.pushLimit(length);
    7697               while (input.getBytesUntilLimit() > 0) {
    7698                 addKeys(input.readUInt32());
    7699               }
    7700               input.popLimit(limit);
    7701               break;
    7702             }
    7703             case 24: {
    7704               ensureValsIsMutable();
    7705               vals_.add(input.readUInt32());
    7706               break;
    7707             }
    7708             case 26: {
    7709               int length = input.readRawVarint32();
    7710               int limit = input.pushLimit(length);
    7711               while (input.getBytesUntilLimit() > 0) {
    7712                 addVals(input.readUInt32());
    7713               }
    7714               input.popLimit(limit);
    7715               break;
    7716             }
    7717             case 34: {
    7718               crosby.binary.Osmformat.Info.Builder subBuilder = crosby.binary.Osmformat.Info.newBuilder();
    7719               if (hasInfo()) {
    7720                 subBuilder.mergeFrom(getInfo());
    7721               }
    7722               input.readMessage(subBuilder, extensionRegistry);
    7723               setInfo(subBuilder.buildPartial());
    7724               break;
    7725             }
    7726             case 64: {
    7727               ensureRolesSidIsMutable();
    772811546              rolesSid_.add(input.readInt32());
    772911547              break;
     
    773211550              int length = input.readRawVarint32();
    773311551              int limit = input.pushLimit(length);
     11552              if (!((mutable_bitField0_ & 0x00000010) == 0x00000010) && input.getBytesUntilLimit() > 0) {
     11553                rolesSid_ = new java.util.ArrayList<java.lang.Integer>();
     11554                mutable_bitField0_ |= 0x00000010;
     11555              }
    773411556              while (input.getBytesUntilLimit() > 0) {
    7735                 addRolesSid(input.readInt32());
     11557                rolesSid_.add(input.readInt32());
    773611558              }
    773711559              input.popLimit(limit);
     
    773911561            }
    774011562            case 72: {
    7741               ensureMemidsIsMutable();
     11563              if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
     11564                memids_ = new java.util.ArrayList<java.lang.Long>();
     11565                mutable_bitField0_ |= 0x00000020;
     11566              }
    774211567              memids_.add(input.readSInt64());
    774311568              break;
     
    774611571              int length = input.readRawVarint32();
    774711572              int limit = input.pushLimit(length);
     11573              if (!((mutable_bitField0_ & 0x00000020) == 0x00000020) && input.getBytesUntilLimit() > 0) {
     11574                memids_ = new java.util.ArrayList<java.lang.Long>();
     11575                mutable_bitField0_ |= 0x00000020;
     11576              }
    774811577              while (input.getBytesUntilLimit() > 0) {
    7749                 addMemids(input.readSInt64());
     11578                memids_.add(input.readSInt64());
    775011579              }
    775111580              input.popLimit(limit);
     
    775611585              crosby.binary.Osmformat.Relation.MemberType value = crosby.binary.Osmformat.Relation.MemberType.valueOf(rawValue);
    775711586              if (value != null) {
    7758                 addTypes(value);
     11587                if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
     11588                  types_ = new java.util.ArrayList<crosby.binary.Osmformat.Relation.MemberType>();
     11589                  mutable_bitField0_ |= 0x00000040;
     11590                }
     11591                types_.add(value);
    775911592              }
    776011593              break;
     
    776711600                crosby.binary.Osmformat.Relation.MemberType value = crosby.binary.Osmformat.Relation.MemberType.valueOf(rawValue);
    776811601                if (value != null) {
    7769                   addTypes(value);
     11602                  if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
     11603                    types_ = new java.util.ArrayList<crosby.binary.Osmformat.Relation.MemberType>();
     11604                    mutable_bitField0_ |= 0x00000040;
     11605                  }
     11606                  types_.add(value);
    777011607                }
    777111608              }
     
    777511612          }
    777611613        }
    7777       }
    7778      
     11614      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     11615        throw e.setUnfinishedMessage(this);
     11616      } catch (java.io.IOException e) {
     11617        throw new com.google.protobuf.InvalidProtocolBufferException(
     11618            e.getMessage()).setUnfinishedMessage(this);
     11619      } finally {
     11620        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
     11621          keys_ = java.util.Collections.unmodifiableList(keys_);
     11622        }
     11623        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
     11624          vals_ = java.util.Collections.unmodifiableList(vals_);
     11625        }
     11626        if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
     11627          rolesSid_ = java.util.Collections.unmodifiableList(rolesSid_);
     11628        }
     11629        if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
     11630          memids_ = java.util.Collections.unmodifiableList(memids_);
     11631        }
     11632        if (((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
     11633          types_ = java.util.Collections.unmodifiableList(types_);
     11634        }
     11635        makeExtensionsImmutable();
     11636      }
     11637    }
     11638    public static com.google.protobuf.Parser<Relation> PARSER =
     11639        new com.google.protobuf.AbstractParser<Relation>() {
     11640      public Relation parsePartialFrom(
     11641          com.google.protobuf.CodedInputStream input,
     11642          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     11643          throws com.google.protobuf.InvalidProtocolBufferException {
     11644        return new Relation(input, extensionRegistry);
     11645      }
     11646    };
     11647
     11648    @java.lang.Override
     11649    public com.google.protobuf.Parser<Relation> getParserForType() {
     11650      return PARSER;
     11651    }
     11652
     11653    /**
     11654     * Protobuf enum {@code OSMPBF.Relation.MemberType}
     11655     */
     11656    public enum MemberType
     11657        implements com.google.protobuf.Internal.EnumLite {
     11658      /**
     11659       * <code>NODE = 0;</code>
     11660       */
     11661      NODE(0, 0),
     11662      /**
     11663       * <code>WAY = 1;</code>
     11664       */
     11665      WAY(1, 1),
     11666      /**
     11667       * <code>RELATION = 2;</code>
     11668       */
     11669      RELATION(2, 2),
     11670      ;
     11671
     11672      /**
     11673       * <code>NODE = 0;</code>
     11674       */
     11675      public static final int NODE_VALUE = 0;
     11676      /**
     11677       * <code>WAY = 1;</code>
     11678       */
     11679      public static final int WAY_VALUE = 1;
     11680      /**
     11681       * <code>RELATION = 2;</code>
     11682       */
     11683      public static final int RELATION_VALUE = 2;
     11684
     11685
     11686      public final int getNumber() { return value; }
     11687
     11688      public static MemberType valueOf(int value) {
     11689        switch (value) {
     11690          case 0: return NODE;
     11691          case 1: return WAY;
     11692          case 2: return RELATION;
     11693          default: return null;
     11694        }
     11695      }
     11696
     11697      public static com.google.protobuf.Internal.EnumLiteMap<MemberType>
     11698          internalGetValueMap() {
     11699        return internalValueMap;
     11700      }
     11701      private static com.google.protobuf.Internal.EnumLiteMap<MemberType>
     11702          internalValueMap =
     11703            new com.google.protobuf.Internal.EnumLiteMap<MemberType>() {
     11704              public MemberType findValueByNumber(int number) {
     11705                return MemberType.valueOf(number);
     11706              }
     11707            };
     11708
     11709      private final int value;
     11710
     11711      private MemberType(int index, int value) {
     11712        this.value = value;
     11713      }
     11714
     11715      // @@protoc_insertion_point(enum_scope:OSMPBF.Relation.MemberType)
     11716    }
     11717
     11718    private int bitField0_;
     11719    // required int64 id = 1;
     11720    public static final int ID_FIELD_NUMBER = 1;
     11721    private long id_;
     11722    /**
     11723     * <code>required int64 id = 1;</code>
     11724     */
     11725    public boolean hasId() {
     11726      return ((bitField0_ & 0x00000001) == 0x00000001);
     11727    }
     11728    /**
     11729     * <code>required int64 id = 1;</code>
     11730     */
     11731    public long getId() {
     11732      return id_;
     11733    }
     11734
     11735    // repeated uint32 keys = 2 [packed = true];
     11736    public static final int KEYS_FIELD_NUMBER = 2;
     11737    private java.util.List<java.lang.Integer> keys_;
     11738    /**
     11739     * <code>repeated uint32 keys = 2 [packed = true];</code>
     11740     *
     11741     * <pre>
     11742     * Parallel arrays.
     11743     * </pre>
     11744     */
     11745    public java.util.List<java.lang.Integer>
     11746        getKeysList() {
     11747      return keys_;
     11748    }
     11749    /**
     11750     * <code>repeated uint32 keys = 2 [packed = true];</code>
     11751     *
     11752     * <pre>
     11753     * Parallel arrays.
     11754     * </pre>
     11755     */
     11756    public int getKeysCount() {
     11757      return keys_.size();
     11758    }
     11759    /**
     11760     * <code>repeated uint32 keys = 2 [packed = true];</code>
     11761     *
     11762     * <pre>
     11763     * Parallel arrays.
     11764     * </pre>
     11765     */
     11766    public int getKeys(int index) {
     11767      return keys_.get(index);
     11768    }
     11769    private int keysMemoizedSerializedSize = -1;
     11770
     11771    // repeated uint32 vals = 3 [packed = true];
     11772    public static final int VALS_FIELD_NUMBER = 3;
     11773    private java.util.List<java.lang.Integer> vals_;
     11774    /**
     11775     * <code>repeated uint32 vals = 3 [packed = true];</code>
     11776     */
     11777    public java.util.List<java.lang.Integer>
     11778        getValsList() {
     11779      return vals_;
     11780    }
     11781    /**
     11782     * <code>repeated uint32 vals = 3 [packed = true];</code>
     11783     */
     11784    public int getValsCount() {
     11785      return vals_.size();
     11786    }
     11787    /**
     11788     * <code>repeated uint32 vals = 3 [packed = true];</code>
     11789     */
     11790    public int getVals(int index) {
     11791      return vals_.get(index);
     11792    }
     11793    private int valsMemoizedSerializedSize = -1;
     11794
     11795    // optional .OSMPBF.Info info = 4;
     11796    public static final int INFO_FIELD_NUMBER = 4;
     11797    private crosby.binary.Osmformat.Info info_;
     11798    /**
     11799     * <code>optional .OSMPBF.Info info = 4;</code>
     11800     */
     11801    public boolean hasInfo() {
     11802      return ((bitField0_ & 0x00000002) == 0x00000002);
     11803    }
     11804    /**
     11805     * <code>optional .OSMPBF.Info info = 4;</code>
     11806     */
     11807    public crosby.binary.Osmformat.Info getInfo() {
     11808      return info_;
     11809    }
     11810
     11811    // repeated int32 roles_sid = 8 [packed = true];
     11812    public static final int ROLES_SID_FIELD_NUMBER = 8;
     11813    private java.util.List<java.lang.Integer> rolesSid_;
     11814    /**
     11815     * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     11816     *
     11817     * <pre>
     11818     * Parallel arrays
     11819     * </pre>
     11820     */
     11821    public java.util.List<java.lang.Integer>
     11822        getRolesSidList() {
     11823      return rolesSid_;
     11824    }
     11825    /**
     11826     * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     11827     *
     11828     * <pre>
     11829     * Parallel arrays
     11830     * </pre>
     11831     */
     11832    public int getRolesSidCount() {
     11833      return rolesSid_.size();
     11834    }
     11835    /**
     11836     * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     11837     *
     11838     * <pre>
     11839     * Parallel arrays
     11840     * </pre>
     11841     */
     11842    public int getRolesSid(int index) {
     11843      return rolesSid_.get(index);
     11844    }
     11845    private int rolesSidMemoizedSerializedSize = -1;
     11846
     11847    // repeated sint64 memids = 9 [packed = true];
     11848    public static final int MEMIDS_FIELD_NUMBER = 9;
     11849    private java.util.List<java.lang.Long> memids_;
     11850    /**
     11851     * <code>repeated sint64 memids = 9 [packed = true];</code>
     11852     *
     11853     * <pre>
     11854     * DELTA encoded
     11855     * </pre>
     11856     */
     11857    public java.util.List<java.lang.Long>
     11858        getMemidsList() {
     11859      return memids_;
     11860    }
     11861    /**
     11862     * <code>repeated sint64 memids = 9 [packed = true];</code>
     11863     *
     11864     * <pre>
     11865     * DELTA encoded
     11866     * </pre>
     11867     */
     11868    public int getMemidsCount() {
     11869      return memids_.size();
     11870    }
     11871    /**
     11872     * <code>repeated sint64 memids = 9 [packed = true];</code>
     11873     *
     11874     * <pre>
     11875     * DELTA encoded
     11876     * </pre>
     11877     */
     11878    public long getMemids(int index) {
     11879      return memids_.get(index);
     11880    }
     11881    private int memidsMemoizedSerializedSize = -1;
     11882
     11883    // repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];
     11884    public static final int TYPES_FIELD_NUMBER = 10;
     11885    private java.util.List<crosby.binary.Osmformat.Relation.MemberType> types_;
     11886    /**
     11887     * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     11888     */
     11889    public java.util.List<crosby.binary.Osmformat.Relation.MemberType> getTypesList() {
     11890      return types_;
     11891    }
     11892    /**
     11893     * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     11894     */
     11895    public int getTypesCount() {
     11896      return types_.size();
     11897    }
     11898    /**
     11899     * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     11900     */
     11901    public crosby.binary.Osmformat.Relation.MemberType getTypes(int index) {
     11902      return types_.get(index);
     11903    }
     11904    private int typesMemoizedSerializedSize;
     11905
     11906    private void initFields() {
     11907      id_ = 0L;
     11908      keys_ = java.util.Collections.emptyList();
     11909      vals_ = java.util.Collections.emptyList();
     11910      info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
     11911      rolesSid_ = java.util.Collections.emptyList();
     11912      memids_ = java.util.Collections.emptyList();
     11913      types_ = java.util.Collections.emptyList();
     11914    }
     11915    private byte memoizedIsInitialized = -1;
     11916    public final boolean isInitialized() {
     11917      byte isInitialized = memoizedIsInitialized;
     11918      if (isInitialized != -1) return isInitialized == 1;
     11919
     11920      if (!hasId()) {
     11921        memoizedIsInitialized = 0;
     11922        return false;
     11923      }
     11924      memoizedIsInitialized = 1;
     11925      return true;
     11926    }
     11927
     11928    public void writeTo(com.google.protobuf.CodedOutputStream output)
     11929                        throws java.io.IOException {
     11930      getSerializedSize();
     11931      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     11932        output.writeInt64(1, id_);
     11933      }
     11934      if (getKeysList().size() > 0) {
     11935        output.writeRawVarint32(18);
     11936        output.writeRawVarint32(keysMemoizedSerializedSize);
     11937      }
     11938      for (int i = 0; i < keys_.size(); i++) {
     11939        output.writeUInt32NoTag(keys_.get(i));
     11940      }
     11941      if (getValsList().size() > 0) {
     11942        output.writeRawVarint32(26);
     11943        output.writeRawVarint32(valsMemoizedSerializedSize);
     11944      }
     11945      for (int i = 0; i < vals_.size(); i++) {
     11946        output.writeUInt32NoTag(vals_.get(i));
     11947      }
     11948      if (((bitField0_ & 0x00000002) == 0x00000002)) {
     11949        output.writeMessage(4, info_);
     11950      }
     11951      if (getRolesSidList().size() > 0) {
     11952        output.writeRawVarint32(66);
     11953        output.writeRawVarint32(rolesSidMemoizedSerializedSize);
     11954      }
     11955      for (int i = 0; i < rolesSid_.size(); i++) {
     11956        output.writeInt32NoTag(rolesSid_.get(i));
     11957      }
     11958      if (getMemidsList().size() > 0) {
     11959        output.writeRawVarint32(74);
     11960        output.writeRawVarint32(memidsMemoizedSerializedSize);
     11961      }
     11962      for (int i = 0; i < memids_.size(); i++) {
     11963        output.writeSInt64NoTag(memids_.get(i));
     11964      }
     11965      if (getTypesList().size() > 0) {
     11966        output.writeRawVarint32(82);
     11967        output.writeRawVarint32(typesMemoizedSerializedSize);
     11968      }
     11969      for (int i = 0; i < types_.size(); i++) {
     11970        output.writeEnumNoTag(types_.get(i).getNumber());
     11971      }
     11972    }
     11973
     11974    private int memoizedSerializedSize = -1;
     11975    public int getSerializedSize() {
     11976      int size = memoizedSerializedSize;
     11977      if (size != -1) return size;
     11978
     11979      size = 0;
     11980      if (((bitField0_ & 0x00000001) == 0x00000001)) {
     11981        size += com.google.protobuf.CodedOutputStream
     11982          .computeInt64Size(1, id_);
     11983      }
     11984      {
     11985        int dataSize = 0;
     11986        for (int i = 0; i < keys_.size(); i++) {
     11987          dataSize += com.google.protobuf.CodedOutputStream
     11988            .computeUInt32SizeNoTag(keys_.get(i));
     11989        }
     11990        size += dataSize;
     11991        if (!getKeysList().isEmpty()) {
     11992          size += 1;
     11993          size += com.google.protobuf.CodedOutputStream
     11994              .computeInt32SizeNoTag(dataSize);
     11995        }
     11996        keysMemoizedSerializedSize = dataSize;
     11997      }
     11998      {
     11999        int dataSize = 0;
     12000        for (int i = 0; i < vals_.size(); i++) {
     12001          dataSize += com.google.protobuf.CodedOutputStream
     12002            .computeUInt32SizeNoTag(vals_.get(i));
     12003        }
     12004        size += dataSize;
     12005        if (!getValsList().isEmpty()) {
     12006          size += 1;
     12007          size += com.google.protobuf.CodedOutputStream
     12008              .computeInt32SizeNoTag(dataSize);
     12009        }
     12010        valsMemoizedSerializedSize = dataSize;
     12011      }
     12012      if (((bitField0_ & 0x00000002) == 0x00000002)) {
     12013        size += com.google.protobuf.CodedOutputStream
     12014          .computeMessageSize(4, info_);
     12015      }
     12016      {
     12017        int dataSize = 0;
     12018        for (int i = 0; i < rolesSid_.size(); i++) {
     12019          dataSize += com.google.protobuf.CodedOutputStream
     12020            .computeInt32SizeNoTag(rolesSid_.get(i));
     12021        }
     12022        size += dataSize;
     12023        if (!getRolesSidList().isEmpty()) {
     12024          size += 1;
     12025          size += com.google.protobuf.CodedOutputStream
     12026              .computeInt32SizeNoTag(dataSize);
     12027        }
     12028        rolesSidMemoizedSerializedSize = dataSize;
     12029      }
     12030      {
     12031        int dataSize = 0;
     12032        for (int i = 0; i < memids_.size(); i++) {
     12033          dataSize += com.google.protobuf.CodedOutputStream
     12034            .computeSInt64SizeNoTag(memids_.get(i));
     12035        }
     12036        size += dataSize;
     12037        if (!getMemidsList().isEmpty()) {
     12038          size += 1;
     12039          size += com.google.protobuf.CodedOutputStream
     12040              .computeInt32SizeNoTag(dataSize);
     12041        }
     12042        memidsMemoizedSerializedSize = dataSize;
     12043      }
     12044      {
     12045        int dataSize = 0;
     12046        for (int i = 0; i < types_.size(); i++) {
     12047          dataSize += com.google.protobuf.CodedOutputStream
     12048            .computeEnumSizeNoTag(types_.get(i).getNumber());
     12049        }
     12050        size += dataSize;
     12051        if (!getTypesList().isEmpty()) {  size += 1;
     12052          size += com.google.protobuf.CodedOutputStream
     12053            .computeRawVarint32Size(dataSize);
     12054        }typesMemoizedSerializedSize = dataSize;
     12055      }
     12056      memoizedSerializedSize = size;
     12057      return size;
     12058    }
     12059
     12060    private static final long serialVersionUID = 0L;
     12061    @java.lang.Override
     12062    protected java.lang.Object writeReplace()
     12063        throws java.io.ObjectStreamException {
     12064      return super.writeReplace();
     12065    }
     12066
     12067    public static crosby.binary.Osmformat.Relation parseFrom(
     12068        com.google.protobuf.ByteString data)
     12069        throws com.google.protobuf.InvalidProtocolBufferException {
     12070      return PARSER.parseFrom(data);
     12071    }
     12072    public static crosby.binary.Osmformat.Relation parseFrom(
     12073        com.google.protobuf.ByteString data,
     12074        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     12075        throws com.google.protobuf.InvalidProtocolBufferException {
     12076      return PARSER.parseFrom(data, extensionRegistry);
     12077    }
     12078    public static crosby.binary.Osmformat.Relation parseFrom(byte[] data)
     12079        throws com.google.protobuf.InvalidProtocolBufferException {
     12080      return PARSER.parseFrom(data);
     12081    }
     12082    public static crosby.binary.Osmformat.Relation parseFrom(
     12083        byte[] data,
     12084        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     12085        throws com.google.protobuf.InvalidProtocolBufferException {
     12086      return PARSER.parseFrom(data, extensionRegistry);
     12087    }
     12088    public static crosby.binary.Osmformat.Relation parseFrom(java.io.InputStream input)
     12089        throws java.io.IOException {
     12090      return PARSER.parseFrom(input);
     12091    }
     12092    public static crosby.binary.Osmformat.Relation parseFrom(
     12093        java.io.InputStream input,
     12094        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     12095        throws java.io.IOException {
     12096      return PARSER.parseFrom(input, extensionRegistry);
     12097    }
     12098    public static crosby.binary.Osmformat.Relation parseDelimitedFrom(java.io.InputStream input)
     12099        throws java.io.IOException {
     12100      return PARSER.parseDelimitedFrom(input);
     12101    }
     12102    public static crosby.binary.Osmformat.Relation parseDelimitedFrom(
     12103        java.io.InputStream input,
     12104        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     12105        throws java.io.IOException {
     12106      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     12107    }
     12108    public static crosby.binary.Osmformat.Relation parseFrom(
     12109        com.google.protobuf.CodedInputStream input)
     12110        throws java.io.IOException {
     12111      return PARSER.parseFrom(input);
     12112    }
     12113    public static crosby.binary.Osmformat.Relation parseFrom(
     12114        com.google.protobuf.CodedInputStream input,
     12115        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     12116        throws java.io.IOException {
     12117      return PARSER.parseFrom(input, extensionRegistry);
     12118    }
     12119
     12120    public static Builder newBuilder() { return Builder.create(); }
     12121    public Builder newBuilderForType() { return newBuilder(); }
     12122    public static Builder newBuilder(crosby.binary.Osmformat.Relation prototype) {
     12123      return newBuilder().mergeFrom(prototype);
     12124    }
     12125    public Builder toBuilder() { return newBuilder(this); }
     12126
     12127    /**
     12128     * Protobuf type {@code OSMPBF.Relation}
     12129     */
     12130    public static final class Builder extends
     12131        com.google.protobuf.GeneratedMessageLite.Builder<
     12132          crosby.binary.Osmformat.Relation, Builder>
     12133        implements crosby.binary.Osmformat.RelationOrBuilder {
     12134      // Construct using crosby.binary.Osmformat.Relation.newBuilder()
     12135      private Builder() {
     12136        maybeForceBuilderInitialization();
     12137      }
     12138
     12139      private void maybeForceBuilderInitialization() {
     12140      }
     12141      private static Builder create() {
     12142        return new Builder();
     12143      }
     12144
     12145      public Builder clear() {
     12146        super.clear();
     12147        id_ = 0L;
     12148        bitField0_ = (bitField0_ & ~0x00000001);
     12149        keys_ = java.util.Collections.emptyList();
     12150        bitField0_ = (bitField0_ & ~0x00000002);
     12151        vals_ = java.util.Collections.emptyList();
     12152        bitField0_ = (bitField0_ & ~0x00000004);
     12153        info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
     12154        bitField0_ = (bitField0_ & ~0x00000008);
     12155        rolesSid_ = java.util.Collections.emptyList();
     12156        bitField0_ = (bitField0_ & ~0x00000010);
     12157        memids_ = java.util.Collections.emptyList();
     12158        bitField0_ = (bitField0_ & ~0x00000020);
     12159        types_ = java.util.Collections.emptyList();
     12160        bitField0_ = (bitField0_ & ~0x00000040);
     12161        return this;
     12162      }
     12163
     12164      public Builder clone() {
     12165        return create().mergeFrom(buildPartial());
     12166      }
     12167
     12168      public crosby.binary.Osmformat.Relation getDefaultInstanceForType() {
     12169        return crosby.binary.Osmformat.Relation.getDefaultInstance();
     12170      }
     12171
     12172      public crosby.binary.Osmformat.Relation build() {
     12173        crosby.binary.Osmformat.Relation result = buildPartial();
     12174        if (!result.isInitialized()) {
     12175          throw newUninitializedMessageException(result);
     12176        }
     12177        return result;
     12178      }
     12179
     12180      public crosby.binary.Osmformat.Relation buildPartial() {
     12181        crosby.binary.Osmformat.Relation result = new crosby.binary.Osmformat.Relation(this);
     12182        int from_bitField0_ = bitField0_;
     12183        int to_bitField0_ = 0;
     12184        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
     12185          to_bitField0_ |= 0x00000001;
     12186        }
     12187        result.id_ = id_;
     12188        if (((bitField0_ & 0x00000002) == 0x00000002)) {
     12189          keys_ = java.util.Collections.unmodifiableList(keys_);
     12190          bitField0_ = (bitField0_ & ~0x00000002);
     12191        }
     12192        result.keys_ = keys_;
     12193        if (((bitField0_ & 0x00000004) == 0x00000004)) {
     12194          vals_ = java.util.Collections.unmodifiableList(vals_);
     12195          bitField0_ = (bitField0_ & ~0x00000004);
     12196        }
     12197        result.vals_ = vals_;
     12198        if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
     12199          to_bitField0_ |= 0x00000002;
     12200        }
     12201        result.info_ = info_;
     12202        if (((bitField0_ & 0x00000010) == 0x00000010)) {
     12203          rolesSid_ = java.util.Collections.unmodifiableList(rolesSid_);
     12204          bitField0_ = (bitField0_ & ~0x00000010);
     12205        }
     12206        result.rolesSid_ = rolesSid_;
     12207        if (((bitField0_ & 0x00000020) == 0x00000020)) {
     12208          memids_ = java.util.Collections.unmodifiableList(memids_);
     12209          bitField0_ = (bitField0_ & ~0x00000020);
     12210        }
     12211        result.memids_ = memids_;
     12212        if (((bitField0_ & 0x00000040) == 0x00000040)) {
     12213          types_ = java.util.Collections.unmodifiableList(types_);
     12214          bitField0_ = (bitField0_ & ~0x00000040);
     12215        }
     12216        result.types_ = types_;
     12217        result.bitField0_ = to_bitField0_;
     12218        return result;
     12219      }
     12220
     12221      public Builder mergeFrom(crosby.binary.Osmformat.Relation other) {
     12222        if (other == crosby.binary.Osmformat.Relation.getDefaultInstance()) return this;
     12223        if (other.hasId()) {
     12224          setId(other.getId());
     12225        }
     12226        if (!other.keys_.isEmpty()) {
     12227          if (keys_.isEmpty()) {
     12228            keys_ = other.keys_;
     12229            bitField0_ = (bitField0_ & ~0x00000002);
     12230          } else {
     12231            ensureKeysIsMutable();
     12232            keys_.addAll(other.keys_);
     12233          }
     12234         
     12235        }
     12236        if (!other.vals_.isEmpty()) {
     12237          if (vals_.isEmpty()) {
     12238            vals_ = other.vals_;
     12239            bitField0_ = (bitField0_ & ~0x00000004);
     12240          } else {
     12241            ensureValsIsMutable();
     12242            vals_.addAll(other.vals_);
     12243          }
     12244         
     12245        }
     12246        if (other.hasInfo()) {
     12247          mergeInfo(other.getInfo());
     12248        }
     12249        if (!other.rolesSid_.isEmpty()) {
     12250          if (rolesSid_.isEmpty()) {
     12251            rolesSid_ = other.rolesSid_;
     12252            bitField0_ = (bitField0_ & ~0x00000010);
     12253          } else {
     12254            ensureRolesSidIsMutable();
     12255            rolesSid_.addAll(other.rolesSid_);
     12256          }
     12257         
     12258        }
     12259        if (!other.memids_.isEmpty()) {
     12260          if (memids_.isEmpty()) {
     12261            memids_ = other.memids_;
     12262            bitField0_ = (bitField0_ & ~0x00000020);
     12263          } else {
     12264            ensureMemidsIsMutable();
     12265            memids_.addAll(other.memids_);
     12266          }
     12267         
     12268        }
     12269        if (!other.types_.isEmpty()) {
     12270          if (types_.isEmpty()) {
     12271            types_ = other.types_;
     12272            bitField0_ = (bitField0_ & ~0x00000040);
     12273          } else {
     12274            ensureTypesIsMutable();
     12275            types_.addAll(other.types_);
     12276          }
     12277         
     12278        }
     12279        return this;
     12280      }
     12281
     12282      public final boolean isInitialized() {
     12283        if (!hasId()) {
     12284         
     12285          return false;
     12286        }
     12287        return true;
     12288      }
     12289
     12290      public Builder mergeFrom(
     12291          com.google.protobuf.CodedInputStream input,
     12292          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     12293          throws java.io.IOException {
     12294        crosby.binary.Osmformat.Relation parsedMessage = null;
     12295        try {
     12296          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
     12297        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
     12298          parsedMessage = (crosby.binary.Osmformat.Relation) e.getUnfinishedMessage();
     12299          throw e;
     12300        } finally {
     12301          if (parsedMessage != null) {
     12302            mergeFrom(parsedMessage);
     12303          }
     12304        }
     12305        return this;
     12306      }
    777912307      private int bitField0_;
    7780      
     12308
    778112309      // required int64 id = 1;
    778212310      private long id_ ;
     12311      /**
     12312       * <code>required int64 id = 1;</code>
     12313       */
    778312314      public boolean hasId() {
    778412315        return ((bitField0_ & 0x00000001) == 0x00000001);
    778512316      }
     12317      /**
     12318       * <code>required int64 id = 1;</code>
     12319       */
    778612320      public long getId() {
    778712321        return id_;
    778812322      }
     12323      /**
     12324       * <code>required int64 id = 1;</code>
     12325       */
    778912326      public Builder setId(long value) {
    779012327        bitField0_ |= 0x00000001;
     
    779312330        return this;
    779412331      }
     12332      /**
     12333       * <code>required int64 id = 1;</code>
     12334       */
    779512335      public Builder clearId() {
    779612336        bitField0_ = (bitField0_ & ~0x00000001);
     
    779912339        return this;
    780012340      }
    7801      
     12341
    780212342      // repeated uint32 keys = 2 [packed = true];
    7803       private java.util.List<java.lang.Integer> keys_ = java.util.Collections.emptyList();;
     12343      private java.util.List<java.lang.Integer> keys_ = java.util.Collections.emptyList();
    780412344      private void ensureKeysIsMutable() {
    780512345        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
     
    780812348         }
    780912349      }
     12350      /**
     12351       * <code>repeated uint32 keys = 2 [packed = true];</code>
     12352       *
     12353       * <pre>
     12354       * Parallel arrays.
     12355       * </pre>
     12356       */
    781012357      public java.util.List<java.lang.Integer>
    781112358          getKeysList() {
    781212359        return java.util.Collections.unmodifiableList(keys_);
    781312360      }
     12361      /**
     12362       * <code>repeated uint32 keys = 2 [packed = true];</code>
     12363       *
     12364       * <pre>
     12365       * Parallel arrays.
     12366       * </pre>
     12367       */
    781412368      public int getKeysCount() {
    781512369        return keys_.size();
    781612370      }
     12371      /**
     12372       * <code>repeated uint32 keys = 2 [packed = true];</code>
     12373       *
     12374       * <pre>
     12375       * Parallel arrays.
     12376       * </pre>
     12377       */
    781712378      public int getKeys(int index) {
    781812379        return keys_.get(index);
    781912380      }
     12381      /**
     12382       * <code>repeated uint32 keys = 2 [packed = true];</code>
     12383       *
     12384       * <pre>
     12385       * Parallel arrays.
     12386       * </pre>
     12387       */
    782012388      public Builder setKeys(
    782112389          int index, int value) {
     
    782512393        return this;
    782612394      }
     12395      /**
     12396       * <code>repeated uint32 keys = 2 [packed = true];</code>
     12397       *
     12398       * <pre>
     12399       * Parallel arrays.
     12400       * </pre>
     12401       */
    782712402      public Builder addKeys(int value) {
    782812403        ensureKeysIsMutable();
     
    783112406        return this;
    783212407      }
     12408      /**
     12409       * <code>repeated uint32 keys = 2 [packed = true];</code>
     12410       *
     12411       * <pre>
     12412       * Parallel arrays.
     12413       * </pre>
     12414       */
    783312415      public Builder addAllKeys(
    783412416          java.lang.Iterable<? extends java.lang.Integer> values) {
     
    783812420        return this;
    783912421      }
     12422      /**
     12423       * <code>repeated uint32 keys = 2 [packed = true];</code>
     12424       *
     12425       * <pre>
     12426       * Parallel arrays.
     12427       * </pre>
     12428       */
    784012429      public Builder clearKeys() {
    7841         keys_ = java.util.Collections.emptyList();;
     12430        keys_ = java.util.Collections.emptyList();
    784212431        bitField0_ = (bitField0_ & ~0x00000002);
    784312432       
    784412433        return this;
    784512434      }
    7846      
     12435
    784712436      // repeated uint32 vals = 3 [packed = true];
    7848       private java.util.List<java.lang.Integer> vals_ = java.util.Collections.emptyList();;
     12437      private java.util.List<java.lang.Integer> vals_ = java.util.Collections.emptyList();
    784912438      private void ensureValsIsMutable() {
    785012439        if (!((bitField0_ & 0x00000004) == 0x00000004)) {
     
    785312442         }
    785412443      }
     12444      /**
     12445       * <code>repeated uint32 vals = 3 [packed = true];</code>
     12446       */
    785512447      public java.util.List<java.lang.Integer>
    785612448          getValsList() {
    785712449        return java.util.Collections.unmodifiableList(vals_);
    785812450      }
     12451      /**
     12452       * <code>repeated uint32 vals = 3 [packed = true];</code>
     12453       */
    785912454      public int getValsCount() {
    786012455        return vals_.size();
    786112456      }
     12457      /**
     12458       * <code>repeated uint32 vals = 3 [packed = true];</code>
     12459       */
    786212460      public int getVals(int index) {
    786312461        return vals_.get(index);
    786412462      }
     12463      /**
     12464       * <code>repeated uint32 vals = 3 [packed = true];</code>
     12465       */
    786512466      public Builder setVals(
    786612467          int index, int value) {
     
    787012471        return this;
    787112472      }
     12473      /**
     12474       * <code>repeated uint32 vals = 3 [packed = true];</code>
     12475       */
    787212476      public Builder addVals(int value) {
    787312477        ensureValsIsMutable();
     
    787612480        return this;
    787712481      }
     12482      /**
     12483       * <code>repeated uint32 vals = 3 [packed = true];</code>
     12484       */
    787812485      public Builder addAllVals(
    787912486          java.lang.Iterable<? extends java.lang.Integer> values) {
     
    788312490        return this;
    788412491      }
     12492      /**
     12493       * <code>repeated uint32 vals = 3 [packed = true];</code>
     12494       */
    788512495      public Builder clearVals() {
    7886         vals_ = java.util.Collections.emptyList();;
     12496        vals_ = java.util.Collections.emptyList();
    788712497        bitField0_ = (bitField0_ & ~0x00000004);
    788812498       
    788912499        return this;
    789012500      }
    7891      
     12501
    789212502      // optional .OSMPBF.Info info = 4;
    789312503      private crosby.binary.Osmformat.Info info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
     12504      /**
     12505       * <code>optional .OSMPBF.Info info = 4;</code>
     12506       */
    789412507      public boolean hasInfo() {
    789512508        return ((bitField0_ & 0x00000008) == 0x00000008);
    789612509      }
     12510      /**
     12511       * <code>optional .OSMPBF.Info info = 4;</code>
     12512       */
    789712513      public crosby.binary.Osmformat.Info getInfo() {
    789812514        return info_;
    789912515      }
     12516      /**
     12517       * <code>optional .OSMPBF.Info info = 4;</code>
     12518       */
    790012519      public Builder setInfo(crosby.binary.Osmformat.Info value) {
    790112520        if (value == null) {
     
    790312522        }
    790412523        info_ = value;
    7905        
     12524
    790612525        bitField0_ |= 0x00000008;
    790712526        return this;
    790812527      }
     12528      /**
     12529       * <code>optional .OSMPBF.Info info = 4;</code>
     12530       */
    790912531      public Builder setInfo(
    791012532          crosby.binary.Osmformat.Info.Builder builderForValue) {
    791112533        info_ = builderForValue.build();
    7912        
     12534
    791312535        bitField0_ |= 0x00000008;
    791412536        return this;
    791512537      }
     12538      /**
     12539       * <code>optional .OSMPBF.Info info = 4;</code>
     12540       */
    791612541      public Builder mergeInfo(crosby.binary.Osmformat.Info value) {
    791712542        if (((bitField0_ & 0x00000008) == 0x00000008) &&
     
    792212547          info_ = value;
    792312548        }
    7924        
     12549
    792512550        bitField0_ |= 0x00000008;
    792612551        return this;
    792712552      }
     12553      /**
     12554       * <code>optional .OSMPBF.Info info = 4;</code>
     12555       */
    792812556      public Builder clearInfo() {
    792912557        info_ = crosby.binary.Osmformat.Info.getDefaultInstance();
    7930        
     12558
    793112559        bitField0_ = (bitField0_ & ~0x00000008);
    793212560        return this;
    793312561      }
    7934      
     12562
    793512563      // repeated int32 roles_sid = 8 [packed = true];
    7936       private java.util.List<java.lang.Integer> rolesSid_ = java.util.Collections.emptyList();;
     12564      private java.util.List<java.lang.Integer> rolesSid_ = java.util.Collections.emptyList();
    793712565      private void ensureRolesSidIsMutable() {
    793812566        if (!((bitField0_ & 0x00000010) == 0x00000010)) {
     
    794112569         }
    794212570      }
     12571      /**
     12572       * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     12573       *
     12574       * <pre>
     12575       * Parallel arrays
     12576       * </pre>
     12577       */
    794312578      public java.util.List<java.lang.Integer>
    794412579          getRolesSidList() {
    794512580        return java.util.Collections.unmodifiableList(rolesSid_);
    794612581      }
     12582      /**
     12583       * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     12584       *
     12585       * <pre>
     12586       * Parallel arrays
     12587       * </pre>
     12588       */
    794712589      public int getRolesSidCount() {
    794812590        return rolesSid_.size();
    794912591      }
     12592      /**
     12593       * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     12594       *
     12595       * <pre>
     12596       * Parallel arrays
     12597       * </pre>
     12598       */
    795012599      public int getRolesSid(int index) {
    795112600        return rolesSid_.get(index);
    795212601      }
     12602      /**
     12603       * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     12604       *
     12605       * <pre>
     12606       * Parallel arrays
     12607       * </pre>
     12608       */
    795312609      public Builder setRolesSid(
    795412610          int index, int value) {
     
    795812614        return this;
    795912615      }
     12616      /**
     12617       * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     12618       *
     12619       * <pre>
     12620       * Parallel arrays
     12621       * </pre>
     12622       */
    796012623      public Builder addRolesSid(int value) {
    796112624        ensureRolesSidIsMutable();
     
    796412627        return this;
    796512628      }
     12629      /**
     12630       * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     12631       *
     12632       * <pre>
     12633       * Parallel arrays
     12634       * </pre>
     12635       */
    796612636      public Builder addAllRolesSid(
    796712637          java.lang.Iterable<? extends java.lang.Integer> values) {
     
    797112641        return this;
    797212642      }
     12643      /**
     12644       * <code>repeated int32 roles_sid = 8 [packed = true];</code>
     12645       *
     12646       * <pre>
     12647       * Parallel arrays
     12648       * </pre>
     12649       */
    797312650      public Builder clearRolesSid() {
    7974         rolesSid_ = java.util.Collections.emptyList();;
     12651        rolesSid_ = java.util.Collections.emptyList();
    797512652        bitField0_ = (bitField0_ & ~0x00000010);
    797612653       
    797712654        return this;
    797812655      }
    7979      
     12656
    798012657      // repeated sint64 memids = 9 [packed = true];
    7981       private java.util.List<java.lang.Long> memids_ = java.util.Collections.emptyList();;
     12658      private java.util.List<java.lang.Long> memids_ = java.util.Collections.emptyList();
    798212659      private void ensureMemidsIsMutable() {
    798312660        if (!((bitField0_ & 0x00000020) == 0x00000020)) {
     
    798612663         }
    798712664      }
     12665      /**
     12666       * <code>repeated sint64 memids = 9 [packed = true];</code>
     12667       *
     12668       * <pre>
     12669       * DELTA encoded
     12670       * </pre>
     12671       */
    798812672      public java.util.List<java.lang.Long>
    798912673          getMemidsList() {
    799012674        return java.util.Collections.unmodifiableList(memids_);
    799112675      }
     12676      /**
     12677       * <code>repeated sint64 memids = 9 [packed = true];</code>
     12678       *
     12679       * <pre>
     12680       * DELTA encoded
     12681       * </pre>
     12682       */
    799212683      public int getMemidsCount() {
    799312684        return memids_.size();
    799412685      }
     12686      /**
     12687       * <code>repeated sint64 memids = 9 [packed = true];</code>
     12688       *
     12689       * <pre>
     12690       * DELTA encoded
     12691       * </pre>
     12692       */
    799512693      public long getMemids(int index) {
    799612694        return memids_.get(index);
    799712695      }
     12696      /**
     12697       * <code>repeated sint64 memids = 9 [packed = true];</code>
     12698       *
     12699       * <pre>
     12700       * DELTA encoded
     12701       * </pre>
     12702       */
    799812703      public Builder setMemids(
    799912704          int index, long value) {
     
    800312708        return this;
    800412709      }
     12710      /**
     12711       * <code>repeated sint64 memids = 9 [packed = true];</code>
     12712       *
     12713       * <pre>
     12714       * DELTA encoded
     12715       * </pre>
     12716       */
    800512717      public Builder addMemids(long value) {
    800612718        ensureMemidsIsMutable();
     
    800912721        return this;
    801012722      }
     12723      /**
     12724       * <code>repeated sint64 memids = 9 [packed = true];</code>
     12725       *
     12726       * <pre>
     12727       * DELTA encoded
     12728       * </pre>
     12729       */
    801112730      public Builder addAllMemids(
    801212731          java.lang.Iterable<? extends java.lang.Long> values) {
     
    801612735        return this;
    801712736      }
     12737      /**
     12738       * <code>repeated sint64 memids = 9 [packed = true];</code>
     12739       *
     12740       * <pre>
     12741       * DELTA encoded
     12742       * </pre>
     12743       */
    801812744      public Builder clearMemids() {
    8019         memids_ = java.util.Collections.emptyList();;
     12745        memids_ = java.util.Collections.emptyList();
    802012746        bitField0_ = (bitField0_ & ~0x00000020);
    802112747       
    802212748        return this;
    802312749      }
    8024      
     12750
    802512751      // repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];
    802612752      private java.util.List<crosby.binary.Osmformat.Relation.MemberType> types_ =
     
    803212758        }
    803312759      }
     12760      /**
     12761       * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     12762       */
    803412763      public java.util.List<crosby.binary.Osmformat.Relation.MemberType> getTypesList() {
    803512764        return java.util.Collections.unmodifiableList(types_);
    803612765      }
     12766      /**
     12767       * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     12768       */
    803712769      public int getTypesCount() {
    803812770        return types_.size();
    803912771      }
     12772      /**
     12773       * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     12774       */
    804012775      public crosby.binary.Osmformat.Relation.MemberType getTypes(int index) {
    804112776        return types_.get(index);
    804212777      }
     12778      /**
     12779       * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     12780       */
    804312781      public Builder setTypes(
    804412782          int index, crosby.binary.Osmformat.Relation.MemberType value) {
     
    805112789        return this;
    805212790      }
     12791      /**
     12792       * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     12793       */
    805312794      public Builder addTypes(crosby.binary.Osmformat.Relation.MemberType value) {
    805412795        if (value == null) {
     
    806012801        return this;
    806112802      }
     12803      /**
     12804       * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     12805       */
    806212806      public Builder addAllTypes(
    806312807          java.lang.Iterable<? extends crosby.binary.Osmformat.Relation.MemberType> values) {
     
    806712811        return this;
    806812812      }
     12813      /**
     12814       * <code>repeated .OSMPBF.Relation.MemberType types = 10 [packed = true];</code>
     12815       */
    806912816      public Builder clearTypes() {
    807012817        types_ = java.util.Collections.emptyList();
     
    807312820        return this;
    807412821      }
    8075      
     12822
    807612823      // @@protoc_insertion_point(builder_scope:OSMPBF.Relation)
    807712824    }
    8078    
     12825
    807912826    static {
    808012827      defaultInstance = new Relation(true);
    808112828      defaultInstance.initFields();
    808212829    }
    8083    
     12830
    808412831    // @@protoc_insertion_point(class_scope:OSMPBF.Relation)
    808512832  }
    8086  
    8087  
     12833
     12834
    808812835  static {
    808912836  }
    8090  
     12837
    809112838  // @@protoc_insertion_point(outer_class_scope)
    809212839}
Note: See TracChangeset for help on using the changeset viewer.