All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.craxiom.messaging.GsmRecordData Maven / Gradle / Ivy

The newest version!
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// NO CHECKED-IN PROTOBUF GENCODE
// source: com/craxiom/messaging/gsm_record.proto
// Protobuf Java Version: 4.27.3

package com.craxiom.messaging;

/**
 * Protobuf type {@code com.craxiom.messaging.GsmRecordData}
 */
public final class GsmRecordData extends
    com.google.protobuf.GeneratedMessage implements
    // @@protoc_insertion_point(message_implements:com.craxiom.messaging.GsmRecordData)
    GsmRecordDataOrBuilder {
private static final long serialVersionUID = 0L;
  static {
    com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
      com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
      /* major= */ 4,
      /* minor= */ 27,
      /* patch= */ 3,
      /* suffix= */ "",
      GsmRecordData.class.getName());
  }
  // Use GsmRecordData.newBuilder() to construct.
  private GsmRecordData(com.google.protobuf.GeneratedMessage.Builder builder) {
    super(builder);
  }
  private GsmRecordData() {
    deviceSerialNumber_ = "";
    deviceName_ = "";
    deviceTime_ = "";
    missionId_ = "";
    provider_ = "";
  }

  public static final com.google.protobuf.Descriptors.Descriptor
      getDescriptor() {
    return com.craxiom.messaging.GsmRecordOuterClass.internal_static_com_craxiom_messaging_GsmRecordData_descriptor;
  }

  @java.lang.Override
  protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internalGetFieldAccessorTable() {
    return com.craxiom.messaging.GsmRecordOuterClass.internal_static_com_craxiom_messaging_GsmRecordData_fieldAccessorTable
        .ensureFieldAccessorsInitialized(
            com.craxiom.messaging.GsmRecordData.class, com.craxiom.messaging.GsmRecordData.Builder.class);
  }

  private int bitField0_;
  public static final int DEVICESERIALNUMBER_FIELD_NUMBER = 1;
  @SuppressWarnings("serial")
  private volatile java.lang.Object deviceSerialNumber_ = "";
  /**
   * string deviceSerialNumber = 1;
   * @return The deviceSerialNumber.
   */
  @java.lang.Override
  public java.lang.String getDeviceSerialNumber() {
    java.lang.Object ref = deviceSerialNumber_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      deviceSerialNumber_ = s;
      return s;
    }
  }
  /**
   * string deviceSerialNumber = 1;
   * @return The bytes for deviceSerialNumber.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getDeviceSerialNumberBytes() {
    java.lang.Object ref = deviceSerialNumber_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      deviceSerialNumber_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int DEVICENAME_FIELD_NUMBER = 2;
  @SuppressWarnings("serial")
  private volatile java.lang.Object deviceName_ = "";
  /**
   * string deviceName = 2;
   * @return The deviceName.
   */
  @java.lang.Override
  public java.lang.String getDeviceName() {
    java.lang.Object ref = deviceName_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      deviceName_ = s;
      return s;
    }
  }
  /**
   * string deviceName = 2;
   * @return The bytes for deviceName.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getDeviceNameBytes() {
    java.lang.Object ref = deviceName_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      deviceName_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int DEVICETIME_FIELD_NUMBER = 3;
  @SuppressWarnings("serial")
  private volatile java.lang.Object deviceTime_ = "";
  /**
   * string deviceTime = 3;
   * @return The deviceTime.
   */
  @java.lang.Override
  public java.lang.String getDeviceTime() {
    java.lang.Object ref = deviceTime_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      deviceTime_ = s;
      return s;
    }
  }
  /**
   * string deviceTime = 3;
   * @return The bytes for deviceTime.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getDeviceTimeBytes() {
    java.lang.Object ref = deviceTime_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      deviceTime_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int LATITUDE_FIELD_NUMBER = 4;
  private double latitude_ = 0D;
  /**
   * double latitude = 4;
   * @return The latitude.
   */
  @java.lang.Override
  public double getLatitude() {
    return latitude_;
  }

  public static final int LONGITUDE_FIELD_NUMBER = 5;
  private double longitude_ = 0D;
  /**
   * double longitude = 5;
   * @return The longitude.
   */
  @java.lang.Override
  public double getLongitude() {
    return longitude_;
  }

  public static final int ALTITUDE_FIELD_NUMBER = 6;
  private float altitude_ = 0F;
  /**
   * float altitude = 6;
   * @return The altitude.
   */
  @java.lang.Override
  public float getAltitude() {
    return altitude_;
  }

  public static final int MISSIONID_FIELD_NUMBER = 7;
  @SuppressWarnings("serial")
  private volatile java.lang.Object missionId_ = "";
  /**
   * string missionId = 7;
   * @return The missionId.
   */
  @java.lang.Override
  public java.lang.String getMissionId() {
    java.lang.Object ref = missionId_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      missionId_ = s;
      return s;
    }
  }
  /**
   * string missionId = 7;
   * @return The bytes for missionId.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getMissionIdBytes() {
    java.lang.Object ref = missionId_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      missionId_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int RECORDNUMBER_FIELD_NUMBER = 8;
  private int recordNumber_ = 0;
  /**
   * int32 recordNumber = 8;
   * @return The recordNumber.
   */
  @java.lang.Override
  public int getRecordNumber() {
    return recordNumber_;
  }

  public static final int GROUPNUMBER_FIELD_NUMBER = 9;
  private int groupNumber_ = 0;
  /**
   * int32 groupNumber = 9;
   * @return The groupNumber.
   */
  @java.lang.Override
  public int getGroupNumber() {
    return groupNumber_;
  }

  public static final int ACCURACY_FIELD_NUMBER = 10;
  private int accuracy_ = 0;
  /**
   * int32 accuracy = 10;
   * @return The accuracy.
   */
  @java.lang.Override
  public int getAccuracy() {
    return accuracy_;
  }

  public static final int HEADING_FIELD_NUMBER = 50;
  private float heading_ = 0F;
  /**
   * float heading = 50;
   * @return The heading.
   */
  @java.lang.Override
  public float getHeading() {
    return heading_;
  }

  public static final int PITCH_FIELD_NUMBER = 51;
  private float pitch_ = 0F;
  /**
   * float pitch = 51;
   * @return The pitch.
   */
  @java.lang.Override
  public float getPitch() {
    return pitch_;
  }

  public static final int ROLL_FIELD_NUMBER = 52;
  private float roll_ = 0F;
  /**
   * float roll = 52;
   * @return The roll.
   */
  @java.lang.Override
  public float getRoll() {
    return roll_;
  }

  public static final int FIELDOFVIEW_FIELD_NUMBER = 53;
  private float fieldOfView_ = 0F;
  /**
   * float fieldOfView = 53;
   * @return The fieldOfView.
   */
  @java.lang.Override
  public float getFieldOfView() {
    return fieldOfView_;
  }

  public static final int RECEIVERSENSITIVITY_FIELD_NUMBER = 54;
  private float receiverSensitivity_ = 0F;
  /**
   * float receiverSensitivity = 54;
   * @return The receiverSensitivity.
   */
  @java.lang.Override
  public float getReceiverSensitivity() {
    return receiverSensitivity_;
  }

  public static final int SPEED_FIELD_NUMBER = 55;
  private float speed_ = 0F;
  /**
   * float speed = 55;
   * @return The speed.
   */
  @java.lang.Override
  public float getSpeed() {
    return speed_;
  }

  public static final int MCC_FIELD_NUMBER = 16;
  private com.google.protobuf.Int32Value mcc_;
  /**
   * .google.protobuf.Int32Value mcc = 16;
   * @return Whether the mcc field is set.
   */
  @java.lang.Override
  public boolean hasMcc() {
    return ((bitField0_ & 0x00000001) != 0);
  }
  /**
   * .google.protobuf.Int32Value mcc = 16;
   * @return The mcc.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getMcc() {
    return mcc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mcc_;
  }
  /**
   * .google.protobuf.Int32Value mcc = 16;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getMccOrBuilder() {
    return mcc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mcc_;
  }

  public static final int MNC_FIELD_NUMBER = 17;
  private com.google.protobuf.Int32Value mnc_;
  /**
   * .google.protobuf.Int32Value mnc = 17;
   * @return Whether the mnc field is set.
   */
  @java.lang.Override
  public boolean hasMnc() {
    return ((bitField0_ & 0x00000002) != 0);
  }
  /**
   * .google.protobuf.Int32Value mnc = 17;
   * @return The mnc.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getMnc() {
    return mnc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mnc_;
  }
  /**
   * .google.protobuf.Int32Value mnc = 17;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getMncOrBuilder() {
    return mnc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mnc_;
  }

  public static final int LAC_FIELD_NUMBER = 18;
  private com.google.protobuf.Int32Value lac_;
  /**
   * .google.protobuf.Int32Value lac = 18;
   * @return Whether the lac field is set.
   */
  @java.lang.Override
  public boolean hasLac() {
    return ((bitField0_ & 0x00000004) != 0);
  }
  /**
   * .google.protobuf.Int32Value lac = 18;
   * @return The lac.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getLac() {
    return lac_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : lac_;
  }
  /**
   * .google.protobuf.Int32Value lac = 18;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getLacOrBuilder() {
    return lac_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : lac_;
  }

  public static final int CI_FIELD_NUMBER = 19;
  private com.google.protobuf.Int32Value ci_;
  /**
   * .google.protobuf.Int32Value ci = 19;
   * @return Whether the ci field is set.
   */
  @java.lang.Override
  public boolean hasCi() {
    return ((bitField0_ & 0x00000008) != 0);
  }
  /**
   * .google.protobuf.Int32Value ci = 19;
   * @return The ci.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getCi() {
    return ci_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : ci_;
  }
  /**
   * .google.protobuf.Int32Value ci = 19;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getCiOrBuilder() {
    return ci_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : ci_;
  }

  public static final int ARFCN_FIELD_NUMBER = 20;
  private com.google.protobuf.Int32Value arfcn_;
  /**
   * .google.protobuf.Int32Value arfcn = 20;
   * @return Whether the arfcn field is set.
   */
  @java.lang.Override
  public boolean hasArfcn() {
    return ((bitField0_ & 0x00000010) != 0);
  }
  /**
   * .google.protobuf.Int32Value arfcn = 20;
   * @return The arfcn.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getArfcn() {
    return arfcn_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : arfcn_;
  }
  /**
   * .google.protobuf.Int32Value arfcn = 20;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getArfcnOrBuilder() {
    return arfcn_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : arfcn_;
  }

  public static final int BSIC_FIELD_NUMBER = 21;
  private com.google.protobuf.Int32Value bsic_;
  /**
   * .google.protobuf.Int32Value bsic = 21;
   * @return Whether the bsic field is set.
   */
  @java.lang.Override
  public boolean hasBsic() {
    return ((bitField0_ & 0x00000020) != 0);
  }
  /**
   * .google.protobuf.Int32Value bsic = 21;
   * @return The bsic.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getBsic() {
    return bsic_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : bsic_;
  }
  /**
   * .google.protobuf.Int32Value bsic = 21;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getBsicOrBuilder() {
    return bsic_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : bsic_;
  }

  public static final int SIGNALSTRENGTH_FIELD_NUMBER = 22;
  private com.google.protobuf.FloatValue signalStrength_;
  /**
   * .google.protobuf.FloatValue signalStrength = 22;
   * @return Whether the signalStrength field is set.
   */
  @java.lang.Override
  public boolean hasSignalStrength() {
    return ((bitField0_ & 0x00000040) != 0);
  }
  /**
   * .google.protobuf.FloatValue signalStrength = 22;
   * @return The signalStrength.
   */
  @java.lang.Override
  public com.google.protobuf.FloatValue getSignalStrength() {
    return signalStrength_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : signalStrength_;
  }
  /**
   * .google.protobuf.FloatValue signalStrength = 22;
   */
  @java.lang.Override
  public com.google.protobuf.FloatValueOrBuilder getSignalStrengthOrBuilder() {
    return signalStrength_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : signalStrength_;
  }

  public static final int TA_FIELD_NUMBER = 24;
  private com.google.protobuf.Int32Value ta_;
  /**
   * .google.protobuf.Int32Value ta = 24;
   * @return Whether the ta field is set.
   */
  @java.lang.Override
  public boolean hasTa() {
    return ((bitField0_ & 0x00000080) != 0);
  }
  /**
   * .google.protobuf.Int32Value ta = 24;
   * @return The ta.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getTa() {
    return ta_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : ta_;
  }
  /**
   * .google.protobuf.Int32Value ta = 24;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getTaOrBuilder() {
    return ta_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : ta_;
  }

  public static final int SERVINGCELL_FIELD_NUMBER = 25;
  private com.google.protobuf.BoolValue servingCell_;
  /**
   * .google.protobuf.BoolValue servingCell = 25;
   * @return Whether the servingCell field is set.
   */
  @java.lang.Override
  public boolean hasServingCell() {
    return ((bitField0_ & 0x00000100) != 0);
  }
  /**
   * .google.protobuf.BoolValue servingCell = 25;
   * @return The servingCell.
   */
  @java.lang.Override
  public com.google.protobuf.BoolValue getServingCell() {
    return servingCell_ == null ? com.google.protobuf.BoolValue.getDefaultInstance() : servingCell_;
  }
  /**
   * .google.protobuf.BoolValue servingCell = 25;
   */
  @java.lang.Override
  public com.google.protobuf.BoolValueOrBuilder getServingCellOrBuilder() {
    return servingCell_ == null ? com.google.protobuf.BoolValue.getDefaultInstance() : servingCell_;
  }

  public static final int PROVIDER_FIELD_NUMBER = 27;
  @SuppressWarnings("serial")
  private volatile java.lang.Object provider_ = "";
  /**
   * string provider = 27;
   * @return The provider.
   */
  @java.lang.Override
  public java.lang.String getProvider() {
    java.lang.Object ref = provider_;
    if (ref instanceof java.lang.String) {
      return (java.lang.String) ref;
    } else {
      com.google.protobuf.ByteString bs = 
          (com.google.protobuf.ByteString) ref;
      java.lang.String s = bs.toStringUtf8();
      provider_ = s;
      return s;
    }
  }
  /**
   * string provider = 27;
   * @return The bytes for provider.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getProviderBytes() {
    java.lang.Object ref = provider_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      provider_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int SLOT_FIELD_NUMBER = 28;
  private com.google.protobuf.Int32Value slot_;
  /**
   * .google.protobuf.Int32Value slot = 28;
   * @return Whether the slot field is set.
   */
  @java.lang.Override
  public boolean hasSlot() {
    return ((bitField0_ & 0x00000200) != 0);
  }
  /**
   * .google.protobuf.Int32Value slot = 28;
   * @return The slot.
   */
  @java.lang.Override
  public com.google.protobuf.Int32Value getSlot() {
    return slot_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : slot_;
  }
  /**
   * .google.protobuf.Int32Value slot = 28;
   */
  @java.lang.Override
  public com.google.protobuf.Int32ValueOrBuilder getSlotOrBuilder() {
    return slot_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : slot_;
  }

  private byte memoizedIsInitialized = -1;
  @java.lang.Override
  public final boolean isInitialized() {
    byte isInitialized = memoizedIsInitialized;
    if (isInitialized == 1) return true;
    if (isInitialized == 0) return false;

    memoizedIsInitialized = 1;
    return true;
  }

  @java.lang.Override
  public void writeTo(com.google.protobuf.CodedOutputStream output)
                      throws java.io.IOException {
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceSerialNumber_)) {
      com.google.protobuf.GeneratedMessage.writeString(output, 1, deviceSerialNumber_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceName_)) {
      com.google.protobuf.GeneratedMessage.writeString(output, 2, deviceName_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceTime_)) {
      com.google.protobuf.GeneratedMessage.writeString(output, 3, deviceTime_);
    }
    if (java.lang.Double.doubleToRawLongBits(latitude_) != 0) {
      output.writeDouble(4, latitude_);
    }
    if (java.lang.Double.doubleToRawLongBits(longitude_) != 0) {
      output.writeDouble(5, longitude_);
    }
    if (java.lang.Float.floatToRawIntBits(altitude_) != 0) {
      output.writeFloat(6, altitude_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(missionId_)) {
      com.google.protobuf.GeneratedMessage.writeString(output, 7, missionId_);
    }
    if (recordNumber_ != 0) {
      output.writeInt32(8, recordNumber_);
    }
    if (groupNumber_ != 0) {
      output.writeInt32(9, groupNumber_);
    }
    if (accuracy_ != 0) {
      output.writeInt32(10, accuracy_);
    }
    if (((bitField0_ & 0x00000001) != 0)) {
      output.writeMessage(16, getMcc());
    }
    if (((bitField0_ & 0x00000002) != 0)) {
      output.writeMessage(17, getMnc());
    }
    if (((bitField0_ & 0x00000004) != 0)) {
      output.writeMessage(18, getLac());
    }
    if (((bitField0_ & 0x00000008) != 0)) {
      output.writeMessage(19, getCi());
    }
    if (((bitField0_ & 0x00000010) != 0)) {
      output.writeMessage(20, getArfcn());
    }
    if (((bitField0_ & 0x00000020) != 0)) {
      output.writeMessage(21, getBsic());
    }
    if (((bitField0_ & 0x00000040) != 0)) {
      output.writeMessage(22, getSignalStrength());
    }
    if (((bitField0_ & 0x00000080) != 0)) {
      output.writeMessage(24, getTa());
    }
    if (((bitField0_ & 0x00000100) != 0)) {
      output.writeMessage(25, getServingCell());
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(provider_)) {
      com.google.protobuf.GeneratedMessage.writeString(output, 27, provider_);
    }
    if (((bitField0_ & 0x00000200) != 0)) {
      output.writeMessage(28, getSlot());
    }
    if (java.lang.Float.floatToRawIntBits(heading_) != 0) {
      output.writeFloat(50, heading_);
    }
    if (java.lang.Float.floatToRawIntBits(pitch_) != 0) {
      output.writeFloat(51, pitch_);
    }
    if (java.lang.Float.floatToRawIntBits(roll_) != 0) {
      output.writeFloat(52, roll_);
    }
    if (java.lang.Float.floatToRawIntBits(fieldOfView_) != 0) {
      output.writeFloat(53, fieldOfView_);
    }
    if (java.lang.Float.floatToRawIntBits(receiverSensitivity_) != 0) {
      output.writeFloat(54, receiverSensitivity_);
    }
    if (java.lang.Float.floatToRawIntBits(speed_) != 0) {
      output.writeFloat(55, speed_);
    }
    getUnknownFields().writeTo(output);
  }

  @java.lang.Override
  public int getSerializedSize() {
    int size = memoizedSize;
    if (size != -1) return size;

    size = 0;
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceSerialNumber_)) {
      size += com.google.protobuf.GeneratedMessage.computeStringSize(1, deviceSerialNumber_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceName_)) {
      size += com.google.protobuf.GeneratedMessage.computeStringSize(2, deviceName_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(deviceTime_)) {
      size += com.google.protobuf.GeneratedMessage.computeStringSize(3, deviceTime_);
    }
    if (java.lang.Double.doubleToRawLongBits(latitude_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeDoubleSize(4, latitude_);
    }
    if (java.lang.Double.doubleToRawLongBits(longitude_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeDoubleSize(5, longitude_);
    }
    if (java.lang.Float.floatToRawIntBits(altitude_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(6, altitude_);
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(missionId_)) {
      size += com.google.protobuf.GeneratedMessage.computeStringSize(7, missionId_);
    }
    if (recordNumber_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(8, recordNumber_);
    }
    if (groupNumber_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(9, groupNumber_);
    }
    if (accuracy_ != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(10, accuracy_);
    }
    if (((bitField0_ & 0x00000001) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(16, getMcc());
    }
    if (((bitField0_ & 0x00000002) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(17, getMnc());
    }
    if (((bitField0_ & 0x00000004) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(18, getLac());
    }
    if (((bitField0_ & 0x00000008) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(19, getCi());
    }
    if (((bitField0_ & 0x00000010) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(20, getArfcn());
    }
    if (((bitField0_ & 0x00000020) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(21, getBsic());
    }
    if (((bitField0_ & 0x00000040) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(22, getSignalStrength());
    }
    if (((bitField0_ & 0x00000080) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(24, getTa());
    }
    if (((bitField0_ & 0x00000100) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(25, getServingCell());
    }
    if (!com.google.protobuf.GeneratedMessage.isStringEmpty(provider_)) {
      size += com.google.protobuf.GeneratedMessage.computeStringSize(27, provider_);
    }
    if (((bitField0_ & 0x00000200) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(28, getSlot());
    }
    if (java.lang.Float.floatToRawIntBits(heading_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(50, heading_);
    }
    if (java.lang.Float.floatToRawIntBits(pitch_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(51, pitch_);
    }
    if (java.lang.Float.floatToRawIntBits(roll_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(52, roll_);
    }
    if (java.lang.Float.floatToRawIntBits(fieldOfView_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(53, fieldOfView_);
    }
    if (java.lang.Float.floatToRawIntBits(receiverSensitivity_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(54, receiverSensitivity_);
    }
    if (java.lang.Float.floatToRawIntBits(speed_) != 0) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(55, speed_);
    }
    size += getUnknownFields().getSerializedSize();
    memoizedSize = size;
    return size;
  }

  @java.lang.Override
  public boolean equals(final java.lang.Object obj) {
    if (obj == this) {
     return true;
    }
    if (!(obj instanceof com.craxiom.messaging.GsmRecordData)) {
      return super.equals(obj);
    }
    com.craxiom.messaging.GsmRecordData other = (com.craxiom.messaging.GsmRecordData) obj;

    if (!getDeviceSerialNumber()
        .equals(other.getDeviceSerialNumber())) return false;
    if (!getDeviceName()
        .equals(other.getDeviceName())) return false;
    if (!getDeviceTime()
        .equals(other.getDeviceTime())) return false;
    if (java.lang.Double.doubleToLongBits(getLatitude())
        != java.lang.Double.doubleToLongBits(
            other.getLatitude())) return false;
    if (java.lang.Double.doubleToLongBits(getLongitude())
        != java.lang.Double.doubleToLongBits(
            other.getLongitude())) return false;
    if (java.lang.Float.floatToIntBits(getAltitude())
        != java.lang.Float.floatToIntBits(
            other.getAltitude())) return false;
    if (!getMissionId()
        .equals(other.getMissionId())) return false;
    if (getRecordNumber()
        != other.getRecordNumber()) return false;
    if (getGroupNumber()
        != other.getGroupNumber()) return false;
    if (getAccuracy()
        != other.getAccuracy()) return false;
    if (java.lang.Float.floatToIntBits(getHeading())
        != java.lang.Float.floatToIntBits(
            other.getHeading())) return false;
    if (java.lang.Float.floatToIntBits(getPitch())
        != java.lang.Float.floatToIntBits(
            other.getPitch())) return false;
    if (java.lang.Float.floatToIntBits(getRoll())
        != java.lang.Float.floatToIntBits(
            other.getRoll())) return false;
    if (java.lang.Float.floatToIntBits(getFieldOfView())
        != java.lang.Float.floatToIntBits(
            other.getFieldOfView())) return false;
    if (java.lang.Float.floatToIntBits(getReceiverSensitivity())
        != java.lang.Float.floatToIntBits(
            other.getReceiverSensitivity())) return false;
    if (java.lang.Float.floatToIntBits(getSpeed())
        != java.lang.Float.floatToIntBits(
            other.getSpeed())) return false;
    if (hasMcc() != other.hasMcc()) return false;
    if (hasMcc()) {
      if (!getMcc()
          .equals(other.getMcc())) return false;
    }
    if (hasMnc() != other.hasMnc()) return false;
    if (hasMnc()) {
      if (!getMnc()
          .equals(other.getMnc())) return false;
    }
    if (hasLac() != other.hasLac()) return false;
    if (hasLac()) {
      if (!getLac()
          .equals(other.getLac())) return false;
    }
    if (hasCi() != other.hasCi()) return false;
    if (hasCi()) {
      if (!getCi()
          .equals(other.getCi())) return false;
    }
    if (hasArfcn() != other.hasArfcn()) return false;
    if (hasArfcn()) {
      if (!getArfcn()
          .equals(other.getArfcn())) return false;
    }
    if (hasBsic() != other.hasBsic()) return false;
    if (hasBsic()) {
      if (!getBsic()
          .equals(other.getBsic())) return false;
    }
    if (hasSignalStrength() != other.hasSignalStrength()) return false;
    if (hasSignalStrength()) {
      if (!getSignalStrength()
          .equals(other.getSignalStrength())) return false;
    }
    if (hasTa() != other.hasTa()) return false;
    if (hasTa()) {
      if (!getTa()
          .equals(other.getTa())) return false;
    }
    if (hasServingCell() != other.hasServingCell()) return false;
    if (hasServingCell()) {
      if (!getServingCell()
          .equals(other.getServingCell())) return false;
    }
    if (!getProvider()
        .equals(other.getProvider())) return false;
    if (hasSlot() != other.hasSlot()) return false;
    if (hasSlot()) {
      if (!getSlot()
          .equals(other.getSlot())) return false;
    }
    if (!getUnknownFields().equals(other.getUnknownFields())) return false;
    return true;
  }

  @java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    hash = (37 * hash) + DEVICESERIALNUMBER_FIELD_NUMBER;
    hash = (53 * hash) + getDeviceSerialNumber().hashCode();
    hash = (37 * hash) + DEVICENAME_FIELD_NUMBER;
    hash = (53 * hash) + getDeviceName().hashCode();
    hash = (37 * hash) + DEVICETIME_FIELD_NUMBER;
    hash = (53 * hash) + getDeviceTime().hashCode();
    hash = (37 * hash) + LATITUDE_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        java.lang.Double.doubleToLongBits(getLatitude()));
    hash = (37 * hash) + LONGITUDE_FIELD_NUMBER;
    hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
        java.lang.Double.doubleToLongBits(getLongitude()));
    hash = (37 * hash) + ALTITUDE_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getAltitude());
    hash = (37 * hash) + MISSIONID_FIELD_NUMBER;
    hash = (53 * hash) + getMissionId().hashCode();
    hash = (37 * hash) + RECORDNUMBER_FIELD_NUMBER;
    hash = (53 * hash) + getRecordNumber();
    hash = (37 * hash) + GROUPNUMBER_FIELD_NUMBER;
    hash = (53 * hash) + getGroupNumber();
    hash = (37 * hash) + ACCURACY_FIELD_NUMBER;
    hash = (53 * hash) + getAccuracy();
    hash = (37 * hash) + HEADING_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getHeading());
    hash = (37 * hash) + PITCH_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getPitch());
    hash = (37 * hash) + ROLL_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getRoll());
    hash = (37 * hash) + FIELDOFVIEW_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getFieldOfView());
    hash = (37 * hash) + RECEIVERSENSITIVITY_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getReceiverSensitivity());
    hash = (37 * hash) + SPEED_FIELD_NUMBER;
    hash = (53 * hash) + java.lang.Float.floatToIntBits(
        getSpeed());
    if (hasMcc()) {
      hash = (37 * hash) + MCC_FIELD_NUMBER;
      hash = (53 * hash) + getMcc().hashCode();
    }
    if (hasMnc()) {
      hash = (37 * hash) + MNC_FIELD_NUMBER;
      hash = (53 * hash) + getMnc().hashCode();
    }
    if (hasLac()) {
      hash = (37 * hash) + LAC_FIELD_NUMBER;
      hash = (53 * hash) + getLac().hashCode();
    }
    if (hasCi()) {
      hash = (37 * hash) + CI_FIELD_NUMBER;
      hash = (53 * hash) + getCi().hashCode();
    }
    if (hasArfcn()) {
      hash = (37 * hash) + ARFCN_FIELD_NUMBER;
      hash = (53 * hash) + getArfcn().hashCode();
    }
    if (hasBsic()) {
      hash = (37 * hash) + BSIC_FIELD_NUMBER;
      hash = (53 * hash) + getBsic().hashCode();
    }
    if (hasSignalStrength()) {
      hash = (37 * hash) + SIGNALSTRENGTH_FIELD_NUMBER;
      hash = (53 * hash) + getSignalStrength().hashCode();
    }
    if (hasTa()) {
      hash = (37 * hash) + TA_FIELD_NUMBER;
      hash = (53 * hash) + getTa().hashCode();
    }
    if (hasServingCell()) {
      hash = (37 * hash) + SERVINGCELL_FIELD_NUMBER;
      hash = (53 * hash) + getServingCell().hashCode();
    }
    hash = (37 * hash) + PROVIDER_FIELD_NUMBER;
    hash = (53 * hash) + getProvider().hashCode();
    if (hasSlot()) {
      hash = (37 * hash) + SLOT_FIELD_NUMBER;
      hash = (53 * hash) + getSlot().hashCode();
    }
    hash = (29 * hash) + getUnknownFields().hashCode();
    memoizedHashCode = hash;
    return hash;
  }

  public static com.craxiom.messaging.GsmRecordData parseFrom(
      java.nio.ByteBuffer data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.craxiom.messaging.GsmRecordData parseFrom(
      java.nio.ByteBuffer data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.craxiom.messaging.GsmRecordData parseFrom(
      com.google.protobuf.ByteString data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.craxiom.messaging.GsmRecordData parseFrom(
      com.google.protobuf.ByteString data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.craxiom.messaging.GsmRecordData parseFrom(byte[] data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static com.craxiom.messaging.GsmRecordData parseFrom(
      byte[] data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static com.craxiom.messaging.GsmRecordData parseFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseWithIOException(PARSER, input);
  }
  public static com.craxiom.messaging.GsmRecordData parseFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  public static com.craxiom.messaging.GsmRecordData parseDelimitedFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseDelimitedWithIOException(PARSER, input);
  }

  public static com.craxiom.messaging.GsmRecordData parseDelimitedFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
  }
  public static com.craxiom.messaging.GsmRecordData parseFrom(
      com.google.protobuf.CodedInputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseWithIOException(PARSER, input);
  }
  public static com.craxiom.messaging.GsmRecordData parseFrom(
      com.google.protobuf.CodedInputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessage
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  @java.lang.Override
  public Builder newBuilderForType() { return newBuilder(); }
  public static Builder newBuilder() {
    return DEFAULT_INSTANCE.toBuilder();
  }
  public static Builder newBuilder(com.craxiom.messaging.GsmRecordData prototype) {
    return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
  }
  @java.lang.Override
  public Builder toBuilder() {
    return this == DEFAULT_INSTANCE
        ? new Builder() : new Builder().mergeFrom(this);
  }

  @java.lang.Override
  protected Builder newBuilderForType(
      com.google.protobuf.GeneratedMessage.BuilderParent parent) {
    Builder builder = new Builder(parent);
    return builder;
  }
  /**
   * Protobuf type {@code com.craxiom.messaging.GsmRecordData}
   */
  public static final class Builder extends
      com.google.protobuf.GeneratedMessage.Builder implements
      // @@protoc_insertion_point(builder_implements:com.craxiom.messaging.GsmRecordData)
      com.craxiom.messaging.GsmRecordDataOrBuilder {
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.craxiom.messaging.GsmRecordOuterClass.internal_static_com_craxiom_messaging_GsmRecordData_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.craxiom.messaging.GsmRecordOuterClass.internal_static_com_craxiom_messaging_GsmRecordData_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.craxiom.messaging.GsmRecordData.class, com.craxiom.messaging.GsmRecordData.Builder.class);
    }

    // Construct using com.craxiom.messaging.GsmRecordData.newBuilder()
    private Builder() {
      maybeForceBuilderInitialization();
    }

    private Builder(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      super(parent);
      maybeForceBuilderInitialization();
    }
    private void maybeForceBuilderInitialization() {
      if (com.google.protobuf.GeneratedMessage
              .alwaysUseFieldBuilders) {
        getMccFieldBuilder();
        getMncFieldBuilder();
        getLacFieldBuilder();
        getCiFieldBuilder();
        getArfcnFieldBuilder();
        getBsicFieldBuilder();
        getSignalStrengthFieldBuilder();
        getTaFieldBuilder();
        getServingCellFieldBuilder();
        getSlotFieldBuilder();
      }
    }
    @java.lang.Override
    public Builder clear() {
      super.clear();
      bitField0_ = 0;
      deviceSerialNumber_ = "";
      deviceName_ = "";
      deviceTime_ = "";
      latitude_ = 0D;
      longitude_ = 0D;
      altitude_ = 0F;
      missionId_ = "";
      recordNumber_ = 0;
      groupNumber_ = 0;
      accuracy_ = 0;
      heading_ = 0F;
      pitch_ = 0F;
      roll_ = 0F;
      fieldOfView_ = 0F;
      receiverSensitivity_ = 0F;
      speed_ = 0F;
      mcc_ = null;
      if (mccBuilder_ != null) {
        mccBuilder_.dispose();
        mccBuilder_ = null;
      }
      mnc_ = null;
      if (mncBuilder_ != null) {
        mncBuilder_.dispose();
        mncBuilder_ = null;
      }
      lac_ = null;
      if (lacBuilder_ != null) {
        lacBuilder_.dispose();
        lacBuilder_ = null;
      }
      ci_ = null;
      if (ciBuilder_ != null) {
        ciBuilder_.dispose();
        ciBuilder_ = null;
      }
      arfcn_ = null;
      if (arfcnBuilder_ != null) {
        arfcnBuilder_.dispose();
        arfcnBuilder_ = null;
      }
      bsic_ = null;
      if (bsicBuilder_ != null) {
        bsicBuilder_.dispose();
        bsicBuilder_ = null;
      }
      signalStrength_ = null;
      if (signalStrengthBuilder_ != null) {
        signalStrengthBuilder_.dispose();
        signalStrengthBuilder_ = null;
      }
      ta_ = null;
      if (taBuilder_ != null) {
        taBuilder_.dispose();
        taBuilder_ = null;
      }
      servingCell_ = null;
      if (servingCellBuilder_ != null) {
        servingCellBuilder_.dispose();
        servingCellBuilder_ = null;
      }
      provider_ = "";
      slot_ = null;
      if (slotBuilder_ != null) {
        slotBuilder_.dispose();
        slotBuilder_ = null;
      }
      return this;
    }

    @java.lang.Override
    public com.google.protobuf.Descriptors.Descriptor
        getDescriptorForType() {
      return com.craxiom.messaging.GsmRecordOuterClass.internal_static_com_craxiom_messaging_GsmRecordData_descriptor;
    }

    @java.lang.Override
    public com.craxiom.messaging.GsmRecordData getDefaultInstanceForType() {
      return com.craxiom.messaging.GsmRecordData.getDefaultInstance();
    }

    @java.lang.Override
    public com.craxiom.messaging.GsmRecordData build() {
      com.craxiom.messaging.GsmRecordData result = buildPartial();
      if (!result.isInitialized()) {
        throw newUninitializedMessageException(result);
      }
      return result;
    }

    @java.lang.Override
    public com.craxiom.messaging.GsmRecordData buildPartial() {
      com.craxiom.messaging.GsmRecordData result = new com.craxiom.messaging.GsmRecordData(this);
      if (bitField0_ != 0) { buildPartial0(result); }
      onBuilt();
      return result;
    }

    private void buildPartial0(com.craxiom.messaging.GsmRecordData result) {
      int from_bitField0_ = bitField0_;
      if (((from_bitField0_ & 0x00000001) != 0)) {
        result.deviceSerialNumber_ = deviceSerialNumber_;
      }
      if (((from_bitField0_ & 0x00000002) != 0)) {
        result.deviceName_ = deviceName_;
      }
      if (((from_bitField0_ & 0x00000004) != 0)) {
        result.deviceTime_ = deviceTime_;
      }
      if (((from_bitField0_ & 0x00000008) != 0)) {
        result.latitude_ = latitude_;
      }
      if (((from_bitField0_ & 0x00000010) != 0)) {
        result.longitude_ = longitude_;
      }
      if (((from_bitField0_ & 0x00000020) != 0)) {
        result.altitude_ = altitude_;
      }
      if (((from_bitField0_ & 0x00000040) != 0)) {
        result.missionId_ = missionId_;
      }
      if (((from_bitField0_ & 0x00000080) != 0)) {
        result.recordNumber_ = recordNumber_;
      }
      if (((from_bitField0_ & 0x00000100) != 0)) {
        result.groupNumber_ = groupNumber_;
      }
      if (((from_bitField0_ & 0x00000200) != 0)) {
        result.accuracy_ = accuracy_;
      }
      if (((from_bitField0_ & 0x00000400) != 0)) {
        result.heading_ = heading_;
      }
      if (((from_bitField0_ & 0x00000800) != 0)) {
        result.pitch_ = pitch_;
      }
      if (((from_bitField0_ & 0x00001000) != 0)) {
        result.roll_ = roll_;
      }
      if (((from_bitField0_ & 0x00002000) != 0)) {
        result.fieldOfView_ = fieldOfView_;
      }
      if (((from_bitField0_ & 0x00004000) != 0)) {
        result.receiverSensitivity_ = receiverSensitivity_;
      }
      if (((from_bitField0_ & 0x00008000) != 0)) {
        result.speed_ = speed_;
      }
      int to_bitField0_ = 0;
      if (((from_bitField0_ & 0x00010000) != 0)) {
        result.mcc_ = mccBuilder_ == null
            ? mcc_
            : mccBuilder_.build();
        to_bitField0_ |= 0x00000001;
      }
      if (((from_bitField0_ & 0x00020000) != 0)) {
        result.mnc_ = mncBuilder_ == null
            ? mnc_
            : mncBuilder_.build();
        to_bitField0_ |= 0x00000002;
      }
      if (((from_bitField0_ & 0x00040000) != 0)) {
        result.lac_ = lacBuilder_ == null
            ? lac_
            : lacBuilder_.build();
        to_bitField0_ |= 0x00000004;
      }
      if (((from_bitField0_ & 0x00080000) != 0)) {
        result.ci_ = ciBuilder_ == null
            ? ci_
            : ciBuilder_.build();
        to_bitField0_ |= 0x00000008;
      }
      if (((from_bitField0_ & 0x00100000) != 0)) {
        result.arfcn_ = arfcnBuilder_ == null
            ? arfcn_
            : arfcnBuilder_.build();
        to_bitField0_ |= 0x00000010;
      }
      if (((from_bitField0_ & 0x00200000) != 0)) {
        result.bsic_ = bsicBuilder_ == null
            ? bsic_
            : bsicBuilder_.build();
        to_bitField0_ |= 0x00000020;
      }
      if (((from_bitField0_ & 0x00400000) != 0)) {
        result.signalStrength_ = signalStrengthBuilder_ == null
            ? signalStrength_
            : signalStrengthBuilder_.build();
        to_bitField0_ |= 0x00000040;
      }
      if (((from_bitField0_ & 0x00800000) != 0)) {
        result.ta_ = taBuilder_ == null
            ? ta_
            : taBuilder_.build();
        to_bitField0_ |= 0x00000080;
      }
      if (((from_bitField0_ & 0x01000000) != 0)) {
        result.servingCell_ = servingCellBuilder_ == null
            ? servingCell_
            : servingCellBuilder_.build();
        to_bitField0_ |= 0x00000100;
      }
      if (((from_bitField0_ & 0x02000000) != 0)) {
        result.provider_ = provider_;
      }
      if (((from_bitField0_ & 0x04000000) != 0)) {
        result.slot_ = slotBuilder_ == null
            ? slot_
            : slotBuilder_.build();
        to_bitField0_ |= 0x00000200;
      }
      result.bitField0_ |= to_bitField0_;
    }

    @java.lang.Override
    public Builder mergeFrom(com.google.protobuf.Message other) {
      if (other instanceof com.craxiom.messaging.GsmRecordData) {
        return mergeFrom((com.craxiom.messaging.GsmRecordData)other);
      } else {
        super.mergeFrom(other);
        return this;
      }
    }

    public Builder mergeFrom(com.craxiom.messaging.GsmRecordData other) {
      if (other == com.craxiom.messaging.GsmRecordData.getDefaultInstance()) return this;
      if (!other.getDeviceSerialNumber().isEmpty()) {
        deviceSerialNumber_ = other.deviceSerialNumber_;
        bitField0_ |= 0x00000001;
        onChanged();
      }
      if (!other.getDeviceName().isEmpty()) {
        deviceName_ = other.deviceName_;
        bitField0_ |= 0x00000002;
        onChanged();
      }
      if (!other.getDeviceTime().isEmpty()) {
        deviceTime_ = other.deviceTime_;
        bitField0_ |= 0x00000004;
        onChanged();
      }
      if (other.getLatitude() != 0D) {
        setLatitude(other.getLatitude());
      }
      if (other.getLongitude() != 0D) {
        setLongitude(other.getLongitude());
      }
      if (other.getAltitude() != 0F) {
        setAltitude(other.getAltitude());
      }
      if (!other.getMissionId().isEmpty()) {
        missionId_ = other.missionId_;
        bitField0_ |= 0x00000040;
        onChanged();
      }
      if (other.getRecordNumber() != 0) {
        setRecordNumber(other.getRecordNumber());
      }
      if (other.getGroupNumber() != 0) {
        setGroupNumber(other.getGroupNumber());
      }
      if (other.getAccuracy() != 0) {
        setAccuracy(other.getAccuracy());
      }
      if (other.getHeading() != 0F) {
        setHeading(other.getHeading());
      }
      if (other.getPitch() != 0F) {
        setPitch(other.getPitch());
      }
      if (other.getRoll() != 0F) {
        setRoll(other.getRoll());
      }
      if (other.getFieldOfView() != 0F) {
        setFieldOfView(other.getFieldOfView());
      }
      if (other.getReceiverSensitivity() != 0F) {
        setReceiverSensitivity(other.getReceiverSensitivity());
      }
      if (other.getSpeed() != 0F) {
        setSpeed(other.getSpeed());
      }
      if (other.hasMcc()) {
        mergeMcc(other.getMcc());
      }
      if (other.hasMnc()) {
        mergeMnc(other.getMnc());
      }
      if (other.hasLac()) {
        mergeLac(other.getLac());
      }
      if (other.hasCi()) {
        mergeCi(other.getCi());
      }
      if (other.hasArfcn()) {
        mergeArfcn(other.getArfcn());
      }
      if (other.hasBsic()) {
        mergeBsic(other.getBsic());
      }
      if (other.hasSignalStrength()) {
        mergeSignalStrength(other.getSignalStrength());
      }
      if (other.hasTa()) {
        mergeTa(other.getTa());
      }
      if (other.hasServingCell()) {
        mergeServingCell(other.getServingCell());
      }
      if (!other.getProvider().isEmpty()) {
        provider_ = other.provider_;
        bitField0_ |= 0x02000000;
        onChanged();
      }
      if (other.hasSlot()) {
        mergeSlot(other.getSlot());
      }
      this.mergeUnknownFields(other.getUnknownFields());
      onChanged();
      return this;
    }

    @java.lang.Override
    public final boolean isInitialized() {
      return true;
    }

    @java.lang.Override
    public Builder mergeFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              deviceSerialNumber_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000001;
              break;
            } // case 10
            case 18: {
              deviceName_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000002;
              break;
            } // case 18
            case 26: {
              deviceTime_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000004;
              break;
            } // case 26
            case 33: {
              latitude_ = input.readDouble();
              bitField0_ |= 0x00000008;
              break;
            } // case 33
            case 41: {
              longitude_ = input.readDouble();
              bitField0_ |= 0x00000010;
              break;
            } // case 41
            case 53: {
              altitude_ = input.readFloat();
              bitField0_ |= 0x00000020;
              break;
            } // case 53
            case 58: {
              missionId_ = input.readStringRequireUtf8();
              bitField0_ |= 0x00000040;
              break;
            } // case 58
            case 64: {
              recordNumber_ = input.readInt32();
              bitField0_ |= 0x00000080;
              break;
            } // case 64
            case 72: {
              groupNumber_ = input.readInt32();
              bitField0_ |= 0x00000100;
              break;
            } // case 72
            case 80: {
              accuracy_ = input.readInt32();
              bitField0_ |= 0x00000200;
              break;
            } // case 80
            case 130: {
              input.readMessage(
                  getMccFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00010000;
              break;
            } // case 130
            case 138: {
              input.readMessage(
                  getMncFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00020000;
              break;
            } // case 138
            case 146: {
              input.readMessage(
                  getLacFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00040000;
              break;
            } // case 146
            case 154: {
              input.readMessage(
                  getCiFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00080000;
              break;
            } // case 154
            case 162: {
              input.readMessage(
                  getArfcnFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00100000;
              break;
            } // case 162
            case 170: {
              input.readMessage(
                  getBsicFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00200000;
              break;
            } // case 170
            case 178: {
              input.readMessage(
                  getSignalStrengthFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00400000;
              break;
            } // case 178
            case 194: {
              input.readMessage(
                  getTaFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x00800000;
              break;
            } // case 194
            case 202: {
              input.readMessage(
                  getServingCellFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x01000000;
              break;
            } // case 202
            case 218: {
              provider_ = input.readStringRequireUtf8();
              bitField0_ |= 0x02000000;
              break;
            } // case 218
            case 226: {
              input.readMessage(
                  getSlotFieldBuilder().getBuilder(),
                  extensionRegistry);
              bitField0_ |= 0x04000000;
              break;
            } // case 226
            case 405: {
              heading_ = input.readFloat();
              bitField0_ |= 0x00000400;
              break;
            } // case 405
            case 413: {
              pitch_ = input.readFloat();
              bitField0_ |= 0x00000800;
              break;
            } // case 413
            case 421: {
              roll_ = input.readFloat();
              bitField0_ |= 0x00001000;
              break;
            } // case 421
            case 429: {
              fieldOfView_ = input.readFloat();
              bitField0_ |= 0x00002000;
              break;
            } // case 429
            case 437: {
              receiverSensitivity_ = input.readFloat();
              bitField0_ |= 0x00004000;
              break;
            } // case 437
            case 445: {
              speed_ = input.readFloat();
              bitField0_ |= 0x00008000;
              break;
            } // case 445
            default: {
              if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                done = true; // was an endgroup tag
              }
              break;
            } // default:
          } // switch (tag)
        } // while (!done)
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.unwrapIOException();
      } finally {
        onChanged();
      } // finally
      return this;
    }
    private int bitField0_;

    private java.lang.Object deviceSerialNumber_ = "";
    /**
     * string deviceSerialNumber = 1;
     * @return The deviceSerialNumber.
     */
    public java.lang.String getDeviceSerialNumber() {
      java.lang.Object ref = deviceSerialNumber_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        deviceSerialNumber_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string deviceSerialNumber = 1;
     * @return The bytes for deviceSerialNumber.
     */
    public com.google.protobuf.ByteString
        getDeviceSerialNumberBytes() {
      java.lang.Object ref = deviceSerialNumber_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        deviceSerialNumber_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * string deviceSerialNumber = 1;
     * @param value The deviceSerialNumber to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceSerialNumber(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      deviceSerialNumber_ = value;
      bitField0_ |= 0x00000001;
      onChanged();
      return this;
    }
    /**
     * string deviceSerialNumber = 1;
     * @return This builder for chaining.
     */
    public Builder clearDeviceSerialNumber() {
      deviceSerialNumber_ = getDefaultInstance().getDeviceSerialNumber();
      bitField0_ = (bitField0_ & ~0x00000001);
      onChanged();
      return this;
    }
    /**
     * string deviceSerialNumber = 1;
     * @param value The bytes for deviceSerialNumber to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceSerialNumberBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      deviceSerialNumber_ = value;
      bitField0_ |= 0x00000001;
      onChanged();
      return this;
    }

    private java.lang.Object deviceName_ = "";
    /**
     * string deviceName = 2;
     * @return The deviceName.
     */
    public java.lang.String getDeviceName() {
      java.lang.Object ref = deviceName_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        deviceName_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string deviceName = 2;
     * @return The bytes for deviceName.
     */
    public com.google.protobuf.ByteString
        getDeviceNameBytes() {
      java.lang.Object ref = deviceName_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        deviceName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * string deviceName = 2;
     * @param value The deviceName to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceName(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      deviceName_ = value;
      bitField0_ |= 0x00000002;
      onChanged();
      return this;
    }
    /**
     * string deviceName = 2;
     * @return This builder for chaining.
     */
    public Builder clearDeviceName() {
      deviceName_ = getDefaultInstance().getDeviceName();
      bitField0_ = (bitField0_ & ~0x00000002);
      onChanged();
      return this;
    }
    /**
     * string deviceName = 2;
     * @param value The bytes for deviceName to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceNameBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      deviceName_ = value;
      bitField0_ |= 0x00000002;
      onChanged();
      return this;
    }

    private java.lang.Object deviceTime_ = "";
    /**
     * string deviceTime = 3;
     * @return The deviceTime.
     */
    public java.lang.String getDeviceTime() {
      java.lang.Object ref = deviceTime_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        deviceTime_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string deviceTime = 3;
     * @return The bytes for deviceTime.
     */
    public com.google.protobuf.ByteString
        getDeviceTimeBytes() {
      java.lang.Object ref = deviceTime_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        deviceTime_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * string deviceTime = 3;
     * @param value The deviceTime to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceTime(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      deviceTime_ = value;
      bitField0_ |= 0x00000004;
      onChanged();
      return this;
    }
    /**
     * string deviceTime = 3;
     * @return This builder for chaining.
     */
    public Builder clearDeviceTime() {
      deviceTime_ = getDefaultInstance().getDeviceTime();
      bitField0_ = (bitField0_ & ~0x00000004);
      onChanged();
      return this;
    }
    /**
     * string deviceTime = 3;
     * @param value The bytes for deviceTime to set.
     * @return This builder for chaining.
     */
    public Builder setDeviceTimeBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      deviceTime_ = value;
      bitField0_ |= 0x00000004;
      onChanged();
      return this;
    }

    private double latitude_ ;
    /**
     * double latitude = 4;
     * @return The latitude.
     */
    @java.lang.Override
    public double getLatitude() {
      return latitude_;
    }
    /**
     * double latitude = 4;
     * @param value The latitude to set.
     * @return This builder for chaining.
     */
    public Builder setLatitude(double value) {

      latitude_ = value;
      bitField0_ |= 0x00000008;
      onChanged();
      return this;
    }
    /**
     * double latitude = 4;
     * @return This builder for chaining.
     */
    public Builder clearLatitude() {
      bitField0_ = (bitField0_ & ~0x00000008);
      latitude_ = 0D;
      onChanged();
      return this;
    }

    private double longitude_ ;
    /**
     * double longitude = 5;
     * @return The longitude.
     */
    @java.lang.Override
    public double getLongitude() {
      return longitude_;
    }
    /**
     * double longitude = 5;
     * @param value The longitude to set.
     * @return This builder for chaining.
     */
    public Builder setLongitude(double value) {

      longitude_ = value;
      bitField0_ |= 0x00000010;
      onChanged();
      return this;
    }
    /**
     * double longitude = 5;
     * @return This builder for chaining.
     */
    public Builder clearLongitude() {
      bitField0_ = (bitField0_ & ~0x00000010);
      longitude_ = 0D;
      onChanged();
      return this;
    }

    private float altitude_ ;
    /**
     * float altitude = 6;
     * @return The altitude.
     */
    @java.lang.Override
    public float getAltitude() {
      return altitude_;
    }
    /**
     * float altitude = 6;
     * @param value The altitude to set.
     * @return This builder for chaining.
     */
    public Builder setAltitude(float value) {

      altitude_ = value;
      bitField0_ |= 0x00000020;
      onChanged();
      return this;
    }
    /**
     * float altitude = 6;
     * @return This builder for chaining.
     */
    public Builder clearAltitude() {
      bitField0_ = (bitField0_ & ~0x00000020);
      altitude_ = 0F;
      onChanged();
      return this;
    }

    private java.lang.Object missionId_ = "";
    /**
     * string missionId = 7;
     * @return The missionId.
     */
    public java.lang.String getMissionId() {
      java.lang.Object ref = missionId_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        missionId_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string missionId = 7;
     * @return The bytes for missionId.
     */
    public com.google.protobuf.ByteString
        getMissionIdBytes() {
      java.lang.Object ref = missionId_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        missionId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * string missionId = 7;
     * @param value The missionId to set.
     * @return This builder for chaining.
     */
    public Builder setMissionId(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      missionId_ = value;
      bitField0_ |= 0x00000040;
      onChanged();
      return this;
    }
    /**
     * string missionId = 7;
     * @return This builder for chaining.
     */
    public Builder clearMissionId() {
      missionId_ = getDefaultInstance().getMissionId();
      bitField0_ = (bitField0_ & ~0x00000040);
      onChanged();
      return this;
    }
    /**
     * string missionId = 7;
     * @param value The bytes for missionId to set.
     * @return This builder for chaining.
     */
    public Builder setMissionIdBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      missionId_ = value;
      bitField0_ |= 0x00000040;
      onChanged();
      return this;
    }

    private int recordNumber_ ;
    /**
     * int32 recordNumber = 8;
     * @return The recordNumber.
     */
    @java.lang.Override
    public int getRecordNumber() {
      return recordNumber_;
    }
    /**
     * int32 recordNumber = 8;
     * @param value The recordNumber to set.
     * @return This builder for chaining.
     */
    public Builder setRecordNumber(int value) {

      recordNumber_ = value;
      bitField0_ |= 0x00000080;
      onChanged();
      return this;
    }
    /**
     * int32 recordNumber = 8;
     * @return This builder for chaining.
     */
    public Builder clearRecordNumber() {
      bitField0_ = (bitField0_ & ~0x00000080);
      recordNumber_ = 0;
      onChanged();
      return this;
    }

    private int groupNumber_ ;
    /**
     * int32 groupNumber = 9;
     * @return The groupNumber.
     */
    @java.lang.Override
    public int getGroupNumber() {
      return groupNumber_;
    }
    /**
     * int32 groupNumber = 9;
     * @param value The groupNumber to set.
     * @return This builder for chaining.
     */
    public Builder setGroupNumber(int value) {

      groupNumber_ = value;
      bitField0_ |= 0x00000100;
      onChanged();
      return this;
    }
    /**
     * int32 groupNumber = 9;
     * @return This builder for chaining.
     */
    public Builder clearGroupNumber() {
      bitField0_ = (bitField0_ & ~0x00000100);
      groupNumber_ = 0;
      onChanged();
      return this;
    }

    private int accuracy_ ;
    /**
     * int32 accuracy = 10;
     * @return The accuracy.
     */
    @java.lang.Override
    public int getAccuracy() {
      return accuracy_;
    }
    /**
     * int32 accuracy = 10;
     * @param value The accuracy to set.
     * @return This builder for chaining.
     */
    public Builder setAccuracy(int value) {

      accuracy_ = value;
      bitField0_ |= 0x00000200;
      onChanged();
      return this;
    }
    /**
     * int32 accuracy = 10;
     * @return This builder for chaining.
     */
    public Builder clearAccuracy() {
      bitField0_ = (bitField0_ & ~0x00000200);
      accuracy_ = 0;
      onChanged();
      return this;
    }

    private float heading_ ;
    /**
     * float heading = 50;
     * @return The heading.
     */
    @java.lang.Override
    public float getHeading() {
      return heading_;
    }
    /**
     * float heading = 50;
     * @param value The heading to set.
     * @return This builder for chaining.
     */
    public Builder setHeading(float value) {

      heading_ = value;
      bitField0_ |= 0x00000400;
      onChanged();
      return this;
    }
    /**
     * float heading = 50;
     * @return This builder for chaining.
     */
    public Builder clearHeading() {
      bitField0_ = (bitField0_ & ~0x00000400);
      heading_ = 0F;
      onChanged();
      return this;
    }

    private float pitch_ ;
    /**
     * float pitch = 51;
     * @return The pitch.
     */
    @java.lang.Override
    public float getPitch() {
      return pitch_;
    }
    /**
     * float pitch = 51;
     * @param value The pitch to set.
     * @return This builder for chaining.
     */
    public Builder setPitch(float value) {

      pitch_ = value;
      bitField0_ |= 0x00000800;
      onChanged();
      return this;
    }
    /**
     * float pitch = 51;
     * @return This builder for chaining.
     */
    public Builder clearPitch() {
      bitField0_ = (bitField0_ & ~0x00000800);
      pitch_ = 0F;
      onChanged();
      return this;
    }

    private float roll_ ;
    /**
     * float roll = 52;
     * @return The roll.
     */
    @java.lang.Override
    public float getRoll() {
      return roll_;
    }
    /**
     * float roll = 52;
     * @param value The roll to set.
     * @return This builder for chaining.
     */
    public Builder setRoll(float value) {

      roll_ = value;
      bitField0_ |= 0x00001000;
      onChanged();
      return this;
    }
    /**
     * float roll = 52;
     * @return This builder for chaining.
     */
    public Builder clearRoll() {
      bitField0_ = (bitField0_ & ~0x00001000);
      roll_ = 0F;
      onChanged();
      return this;
    }

    private float fieldOfView_ ;
    /**
     * float fieldOfView = 53;
     * @return The fieldOfView.
     */
    @java.lang.Override
    public float getFieldOfView() {
      return fieldOfView_;
    }
    /**
     * float fieldOfView = 53;
     * @param value The fieldOfView to set.
     * @return This builder for chaining.
     */
    public Builder setFieldOfView(float value) {

      fieldOfView_ = value;
      bitField0_ |= 0x00002000;
      onChanged();
      return this;
    }
    /**
     * float fieldOfView = 53;
     * @return This builder for chaining.
     */
    public Builder clearFieldOfView() {
      bitField0_ = (bitField0_ & ~0x00002000);
      fieldOfView_ = 0F;
      onChanged();
      return this;
    }

    private float receiverSensitivity_ ;
    /**
     * float receiverSensitivity = 54;
     * @return The receiverSensitivity.
     */
    @java.lang.Override
    public float getReceiverSensitivity() {
      return receiverSensitivity_;
    }
    /**
     * float receiverSensitivity = 54;
     * @param value The receiverSensitivity to set.
     * @return This builder for chaining.
     */
    public Builder setReceiverSensitivity(float value) {

      receiverSensitivity_ = value;
      bitField0_ |= 0x00004000;
      onChanged();
      return this;
    }
    /**
     * float receiverSensitivity = 54;
     * @return This builder for chaining.
     */
    public Builder clearReceiverSensitivity() {
      bitField0_ = (bitField0_ & ~0x00004000);
      receiverSensitivity_ = 0F;
      onChanged();
      return this;
    }

    private float speed_ ;
    /**
     * float speed = 55;
     * @return The speed.
     */
    @java.lang.Override
    public float getSpeed() {
      return speed_;
    }
    /**
     * float speed = 55;
     * @param value The speed to set.
     * @return This builder for chaining.
     */
    public Builder setSpeed(float value) {

      speed_ = value;
      bitField0_ |= 0x00008000;
      onChanged();
      return this;
    }
    /**
     * float speed = 55;
     * @return This builder for chaining.
     */
    public Builder clearSpeed() {
      bitField0_ = (bitField0_ & ~0x00008000);
      speed_ = 0F;
      onChanged();
      return this;
    }

    private com.google.protobuf.Int32Value mcc_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> mccBuilder_;
    /**
     * .google.protobuf.Int32Value mcc = 16;
     * @return Whether the mcc field is set.
     */
    public boolean hasMcc() {
      return ((bitField0_ & 0x00010000) != 0);
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     * @return The mcc.
     */
    public com.google.protobuf.Int32Value getMcc() {
      if (mccBuilder_ == null) {
        return mcc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mcc_;
      } else {
        return mccBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public Builder setMcc(com.google.protobuf.Int32Value value) {
      if (mccBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        mcc_ = value;
      } else {
        mccBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00010000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public Builder setMcc(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (mccBuilder_ == null) {
        mcc_ = builderForValue.build();
      } else {
        mccBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00010000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public Builder mergeMcc(com.google.protobuf.Int32Value value) {
      if (mccBuilder_ == null) {
        if (((bitField0_ & 0x00010000) != 0) &&
          mcc_ != null &&
          mcc_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getMccBuilder().mergeFrom(value);
        } else {
          mcc_ = value;
        }
      } else {
        mccBuilder_.mergeFrom(value);
      }
      if (mcc_ != null) {
        bitField0_ |= 0x00010000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public Builder clearMcc() {
      bitField0_ = (bitField0_ & ~0x00010000);
      mcc_ = null;
      if (mccBuilder_ != null) {
        mccBuilder_.dispose();
        mccBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public com.google.protobuf.Int32Value.Builder getMccBuilder() {
      bitField0_ |= 0x00010000;
      onChanged();
      return getMccFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    public com.google.protobuf.Int32ValueOrBuilder getMccOrBuilder() {
      if (mccBuilder_ != null) {
        return mccBuilder_.getMessageOrBuilder();
      } else {
        return mcc_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : mcc_;
      }
    }
    /**
     * .google.protobuf.Int32Value mcc = 16;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getMccFieldBuilder() {
      if (mccBuilder_ == null) {
        mccBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getMcc(),
                getParentForChildren(),
                isClean());
        mcc_ = null;
      }
      return mccBuilder_;
    }

    private com.google.protobuf.Int32Value mnc_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> mncBuilder_;
    /**
     * .google.protobuf.Int32Value mnc = 17;
     * @return Whether the mnc field is set.
     */
    public boolean hasMnc() {
      return ((bitField0_ & 0x00020000) != 0);
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     * @return The mnc.
     */
    public com.google.protobuf.Int32Value getMnc() {
      if (mncBuilder_ == null) {
        return mnc_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : mnc_;
      } else {
        return mncBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public Builder setMnc(com.google.protobuf.Int32Value value) {
      if (mncBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        mnc_ = value;
      } else {
        mncBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00020000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public Builder setMnc(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (mncBuilder_ == null) {
        mnc_ = builderForValue.build();
      } else {
        mncBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00020000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public Builder mergeMnc(com.google.protobuf.Int32Value value) {
      if (mncBuilder_ == null) {
        if (((bitField0_ & 0x00020000) != 0) &&
          mnc_ != null &&
          mnc_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getMncBuilder().mergeFrom(value);
        } else {
          mnc_ = value;
        }
      } else {
        mncBuilder_.mergeFrom(value);
      }
      if (mnc_ != null) {
        bitField0_ |= 0x00020000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public Builder clearMnc() {
      bitField0_ = (bitField0_ & ~0x00020000);
      mnc_ = null;
      if (mncBuilder_ != null) {
        mncBuilder_.dispose();
        mncBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public com.google.protobuf.Int32Value.Builder getMncBuilder() {
      bitField0_ |= 0x00020000;
      onChanged();
      return getMncFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    public com.google.protobuf.Int32ValueOrBuilder getMncOrBuilder() {
      if (mncBuilder_ != null) {
        return mncBuilder_.getMessageOrBuilder();
      } else {
        return mnc_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : mnc_;
      }
    }
    /**
     * .google.protobuf.Int32Value mnc = 17;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getMncFieldBuilder() {
      if (mncBuilder_ == null) {
        mncBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getMnc(),
                getParentForChildren(),
                isClean());
        mnc_ = null;
      }
      return mncBuilder_;
    }

    private com.google.protobuf.Int32Value lac_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> lacBuilder_;
    /**
     * .google.protobuf.Int32Value lac = 18;
     * @return Whether the lac field is set.
     */
    public boolean hasLac() {
      return ((bitField0_ & 0x00040000) != 0);
    }
    /**
     * .google.protobuf.Int32Value lac = 18;
     * @return The lac.
     */
    public com.google.protobuf.Int32Value getLac() {
      if (lacBuilder_ == null) {
        return lac_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : lac_;
      } else {
        return lacBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value lac = 18;
     */
    public Builder setLac(com.google.protobuf.Int32Value value) {
      if (lacBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        lac_ = value;
      } else {
        lacBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00040000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value lac = 18;
     */
    public Builder setLac(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (lacBuilder_ == null) {
        lac_ = builderForValue.build();
      } else {
        lacBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00040000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value lac = 18;
     */
    public Builder mergeLac(com.google.protobuf.Int32Value value) {
      if (lacBuilder_ == null) {
        if (((bitField0_ & 0x00040000) != 0) &&
          lac_ != null &&
          lac_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getLacBuilder().mergeFrom(value);
        } else {
          lac_ = value;
        }
      } else {
        lacBuilder_.mergeFrom(value);
      }
      if (lac_ != null) {
        bitField0_ |= 0x00040000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value lac = 18;
     */
    public Builder clearLac() {
      bitField0_ = (bitField0_ & ~0x00040000);
      lac_ = null;
      if (lacBuilder_ != null) {
        lacBuilder_.dispose();
        lacBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value lac = 18;
     */
    public com.google.protobuf.Int32Value.Builder getLacBuilder() {
      bitField0_ |= 0x00040000;
      onChanged();
      return getLacFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value lac = 18;
     */
    public com.google.protobuf.Int32ValueOrBuilder getLacOrBuilder() {
      if (lacBuilder_ != null) {
        return lacBuilder_.getMessageOrBuilder();
      } else {
        return lac_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : lac_;
      }
    }
    /**
     * .google.protobuf.Int32Value lac = 18;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getLacFieldBuilder() {
      if (lacBuilder_ == null) {
        lacBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getLac(),
                getParentForChildren(),
                isClean());
        lac_ = null;
      }
      return lacBuilder_;
    }

    private com.google.protobuf.Int32Value ci_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> ciBuilder_;
    /**
     * .google.protobuf.Int32Value ci = 19;
     * @return Whether the ci field is set.
     */
    public boolean hasCi() {
      return ((bitField0_ & 0x00080000) != 0);
    }
    /**
     * .google.protobuf.Int32Value ci = 19;
     * @return The ci.
     */
    public com.google.protobuf.Int32Value getCi() {
      if (ciBuilder_ == null) {
        return ci_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : ci_;
      } else {
        return ciBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value ci = 19;
     */
    public Builder setCi(com.google.protobuf.Int32Value value) {
      if (ciBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        ci_ = value;
      } else {
        ciBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00080000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value ci = 19;
     */
    public Builder setCi(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (ciBuilder_ == null) {
        ci_ = builderForValue.build();
      } else {
        ciBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00080000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value ci = 19;
     */
    public Builder mergeCi(com.google.protobuf.Int32Value value) {
      if (ciBuilder_ == null) {
        if (((bitField0_ & 0x00080000) != 0) &&
          ci_ != null &&
          ci_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getCiBuilder().mergeFrom(value);
        } else {
          ci_ = value;
        }
      } else {
        ciBuilder_.mergeFrom(value);
      }
      if (ci_ != null) {
        bitField0_ |= 0x00080000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value ci = 19;
     */
    public Builder clearCi() {
      bitField0_ = (bitField0_ & ~0x00080000);
      ci_ = null;
      if (ciBuilder_ != null) {
        ciBuilder_.dispose();
        ciBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value ci = 19;
     */
    public com.google.protobuf.Int32Value.Builder getCiBuilder() {
      bitField0_ |= 0x00080000;
      onChanged();
      return getCiFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value ci = 19;
     */
    public com.google.protobuf.Int32ValueOrBuilder getCiOrBuilder() {
      if (ciBuilder_ != null) {
        return ciBuilder_.getMessageOrBuilder();
      } else {
        return ci_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : ci_;
      }
    }
    /**
     * .google.protobuf.Int32Value ci = 19;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getCiFieldBuilder() {
      if (ciBuilder_ == null) {
        ciBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getCi(),
                getParentForChildren(),
                isClean());
        ci_ = null;
      }
      return ciBuilder_;
    }

    private com.google.protobuf.Int32Value arfcn_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> arfcnBuilder_;
    /**
     * .google.protobuf.Int32Value arfcn = 20;
     * @return Whether the arfcn field is set.
     */
    public boolean hasArfcn() {
      return ((bitField0_ & 0x00100000) != 0);
    }
    /**
     * .google.protobuf.Int32Value arfcn = 20;
     * @return The arfcn.
     */
    public com.google.protobuf.Int32Value getArfcn() {
      if (arfcnBuilder_ == null) {
        return arfcn_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : arfcn_;
      } else {
        return arfcnBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value arfcn = 20;
     */
    public Builder setArfcn(com.google.protobuf.Int32Value value) {
      if (arfcnBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        arfcn_ = value;
      } else {
        arfcnBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00100000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value arfcn = 20;
     */
    public Builder setArfcn(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (arfcnBuilder_ == null) {
        arfcn_ = builderForValue.build();
      } else {
        arfcnBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00100000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value arfcn = 20;
     */
    public Builder mergeArfcn(com.google.protobuf.Int32Value value) {
      if (arfcnBuilder_ == null) {
        if (((bitField0_ & 0x00100000) != 0) &&
          arfcn_ != null &&
          arfcn_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getArfcnBuilder().mergeFrom(value);
        } else {
          arfcn_ = value;
        }
      } else {
        arfcnBuilder_.mergeFrom(value);
      }
      if (arfcn_ != null) {
        bitField0_ |= 0x00100000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value arfcn = 20;
     */
    public Builder clearArfcn() {
      bitField0_ = (bitField0_ & ~0x00100000);
      arfcn_ = null;
      if (arfcnBuilder_ != null) {
        arfcnBuilder_.dispose();
        arfcnBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value arfcn = 20;
     */
    public com.google.protobuf.Int32Value.Builder getArfcnBuilder() {
      bitField0_ |= 0x00100000;
      onChanged();
      return getArfcnFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value arfcn = 20;
     */
    public com.google.protobuf.Int32ValueOrBuilder getArfcnOrBuilder() {
      if (arfcnBuilder_ != null) {
        return arfcnBuilder_.getMessageOrBuilder();
      } else {
        return arfcn_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : arfcn_;
      }
    }
    /**
     * .google.protobuf.Int32Value arfcn = 20;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getArfcnFieldBuilder() {
      if (arfcnBuilder_ == null) {
        arfcnBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getArfcn(),
                getParentForChildren(),
                isClean());
        arfcn_ = null;
      }
      return arfcnBuilder_;
    }

    private com.google.protobuf.Int32Value bsic_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> bsicBuilder_;
    /**
     * .google.protobuf.Int32Value bsic = 21;
     * @return Whether the bsic field is set.
     */
    public boolean hasBsic() {
      return ((bitField0_ & 0x00200000) != 0);
    }
    /**
     * .google.protobuf.Int32Value bsic = 21;
     * @return The bsic.
     */
    public com.google.protobuf.Int32Value getBsic() {
      if (bsicBuilder_ == null) {
        return bsic_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : bsic_;
      } else {
        return bsicBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value bsic = 21;
     */
    public Builder setBsic(com.google.protobuf.Int32Value value) {
      if (bsicBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        bsic_ = value;
      } else {
        bsicBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00200000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value bsic = 21;
     */
    public Builder setBsic(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (bsicBuilder_ == null) {
        bsic_ = builderForValue.build();
      } else {
        bsicBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00200000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value bsic = 21;
     */
    public Builder mergeBsic(com.google.protobuf.Int32Value value) {
      if (bsicBuilder_ == null) {
        if (((bitField0_ & 0x00200000) != 0) &&
          bsic_ != null &&
          bsic_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getBsicBuilder().mergeFrom(value);
        } else {
          bsic_ = value;
        }
      } else {
        bsicBuilder_.mergeFrom(value);
      }
      if (bsic_ != null) {
        bitField0_ |= 0x00200000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value bsic = 21;
     */
    public Builder clearBsic() {
      bitField0_ = (bitField0_ & ~0x00200000);
      bsic_ = null;
      if (bsicBuilder_ != null) {
        bsicBuilder_.dispose();
        bsicBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value bsic = 21;
     */
    public com.google.protobuf.Int32Value.Builder getBsicBuilder() {
      bitField0_ |= 0x00200000;
      onChanged();
      return getBsicFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value bsic = 21;
     */
    public com.google.protobuf.Int32ValueOrBuilder getBsicOrBuilder() {
      if (bsicBuilder_ != null) {
        return bsicBuilder_.getMessageOrBuilder();
      } else {
        return bsic_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : bsic_;
      }
    }
    /**
     * .google.protobuf.Int32Value bsic = 21;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getBsicFieldBuilder() {
      if (bsicBuilder_ == null) {
        bsicBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getBsic(),
                getParentForChildren(),
                isClean());
        bsic_ = null;
      }
      return bsicBuilder_;
    }

    private com.google.protobuf.FloatValue signalStrength_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder> signalStrengthBuilder_;
    /**
     * .google.protobuf.FloatValue signalStrength = 22;
     * @return Whether the signalStrength field is set.
     */
    public boolean hasSignalStrength() {
      return ((bitField0_ & 0x00400000) != 0);
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 22;
     * @return The signalStrength.
     */
    public com.google.protobuf.FloatValue getSignalStrength() {
      if (signalStrengthBuilder_ == null) {
        return signalStrength_ == null ? com.google.protobuf.FloatValue.getDefaultInstance() : signalStrength_;
      } else {
        return signalStrengthBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 22;
     */
    public Builder setSignalStrength(com.google.protobuf.FloatValue value) {
      if (signalStrengthBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        signalStrength_ = value;
      } else {
        signalStrengthBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00400000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 22;
     */
    public Builder setSignalStrength(
        com.google.protobuf.FloatValue.Builder builderForValue) {
      if (signalStrengthBuilder_ == null) {
        signalStrength_ = builderForValue.build();
      } else {
        signalStrengthBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00400000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 22;
     */
    public Builder mergeSignalStrength(com.google.protobuf.FloatValue value) {
      if (signalStrengthBuilder_ == null) {
        if (((bitField0_ & 0x00400000) != 0) &&
          signalStrength_ != null &&
          signalStrength_ != com.google.protobuf.FloatValue.getDefaultInstance()) {
          getSignalStrengthBuilder().mergeFrom(value);
        } else {
          signalStrength_ = value;
        }
      } else {
        signalStrengthBuilder_.mergeFrom(value);
      }
      if (signalStrength_ != null) {
        bitField0_ |= 0x00400000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 22;
     */
    public Builder clearSignalStrength() {
      bitField0_ = (bitField0_ & ~0x00400000);
      signalStrength_ = null;
      if (signalStrengthBuilder_ != null) {
        signalStrengthBuilder_.dispose();
        signalStrengthBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 22;
     */
    public com.google.protobuf.FloatValue.Builder getSignalStrengthBuilder() {
      bitField0_ |= 0x00400000;
      onChanged();
      return getSignalStrengthFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 22;
     */
    public com.google.protobuf.FloatValueOrBuilder getSignalStrengthOrBuilder() {
      if (signalStrengthBuilder_ != null) {
        return signalStrengthBuilder_.getMessageOrBuilder();
      } else {
        return signalStrength_ == null ?
            com.google.protobuf.FloatValue.getDefaultInstance() : signalStrength_;
      }
    }
    /**
     * .google.protobuf.FloatValue signalStrength = 22;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder> 
        getSignalStrengthFieldBuilder() {
      if (signalStrengthBuilder_ == null) {
        signalStrengthBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.FloatValue, com.google.protobuf.FloatValue.Builder, com.google.protobuf.FloatValueOrBuilder>(
                getSignalStrength(),
                getParentForChildren(),
                isClean());
        signalStrength_ = null;
      }
      return signalStrengthBuilder_;
    }

    private com.google.protobuf.Int32Value ta_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> taBuilder_;
    /**
     * .google.protobuf.Int32Value ta = 24;
     * @return Whether the ta field is set.
     */
    public boolean hasTa() {
      return ((bitField0_ & 0x00800000) != 0);
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     * @return The ta.
     */
    public com.google.protobuf.Int32Value getTa() {
      if (taBuilder_ == null) {
        return ta_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : ta_;
      } else {
        return taBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public Builder setTa(com.google.protobuf.Int32Value value) {
      if (taBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        ta_ = value;
      } else {
        taBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00800000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public Builder setTa(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (taBuilder_ == null) {
        ta_ = builderForValue.build();
      } else {
        taBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00800000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public Builder mergeTa(com.google.protobuf.Int32Value value) {
      if (taBuilder_ == null) {
        if (((bitField0_ & 0x00800000) != 0) &&
          ta_ != null &&
          ta_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getTaBuilder().mergeFrom(value);
        } else {
          ta_ = value;
        }
      } else {
        taBuilder_.mergeFrom(value);
      }
      if (ta_ != null) {
        bitField0_ |= 0x00800000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public Builder clearTa() {
      bitField0_ = (bitField0_ & ~0x00800000);
      ta_ = null;
      if (taBuilder_ != null) {
        taBuilder_.dispose();
        taBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public com.google.protobuf.Int32Value.Builder getTaBuilder() {
      bitField0_ |= 0x00800000;
      onChanged();
      return getTaFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    public com.google.protobuf.Int32ValueOrBuilder getTaOrBuilder() {
      if (taBuilder_ != null) {
        return taBuilder_.getMessageOrBuilder();
      } else {
        return ta_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : ta_;
      }
    }
    /**
     * .google.protobuf.Int32Value ta = 24;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getTaFieldBuilder() {
      if (taBuilder_ == null) {
        taBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getTa(),
                getParentForChildren(),
                isClean());
        ta_ = null;
      }
      return taBuilder_;
    }

    private com.google.protobuf.BoolValue servingCell_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.BoolValue, com.google.protobuf.BoolValue.Builder, com.google.protobuf.BoolValueOrBuilder> servingCellBuilder_;
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     * @return Whether the servingCell field is set.
     */
    public boolean hasServingCell() {
      return ((bitField0_ & 0x01000000) != 0);
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     * @return The servingCell.
     */
    public com.google.protobuf.BoolValue getServingCell() {
      if (servingCellBuilder_ == null) {
        return servingCell_ == null ? com.google.protobuf.BoolValue.getDefaultInstance() : servingCell_;
      } else {
        return servingCellBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public Builder setServingCell(com.google.protobuf.BoolValue value) {
      if (servingCellBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        servingCell_ = value;
      } else {
        servingCellBuilder_.setMessage(value);
      }
      bitField0_ |= 0x01000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public Builder setServingCell(
        com.google.protobuf.BoolValue.Builder builderForValue) {
      if (servingCellBuilder_ == null) {
        servingCell_ = builderForValue.build();
      } else {
        servingCellBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x01000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public Builder mergeServingCell(com.google.protobuf.BoolValue value) {
      if (servingCellBuilder_ == null) {
        if (((bitField0_ & 0x01000000) != 0) &&
          servingCell_ != null &&
          servingCell_ != com.google.protobuf.BoolValue.getDefaultInstance()) {
          getServingCellBuilder().mergeFrom(value);
        } else {
          servingCell_ = value;
        }
      } else {
        servingCellBuilder_.mergeFrom(value);
      }
      if (servingCell_ != null) {
        bitField0_ |= 0x01000000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public Builder clearServingCell() {
      bitField0_ = (bitField0_ & ~0x01000000);
      servingCell_ = null;
      if (servingCellBuilder_ != null) {
        servingCellBuilder_.dispose();
        servingCellBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public com.google.protobuf.BoolValue.Builder getServingCellBuilder() {
      bitField0_ |= 0x01000000;
      onChanged();
      return getServingCellFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    public com.google.protobuf.BoolValueOrBuilder getServingCellOrBuilder() {
      if (servingCellBuilder_ != null) {
        return servingCellBuilder_.getMessageOrBuilder();
      } else {
        return servingCell_ == null ?
            com.google.protobuf.BoolValue.getDefaultInstance() : servingCell_;
      }
    }
    /**
     * .google.protobuf.BoolValue servingCell = 25;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.BoolValue, com.google.protobuf.BoolValue.Builder, com.google.protobuf.BoolValueOrBuilder> 
        getServingCellFieldBuilder() {
      if (servingCellBuilder_ == null) {
        servingCellBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.BoolValue, com.google.protobuf.BoolValue.Builder, com.google.protobuf.BoolValueOrBuilder>(
                getServingCell(),
                getParentForChildren(),
                isClean());
        servingCell_ = null;
      }
      return servingCellBuilder_;
    }

    private java.lang.Object provider_ = "";
    /**
     * string provider = 27;
     * @return The provider.
     */
    public java.lang.String getProvider() {
      java.lang.Object ref = provider_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        provider_ = s;
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * string provider = 27;
     * @return The bytes for provider.
     */
    public com.google.protobuf.ByteString
        getProviderBytes() {
      java.lang.Object ref = provider_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        provider_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * string provider = 27;
     * @param value The provider to set.
     * @return This builder for chaining.
     */
    public Builder setProvider(
        java.lang.String value) {
      if (value == null) { throw new NullPointerException(); }
      provider_ = value;
      bitField0_ |= 0x02000000;
      onChanged();
      return this;
    }
    /**
     * string provider = 27;
     * @return This builder for chaining.
     */
    public Builder clearProvider() {
      provider_ = getDefaultInstance().getProvider();
      bitField0_ = (bitField0_ & ~0x02000000);
      onChanged();
      return this;
    }
    /**
     * string provider = 27;
     * @param value The bytes for provider to set.
     * @return This builder for chaining.
     */
    public Builder setProviderBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) { throw new NullPointerException(); }
      checkByteStringIsUtf8(value);
      provider_ = value;
      bitField0_ |= 0x02000000;
      onChanged();
      return this;
    }

    private com.google.protobuf.Int32Value slot_;
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> slotBuilder_;
    /**
     * .google.protobuf.Int32Value slot = 28;
     * @return Whether the slot field is set.
     */
    public boolean hasSlot() {
      return ((bitField0_ & 0x04000000) != 0);
    }
    /**
     * .google.protobuf.Int32Value slot = 28;
     * @return The slot.
     */
    public com.google.protobuf.Int32Value getSlot() {
      if (slotBuilder_ == null) {
        return slot_ == null ? com.google.protobuf.Int32Value.getDefaultInstance() : slot_;
      } else {
        return slotBuilder_.getMessage();
      }
    }
    /**
     * .google.protobuf.Int32Value slot = 28;
     */
    public Builder setSlot(com.google.protobuf.Int32Value value) {
      if (slotBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        slot_ = value;
      } else {
        slotBuilder_.setMessage(value);
      }
      bitField0_ |= 0x04000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value slot = 28;
     */
    public Builder setSlot(
        com.google.protobuf.Int32Value.Builder builderForValue) {
      if (slotBuilder_ == null) {
        slot_ = builderForValue.build();
      } else {
        slotBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x04000000;
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value slot = 28;
     */
    public Builder mergeSlot(com.google.protobuf.Int32Value value) {
      if (slotBuilder_ == null) {
        if (((bitField0_ & 0x04000000) != 0) &&
          slot_ != null &&
          slot_ != com.google.protobuf.Int32Value.getDefaultInstance()) {
          getSlotBuilder().mergeFrom(value);
        } else {
          slot_ = value;
        }
      } else {
        slotBuilder_.mergeFrom(value);
      }
      if (slot_ != null) {
        bitField0_ |= 0x04000000;
        onChanged();
      }
      return this;
    }
    /**
     * .google.protobuf.Int32Value slot = 28;
     */
    public Builder clearSlot() {
      bitField0_ = (bitField0_ & ~0x04000000);
      slot_ = null;
      if (slotBuilder_ != null) {
        slotBuilder_.dispose();
        slotBuilder_ = null;
      }
      onChanged();
      return this;
    }
    /**
     * .google.protobuf.Int32Value slot = 28;
     */
    public com.google.protobuf.Int32Value.Builder getSlotBuilder() {
      bitField0_ |= 0x04000000;
      onChanged();
      return getSlotFieldBuilder().getBuilder();
    }
    /**
     * .google.protobuf.Int32Value slot = 28;
     */
    public com.google.protobuf.Int32ValueOrBuilder getSlotOrBuilder() {
      if (slotBuilder_ != null) {
        return slotBuilder_.getMessageOrBuilder();
      } else {
        return slot_ == null ?
            com.google.protobuf.Int32Value.getDefaultInstance() : slot_;
      }
    }
    /**
     * .google.protobuf.Int32Value slot = 28;
     */
    private com.google.protobuf.SingleFieldBuilder<
        com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder> 
        getSlotFieldBuilder() {
      if (slotBuilder_ == null) {
        slotBuilder_ = new com.google.protobuf.SingleFieldBuilder<
            com.google.protobuf.Int32Value, com.google.protobuf.Int32Value.Builder, com.google.protobuf.Int32ValueOrBuilder>(
                getSlot(),
                getParentForChildren(),
                isClean());
        slot_ = null;
      }
      return slotBuilder_;
    }

    // @@protoc_insertion_point(builder_scope:com.craxiom.messaging.GsmRecordData)
  }

  // @@protoc_insertion_point(class_scope:com.craxiom.messaging.GsmRecordData)
  private static final com.craxiom.messaging.GsmRecordData DEFAULT_INSTANCE;
  static {
    DEFAULT_INSTANCE = new com.craxiom.messaging.GsmRecordData();
  }

  public static com.craxiom.messaging.GsmRecordData getDefaultInstance() {
    return DEFAULT_INSTANCE;
  }

  private static final com.google.protobuf.Parser
      PARSER = new com.google.protobuf.AbstractParser() {
    @java.lang.Override
    public GsmRecordData parsePartialFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      Builder builder = newBuilder();
      try {
        builder.mergeFrom(input, extensionRegistry);
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(builder.buildPartial());
      } catch (com.google.protobuf.UninitializedMessageException e) {
        throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(e)
            .setUnfinishedMessage(builder.buildPartial());
      }
      return builder.buildPartial();
    }
  };

  public static com.google.protobuf.Parser parser() {
    return PARSER;
  }

  @java.lang.Override
  public com.google.protobuf.Parser getParserForType() {
    return PARSER;
  }

  @java.lang.Override
  public com.craxiom.messaging.GsmRecordData getDefaultInstanceForType() {
    return DEFAULT_INSTANCE;
  }

}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy