// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: csd.proto

#ifndef PROTOBUF_csd_2eproto__INCLUDED
#define PROTOBUF_csd_2eproto__INCLUDED

#include <string>

#include <google/protobuf/stubs/common.h>

#if GOOGLE_PROTOBUF_VERSION < 2006000
#error This file was generated by a newer version of protoc which is
#error incompatible with your Protocol Buffer headers.  Please update
#error your headers.
#endif
#if 2006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
#error This file was generated by an older version of protoc which is
#error incompatible with your Protocol Buffer headers.  Please
#error regenerate this file with a newer version of protoc.
#endif

#include <google/protobuf/generated_message_util.h>
#include <google/protobuf/message_lite.h>
#include <google/protobuf/repeated_field.h>
#include <google/protobuf/extension_set.h>
// @@protoc_insertion_point(includes)

namespace safe_browsing {

// Internal implementation detail -- do not call these.
void  protobuf_AddDesc_csd_2eproto();
void protobuf_AssignDesc_csd_2eproto();
void protobuf_ShutdownFile_csd_2eproto();

class ClientPhishingRequest;
class ClientPhishingRequest_Feature;
class ClientPhishingResponse;
class ClientMalwareRequest;
class ClientMalwareRequest_UrlInfo;
class ClientMalwareResponse;
class ClientDownloadRequest;
class ClientDownloadRequest_Digests;
class ClientDownloadRequest_Resource;
class ClientDownloadRequest_CertificateChain;
class ClientDownloadRequest_CertificateChain_Element;
class ClientDownloadRequest_SignatureInfo;
class ClientDownloadRequest_PEImageHeaders;
class ClientDownloadRequest_PEImageHeaders_DebugData;
class ClientDownloadRequest_ImageHeaders;
class ClientDownloadRequest_ArchivedBinary;
class ClientDownloadResponse;
class ClientDownloadResponse_MoreInfo;
class ClientDownloadReport;
class ClientDownloadReport_UserInformation;
class ClientUploadResponse;
class ClientIncidentReport;
class ClientIncidentReport_IncidentData;
class ClientIncidentReport_IncidentData_TrackedPreferenceIncident;
class ClientIncidentReport_IncidentData_BinaryIntegrityIncident;
class ClientIncidentReport_IncidentData_BlacklistLoadIncident;
class ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident;
class ClientIncidentReport_IncidentData_ScriptRequestIncident;
class ClientIncidentReport_DownloadDetails;
class ClientIncidentReport_EnvironmentData;
class ClientIncidentReport_EnvironmentData_OS;
class ClientIncidentReport_EnvironmentData_Machine;
class ClientIncidentReport_EnvironmentData_Process;
class ClientIncidentReport_EnvironmentData_Process_Patch;
class ClientIncidentReport_EnvironmentData_Process_NetworkProvider;
class ClientIncidentReport_EnvironmentData_Process_Dll;
class ClientIncidentReport_EnvironmentData_Process_ModuleState;
class ClientIncidentResponse;
class ClientIncidentResponse_EnvironmentRequest;
class DownloadMetadata;

enum ClientDownloadRequest_ResourceType {
  ClientDownloadRequest_ResourceType_DOWNLOAD_URL = 0,
  ClientDownloadRequest_ResourceType_DOWNLOAD_REDIRECT = 1,
  ClientDownloadRequest_ResourceType_TAB_URL = 2,
  ClientDownloadRequest_ResourceType_TAB_REDIRECT = 3
};
bool ClientDownloadRequest_ResourceType_IsValid(int value);
const ClientDownloadRequest_ResourceType ClientDownloadRequest_ResourceType_ResourceType_MIN = ClientDownloadRequest_ResourceType_DOWNLOAD_URL;
const ClientDownloadRequest_ResourceType ClientDownloadRequest_ResourceType_ResourceType_MAX = ClientDownloadRequest_ResourceType_TAB_REDIRECT;
const int ClientDownloadRequest_ResourceType_ResourceType_ARRAYSIZE = ClientDownloadRequest_ResourceType_ResourceType_MAX + 1;

enum ClientDownloadRequest_DownloadType {
  ClientDownloadRequest_DownloadType_WIN_EXECUTABLE = 0,
  ClientDownloadRequest_DownloadType_CHROME_EXTENSION = 1,
  ClientDownloadRequest_DownloadType_ANDROID_APK = 2,
  ClientDownloadRequest_DownloadType_ZIPPED_EXECUTABLE = 3,
  ClientDownloadRequest_DownloadType_MAC_EXECUTABLE = 4
};
bool ClientDownloadRequest_DownloadType_IsValid(int value);
const ClientDownloadRequest_DownloadType ClientDownloadRequest_DownloadType_DownloadType_MIN = ClientDownloadRequest_DownloadType_WIN_EXECUTABLE;
const ClientDownloadRequest_DownloadType ClientDownloadRequest_DownloadType_DownloadType_MAX = ClientDownloadRequest_DownloadType_MAC_EXECUTABLE;
const int ClientDownloadRequest_DownloadType_DownloadType_ARRAYSIZE = ClientDownloadRequest_DownloadType_DownloadType_MAX + 1;

enum ClientDownloadResponse_Verdict {
  ClientDownloadResponse_Verdict_SAFE = 0,
  ClientDownloadResponse_Verdict_DANGEROUS = 1,
  ClientDownloadResponse_Verdict_UNCOMMON = 2,
  ClientDownloadResponse_Verdict_POTENTIALLY_UNWANTED = 3,
  ClientDownloadResponse_Verdict_DANGEROUS_HOST = 4
};
bool ClientDownloadResponse_Verdict_IsValid(int value);
const ClientDownloadResponse_Verdict ClientDownloadResponse_Verdict_Verdict_MIN = ClientDownloadResponse_Verdict_SAFE;
const ClientDownloadResponse_Verdict ClientDownloadResponse_Verdict_Verdict_MAX = ClientDownloadResponse_Verdict_DANGEROUS_HOST;
const int ClientDownloadResponse_Verdict_Verdict_ARRAYSIZE = ClientDownloadResponse_Verdict_Verdict_MAX + 1;

enum ClientDownloadReport_Reason {
  ClientDownloadReport_Reason_SHARE = 0,
  ClientDownloadReport_Reason_FALSE_POSITIVE = 1,
  ClientDownloadReport_Reason_APPEAL = 2
};
bool ClientDownloadReport_Reason_IsValid(int value);
const ClientDownloadReport_Reason ClientDownloadReport_Reason_Reason_MIN = ClientDownloadReport_Reason_SHARE;
const ClientDownloadReport_Reason ClientDownloadReport_Reason_Reason_MAX = ClientDownloadReport_Reason_APPEAL;
const int ClientDownloadReport_Reason_Reason_ARRAYSIZE = ClientDownloadReport_Reason_Reason_MAX + 1;

enum ClientUploadResponse_UploadStatus {
  ClientUploadResponse_UploadStatus_SUCCESS = 0,
  ClientUploadResponse_UploadStatus_UPLOAD_FAILURE = 1
};
bool ClientUploadResponse_UploadStatus_IsValid(int value);
const ClientUploadResponse_UploadStatus ClientUploadResponse_UploadStatus_UploadStatus_MIN = ClientUploadResponse_UploadStatus_SUCCESS;
const ClientUploadResponse_UploadStatus ClientUploadResponse_UploadStatus_UploadStatus_MAX = ClientUploadResponse_UploadStatus_UPLOAD_FAILURE;
const int ClientUploadResponse_UploadStatus_UploadStatus_ARRAYSIZE = ClientUploadResponse_UploadStatus_UploadStatus_MAX + 1;

enum ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState {
  ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_UNKNOWN = 0,
  ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_CLEARED = 1,
  ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_WEAK_LEGACY_OBSOLETE = 2,
  ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_CHANGED = 3,
  ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_UNTRUSTED_UNKNOWN_VALUE = 4
};
bool ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_IsValid(int value);
const ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_ValueState_MIN = ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_UNKNOWN;
const ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_ValueState_MAX = ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_UNTRUSTED_UNKNOWN_VALUE;
const int ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_ValueState_ARRAYSIZE = ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_ValueState_MAX + 1;

enum ClientIncidentReport_EnvironmentData_Process_Dll_Feature {
  ClientIncidentReport_EnvironmentData_Process_Dll_Feature_UNKNOWN = 0,
  ClientIncidentReport_EnvironmentData_Process_Dll_Feature_LSP = 1
};
bool ClientIncidentReport_EnvironmentData_Process_Dll_Feature_IsValid(int value);
const ClientIncidentReport_EnvironmentData_Process_Dll_Feature ClientIncidentReport_EnvironmentData_Process_Dll_Feature_Feature_MIN = ClientIncidentReport_EnvironmentData_Process_Dll_Feature_UNKNOWN;
const ClientIncidentReport_EnvironmentData_Process_Dll_Feature ClientIncidentReport_EnvironmentData_Process_Dll_Feature_Feature_MAX = ClientIncidentReport_EnvironmentData_Process_Dll_Feature_LSP;
const int ClientIncidentReport_EnvironmentData_Process_Dll_Feature_Feature_ARRAYSIZE = ClientIncidentReport_EnvironmentData_Process_Dll_Feature_Feature_MAX + 1;

enum ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState {
  ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_UNKNOWN = 0,
  ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_MODULE_STATE_UNKNOWN = 1,
  ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_MODULE_STATE_UNMODIFIED = 2,
  ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_MODULE_STATE_MODIFIED = 3
};
bool ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_IsValid(int value);
const ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_ModifiedState_MIN = ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_UNKNOWN;
const ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_ModifiedState_MAX = ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_MODULE_STATE_MODIFIED;
const int ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_ModifiedState_ARRAYSIZE = ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_ModifiedState_MAX + 1;

enum ClientIncidentReport_EnvironmentData_Process_Channel {
  ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_UNKNOWN = 0,
  ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_CANARY = 1,
  ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_DEV = 2,
  ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_BETA = 3,
  ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_STABLE = 4
};
bool ClientIncidentReport_EnvironmentData_Process_Channel_IsValid(int value);
const ClientIncidentReport_EnvironmentData_Process_Channel ClientIncidentReport_EnvironmentData_Process_Channel_Channel_MIN = ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_UNKNOWN;
const ClientIncidentReport_EnvironmentData_Process_Channel ClientIncidentReport_EnvironmentData_Process_Channel_Channel_MAX = ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_STABLE;
const int ClientIncidentReport_EnvironmentData_Process_Channel_Channel_ARRAYSIZE = ClientIncidentReport_EnvironmentData_Process_Channel_Channel_MAX + 1;

// ===================================================================

class ClientPhishingRequest_Feature : public ::google::protobuf::MessageLite {
 public:
  ClientPhishingRequest_Feature();
  virtual ~ClientPhishingRequest_Feature();

  ClientPhishingRequest_Feature(const ClientPhishingRequest_Feature& from);

  inline ClientPhishingRequest_Feature& operator=(const ClientPhishingRequest_Feature& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientPhishingRequest_Feature& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientPhishingRequest_Feature* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientPhishingRequest_Feature* other);

  // implements Message ----------------------------------------------

  ClientPhishingRequest_Feature* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientPhishingRequest_Feature& from);
  void MergeFrom(const ClientPhishingRequest_Feature& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // required string name = 1;
  inline bool has_name() const;
  inline void clear_name();
  static const int kNameFieldNumber = 1;
  inline const ::std::string& name() const;
  inline void set_name(const ::std::string& value);
  inline void set_name(const char* value);
  inline void set_name(const char* value, size_t size);
  inline ::std::string* mutable_name();
  inline ::std::string* release_name();
  inline void set_allocated_name(::std::string* name);

  // required double value = 2;
  inline bool has_value() const;
  inline void clear_value();
  static const int kValueFieldNumber = 2;
  inline double value() const;
  inline void set_value(double value);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientPhishingRequest.Feature)
 private:
  inline void set_has_name();
  inline void clear_has_name();
  inline void set_has_value();
  inline void clear_has_value();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* name_;
  double value_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientPhishingRequest_Feature* default_instance_;
};
// -------------------------------------------------------------------

class ClientPhishingRequest : public ::google::protobuf::MessageLite {
 public:
  ClientPhishingRequest();
  virtual ~ClientPhishingRequest();

  ClientPhishingRequest(const ClientPhishingRequest& from);

  inline ClientPhishingRequest& operator=(const ClientPhishingRequest& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientPhishingRequest& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientPhishingRequest* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientPhishingRequest* other);

  // implements Message ----------------------------------------------

  ClientPhishingRequest* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientPhishingRequest& from);
  void MergeFrom(const ClientPhishingRequest& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientPhishingRequest_Feature Feature;

  // accessors -------------------------------------------------------

  // optional string url = 1;
  inline bool has_url() const;
  inline void clear_url();
  static const int kUrlFieldNumber = 1;
  inline const ::std::string& url() const;
  inline void set_url(const ::std::string& value);
  inline void set_url(const char* value);
  inline void set_url(const char* value, size_t size);
  inline ::std::string* mutable_url();
  inline ::std::string* release_url();
  inline void set_allocated_url(::std::string* url);

  // optional bytes OBSOLETE_hash_prefix = 10;
  inline bool has_obsolete_hash_prefix() const;
  inline void clear_obsolete_hash_prefix();
  static const int kOBSOLETEHashPrefixFieldNumber = 10;
  inline const ::std::string& obsolete_hash_prefix() const;
  inline void set_obsolete_hash_prefix(const ::std::string& value);
  inline void set_obsolete_hash_prefix(const char* value);
  inline void set_obsolete_hash_prefix(const void* value, size_t size);
  inline ::std::string* mutable_obsolete_hash_prefix();
  inline ::std::string* release_obsolete_hash_prefix();
  inline void set_allocated_obsolete_hash_prefix(::std::string* obsolete_hash_prefix);

  // required float client_score = 2;
  inline bool has_client_score() const;
  inline void clear_client_score();
  static const int kClientScoreFieldNumber = 2;
  inline float client_score() const;
  inline void set_client_score(float value);

  // optional bool is_phishing = 4;
  inline bool has_is_phishing() const;
  inline void clear_is_phishing();
  static const int kIsPhishingFieldNumber = 4;
  inline bool is_phishing() const;
  inline void set_is_phishing(bool value);

  // repeated .safe_browsing.ClientPhishingRequest.Feature feature_map = 5;
  inline int feature_map_size() const;
  inline void clear_feature_map();
  static const int kFeatureMapFieldNumber = 5;
  inline const ::safe_browsing::ClientPhishingRequest_Feature& feature_map(int index) const;
  inline ::safe_browsing::ClientPhishingRequest_Feature* mutable_feature_map(int index);
  inline ::safe_browsing::ClientPhishingRequest_Feature* add_feature_map();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientPhishingRequest_Feature >&
      feature_map() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientPhishingRequest_Feature >*
      mutable_feature_map();

  // optional int32 model_version = 6;
  inline bool has_model_version() const;
  inline void clear_model_version();
  static const int kModelVersionFieldNumber = 6;
  inline ::google::protobuf::int32 model_version() const;
  inline void set_model_version(::google::protobuf::int32 value);

  // repeated .safe_browsing.ClientPhishingRequest.Feature non_model_feature_map = 8;
  inline int non_model_feature_map_size() const;
  inline void clear_non_model_feature_map();
  static const int kNonModelFeatureMapFieldNumber = 8;
  inline const ::safe_browsing::ClientPhishingRequest_Feature& non_model_feature_map(int index) const;
  inline ::safe_browsing::ClientPhishingRequest_Feature* mutable_non_model_feature_map(int index);
  inline ::safe_browsing::ClientPhishingRequest_Feature* add_non_model_feature_map();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientPhishingRequest_Feature >&
      non_model_feature_map() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientPhishingRequest_Feature >*
      mutable_non_model_feature_map();

  // optional string OBSOLETE_referrer_url = 9;
  inline bool has_obsolete_referrer_url() const;
  inline void clear_obsolete_referrer_url();
  static const int kOBSOLETEReferrerUrlFieldNumber = 9;
  inline const ::std::string& obsolete_referrer_url() const;
  inline void set_obsolete_referrer_url(const ::std::string& value);
  inline void set_obsolete_referrer_url(const char* value);
  inline void set_obsolete_referrer_url(const char* value, size_t size);
  inline ::std::string* mutable_obsolete_referrer_url();
  inline ::std::string* release_obsolete_referrer_url();
  inline void set_allocated_obsolete_referrer_url(::std::string* obsolete_referrer_url);

  // repeated uint32 shingle_hashes = 12 [packed = true];
  inline int shingle_hashes_size() const;
  inline void clear_shingle_hashes();
  static const int kShingleHashesFieldNumber = 12;
  inline ::google::protobuf::uint32 shingle_hashes(int index) const;
  inline void set_shingle_hashes(int index, ::google::protobuf::uint32 value);
  inline void add_shingle_hashes(::google::protobuf::uint32 value);
  inline const ::google::protobuf::RepeatedField< ::google::protobuf::uint32 >&
      shingle_hashes() const;
  inline ::google::protobuf::RepeatedField< ::google::protobuf::uint32 >*
      mutable_shingle_hashes();

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientPhishingRequest)
 private:
  inline void set_has_url();
  inline void clear_has_url();
  inline void set_has_obsolete_hash_prefix();
  inline void clear_has_obsolete_hash_prefix();
  inline void set_has_client_score();
  inline void clear_has_client_score();
  inline void set_has_is_phishing();
  inline void clear_has_is_phishing();
  inline void set_has_model_version();
  inline void clear_has_model_version();
  inline void set_has_obsolete_referrer_url();
  inline void clear_has_obsolete_referrer_url();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* url_;
  ::std::string* obsolete_hash_prefix_;
  float client_score_;
  bool is_phishing_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientPhishingRequest_Feature > feature_map_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientPhishingRequest_Feature > non_model_feature_map_;
  ::std::string* obsolete_referrer_url_;
  ::google::protobuf::RepeatedField< ::google::protobuf::uint32 > shingle_hashes_;
  mutable int _shingle_hashes_cached_byte_size_;
  ::google::protobuf::int32 model_version_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientPhishingRequest* default_instance_;
};
// -------------------------------------------------------------------

class ClientPhishingResponse : public ::google::protobuf::MessageLite {
 public:
  ClientPhishingResponse();
  virtual ~ClientPhishingResponse();

  ClientPhishingResponse(const ClientPhishingResponse& from);

  inline ClientPhishingResponse& operator=(const ClientPhishingResponse& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientPhishingResponse& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientPhishingResponse* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientPhishingResponse* other);

  // implements Message ----------------------------------------------

  ClientPhishingResponse* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientPhishingResponse& from);
  void MergeFrom(const ClientPhishingResponse& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // required bool phishy = 1;
  inline bool has_phishy() const;
  inline void clear_phishy();
  static const int kPhishyFieldNumber = 1;
  inline bool phishy() const;
  inline void set_phishy(bool value);

  // repeated string OBSOLETE_whitelist_expression = 2;
  inline int obsolete_whitelist_expression_size() const;
  inline void clear_obsolete_whitelist_expression();
  static const int kOBSOLETEWhitelistExpressionFieldNumber = 2;
  inline const ::std::string& obsolete_whitelist_expression(int index) const;
  inline ::std::string* mutable_obsolete_whitelist_expression(int index);
  inline void set_obsolete_whitelist_expression(int index, const ::std::string& value);
  inline void set_obsolete_whitelist_expression(int index, const char* value);
  inline void set_obsolete_whitelist_expression(int index, const char* value, size_t size);
  inline ::std::string* add_obsolete_whitelist_expression();
  inline void add_obsolete_whitelist_expression(const ::std::string& value);
  inline void add_obsolete_whitelist_expression(const char* value);
  inline void add_obsolete_whitelist_expression(const char* value, size_t size);
  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& obsolete_whitelist_expression() const;
  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_obsolete_whitelist_expression();

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientPhishingResponse)
 private:
  inline void set_has_phishy();
  inline void clear_has_phishy();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::std::string> obsolete_whitelist_expression_;
  bool phishy_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientPhishingResponse* default_instance_;
};
// -------------------------------------------------------------------

class ClientMalwareRequest_UrlInfo : public ::google::protobuf::MessageLite {
 public:
  ClientMalwareRequest_UrlInfo();
  virtual ~ClientMalwareRequest_UrlInfo();

  ClientMalwareRequest_UrlInfo(const ClientMalwareRequest_UrlInfo& from);

  inline ClientMalwareRequest_UrlInfo& operator=(const ClientMalwareRequest_UrlInfo& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientMalwareRequest_UrlInfo& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientMalwareRequest_UrlInfo* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientMalwareRequest_UrlInfo* other);

  // implements Message ----------------------------------------------

  ClientMalwareRequest_UrlInfo* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientMalwareRequest_UrlInfo& from);
  void MergeFrom(const ClientMalwareRequest_UrlInfo& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // required string ip = 1;
  inline bool has_ip() const;
  inline void clear_ip();
  static const int kIpFieldNumber = 1;
  inline const ::std::string& ip() const;
  inline void set_ip(const ::std::string& value);
  inline void set_ip(const char* value);
  inline void set_ip(const char* value, size_t size);
  inline ::std::string* mutable_ip();
  inline ::std::string* release_ip();
  inline void set_allocated_ip(::std::string* ip);

  // required string url = 2;
  inline bool has_url() const;
  inline void clear_url();
  static const int kUrlFieldNumber = 2;
  inline const ::std::string& url() const;
  inline void set_url(const ::std::string& value);
  inline void set_url(const char* value);
  inline void set_url(const char* value, size_t size);
  inline ::std::string* mutable_url();
  inline ::std::string* release_url();
  inline void set_allocated_url(::std::string* url);

  // optional string method = 3;
  inline bool has_method() const;
  inline void clear_method();
  static const int kMethodFieldNumber = 3;
  inline const ::std::string& method() const;
  inline void set_method(const ::std::string& value);
  inline void set_method(const char* value);
  inline void set_method(const char* value, size_t size);
  inline ::std::string* mutable_method();
  inline ::std::string* release_method();
  inline void set_allocated_method(::std::string* method);

  // optional string referrer = 4;
  inline bool has_referrer() const;
  inline void clear_referrer();
  static const int kReferrerFieldNumber = 4;
  inline const ::std::string& referrer() const;
  inline void set_referrer(const ::std::string& value);
  inline void set_referrer(const char* value);
  inline void set_referrer(const char* value, size_t size);
  inline ::std::string* mutable_referrer();
  inline ::std::string* release_referrer();
  inline void set_allocated_referrer(::std::string* referrer);

  // optional int32 resource_type = 5;
  inline bool has_resource_type() const;
  inline void clear_resource_type();
  static const int kResourceTypeFieldNumber = 5;
  inline ::google::protobuf::int32 resource_type() const;
  inline void set_resource_type(::google::protobuf::int32 value);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientMalwareRequest.UrlInfo)
 private:
  inline void set_has_ip();
  inline void clear_has_ip();
  inline void set_has_url();
  inline void clear_has_url();
  inline void set_has_method();
  inline void clear_has_method();
  inline void set_has_referrer();
  inline void clear_has_referrer();
  inline void set_has_resource_type();
  inline void clear_has_resource_type();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* ip_;
  ::std::string* url_;
  ::std::string* method_;
  ::std::string* referrer_;
  ::google::protobuf::int32 resource_type_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientMalwareRequest_UrlInfo* default_instance_;
};
// -------------------------------------------------------------------

class ClientMalwareRequest : public ::google::protobuf::MessageLite {
 public:
  ClientMalwareRequest();
  virtual ~ClientMalwareRequest();

  ClientMalwareRequest(const ClientMalwareRequest& from);

  inline ClientMalwareRequest& operator=(const ClientMalwareRequest& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientMalwareRequest& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientMalwareRequest* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientMalwareRequest* other);

  // implements Message ----------------------------------------------

  ClientMalwareRequest* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientMalwareRequest& from);
  void MergeFrom(const ClientMalwareRequest& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientMalwareRequest_UrlInfo UrlInfo;

  // accessors -------------------------------------------------------

  // required string url = 1;
  inline bool has_url() const;
  inline void clear_url();
  static const int kUrlFieldNumber = 1;
  inline const ::std::string& url() const;
  inline void set_url(const ::std::string& value);
  inline void set_url(const char* value);
  inline void set_url(const char* value, size_t size);
  inline ::std::string* mutable_url();
  inline ::std::string* release_url();
  inline void set_allocated_url(::std::string* url);

  // optional string referrer_url = 4;
  inline bool has_referrer_url() const;
  inline void clear_referrer_url();
  static const int kReferrerUrlFieldNumber = 4;
  inline const ::std::string& referrer_url() const;
  inline void set_referrer_url(const ::std::string& value);
  inline void set_referrer_url(const char* value);
  inline void set_referrer_url(const char* value, size_t size);
  inline ::std::string* mutable_referrer_url();
  inline ::std::string* release_referrer_url();
  inline void set_allocated_referrer_url(::std::string* referrer_url);

  // repeated .safe_browsing.ClientMalwareRequest.UrlInfo bad_ip_url_info = 7;
  inline int bad_ip_url_info_size() const;
  inline void clear_bad_ip_url_info();
  static const int kBadIpUrlInfoFieldNumber = 7;
  inline const ::safe_browsing::ClientMalwareRequest_UrlInfo& bad_ip_url_info(int index) const;
  inline ::safe_browsing::ClientMalwareRequest_UrlInfo* mutable_bad_ip_url_info(int index);
  inline ::safe_browsing::ClientMalwareRequest_UrlInfo* add_bad_ip_url_info();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientMalwareRequest_UrlInfo >&
      bad_ip_url_info() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientMalwareRequest_UrlInfo >*
      mutable_bad_ip_url_info();

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientMalwareRequest)
 private:
  inline void set_has_url();
  inline void clear_has_url();
  inline void set_has_referrer_url();
  inline void clear_has_referrer_url();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* url_;
  ::std::string* referrer_url_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientMalwareRequest_UrlInfo > bad_ip_url_info_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientMalwareRequest* default_instance_;
};
// -------------------------------------------------------------------

class ClientMalwareResponse : public ::google::protobuf::MessageLite {
 public:
  ClientMalwareResponse();
  virtual ~ClientMalwareResponse();

  ClientMalwareResponse(const ClientMalwareResponse& from);

  inline ClientMalwareResponse& operator=(const ClientMalwareResponse& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientMalwareResponse& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientMalwareResponse* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientMalwareResponse* other);

  // implements Message ----------------------------------------------

  ClientMalwareResponse* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientMalwareResponse& from);
  void MergeFrom(const ClientMalwareResponse& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // required bool blacklist = 1;
  inline bool has_blacklist() const;
  inline void clear_blacklist();
  static const int kBlacklistFieldNumber = 1;
  inline bool blacklist() const;
  inline void set_blacklist(bool value);

  // optional string bad_ip = 2;
  inline bool has_bad_ip() const;
  inline void clear_bad_ip();
  static const int kBadIpFieldNumber = 2;
  inline const ::std::string& bad_ip() const;
  inline void set_bad_ip(const ::std::string& value);
  inline void set_bad_ip(const char* value);
  inline void set_bad_ip(const char* value, size_t size);
  inline ::std::string* mutable_bad_ip();
  inline ::std::string* release_bad_ip();
  inline void set_allocated_bad_ip(::std::string* bad_ip);

  // optional string bad_url = 3;
  inline bool has_bad_url() const;
  inline void clear_bad_url();
  static const int kBadUrlFieldNumber = 3;
  inline const ::std::string& bad_url() const;
  inline void set_bad_url(const ::std::string& value);
  inline void set_bad_url(const char* value);
  inline void set_bad_url(const char* value, size_t size);
  inline ::std::string* mutable_bad_url();
  inline ::std::string* release_bad_url();
  inline void set_allocated_bad_url(::std::string* bad_url);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientMalwareResponse)
 private:
  inline void set_has_blacklist();
  inline void clear_has_blacklist();
  inline void set_has_bad_ip();
  inline void clear_has_bad_ip();
  inline void set_has_bad_url();
  inline void clear_has_bad_url();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* bad_ip_;
  ::std::string* bad_url_;
  bool blacklist_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientMalwareResponse* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadRequest_Digests : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadRequest_Digests();
  virtual ~ClientDownloadRequest_Digests();

  ClientDownloadRequest_Digests(const ClientDownloadRequest_Digests& from);

  inline ClientDownloadRequest_Digests& operator=(const ClientDownloadRequest_Digests& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadRequest_Digests& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadRequest_Digests* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadRequest_Digests* other);

  // implements Message ----------------------------------------------

  ClientDownloadRequest_Digests* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadRequest_Digests& from);
  void MergeFrom(const ClientDownloadRequest_Digests& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional bytes sha256 = 1;
  inline bool has_sha256() const;
  inline void clear_sha256();
  static const int kSha256FieldNumber = 1;
  inline const ::std::string& sha256() const;
  inline void set_sha256(const ::std::string& value);
  inline void set_sha256(const char* value);
  inline void set_sha256(const void* value, size_t size);
  inline ::std::string* mutable_sha256();
  inline ::std::string* release_sha256();
  inline void set_allocated_sha256(::std::string* sha256);

  // optional bytes sha1 = 2;
  inline bool has_sha1() const;
  inline void clear_sha1();
  static const int kSha1FieldNumber = 2;
  inline const ::std::string& sha1() const;
  inline void set_sha1(const ::std::string& value);
  inline void set_sha1(const char* value);
  inline void set_sha1(const void* value, size_t size);
  inline ::std::string* mutable_sha1();
  inline ::std::string* release_sha1();
  inline void set_allocated_sha1(::std::string* sha1);

  // optional bytes md5 = 3;
  inline bool has_md5() const;
  inline void clear_md5();
  static const int kMd5FieldNumber = 3;
  inline const ::std::string& md5() const;
  inline void set_md5(const ::std::string& value);
  inline void set_md5(const char* value);
  inline void set_md5(const void* value, size_t size);
  inline ::std::string* mutable_md5();
  inline ::std::string* release_md5();
  inline void set_allocated_md5(::std::string* md5);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadRequest.Digests)
 private:
  inline void set_has_sha256();
  inline void clear_has_sha256();
  inline void set_has_sha1();
  inline void clear_has_sha1();
  inline void set_has_md5();
  inline void clear_has_md5();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* sha256_;
  ::std::string* sha1_;
  ::std::string* md5_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadRequest_Digests* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadRequest_Resource : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadRequest_Resource();
  virtual ~ClientDownloadRequest_Resource();

  ClientDownloadRequest_Resource(const ClientDownloadRequest_Resource& from);

  inline ClientDownloadRequest_Resource& operator=(const ClientDownloadRequest_Resource& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadRequest_Resource& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadRequest_Resource* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadRequest_Resource* other);

  // implements Message ----------------------------------------------

  ClientDownloadRequest_Resource* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadRequest_Resource& from);
  void MergeFrom(const ClientDownloadRequest_Resource& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // required string url = 1;
  inline bool has_url() const;
  inline void clear_url();
  static const int kUrlFieldNumber = 1;
  inline const ::std::string& url() const;
  inline void set_url(const ::std::string& value);
  inline void set_url(const char* value);
  inline void set_url(const char* value, size_t size);
  inline ::std::string* mutable_url();
  inline ::std::string* release_url();
  inline void set_allocated_url(::std::string* url);

  // required .safe_browsing.ClientDownloadRequest.ResourceType type = 2;
  inline bool has_type() const;
  inline void clear_type();
  static const int kTypeFieldNumber = 2;
  inline ::safe_browsing::ClientDownloadRequest_ResourceType type() const;
  inline void set_type(::safe_browsing::ClientDownloadRequest_ResourceType value);

  // optional bytes remote_ip = 3;
  inline bool has_remote_ip() const;
  inline void clear_remote_ip();
  static const int kRemoteIpFieldNumber = 3;
  inline const ::std::string& remote_ip() const;
  inline void set_remote_ip(const ::std::string& value);
  inline void set_remote_ip(const char* value);
  inline void set_remote_ip(const void* value, size_t size);
  inline ::std::string* mutable_remote_ip();
  inline ::std::string* release_remote_ip();
  inline void set_allocated_remote_ip(::std::string* remote_ip);

  // optional string referrer = 4;
  inline bool has_referrer() const;
  inline void clear_referrer();
  static const int kReferrerFieldNumber = 4;
  inline const ::std::string& referrer() const;
  inline void set_referrer(const ::std::string& value);
  inline void set_referrer(const char* value);
  inline void set_referrer(const char* value, size_t size);
  inline ::std::string* mutable_referrer();
  inline ::std::string* release_referrer();
  inline void set_allocated_referrer(::std::string* referrer);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadRequest.Resource)
 private:
  inline void set_has_url();
  inline void clear_has_url();
  inline void set_has_type();
  inline void clear_has_type();
  inline void set_has_remote_ip();
  inline void clear_has_remote_ip();
  inline void set_has_referrer();
  inline void clear_has_referrer();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* url_;
  ::std::string* remote_ip_;
  ::std::string* referrer_;
  int type_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadRequest_Resource* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadRequest_CertificateChain_Element : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadRequest_CertificateChain_Element();
  virtual ~ClientDownloadRequest_CertificateChain_Element();

  ClientDownloadRequest_CertificateChain_Element(const ClientDownloadRequest_CertificateChain_Element& from);

  inline ClientDownloadRequest_CertificateChain_Element& operator=(const ClientDownloadRequest_CertificateChain_Element& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadRequest_CertificateChain_Element& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadRequest_CertificateChain_Element* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadRequest_CertificateChain_Element* other);

  // implements Message ----------------------------------------------

  ClientDownloadRequest_CertificateChain_Element* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadRequest_CertificateChain_Element& from);
  void MergeFrom(const ClientDownloadRequest_CertificateChain_Element& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional bytes certificate = 1;
  inline bool has_certificate() const;
  inline void clear_certificate();
  static const int kCertificateFieldNumber = 1;
  inline const ::std::string& certificate() const;
  inline void set_certificate(const ::std::string& value);
  inline void set_certificate(const char* value);
  inline void set_certificate(const void* value, size_t size);
  inline ::std::string* mutable_certificate();
  inline ::std::string* release_certificate();
  inline void set_allocated_certificate(::std::string* certificate);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadRequest.CertificateChain.Element)
 private:
  inline void set_has_certificate();
  inline void clear_has_certificate();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* certificate_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadRequest_CertificateChain_Element* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadRequest_CertificateChain : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadRequest_CertificateChain();
  virtual ~ClientDownloadRequest_CertificateChain();

  ClientDownloadRequest_CertificateChain(const ClientDownloadRequest_CertificateChain& from);

  inline ClientDownloadRequest_CertificateChain& operator=(const ClientDownloadRequest_CertificateChain& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadRequest_CertificateChain& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadRequest_CertificateChain* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadRequest_CertificateChain* other);

  // implements Message ----------------------------------------------

  ClientDownloadRequest_CertificateChain* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadRequest_CertificateChain& from);
  void MergeFrom(const ClientDownloadRequest_CertificateChain& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientDownloadRequest_CertificateChain_Element Element;

  // accessors -------------------------------------------------------

  // repeated .safe_browsing.ClientDownloadRequest.CertificateChain.Element element = 1;
  inline int element_size() const;
  inline void clear_element();
  static const int kElementFieldNumber = 1;
  inline const ::safe_browsing::ClientDownloadRequest_CertificateChain_Element& element(int index) const;
  inline ::safe_browsing::ClientDownloadRequest_CertificateChain_Element* mutable_element(int index);
  inline ::safe_browsing::ClientDownloadRequest_CertificateChain_Element* add_element();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_CertificateChain_Element >&
      element() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_CertificateChain_Element >*
      mutable_element();

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadRequest.CertificateChain)
 private:

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_CertificateChain_Element > element_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadRequest_CertificateChain* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadRequest_SignatureInfo : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadRequest_SignatureInfo();
  virtual ~ClientDownloadRequest_SignatureInfo();

  ClientDownloadRequest_SignatureInfo(const ClientDownloadRequest_SignatureInfo& from);

  inline ClientDownloadRequest_SignatureInfo& operator=(const ClientDownloadRequest_SignatureInfo& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadRequest_SignatureInfo& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadRequest_SignatureInfo* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadRequest_SignatureInfo* other);

  // implements Message ----------------------------------------------

  ClientDownloadRequest_SignatureInfo* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadRequest_SignatureInfo& from);
  void MergeFrom(const ClientDownloadRequest_SignatureInfo& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // repeated .safe_browsing.ClientDownloadRequest.CertificateChain certificate_chain = 1;
  inline int certificate_chain_size() const;
  inline void clear_certificate_chain();
  static const int kCertificateChainFieldNumber = 1;
  inline const ::safe_browsing::ClientDownloadRequest_CertificateChain& certificate_chain(int index) const;
  inline ::safe_browsing::ClientDownloadRequest_CertificateChain* mutable_certificate_chain(int index);
  inline ::safe_browsing::ClientDownloadRequest_CertificateChain* add_certificate_chain();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_CertificateChain >&
      certificate_chain() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_CertificateChain >*
      mutable_certificate_chain();

  // optional bool trusted = 2;
  inline bool has_trusted() const;
  inline void clear_trusted();
  static const int kTrustedFieldNumber = 2;
  inline bool trusted() const;
  inline void set_trusted(bool value);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadRequest.SignatureInfo)
 private:
  inline void set_has_trusted();
  inline void clear_has_trusted();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_CertificateChain > certificate_chain_;
  bool trusted_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadRequest_SignatureInfo* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadRequest_PEImageHeaders_DebugData : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadRequest_PEImageHeaders_DebugData();
  virtual ~ClientDownloadRequest_PEImageHeaders_DebugData();

  ClientDownloadRequest_PEImageHeaders_DebugData(const ClientDownloadRequest_PEImageHeaders_DebugData& from);

  inline ClientDownloadRequest_PEImageHeaders_DebugData& operator=(const ClientDownloadRequest_PEImageHeaders_DebugData& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadRequest_PEImageHeaders_DebugData& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadRequest_PEImageHeaders_DebugData* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadRequest_PEImageHeaders_DebugData* other);

  // implements Message ----------------------------------------------

  ClientDownloadRequest_PEImageHeaders_DebugData* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadRequest_PEImageHeaders_DebugData& from);
  void MergeFrom(const ClientDownloadRequest_PEImageHeaders_DebugData& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional bytes directory_entry = 1;
  inline bool has_directory_entry() const;
  inline void clear_directory_entry();
  static const int kDirectoryEntryFieldNumber = 1;
  inline const ::std::string& directory_entry() const;
  inline void set_directory_entry(const ::std::string& value);
  inline void set_directory_entry(const char* value);
  inline void set_directory_entry(const void* value, size_t size);
  inline ::std::string* mutable_directory_entry();
  inline ::std::string* release_directory_entry();
  inline void set_allocated_directory_entry(::std::string* directory_entry);

  // optional bytes raw_data = 2;
  inline bool has_raw_data() const;
  inline void clear_raw_data();
  static const int kRawDataFieldNumber = 2;
  inline const ::std::string& raw_data() const;
  inline void set_raw_data(const ::std::string& value);
  inline void set_raw_data(const char* value);
  inline void set_raw_data(const void* value, size_t size);
  inline ::std::string* mutable_raw_data();
  inline ::std::string* release_raw_data();
  inline void set_allocated_raw_data(::std::string* raw_data);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData)
 private:
  inline void set_has_directory_entry();
  inline void clear_has_directory_entry();
  inline void set_has_raw_data();
  inline void clear_has_raw_data();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* directory_entry_;
  ::std::string* raw_data_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadRequest_PEImageHeaders_DebugData* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadRequest_PEImageHeaders : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadRequest_PEImageHeaders();
  virtual ~ClientDownloadRequest_PEImageHeaders();

  ClientDownloadRequest_PEImageHeaders(const ClientDownloadRequest_PEImageHeaders& from);

  inline ClientDownloadRequest_PEImageHeaders& operator=(const ClientDownloadRequest_PEImageHeaders& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadRequest_PEImageHeaders& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadRequest_PEImageHeaders* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadRequest_PEImageHeaders* other);

  // implements Message ----------------------------------------------

  ClientDownloadRequest_PEImageHeaders* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadRequest_PEImageHeaders& from);
  void MergeFrom(const ClientDownloadRequest_PEImageHeaders& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientDownloadRequest_PEImageHeaders_DebugData DebugData;

  // accessors -------------------------------------------------------

  // optional bytes dos_header = 1;
  inline bool has_dos_header() const;
  inline void clear_dos_header();
  static const int kDosHeaderFieldNumber = 1;
  inline const ::std::string& dos_header() const;
  inline void set_dos_header(const ::std::string& value);
  inline void set_dos_header(const char* value);
  inline void set_dos_header(const void* value, size_t size);
  inline ::std::string* mutable_dos_header();
  inline ::std::string* release_dos_header();
  inline void set_allocated_dos_header(::std::string* dos_header);

  // optional bytes file_header = 2;
  inline bool has_file_header() const;
  inline void clear_file_header();
  static const int kFileHeaderFieldNumber = 2;
  inline const ::std::string& file_header() const;
  inline void set_file_header(const ::std::string& value);
  inline void set_file_header(const char* value);
  inline void set_file_header(const void* value, size_t size);
  inline ::std::string* mutable_file_header();
  inline ::std::string* release_file_header();
  inline void set_allocated_file_header(::std::string* file_header);

  // optional bytes optional_headers32 = 3;
  inline bool has_optional_headers32() const;
  inline void clear_optional_headers32();
  static const int kOptionalHeaders32FieldNumber = 3;
  inline const ::std::string& optional_headers32() const;
  inline void set_optional_headers32(const ::std::string& value);
  inline void set_optional_headers32(const char* value);
  inline void set_optional_headers32(const void* value, size_t size);
  inline ::std::string* mutable_optional_headers32();
  inline ::std::string* release_optional_headers32();
  inline void set_allocated_optional_headers32(::std::string* optional_headers32);

  // optional bytes optional_headers64 = 4;
  inline bool has_optional_headers64() const;
  inline void clear_optional_headers64();
  static const int kOptionalHeaders64FieldNumber = 4;
  inline const ::std::string& optional_headers64() const;
  inline void set_optional_headers64(const ::std::string& value);
  inline void set_optional_headers64(const char* value);
  inline void set_optional_headers64(const void* value, size_t size);
  inline ::std::string* mutable_optional_headers64();
  inline ::std::string* release_optional_headers64();
  inline void set_allocated_optional_headers64(::std::string* optional_headers64);

  // repeated bytes section_header = 5;
  inline int section_header_size() const;
  inline void clear_section_header();
  static const int kSectionHeaderFieldNumber = 5;
  inline const ::std::string& section_header(int index) const;
  inline ::std::string* mutable_section_header(int index);
  inline void set_section_header(int index, const ::std::string& value);
  inline void set_section_header(int index, const char* value);
  inline void set_section_header(int index, const void* value, size_t size);
  inline ::std::string* add_section_header();
  inline void add_section_header(const ::std::string& value);
  inline void add_section_header(const char* value);
  inline void add_section_header(const void* value, size_t size);
  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& section_header() const;
  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_section_header();

  // optional bytes export_section_data = 6;
  inline bool has_export_section_data() const;
  inline void clear_export_section_data();
  static const int kExportSectionDataFieldNumber = 6;
  inline const ::std::string& export_section_data() const;
  inline void set_export_section_data(const ::std::string& value);
  inline void set_export_section_data(const char* value);
  inline void set_export_section_data(const void* value, size_t size);
  inline ::std::string* mutable_export_section_data();
  inline ::std::string* release_export_section_data();
  inline void set_allocated_export_section_data(::std::string* export_section_data);

  // repeated .safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData debug_data = 7;
  inline int debug_data_size() const;
  inline void clear_debug_data();
  static const int kDebugDataFieldNumber = 7;
  inline const ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData& debug_data(int index) const;
  inline ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData* mutable_debug_data(int index);
  inline ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData* add_debug_data();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData >&
      debug_data() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData >*
      mutable_debug_data();

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadRequest.PEImageHeaders)
 private:
  inline void set_has_dos_header();
  inline void clear_has_dos_header();
  inline void set_has_file_header();
  inline void clear_has_file_header();
  inline void set_has_optional_headers32();
  inline void clear_has_optional_headers32();
  inline void set_has_optional_headers64();
  inline void clear_has_optional_headers64();
  inline void set_has_export_section_data();
  inline void clear_has_export_section_data();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* dos_header_;
  ::std::string* file_header_;
  ::std::string* optional_headers32_;
  ::std::string* optional_headers64_;
  ::google::protobuf::RepeatedPtrField< ::std::string> section_header_;
  ::std::string* export_section_data_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData > debug_data_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadRequest_PEImageHeaders* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadRequest_ImageHeaders : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadRequest_ImageHeaders();
  virtual ~ClientDownloadRequest_ImageHeaders();

  ClientDownloadRequest_ImageHeaders(const ClientDownloadRequest_ImageHeaders& from);

  inline ClientDownloadRequest_ImageHeaders& operator=(const ClientDownloadRequest_ImageHeaders& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadRequest_ImageHeaders& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadRequest_ImageHeaders* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadRequest_ImageHeaders* other);

  // implements Message ----------------------------------------------

  ClientDownloadRequest_ImageHeaders* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadRequest_ImageHeaders& from);
  void MergeFrom(const ClientDownloadRequest_ImageHeaders& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional .safe_browsing.ClientDownloadRequest.PEImageHeaders pe_headers = 1;
  inline bool has_pe_headers() const;
  inline void clear_pe_headers();
  static const int kPeHeadersFieldNumber = 1;
  inline const ::safe_browsing::ClientDownloadRequest_PEImageHeaders& pe_headers() const;
  inline ::safe_browsing::ClientDownloadRequest_PEImageHeaders* mutable_pe_headers();
  inline ::safe_browsing::ClientDownloadRequest_PEImageHeaders* release_pe_headers();
  inline void set_allocated_pe_headers(::safe_browsing::ClientDownloadRequest_PEImageHeaders* pe_headers);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadRequest.ImageHeaders)
 private:
  inline void set_has_pe_headers();
  inline void clear_has_pe_headers();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::safe_browsing::ClientDownloadRequest_PEImageHeaders* pe_headers_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadRequest_ImageHeaders* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadRequest_ArchivedBinary : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadRequest_ArchivedBinary();
  virtual ~ClientDownloadRequest_ArchivedBinary();

  ClientDownloadRequest_ArchivedBinary(const ClientDownloadRequest_ArchivedBinary& from);

  inline ClientDownloadRequest_ArchivedBinary& operator=(const ClientDownloadRequest_ArchivedBinary& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadRequest_ArchivedBinary& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadRequest_ArchivedBinary* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadRequest_ArchivedBinary* other);

  // implements Message ----------------------------------------------

  ClientDownloadRequest_ArchivedBinary* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadRequest_ArchivedBinary& from);
  void MergeFrom(const ClientDownloadRequest_ArchivedBinary& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional string file_basename = 1;
  inline bool has_file_basename() const;
  inline void clear_file_basename();
  static const int kFileBasenameFieldNumber = 1;
  inline const ::std::string& file_basename() const;
  inline void set_file_basename(const ::std::string& value);
  inline void set_file_basename(const char* value);
  inline void set_file_basename(const char* value, size_t size);
  inline ::std::string* mutable_file_basename();
  inline ::std::string* release_file_basename();
  inline void set_allocated_file_basename(::std::string* file_basename);

  // optional .safe_browsing.ClientDownloadRequest.DownloadType download_type = 2;
  inline bool has_download_type() const;
  inline void clear_download_type();
  static const int kDownloadTypeFieldNumber = 2;
  inline ::safe_browsing::ClientDownloadRequest_DownloadType download_type() const;
  inline void set_download_type(::safe_browsing::ClientDownloadRequest_DownloadType value);

  // optional .safe_browsing.ClientDownloadRequest.Digests digests = 3;
  inline bool has_digests() const;
  inline void clear_digests();
  static const int kDigestsFieldNumber = 3;
  inline const ::safe_browsing::ClientDownloadRequest_Digests& digests() const;
  inline ::safe_browsing::ClientDownloadRequest_Digests* mutable_digests();
  inline ::safe_browsing::ClientDownloadRequest_Digests* release_digests();
  inline void set_allocated_digests(::safe_browsing::ClientDownloadRequest_Digests* digests);

  // optional int64 length = 4;
  inline bool has_length() const;
  inline void clear_length();
  static const int kLengthFieldNumber = 4;
  inline ::google::protobuf::int64 length() const;
  inline void set_length(::google::protobuf::int64 value);

  // optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 5;
  inline bool has_signature() const;
  inline void clear_signature();
  static const int kSignatureFieldNumber = 5;
  inline const ::safe_browsing::ClientDownloadRequest_SignatureInfo& signature() const;
  inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* mutable_signature();
  inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* release_signature();
  inline void set_allocated_signature(::safe_browsing::ClientDownloadRequest_SignatureInfo* signature);

  // optional .safe_browsing.ClientDownloadRequest.ImageHeaders image_headers = 6;
  inline bool has_image_headers() const;
  inline void clear_image_headers();
  static const int kImageHeadersFieldNumber = 6;
  inline const ::safe_browsing::ClientDownloadRequest_ImageHeaders& image_headers() const;
  inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* mutable_image_headers();
  inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* release_image_headers();
  inline void set_allocated_image_headers(::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadRequest.ArchivedBinary)
 private:
  inline void set_has_file_basename();
  inline void clear_has_file_basename();
  inline void set_has_download_type();
  inline void clear_has_download_type();
  inline void set_has_digests();
  inline void clear_has_digests();
  inline void set_has_length();
  inline void clear_has_length();
  inline void set_has_signature();
  inline void clear_has_signature();
  inline void set_has_image_headers();
  inline void clear_has_image_headers();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* file_basename_;
  ::safe_browsing::ClientDownloadRequest_Digests* digests_;
  ::google::protobuf::int64 length_;
  ::safe_browsing::ClientDownloadRequest_SignatureInfo* signature_;
  ::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers_;
  int download_type_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadRequest_ArchivedBinary* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadRequest : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadRequest();
  virtual ~ClientDownloadRequest();

  ClientDownloadRequest(const ClientDownloadRequest& from);

  inline ClientDownloadRequest& operator=(const ClientDownloadRequest& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadRequest& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadRequest* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadRequest* other);

  // implements Message ----------------------------------------------

  ClientDownloadRequest* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadRequest& from);
  void MergeFrom(const ClientDownloadRequest& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientDownloadRequest_Digests Digests;
  typedef ClientDownloadRequest_Resource Resource;
  typedef ClientDownloadRequest_CertificateChain CertificateChain;
  typedef ClientDownloadRequest_SignatureInfo SignatureInfo;
  typedef ClientDownloadRequest_PEImageHeaders PEImageHeaders;
  typedef ClientDownloadRequest_ImageHeaders ImageHeaders;
  typedef ClientDownloadRequest_ArchivedBinary ArchivedBinary;

  typedef ClientDownloadRequest_ResourceType ResourceType;
  static const ResourceType DOWNLOAD_URL = ClientDownloadRequest_ResourceType_DOWNLOAD_URL;
  static const ResourceType DOWNLOAD_REDIRECT = ClientDownloadRequest_ResourceType_DOWNLOAD_REDIRECT;
  static const ResourceType TAB_URL = ClientDownloadRequest_ResourceType_TAB_URL;
  static const ResourceType TAB_REDIRECT = ClientDownloadRequest_ResourceType_TAB_REDIRECT;
  static inline bool ResourceType_IsValid(int value) {
    return ClientDownloadRequest_ResourceType_IsValid(value);
  }
  static const ResourceType ResourceType_MIN =
    ClientDownloadRequest_ResourceType_ResourceType_MIN;
  static const ResourceType ResourceType_MAX =
    ClientDownloadRequest_ResourceType_ResourceType_MAX;
  static const int ResourceType_ARRAYSIZE =
    ClientDownloadRequest_ResourceType_ResourceType_ARRAYSIZE;

  typedef ClientDownloadRequest_DownloadType DownloadType;
  static const DownloadType WIN_EXECUTABLE = ClientDownloadRequest_DownloadType_WIN_EXECUTABLE;
  static const DownloadType CHROME_EXTENSION = ClientDownloadRequest_DownloadType_CHROME_EXTENSION;
  static const DownloadType ANDROID_APK = ClientDownloadRequest_DownloadType_ANDROID_APK;
  static const DownloadType ZIPPED_EXECUTABLE = ClientDownloadRequest_DownloadType_ZIPPED_EXECUTABLE;
  static const DownloadType MAC_EXECUTABLE = ClientDownloadRequest_DownloadType_MAC_EXECUTABLE;
  static inline bool DownloadType_IsValid(int value) {
    return ClientDownloadRequest_DownloadType_IsValid(value);
  }
  static const DownloadType DownloadType_MIN =
    ClientDownloadRequest_DownloadType_DownloadType_MIN;
  static const DownloadType DownloadType_MAX =
    ClientDownloadRequest_DownloadType_DownloadType_MAX;
  static const int DownloadType_ARRAYSIZE =
    ClientDownloadRequest_DownloadType_DownloadType_ARRAYSIZE;

  // accessors -------------------------------------------------------

  // required string url = 1;
  inline bool has_url() const;
  inline void clear_url();
  static const int kUrlFieldNumber = 1;
  inline const ::std::string& url() const;
  inline void set_url(const ::std::string& value);
  inline void set_url(const char* value);
  inline void set_url(const char* value, size_t size);
  inline ::std::string* mutable_url();
  inline ::std::string* release_url();
  inline void set_allocated_url(::std::string* url);

  // required .safe_browsing.ClientDownloadRequest.Digests digests = 2;
  inline bool has_digests() const;
  inline void clear_digests();
  static const int kDigestsFieldNumber = 2;
  inline const ::safe_browsing::ClientDownloadRequest_Digests& digests() const;
  inline ::safe_browsing::ClientDownloadRequest_Digests* mutable_digests();
  inline ::safe_browsing::ClientDownloadRequest_Digests* release_digests();
  inline void set_allocated_digests(::safe_browsing::ClientDownloadRequest_Digests* digests);

  // required int64 length = 3;
  inline bool has_length() const;
  inline void clear_length();
  static const int kLengthFieldNumber = 3;
  inline ::google::protobuf::int64 length() const;
  inline void set_length(::google::protobuf::int64 value);

  // repeated .safe_browsing.ClientDownloadRequest.Resource resources = 4;
  inline int resources_size() const;
  inline void clear_resources();
  static const int kResourcesFieldNumber = 4;
  inline const ::safe_browsing::ClientDownloadRequest_Resource& resources(int index) const;
  inline ::safe_browsing::ClientDownloadRequest_Resource* mutable_resources(int index);
  inline ::safe_browsing::ClientDownloadRequest_Resource* add_resources();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_Resource >&
      resources() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_Resource >*
      mutable_resources();

  // optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 5;
  inline bool has_signature() const;
  inline void clear_signature();
  static const int kSignatureFieldNumber = 5;
  inline const ::safe_browsing::ClientDownloadRequest_SignatureInfo& signature() const;
  inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* mutable_signature();
  inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* release_signature();
  inline void set_allocated_signature(::safe_browsing::ClientDownloadRequest_SignatureInfo* signature);

  // optional bool user_initiated = 6;
  inline bool has_user_initiated() const;
  inline void clear_user_initiated();
  static const int kUserInitiatedFieldNumber = 6;
  inline bool user_initiated() const;
  inline void set_user_initiated(bool value);

  // optional string file_basename = 9;
  inline bool has_file_basename() const;
  inline void clear_file_basename();
  static const int kFileBasenameFieldNumber = 9;
  inline const ::std::string& file_basename() const;
  inline void set_file_basename(const ::std::string& value);
  inline void set_file_basename(const char* value);
  inline void set_file_basename(const char* value, size_t size);
  inline ::std::string* mutable_file_basename();
  inline ::std::string* release_file_basename();
  inline void set_allocated_file_basename(::std::string* file_basename);

  // optional .safe_browsing.ClientDownloadRequest.DownloadType download_type = 10 [default = WIN_EXECUTABLE];
  inline bool has_download_type() const;
  inline void clear_download_type();
  static const int kDownloadTypeFieldNumber = 10;
  inline ::safe_browsing::ClientDownloadRequest_DownloadType download_type() const;
  inline void set_download_type(::safe_browsing::ClientDownloadRequest_DownloadType value);

  // optional string locale = 11;
  inline bool has_locale() const;
  inline void clear_locale();
  static const int kLocaleFieldNumber = 11;
  inline const ::std::string& locale() const;
  inline void set_locale(const ::std::string& value);
  inline void set_locale(const char* value);
  inline void set_locale(const char* value, size_t size);
  inline ::std::string* mutable_locale();
  inline ::std::string* release_locale();
  inline void set_allocated_locale(::std::string* locale);

  // optional .safe_browsing.ClientDownloadRequest.ImageHeaders image_headers = 18;
  inline bool has_image_headers() const;
  inline void clear_image_headers();
  static const int kImageHeadersFieldNumber = 18;
  inline const ::safe_browsing::ClientDownloadRequest_ImageHeaders& image_headers() const;
  inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* mutable_image_headers();
  inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* release_image_headers();
  inline void set_allocated_image_headers(::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers);

  // repeated .safe_browsing.ClientDownloadRequest.ArchivedBinary archived_binary = 22;
  inline int archived_binary_size() const;
  inline void clear_archived_binary();
  static const int kArchivedBinaryFieldNumber = 22;
  inline const ::safe_browsing::ClientDownloadRequest_ArchivedBinary& archived_binary(int index) const;
  inline ::safe_browsing::ClientDownloadRequest_ArchivedBinary* mutable_archived_binary(int index);
  inline ::safe_browsing::ClientDownloadRequest_ArchivedBinary* add_archived_binary();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_ArchivedBinary >&
      archived_binary() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_ArchivedBinary >*
      mutable_archived_binary();

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadRequest)
 private:
  inline void set_has_url();
  inline void clear_has_url();
  inline void set_has_digests();
  inline void clear_has_digests();
  inline void set_has_length();
  inline void clear_has_length();
  inline void set_has_signature();
  inline void clear_has_signature();
  inline void set_has_user_initiated();
  inline void clear_has_user_initiated();
  inline void set_has_file_basename();
  inline void clear_has_file_basename();
  inline void set_has_download_type();
  inline void clear_has_download_type();
  inline void set_has_locale();
  inline void clear_has_locale();
  inline void set_has_image_headers();
  inline void clear_has_image_headers();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* url_;
  ::safe_browsing::ClientDownloadRequest_Digests* digests_;
  ::google::protobuf::int64 length_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_Resource > resources_;
  ::safe_browsing::ClientDownloadRequest_SignatureInfo* signature_;
  ::std::string* file_basename_;
  bool user_initiated_;
  int download_type_;
  ::std::string* locale_;
  ::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_ArchivedBinary > archived_binary_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadRequest* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadResponse_MoreInfo : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadResponse_MoreInfo();
  virtual ~ClientDownloadResponse_MoreInfo();

  ClientDownloadResponse_MoreInfo(const ClientDownloadResponse_MoreInfo& from);

  inline ClientDownloadResponse_MoreInfo& operator=(const ClientDownloadResponse_MoreInfo& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadResponse_MoreInfo& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadResponse_MoreInfo* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadResponse_MoreInfo* other);

  // implements Message ----------------------------------------------

  ClientDownloadResponse_MoreInfo* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadResponse_MoreInfo& from);
  void MergeFrom(const ClientDownloadResponse_MoreInfo& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional string description = 1;
  inline bool has_description() const;
  inline void clear_description();
  static const int kDescriptionFieldNumber = 1;
  inline const ::std::string& description() const;
  inline void set_description(const ::std::string& value);
  inline void set_description(const char* value);
  inline void set_description(const char* value, size_t size);
  inline ::std::string* mutable_description();
  inline ::std::string* release_description();
  inline void set_allocated_description(::std::string* description);

  // optional string url = 2;
  inline bool has_url() const;
  inline void clear_url();
  static const int kUrlFieldNumber = 2;
  inline const ::std::string& url() const;
  inline void set_url(const ::std::string& value);
  inline void set_url(const char* value);
  inline void set_url(const char* value, size_t size);
  inline ::std::string* mutable_url();
  inline ::std::string* release_url();
  inline void set_allocated_url(::std::string* url);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadResponse.MoreInfo)
 private:
  inline void set_has_description();
  inline void clear_has_description();
  inline void set_has_url();
  inline void clear_has_url();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* description_;
  ::std::string* url_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadResponse_MoreInfo* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadResponse : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadResponse();
  virtual ~ClientDownloadResponse();

  ClientDownloadResponse(const ClientDownloadResponse& from);

  inline ClientDownloadResponse& operator=(const ClientDownloadResponse& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadResponse& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadResponse* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadResponse* other);

  // implements Message ----------------------------------------------

  ClientDownloadResponse* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadResponse& from);
  void MergeFrom(const ClientDownloadResponse& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientDownloadResponse_MoreInfo MoreInfo;

  typedef ClientDownloadResponse_Verdict Verdict;
  static const Verdict SAFE = ClientDownloadResponse_Verdict_SAFE;
  static const Verdict DANGEROUS = ClientDownloadResponse_Verdict_DANGEROUS;
  static const Verdict UNCOMMON = ClientDownloadResponse_Verdict_UNCOMMON;
  static const Verdict POTENTIALLY_UNWANTED = ClientDownloadResponse_Verdict_POTENTIALLY_UNWANTED;
  static const Verdict DANGEROUS_HOST = ClientDownloadResponse_Verdict_DANGEROUS_HOST;
  static inline bool Verdict_IsValid(int value) {
    return ClientDownloadResponse_Verdict_IsValid(value);
  }
  static const Verdict Verdict_MIN =
    ClientDownloadResponse_Verdict_Verdict_MIN;
  static const Verdict Verdict_MAX =
    ClientDownloadResponse_Verdict_Verdict_MAX;
  static const int Verdict_ARRAYSIZE =
    ClientDownloadResponse_Verdict_Verdict_ARRAYSIZE;

  // accessors -------------------------------------------------------

  // required .safe_browsing.ClientDownloadResponse.Verdict verdict = 1;
  inline bool has_verdict() const;
  inline void clear_verdict();
  static const int kVerdictFieldNumber = 1;
  inline ::safe_browsing::ClientDownloadResponse_Verdict verdict() const;
  inline void set_verdict(::safe_browsing::ClientDownloadResponse_Verdict value);

  // optional .safe_browsing.ClientDownloadResponse.MoreInfo more_info = 2;
  inline bool has_more_info() const;
  inline void clear_more_info();
  static const int kMoreInfoFieldNumber = 2;
  inline const ::safe_browsing::ClientDownloadResponse_MoreInfo& more_info() const;
  inline ::safe_browsing::ClientDownloadResponse_MoreInfo* mutable_more_info();
  inline ::safe_browsing::ClientDownloadResponse_MoreInfo* release_more_info();
  inline void set_allocated_more_info(::safe_browsing::ClientDownloadResponse_MoreInfo* more_info);

  // optional bytes token = 3;
  inline bool has_token() const;
  inline void clear_token();
  static const int kTokenFieldNumber = 3;
  inline const ::std::string& token() const;
  inline void set_token(const ::std::string& value);
  inline void set_token(const char* value);
  inline void set_token(const void* value, size_t size);
  inline ::std::string* mutable_token();
  inline ::std::string* release_token();
  inline void set_allocated_token(::std::string* token);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadResponse)
 private:
  inline void set_has_verdict();
  inline void clear_has_verdict();
  inline void set_has_more_info();
  inline void clear_has_more_info();
  inline void set_has_token();
  inline void clear_has_token();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::safe_browsing::ClientDownloadResponse_MoreInfo* more_info_;
  ::std::string* token_;
  int verdict_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadResponse* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadReport_UserInformation : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadReport_UserInformation();
  virtual ~ClientDownloadReport_UserInformation();

  ClientDownloadReport_UserInformation(const ClientDownloadReport_UserInformation& from);

  inline ClientDownloadReport_UserInformation& operator=(const ClientDownloadReport_UserInformation& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadReport_UserInformation& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadReport_UserInformation* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadReport_UserInformation* other);

  // implements Message ----------------------------------------------

  ClientDownloadReport_UserInformation* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadReport_UserInformation& from);
  void MergeFrom(const ClientDownloadReport_UserInformation& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional string email = 1;
  inline bool has_email() const;
  inline void clear_email();
  static const int kEmailFieldNumber = 1;
  inline const ::std::string& email() const;
  inline void set_email(const ::std::string& value);
  inline void set_email(const char* value);
  inline void set_email(const char* value, size_t size);
  inline ::std::string* mutable_email();
  inline ::std::string* release_email();
  inline void set_allocated_email(::std::string* email);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadReport.UserInformation)
 private:
  inline void set_has_email();
  inline void clear_has_email();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* email_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadReport_UserInformation* default_instance_;
};
// -------------------------------------------------------------------

class ClientDownloadReport : public ::google::protobuf::MessageLite {
 public:
  ClientDownloadReport();
  virtual ~ClientDownloadReport();

  ClientDownloadReport(const ClientDownloadReport& from);

  inline ClientDownloadReport& operator=(const ClientDownloadReport& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientDownloadReport& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientDownloadReport* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientDownloadReport* other);

  // implements Message ----------------------------------------------

  ClientDownloadReport* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientDownloadReport& from);
  void MergeFrom(const ClientDownloadReport& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientDownloadReport_UserInformation UserInformation;

  typedef ClientDownloadReport_Reason Reason;
  static const Reason SHARE = ClientDownloadReport_Reason_SHARE;
  static const Reason FALSE_POSITIVE = ClientDownloadReport_Reason_FALSE_POSITIVE;
  static const Reason APPEAL = ClientDownloadReport_Reason_APPEAL;
  static inline bool Reason_IsValid(int value) {
    return ClientDownloadReport_Reason_IsValid(value);
  }
  static const Reason Reason_MIN =
    ClientDownloadReport_Reason_Reason_MIN;
  static const Reason Reason_MAX =
    ClientDownloadReport_Reason_Reason_MAX;
  static const int Reason_ARRAYSIZE =
    ClientDownloadReport_Reason_Reason_ARRAYSIZE;

  // accessors -------------------------------------------------------

  // optional .safe_browsing.ClientDownloadReport.Reason reason = 1;
  inline bool has_reason() const;
  inline void clear_reason();
  static const int kReasonFieldNumber = 1;
  inline ::safe_browsing::ClientDownloadReport_Reason reason() const;
  inline void set_reason(::safe_browsing::ClientDownloadReport_Reason value);

  // optional .safe_browsing.ClientDownloadRequest download_request = 2;
  inline bool has_download_request() const;
  inline void clear_download_request();
  static const int kDownloadRequestFieldNumber = 2;
  inline const ::safe_browsing::ClientDownloadRequest& download_request() const;
  inline ::safe_browsing::ClientDownloadRequest* mutable_download_request();
  inline ::safe_browsing::ClientDownloadRequest* release_download_request();
  inline void set_allocated_download_request(::safe_browsing::ClientDownloadRequest* download_request);

  // optional .safe_browsing.ClientDownloadReport.UserInformation user_information = 3;
  inline bool has_user_information() const;
  inline void clear_user_information();
  static const int kUserInformationFieldNumber = 3;
  inline const ::safe_browsing::ClientDownloadReport_UserInformation& user_information() const;
  inline ::safe_browsing::ClientDownloadReport_UserInformation* mutable_user_information();
  inline ::safe_browsing::ClientDownloadReport_UserInformation* release_user_information();
  inline void set_allocated_user_information(::safe_browsing::ClientDownloadReport_UserInformation* user_information);

  // optional bytes comment = 4;
  inline bool has_comment() const;
  inline void clear_comment();
  static const int kCommentFieldNumber = 4;
  inline const ::std::string& comment() const;
  inline void set_comment(const ::std::string& value);
  inline void set_comment(const char* value);
  inline void set_comment(const void* value, size_t size);
  inline ::std::string* mutable_comment();
  inline ::std::string* release_comment();
  inline void set_allocated_comment(::std::string* comment);

  // optional .safe_browsing.ClientDownloadResponse download_response = 5;
  inline bool has_download_response() const;
  inline void clear_download_response();
  static const int kDownloadResponseFieldNumber = 5;
  inline const ::safe_browsing::ClientDownloadResponse& download_response() const;
  inline ::safe_browsing::ClientDownloadResponse* mutable_download_response();
  inline ::safe_browsing::ClientDownloadResponse* release_download_response();
  inline void set_allocated_download_response(::safe_browsing::ClientDownloadResponse* download_response);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientDownloadReport)
 private:
  inline void set_has_reason();
  inline void clear_has_reason();
  inline void set_has_download_request();
  inline void clear_has_download_request();
  inline void set_has_user_information();
  inline void clear_has_user_information();
  inline void set_has_comment();
  inline void clear_has_comment();
  inline void set_has_download_response();
  inline void clear_has_download_response();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::safe_browsing::ClientDownloadRequest* download_request_;
  ::safe_browsing::ClientDownloadReport_UserInformation* user_information_;
  ::std::string* comment_;
  ::safe_browsing::ClientDownloadResponse* download_response_;
  int reason_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientDownloadReport* default_instance_;
};
// -------------------------------------------------------------------

class ClientUploadResponse : public ::google::protobuf::MessageLite {
 public:
  ClientUploadResponse();
  virtual ~ClientUploadResponse();

  ClientUploadResponse(const ClientUploadResponse& from);

  inline ClientUploadResponse& operator=(const ClientUploadResponse& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientUploadResponse& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientUploadResponse* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientUploadResponse* other);

  // implements Message ----------------------------------------------

  ClientUploadResponse* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientUploadResponse& from);
  void MergeFrom(const ClientUploadResponse& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientUploadResponse_UploadStatus UploadStatus;
  static const UploadStatus SUCCESS = ClientUploadResponse_UploadStatus_SUCCESS;
  static const UploadStatus UPLOAD_FAILURE = ClientUploadResponse_UploadStatus_UPLOAD_FAILURE;
  static inline bool UploadStatus_IsValid(int value) {
    return ClientUploadResponse_UploadStatus_IsValid(value);
  }
  static const UploadStatus UploadStatus_MIN =
    ClientUploadResponse_UploadStatus_UploadStatus_MIN;
  static const UploadStatus UploadStatus_MAX =
    ClientUploadResponse_UploadStatus_UploadStatus_MAX;
  static const int UploadStatus_ARRAYSIZE =
    ClientUploadResponse_UploadStatus_UploadStatus_ARRAYSIZE;

  // accessors -------------------------------------------------------

  // optional .safe_browsing.ClientUploadResponse.UploadStatus status = 1;
  inline bool has_status() const;
  inline void clear_status();
  static const int kStatusFieldNumber = 1;
  inline ::safe_browsing::ClientUploadResponse_UploadStatus status() const;
  inline void set_status(::safe_browsing::ClientUploadResponse_UploadStatus value);

  // optional string permalink = 2;
  inline bool has_permalink() const;
  inline void clear_permalink();
  static const int kPermalinkFieldNumber = 2;
  inline const ::std::string& permalink() const;
  inline void set_permalink(const ::std::string& value);
  inline void set_permalink(const char* value);
  inline void set_permalink(const char* value, size_t size);
  inline ::std::string* mutable_permalink();
  inline ::std::string* release_permalink();
  inline void set_allocated_permalink(::std::string* permalink);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientUploadResponse)
 private:
  inline void set_has_status();
  inline void clear_has_status();
  inline void set_has_permalink();
  inline void clear_has_permalink();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* permalink_;
  int status_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientUploadResponse* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_IncidentData_TrackedPreferenceIncident : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_IncidentData_TrackedPreferenceIncident();
  virtual ~ClientIncidentReport_IncidentData_TrackedPreferenceIncident();

  ClientIncidentReport_IncidentData_TrackedPreferenceIncident(const ClientIncidentReport_IncidentData_TrackedPreferenceIncident& from);

  inline ClientIncidentReport_IncidentData_TrackedPreferenceIncident& operator=(const ClientIncidentReport_IncidentData_TrackedPreferenceIncident& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_IncidentData_TrackedPreferenceIncident& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_IncidentData_TrackedPreferenceIncident* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_IncidentData_TrackedPreferenceIncident* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_IncidentData_TrackedPreferenceIncident* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_IncidentData_TrackedPreferenceIncident& from);
  void MergeFrom(const ClientIncidentReport_IncidentData_TrackedPreferenceIncident& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState ValueState;
  static const ValueState UNKNOWN = ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_UNKNOWN;
  static const ValueState CLEARED = ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_CLEARED;
  static const ValueState WEAK_LEGACY_OBSOLETE = ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_WEAK_LEGACY_OBSOLETE;
  static const ValueState CHANGED = ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_CHANGED;
  static const ValueState UNTRUSTED_UNKNOWN_VALUE = ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_UNTRUSTED_UNKNOWN_VALUE;
  static inline bool ValueState_IsValid(int value) {
    return ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_IsValid(value);
  }
  static const ValueState ValueState_MIN =
    ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_ValueState_MIN;
  static const ValueState ValueState_MAX =
    ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_ValueState_MAX;
  static const int ValueState_ARRAYSIZE =
    ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_ValueState_ARRAYSIZE;

  // accessors -------------------------------------------------------

  // optional string path = 1;
  inline bool has_path() const;
  inline void clear_path();
  static const int kPathFieldNumber = 1;
  inline const ::std::string& path() const;
  inline void set_path(const ::std::string& value);
  inline void set_path(const char* value);
  inline void set_path(const char* value, size_t size);
  inline ::std::string* mutable_path();
  inline ::std::string* release_path();
  inline void set_allocated_path(::std::string* path);

  // optional string atomic_value = 2;
  inline bool has_atomic_value() const;
  inline void clear_atomic_value();
  static const int kAtomicValueFieldNumber = 2;
  inline const ::std::string& atomic_value() const;
  inline void set_atomic_value(const ::std::string& value);
  inline void set_atomic_value(const char* value);
  inline void set_atomic_value(const char* value, size_t size);
  inline ::std::string* mutable_atomic_value();
  inline ::std::string* release_atomic_value();
  inline void set_allocated_atomic_value(::std::string* atomic_value);

  // repeated string split_key = 3;
  inline int split_key_size() const;
  inline void clear_split_key();
  static const int kSplitKeyFieldNumber = 3;
  inline const ::std::string& split_key(int index) const;
  inline ::std::string* mutable_split_key(int index);
  inline void set_split_key(int index, const ::std::string& value);
  inline void set_split_key(int index, const char* value);
  inline void set_split_key(int index, const char* value, size_t size);
  inline ::std::string* add_split_key();
  inline void add_split_key(const ::std::string& value);
  inline void add_split_key(const char* value);
  inline void add_split_key(const char* value, size_t size);
  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& split_key() const;
  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_split_key();

  // optional .safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.ValueState value_state = 4;
  inline bool has_value_state() const;
  inline void clear_value_state();
  static const int kValueStateFieldNumber = 4;
  inline ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState value_state() const;
  inline void set_value_state(::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState value);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident)
 private:
  inline void set_has_path();
  inline void clear_has_path();
  inline void set_has_atomic_value();
  inline void clear_has_atomic_value();
  inline void set_has_value_state();
  inline void clear_has_value_state();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* path_;
  ::std::string* atomic_value_;
  ::google::protobuf::RepeatedPtrField< ::std::string> split_key_;
  int value_state_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_IncidentData_TrackedPreferenceIncident* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_IncidentData_BinaryIntegrityIncident : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_IncidentData_BinaryIntegrityIncident();
  virtual ~ClientIncidentReport_IncidentData_BinaryIntegrityIncident();

  ClientIncidentReport_IncidentData_BinaryIntegrityIncident(const ClientIncidentReport_IncidentData_BinaryIntegrityIncident& from);

  inline ClientIncidentReport_IncidentData_BinaryIntegrityIncident& operator=(const ClientIncidentReport_IncidentData_BinaryIntegrityIncident& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_IncidentData_BinaryIntegrityIncident& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_IncidentData_BinaryIntegrityIncident* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_IncidentData_BinaryIntegrityIncident* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_IncidentData_BinaryIntegrityIncident* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_IncidentData_BinaryIntegrityIncident& from);
  void MergeFrom(const ClientIncidentReport_IncidentData_BinaryIntegrityIncident& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional string file_basename = 1;
  inline bool has_file_basename() const;
  inline void clear_file_basename();
  static const int kFileBasenameFieldNumber = 1;
  inline const ::std::string& file_basename() const;
  inline void set_file_basename(const ::std::string& value);
  inline void set_file_basename(const char* value);
  inline void set_file_basename(const char* value, size_t size);
  inline ::std::string* mutable_file_basename();
  inline ::std::string* release_file_basename();
  inline void set_allocated_file_basename(::std::string* file_basename);

  // optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 2;
  inline bool has_signature() const;
  inline void clear_signature();
  static const int kSignatureFieldNumber = 2;
  inline const ::safe_browsing::ClientDownloadRequest_SignatureInfo& signature() const;
  inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* mutable_signature();
  inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* release_signature();
  inline void set_allocated_signature(::safe_browsing::ClientDownloadRequest_SignatureInfo* signature);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident)
 private:
  inline void set_has_file_basename();
  inline void clear_has_file_basename();
  inline void set_has_signature();
  inline void clear_has_signature();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* file_basename_;
  ::safe_browsing::ClientDownloadRequest_SignatureInfo* signature_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_IncidentData_BinaryIntegrityIncident* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_IncidentData_BlacklistLoadIncident : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_IncidentData_BlacklistLoadIncident();
  virtual ~ClientIncidentReport_IncidentData_BlacklistLoadIncident();

  ClientIncidentReport_IncidentData_BlacklistLoadIncident(const ClientIncidentReport_IncidentData_BlacklistLoadIncident& from);

  inline ClientIncidentReport_IncidentData_BlacklistLoadIncident& operator=(const ClientIncidentReport_IncidentData_BlacklistLoadIncident& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_IncidentData_BlacklistLoadIncident& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_IncidentData_BlacklistLoadIncident* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_IncidentData_BlacklistLoadIncident* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_IncidentData_BlacklistLoadIncident* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_IncidentData_BlacklistLoadIncident& from);
  void MergeFrom(const ClientIncidentReport_IncidentData_BlacklistLoadIncident& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional string path = 1;
  inline bool has_path() const;
  inline void clear_path();
  static const int kPathFieldNumber = 1;
  inline const ::std::string& path() const;
  inline void set_path(const ::std::string& value);
  inline void set_path(const char* value);
  inline void set_path(const char* value, size_t size);
  inline ::std::string* mutable_path();
  inline ::std::string* release_path();
  inline void set_allocated_path(::std::string* path);

  // optional .safe_browsing.ClientDownloadRequest.Digests digest = 2;
  inline bool has_digest() const;
  inline void clear_digest();
  static const int kDigestFieldNumber = 2;
  inline const ::safe_browsing::ClientDownloadRequest_Digests& digest() const;
  inline ::safe_browsing::ClientDownloadRequest_Digests* mutable_digest();
  inline ::safe_browsing::ClientDownloadRequest_Digests* release_digest();
  inline void set_allocated_digest(::safe_browsing::ClientDownloadRequest_Digests* digest);

  // optional string version = 3;
  inline bool has_version() const;
  inline void clear_version();
  static const int kVersionFieldNumber = 3;
  inline const ::std::string& version() const;
  inline void set_version(const ::std::string& value);
  inline void set_version(const char* value);
  inline void set_version(const char* value, size_t size);
  inline ::std::string* mutable_version();
  inline ::std::string* release_version();
  inline void set_allocated_version(::std::string* version);

  // optional bool blacklist_initialized = 4;
  inline bool has_blacklist_initialized() const;
  inline void clear_blacklist_initialized();
  static const int kBlacklistInitializedFieldNumber = 4;
  inline bool blacklist_initialized() const;
  inline void set_blacklist_initialized(bool value);

  // optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 5;
  inline bool has_signature() const;
  inline void clear_signature();
  static const int kSignatureFieldNumber = 5;
  inline const ::safe_browsing::ClientDownloadRequest_SignatureInfo& signature() const;
  inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* mutable_signature();
  inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* release_signature();
  inline void set_allocated_signature(::safe_browsing::ClientDownloadRequest_SignatureInfo* signature);

  // optional .safe_browsing.ClientDownloadRequest.ImageHeaders image_headers = 6;
  inline bool has_image_headers() const;
  inline void clear_image_headers();
  static const int kImageHeadersFieldNumber = 6;
  inline const ::safe_browsing::ClientDownloadRequest_ImageHeaders& image_headers() const;
  inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* mutable_image_headers();
  inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* release_image_headers();
  inline void set_allocated_image_headers(::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident)
 private:
  inline void set_has_path();
  inline void clear_has_path();
  inline void set_has_digest();
  inline void clear_has_digest();
  inline void set_has_version();
  inline void clear_has_version();
  inline void set_has_blacklist_initialized();
  inline void clear_has_blacklist_initialized();
  inline void set_has_signature();
  inline void clear_has_signature();
  inline void set_has_image_headers();
  inline void clear_has_image_headers();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* path_;
  ::safe_browsing::ClientDownloadRequest_Digests* digest_;
  ::std::string* version_;
  ::safe_browsing::ClientDownloadRequest_SignatureInfo* signature_;
  ::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers_;
  bool blacklist_initialized_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_IncidentData_BlacklistLoadIncident* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident();
  virtual ~ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident();

  ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident(const ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident& from);

  inline ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident& operator=(const ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident& from);
  void MergeFrom(const ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional string variations_seed_signature = 1;
  inline bool has_variations_seed_signature() const;
  inline void clear_variations_seed_signature();
  static const int kVariationsSeedSignatureFieldNumber = 1;
  inline const ::std::string& variations_seed_signature() const;
  inline void set_variations_seed_signature(const ::std::string& value);
  inline void set_variations_seed_signature(const char* value);
  inline void set_variations_seed_signature(const char* value, size_t size);
  inline ::std::string* mutable_variations_seed_signature();
  inline ::std::string* release_variations_seed_signature();
  inline void set_allocated_variations_seed_signature(::std::string* variations_seed_signature);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.IncidentData.VariationsSeedSignatureIncident)
 private:
  inline void set_has_variations_seed_signature();
  inline void clear_has_variations_seed_signature();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* variations_seed_signature_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_IncidentData_ScriptRequestIncident : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_IncidentData_ScriptRequestIncident();
  virtual ~ClientIncidentReport_IncidentData_ScriptRequestIncident();

  ClientIncidentReport_IncidentData_ScriptRequestIncident(const ClientIncidentReport_IncidentData_ScriptRequestIncident& from);

  inline ClientIncidentReport_IncidentData_ScriptRequestIncident& operator=(const ClientIncidentReport_IncidentData_ScriptRequestIncident& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_IncidentData_ScriptRequestIncident& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_IncidentData_ScriptRequestIncident* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_IncidentData_ScriptRequestIncident* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_IncidentData_ScriptRequestIncident* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_IncidentData_ScriptRequestIncident& from);
  void MergeFrom(const ClientIncidentReport_IncidentData_ScriptRequestIncident& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional string script_digest = 1;
  inline bool has_script_digest() const;
  inline void clear_script_digest();
  static const int kScriptDigestFieldNumber = 1;
  inline const ::std::string& script_digest() const;
  inline void set_script_digest(const ::std::string& value);
  inline void set_script_digest(const char* value);
  inline void set_script_digest(const char* value, size_t size);
  inline ::std::string* mutable_script_digest();
  inline ::std::string* release_script_digest();
  inline void set_allocated_script_digest(::std::string* script_digest);

  // optional string inclusion_origin = 2;
  inline bool has_inclusion_origin() const;
  inline void clear_inclusion_origin();
  static const int kInclusionOriginFieldNumber = 2;
  inline const ::std::string& inclusion_origin() const;
  inline void set_inclusion_origin(const ::std::string& value);
  inline void set_inclusion_origin(const char* value);
  inline void set_inclusion_origin(const char* value, size_t size);
  inline ::std::string* mutable_inclusion_origin();
  inline ::std::string* release_inclusion_origin();
  inline void set_allocated_inclusion_origin(::std::string* inclusion_origin);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident)
 private:
  inline void set_has_script_digest();
  inline void clear_has_script_digest();
  inline void set_has_inclusion_origin();
  inline void clear_has_inclusion_origin();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* script_digest_;
  ::std::string* inclusion_origin_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_IncidentData_ScriptRequestIncident* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_IncidentData : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_IncidentData();
  virtual ~ClientIncidentReport_IncidentData();

  ClientIncidentReport_IncidentData(const ClientIncidentReport_IncidentData& from);

  inline ClientIncidentReport_IncidentData& operator=(const ClientIncidentReport_IncidentData& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_IncidentData& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_IncidentData* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_IncidentData* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_IncidentData* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_IncidentData& from);
  void MergeFrom(const ClientIncidentReport_IncidentData& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientIncidentReport_IncidentData_TrackedPreferenceIncident TrackedPreferenceIncident;
  typedef ClientIncidentReport_IncidentData_BinaryIntegrityIncident BinaryIntegrityIncident;
  typedef ClientIncidentReport_IncidentData_BlacklistLoadIncident BlacklistLoadIncident;
  typedef ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident VariationsSeedSignatureIncident;
  typedef ClientIncidentReport_IncidentData_ScriptRequestIncident ScriptRequestIncident;

  // accessors -------------------------------------------------------

  // optional int64 incident_time_msec = 1;
  inline bool has_incident_time_msec() const;
  inline void clear_incident_time_msec();
  static const int kIncidentTimeMsecFieldNumber = 1;
  inline ::google::protobuf::int64 incident_time_msec() const;
  inline void set_incident_time_msec(::google::protobuf::int64 value);

  // optional .safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident tracked_preference = 2;
  inline bool has_tracked_preference() const;
  inline void clear_tracked_preference();
  static const int kTrackedPreferenceFieldNumber = 2;
  inline const ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident& tracked_preference() const;
  inline ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident* mutable_tracked_preference();
  inline ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident* release_tracked_preference();
  inline void set_allocated_tracked_preference(::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident* tracked_preference);

  // optional .safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident binary_integrity = 3;
  inline bool has_binary_integrity() const;
  inline void clear_binary_integrity();
  static const int kBinaryIntegrityFieldNumber = 3;
  inline const ::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident& binary_integrity() const;
  inline ::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident* mutable_binary_integrity();
  inline ::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident* release_binary_integrity();
  inline void set_allocated_binary_integrity(::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident* binary_integrity);

  // optional .safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident blacklist_load = 4;
  inline bool has_blacklist_load() const;
  inline void clear_blacklist_load();
  static const int kBlacklistLoadFieldNumber = 4;
  inline const ::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident& blacklist_load() const;
  inline ::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident* mutable_blacklist_load();
  inline ::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident* release_blacklist_load();
  inline void set_allocated_blacklist_load(::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident* blacklist_load);

  // optional .safe_browsing.ClientIncidentReport.IncidentData.VariationsSeedSignatureIncident variations_seed_signature = 6;
  inline bool has_variations_seed_signature() const;
  inline void clear_variations_seed_signature();
  static const int kVariationsSeedSignatureFieldNumber = 6;
  inline const ::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident& variations_seed_signature() const;
  inline ::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* mutable_variations_seed_signature();
  inline ::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* release_variations_seed_signature();
  inline void set_allocated_variations_seed_signature(::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* variations_seed_signature);

  // optional .safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident script_request = 7;
  inline bool has_script_request() const;
  inline void clear_script_request();
  static const int kScriptRequestFieldNumber = 7;
  inline const ::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident& script_request() const;
  inline ::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident* mutable_script_request();
  inline ::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident* release_script_request();
  inline void set_allocated_script_request(::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident* script_request);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.IncidentData)
 private:
  inline void set_has_incident_time_msec();
  inline void clear_has_incident_time_msec();
  inline void set_has_tracked_preference();
  inline void clear_has_tracked_preference();
  inline void set_has_binary_integrity();
  inline void clear_has_binary_integrity();
  inline void set_has_blacklist_load();
  inline void clear_has_blacklist_load();
  inline void set_has_variations_seed_signature();
  inline void clear_has_variations_seed_signature();
  inline void set_has_script_request();
  inline void clear_has_script_request();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::google::protobuf::int64 incident_time_msec_;
  ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident* tracked_preference_;
  ::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident* binary_integrity_;
  ::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident* blacklist_load_;
  ::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* variations_seed_signature_;
  ::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident* script_request_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_IncidentData* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_DownloadDetails : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_DownloadDetails();
  virtual ~ClientIncidentReport_DownloadDetails();

  ClientIncidentReport_DownloadDetails(const ClientIncidentReport_DownloadDetails& from);

  inline ClientIncidentReport_DownloadDetails& operator=(const ClientIncidentReport_DownloadDetails& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_DownloadDetails& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_DownloadDetails* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_DownloadDetails* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_DownloadDetails* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_DownloadDetails& from);
  void MergeFrom(const ClientIncidentReport_DownloadDetails& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional bytes token = 1;
  inline bool has_token() const;
  inline void clear_token();
  static const int kTokenFieldNumber = 1;
  inline const ::std::string& token() const;
  inline void set_token(const ::std::string& value);
  inline void set_token(const char* value);
  inline void set_token(const void* value, size_t size);
  inline ::std::string* mutable_token();
  inline ::std::string* release_token();
  inline void set_allocated_token(::std::string* token);

  // optional .safe_browsing.ClientDownloadRequest download = 2;
  inline bool has_download() const;
  inline void clear_download();
  static const int kDownloadFieldNumber = 2;
  inline const ::safe_browsing::ClientDownloadRequest& download() const;
  inline ::safe_browsing::ClientDownloadRequest* mutable_download();
  inline ::safe_browsing::ClientDownloadRequest* release_download();
  inline void set_allocated_download(::safe_browsing::ClientDownloadRequest* download);

  // optional int64 download_time_msec = 3;
  inline bool has_download_time_msec() const;
  inline void clear_download_time_msec();
  static const int kDownloadTimeMsecFieldNumber = 3;
  inline ::google::protobuf::int64 download_time_msec() const;
  inline void set_download_time_msec(::google::protobuf::int64 value);

  // optional int64 open_time_msec = 4;
  inline bool has_open_time_msec() const;
  inline void clear_open_time_msec();
  static const int kOpenTimeMsecFieldNumber = 4;
  inline ::google::protobuf::int64 open_time_msec() const;
  inline void set_open_time_msec(::google::protobuf::int64 value);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.DownloadDetails)
 private:
  inline void set_has_token();
  inline void clear_has_token();
  inline void set_has_download();
  inline void clear_has_download();
  inline void set_has_download_time_msec();
  inline void clear_has_download_time_msec();
  inline void set_has_open_time_msec();
  inline void clear_has_open_time_msec();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* token_;
  ::safe_browsing::ClientDownloadRequest* download_;
  ::google::protobuf::int64 download_time_msec_;
  ::google::protobuf::int64 open_time_msec_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_DownloadDetails* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_EnvironmentData_OS : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_EnvironmentData_OS();
  virtual ~ClientIncidentReport_EnvironmentData_OS();

  ClientIncidentReport_EnvironmentData_OS(const ClientIncidentReport_EnvironmentData_OS& from);

  inline ClientIncidentReport_EnvironmentData_OS& operator=(const ClientIncidentReport_EnvironmentData_OS& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_EnvironmentData_OS& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_EnvironmentData_OS* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_EnvironmentData_OS* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_EnvironmentData_OS* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_EnvironmentData_OS& from);
  void MergeFrom(const ClientIncidentReport_EnvironmentData_OS& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional string os_name = 1;
  inline bool has_os_name() const;
  inline void clear_os_name();
  static const int kOsNameFieldNumber = 1;
  inline const ::std::string& os_name() const;
  inline void set_os_name(const ::std::string& value);
  inline void set_os_name(const char* value);
  inline void set_os_name(const char* value, size_t size);
  inline ::std::string* mutable_os_name();
  inline ::std::string* release_os_name();
  inline void set_allocated_os_name(::std::string* os_name);

  // optional string os_version = 2;
  inline bool has_os_version() const;
  inline void clear_os_version();
  static const int kOsVersionFieldNumber = 2;
  inline const ::std::string& os_version() const;
  inline void set_os_version(const ::std::string& value);
  inline void set_os_version(const char* value);
  inline void set_os_version(const char* value, size_t size);
  inline ::std::string* mutable_os_version();
  inline ::std::string* release_os_version();
  inline void set_allocated_os_version(::std::string* os_version);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.EnvironmentData.OS)
 private:
  inline void set_has_os_name();
  inline void clear_has_os_name();
  inline void set_has_os_version();
  inline void clear_has_os_version();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* os_name_;
  ::std::string* os_version_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_EnvironmentData_OS* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_EnvironmentData_Machine : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_EnvironmentData_Machine();
  virtual ~ClientIncidentReport_EnvironmentData_Machine();

  ClientIncidentReport_EnvironmentData_Machine(const ClientIncidentReport_EnvironmentData_Machine& from);

  inline ClientIncidentReport_EnvironmentData_Machine& operator=(const ClientIncidentReport_EnvironmentData_Machine& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_EnvironmentData_Machine& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_EnvironmentData_Machine* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_EnvironmentData_Machine* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_EnvironmentData_Machine* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_EnvironmentData_Machine& from);
  void MergeFrom(const ClientIncidentReport_EnvironmentData_Machine& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional string cpu_architecture = 1;
  inline bool has_cpu_architecture() const;
  inline void clear_cpu_architecture();
  static const int kCpuArchitectureFieldNumber = 1;
  inline const ::std::string& cpu_architecture() const;
  inline void set_cpu_architecture(const ::std::string& value);
  inline void set_cpu_architecture(const char* value);
  inline void set_cpu_architecture(const char* value, size_t size);
  inline ::std::string* mutable_cpu_architecture();
  inline ::std::string* release_cpu_architecture();
  inline void set_allocated_cpu_architecture(::std::string* cpu_architecture);

  // optional string cpu_vendor = 2;
  inline bool has_cpu_vendor() const;
  inline void clear_cpu_vendor();
  static const int kCpuVendorFieldNumber = 2;
  inline const ::std::string& cpu_vendor() const;
  inline void set_cpu_vendor(const ::std::string& value);
  inline void set_cpu_vendor(const char* value);
  inline void set_cpu_vendor(const char* value, size_t size);
  inline ::std::string* mutable_cpu_vendor();
  inline ::std::string* release_cpu_vendor();
  inline void set_allocated_cpu_vendor(::std::string* cpu_vendor);

  // optional uint32 cpuid = 3;
  inline bool has_cpuid() const;
  inline void clear_cpuid();
  static const int kCpuidFieldNumber = 3;
  inline ::google::protobuf::uint32 cpuid() const;
  inline void set_cpuid(::google::protobuf::uint32 value);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.EnvironmentData.Machine)
 private:
  inline void set_has_cpu_architecture();
  inline void clear_has_cpu_architecture();
  inline void set_has_cpu_vendor();
  inline void clear_has_cpu_vendor();
  inline void set_has_cpuid();
  inline void clear_has_cpuid();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* cpu_architecture_;
  ::std::string* cpu_vendor_;
  ::google::protobuf::uint32 cpuid_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_EnvironmentData_Machine* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_EnvironmentData_Process_Patch : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_EnvironmentData_Process_Patch();
  virtual ~ClientIncidentReport_EnvironmentData_Process_Patch();

  ClientIncidentReport_EnvironmentData_Process_Patch(const ClientIncidentReport_EnvironmentData_Process_Patch& from);

  inline ClientIncidentReport_EnvironmentData_Process_Patch& operator=(const ClientIncidentReport_EnvironmentData_Process_Patch& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_EnvironmentData_Process_Patch& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_EnvironmentData_Process_Patch* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_EnvironmentData_Process_Patch* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_EnvironmentData_Process_Patch* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_EnvironmentData_Process_Patch& from);
  void MergeFrom(const ClientIncidentReport_EnvironmentData_Process_Patch& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional string function = 1;
  inline bool has_function() const;
  inline void clear_function();
  static const int kFunctionFieldNumber = 1;
  inline const ::std::string& function() const;
  inline void set_function(const ::std::string& value);
  inline void set_function(const char* value);
  inline void set_function(const char* value, size_t size);
  inline ::std::string* mutable_function();
  inline ::std::string* release_function();
  inline void set_allocated_function(::std::string* function);

  // optional string target_dll = 2;
  inline bool has_target_dll() const;
  inline void clear_target_dll();
  static const int kTargetDllFieldNumber = 2;
  inline const ::std::string& target_dll() const;
  inline void set_target_dll(const ::std::string& value);
  inline void set_target_dll(const char* value);
  inline void set_target_dll(const char* value, size_t size);
  inline ::std::string* mutable_target_dll();
  inline ::std::string* release_target_dll();
  inline void set_allocated_target_dll(::std::string* target_dll);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch)
 private:
  inline void set_has_function();
  inline void clear_has_function();
  inline void set_has_target_dll();
  inline void clear_has_target_dll();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* function_;
  ::std::string* target_dll_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_EnvironmentData_Process_Patch* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_EnvironmentData_Process_NetworkProvider : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_EnvironmentData_Process_NetworkProvider();
  virtual ~ClientIncidentReport_EnvironmentData_Process_NetworkProvider();

  ClientIncidentReport_EnvironmentData_Process_NetworkProvider(const ClientIncidentReport_EnvironmentData_Process_NetworkProvider& from);

  inline ClientIncidentReport_EnvironmentData_Process_NetworkProvider& operator=(const ClientIncidentReport_EnvironmentData_Process_NetworkProvider& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_EnvironmentData_Process_NetworkProvider& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_EnvironmentData_Process_NetworkProvider* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_EnvironmentData_Process_NetworkProvider* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_EnvironmentData_Process_NetworkProvider* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_EnvironmentData_Process_NetworkProvider& from);
  void MergeFrom(const ClientIncidentReport_EnvironmentData_Process_NetworkProvider& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.EnvironmentData.Process.NetworkProvider)
 private:

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_EnvironmentData_Process_NetworkProvider* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_EnvironmentData_Process_Dll : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_EnvironmentData_Process_Dll();
  virtual ~ClientIncidentReport_EnvironmentData_Process_Dll();

  ClientIncidentReport_EnvironmentData_Process_Dll(const ClientIncidentReport_EnvironmentData_Process_Dll& from);

  inline ClientIncidentReport_EnvironmentData_Process_Dll& operator=(const ClientIncidentReport_EnvironmentData_Process_Dll& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_EnvironmentData_Process_Dll& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_EnvironmentData_Process_Dll* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_EnvironmentData_Process_Dll* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_EnvironmentData_Process_Dll* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_EnvironmentData_Process_Dll& from);
  void MergeFrom(const ClientIncidentReport_EnvironmentData_Process_Dll& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientIncidentReport_EnvironmentData_Process_Dll_Feature Feature;
  static const Feature UNKNOWN = ClientIncidentReport_EnvironmentData_Process_Dll_Feature_UNKNOWN;
  static const Feature LSP = ClientIncidentReport_EnvironmentData_Process_Dll_Feature_LSP;
  static inline bool Feature_IsValid(int value) {
    return ClientIncidentReport_EnvironmentData_Process_Dll_Feature_IsValid(value);
  }
  static const Feature Feature_MIN =
    ClientIncidentReport_EnvironmentData_Process_Dll_Feature_Feature_MIN;
  static const Feature Feature_MAX =
    ClientIncidentReport_EnvironmentData_Process_Dll_Feature_Feature_MAX;
  static const int Feature_ARRAYSIZE =
    ClientIncidentReport_EnvironmentData_Process_Dll_Feature_Feature_ARRAYSIZE;

  // accessors -------------------------------------------------------

  // optional string path = 1;
  inline bool has_path() const;
  inline void clear_path();
  static const int kPathFieldNumber = 1;
  inline const ::std::string& path() const;
  inline void set_path(const ::std::string& value);
  inline void set_path(const char* value);
  inline void set_path(const char* value, size_t size);
  inline ::std::string* mutable_path();
  inline ::std::string* release_path();
  inline void set_allocated_path(::std::string* path);

  // optional uint64 base_address = 2;
  inline bool has_base_address() const;
  inline void clear_base_address();
  static const int kBaseAddressFieldNumber = 2;
  inline ::google::protobuf::uint64 base_address() const;
  inline void set_base_address(::google::protobuf::uint64 value);

  // optional uint32 length = 3;
  inline bool has_length() const;
  inline void clear_length();
  static const int kLengthFieldNumber = 3;
  inline ::google::protobuf::uint32 length() const;
  inline void set_length(::google::protobuf::uint32 value);

  // repeated .safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.Feature feature = 4;
  inline int feature_size() const;
  inline void clear_feature();
  static const int kFeatureFieldNumber = 4;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll_Feature feature(int index) const;
  inline void set_feature(int index, ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll_Feature value);
  inline void add_feature(::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll_Feature value);
  inline const ::google::protobuf::RepeatedField<int>& feature() const;
  inline ::google::protobuf::RepeatedField<int>* mutable_feature();

  // optional .safe_browsing.ClientDownloadRequest.ImageHeaders image_headers = 5;
  inline bool has_image_headers() const;
  inline void clear_image_headers();
  static const int kImageHeadersFieldNumber = 5;
  inline const ::safe_browsing::ClientDownloadRequest_ImageHeaders& image_headers() const;
  inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* mutable_image_headers();
  inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* release_image_headers();
  inline void set_allocated_image_headers(::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll)
 private:
  inline void set_has_path();
  inline void clear_has_path();
  inline void set_has_base_address();
  inline void clear_has_base_address();
  inline void set_has_length();
  inline void clear_has_length();
  inline void set_has_image_headers();
  inline void clear_has_image_headers();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* path_;
  ::google::protobuf::uint64 base_address_;
  ::google::protobuf::RepeatedField<int> feature_;
  ::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers_;
  ::google::protobuf::uint32 length_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_EnvironmentData_Process_Dll* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_EnvironmentData_Process_ModuleState : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_EnvironmentData_Process_ModuleState();
  virtual ~ClientIncidentReport_EnvironmentData_Process_ModuleState();

  ClientIncidentReport_EnvironmentData_Process_ModuleState(const ClientIncidentReport_EnvironmentData_Process_ModuleState& from);

  inline ClientIncidentReport_EnvironmentData_Process_ModuleState& operator=(const ClientIncidentReport_EnvironmentData_Process_ModuleState& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_EnvironmentData_Process_ModuleState& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_EnvironmentData_Process_ModuleState* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_EnvironmentData_Process_ModuleState* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_EnvironmentData_Process_ModuleState* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_EnvironmentData_Process_ModuleState& from);
  void MergeFrom(const ClientIncidentReport_EnvironmentData_Process_ModuleState& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState ModifiedState;
  static const ModifiedState UNKNOWN = ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_UNKNOWN;
  static const ModifiedState MODULE_STATE_UNKNOWN = ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_MODULE_STATE_UNKNOWN;
  static const ModifiedState MODULE_STATE_UNMODIFIED = ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_MODULE_STATE_UNMODIFIED;
  static const ModifiedState MODULE_STATE_MODIFIED = ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_MODULE_STATE_MODIFIED;
  static inline bool ModifiedState_IsValid(int value) {
    return ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_IsValid(value);
  }
  static const ModifiedState ModifiedState_MIN =
    ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_ModifiedState_MIN;
  static const ModifiedState ModifiedState_MAX =
    ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_ModifiedState_MAX;
  static const int ModifiedState_ARRAYSIZE =
    ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_ModifiedState_ARRAYSIZE;

  // accessors -------------------------------------------------------

  // optional string name = 1;
  inline bool has_name() const;
  inline void clear_name();
  static const int kNameFieldNumber = 1;
  inline const ::std::string& name() const;
  inline void set_name(const ::std::string& value);
  inline void set_name(const char* value);
  inline void set_name(const char* value, size_t size);
  inline ::std::string* mutable_name();
  inline ::std::string* release_name();
  inline void set_allocated_name(::std::string* name);

  // optional .safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.ModifiedState modified_state = 2;
  inline bool has_modified_state() const;
  inline void clear_modified_state();
  static const int kModifiedStateFieldNumber = 2;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState modified_state() const;
  inline void set_modified_state(::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState value);

  // repeated string modified_export = 3;
  inline int modified_export_size() const;
  inline void clear_modified_export();
  static const int kModifiedExportFieldNumber = 3;
  inline const ::std::string& modified_export(int index) const;
  inline ::std::string* mutable_modified_export(int index);
  inline void set_modified_export(int index, const ::std::string& value);
  inline void set_modified_export(int index, const char* value);
  inline void set_modified_export(int index, const char* value, size_t size);
  inline ::std::string* add_modified_export();
  inline void add_modified_export(const ::std::string& value);
  inline void add_modified_export(const char* value);
  inline void add_modified_export(const char* value, size_t size);
  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& modified_export() const;
  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_modified_export();

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState)
 private:
  inline void set_has_name();
  inline void clear_has_name();
  inline void set_has_modified_state();
  inline void clear_has_modified_state();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* name_;
  ::google::protobuf::RepeatedPtrField< ::std::string> modified_export_;
  int modified_state_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_EnvironmentData_Process_ModuleState* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_EnvironmentData_Process : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_EnvironmentData_Process();
  virtual ~ClientIncidentReport_EnvironmentData_Process();

  ClientIncidentReport_EnvironmentData_Process(const ClientIncidentReport_EnvironmentData_Process& from);

  inline ClientIncidentReport_EnvironmentData_Process& operator=(const ClientIncidentReport_EnvironmentData_Process& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_EnvironmentData_Process& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_EnvironmentData_Process* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_EnvironmentData_Process* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_EnvironmentData_Process* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_EnvironmentData_Process& from);
  void MergeFrom(const ClientIncidentReport_EnvironmentData_Process& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientIncidentReport_EnvironmentData_Process_Patch Patch;
  typedef ClientIncidentReport_EnvironmentData_Process_NetworkProvider NetworkProvider;
  typedef ClientIncidentReport_EnvironmentData_Process_Dll Dll;
  typedef ClientIncidentReport_EnvironmentData_Process_ModuleState ModuleState;

  typedef ClientIncidentReport_EnvironmentData_Process_Channel Channel;
  static const Channel CHANNEL_UNKNOWN = ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_UNKNOWN;
  static const Channel CHANNEL_CANARY = ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_CANARY;
  static const Channel CHANNEL_DEV = ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_DEV;
  static const Channel CHANNEL_BETA = ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_BETA;
  static const Channel CHANNEL_STABLE = ClientIncidentReport_EnvironmentData_Process_Channel_CHANNEL_STABLE;
  static inline bool Channel_IsValid(int value) {
    return ClientIncidentReport_EnvironmentData_Process_Channel_IsValid(value);
  }
  static const Channel Channel_MIN =
    ClientIncidentReport_EnvironmentData_Process_Channel_Channel_MIN;
  static const Channel Channel_MAX =
    ClientIncidentReport_EnvironmentData_Process_Channel_Channel_MAX;
  static const int Channel_ARRAYSIZE =
    ClientIncidentReport_EnvironmentData_Process_Channel_Channel_ARRAYSIZE;

  // accessors -------------------------------------------------------

  // optional string version = 1;
  inline bool has_version() const;
  inline void clear_version();
  static const int kVersionFieldNumber = 1;
  inline const ::std::string& version() const;
  inline void set_version(const ::std::string& value);
  inline void set_version(const char* value);
  inline void set_version(const char* value, size_t size);
  inline ::std::string* mutable_version();
  inline ::std::string* release_version();
  inline void set_allocated_version(::std::string* version);

  // repeated string OBSOLETE_dlls = 2;
  inline int obsolete_dlls_size() const;
  inline void clear_obsolete_dlls();
  static const int kOBSOLETEDllsFieldNumber = 2;
  inline const ::std::string& obsolete_dlls(int index) const;
  inline ::std::string* mutable_obsolete_dlls(int index);
  inline void set_obsolete_dlls(int index, const ::std::string& value);
  inline void set_obsolete_dlls(int index, const char* value);
  inline void set_obsolete_dlls(int index, const char* value, size_t size);
  inline ::std::string* add_obsolete_dlls();
  inline void add_obsolete_dlls(const ::std::string& value);
  inline void add_obsolete_dlls(const char* value);
  inline void add_obsolete_dlls(const char* value, size_t size);
  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& obsolete_dlls() const;
  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_obsolete_dlls();

  // repeated .safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch patches = 3;
  inline int patches_size() const;
  inline void clear_patches();
  static const int kPatchesFieldNumber = 3;
  inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch& patches(int index) const;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch* mutable_patches(int index);
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch* add_patches();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch >&
      patches() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch >*
      mutable_patches();

  // repeated .safe_browsing.ClientIncidentReport.EnvironmentData.Process.NetworkProvider network_providers = 4;
  inline int network_providers_size() const;
  inline void clear_network_providers();
  static const int kNetworkProvidersFieldNumber = 4;
  inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider& network_providers(int index) const;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider* mutable_network_providers(int index);
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider* add_network_providers();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider >&
      network_providers() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider >*
      mutable_network_providers();

  // optional .safe_browsing.ClientIncidentReport.EnvironmentData.Process.Channel chrome_update_channel = 5;
  inline bool has_chrome_update_channel() const;
  inline void clear_chrome_update_channel();
  static const int kChromeUpdateChannelFieldNumber = 5;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Channel chrome_update_channel() const;
  inline void set_chrome_update_channel(::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Channel value);

  // optional int64 uptime_msec = 6;
  inline bool has_uptime_msec() const;
  inline void clear_uptime_msec();
  static const int kUptimeMsecFieldNumber = 6;
  inline ::google::protobuf::int64 uptime_msec() const;
  inline void set_uptime_msec(::google::protobuf::int64 value);

  // optional bool metrics_consent = 7;
  inline bool has_metrics_consent() const;
  inline void clear_metrics_consent();
  static const int kMetricsConsentFieldNumber = 7;
  inline bool metrics_consent() const;
  inline void set_metrics_consent(bool value);

  // optional bool extended_consent = 8;
  inline bool has_extended_consent() const;
  inline void clear_extended_consent();
  static const int kExtendedConsentFieldNumber = 8;
  inline bool extended_consent() const;
  inline void set_extended_consent(bool value);

  // repeated .safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll dll = 9;
  inline int dll_size() const;
  inline void clear_dll();
  static const int kDllFieldNumber = 9;
  inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll& dll(int index) const;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll* mutable_dll(int index);
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll* add_dll();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll >&
      dll() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll >*
      mutable_dll();

  // repeated string blacklisted_dll = 10;
  inline int blacklisted_dll_size() const;
  inline void clear_blacklisted_dll();
  static const int kBlacklistedDllFieldNumber = 10;
  inline const ::std::string& blacklisted_dll(int index) const;
  inline ::std::string* mutable_blacklisted_dll(int index);
  inline void set_blacklisted_dll(int index, const ::std::string& value);
  inline void set_blacklisted_dll(int index, const char* value);
  inline void set_blacklisted_dll(int index, const char* value, size_t size);
  inline ::std::string* add_blacklisted_dll();
  inline void add_blacklisted_dll(const ::std::string& value);
  inline void add_blacklisted_dll(const char* value);
  inline void add_blacklisted_dll(const char* value, size_t size);
  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& blacklisted_dll() const;
  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_blacklisted_dll();

  // repeated .safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState module_state = 11;
  inline int module_state_size() const;
  inline void clear_module_state();
  static const int kModuleStateFieldNumber = 11;
  inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState& module_state(int index) const;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState* mutable_module_state(int index);
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState* add_module_state();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState >&
      module_state() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState >*
      mutable_module_state();

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.EnvironmentData.Process)
 private:
  inline void set_has_version();
  inline void clear_has_version();
  inline void set_has_chrome_update_channel();
  inline void clear_has_chrome_update_channel();
  inline void set_has_uptime_msec();
  inline void clear_has_uptime_msec();
  inline void set_has_metrics_consent();
  inline void clear_has_metrics_consent();
  inline void set_has_extended_consent();
  inline void clear_has_extended_consent();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* version_;
  ::google::protobuf::RepeatedPtrField< ::std::string> obsolete_dlls_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch > patches_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider > network_providers_;
  ::google::protobuf::int64 uptime_msec_;
  int chrome_update_channel_;
  bool metrics_consent_;
  bool extended_consent_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll > dll_;
  ::google::protobuf::RepeatedPtrField< ::std::string> blacklisted_dll_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState > module_state_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_EnvironmentData_Process* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport_EnvironmentData : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport_EnvironmentData();
  virtual ~ClientIncidentReport_EnvironmentData();

  ClientIncidentReport_EnvironmentData(const ClientIncidentReport_EnvironmentData& from);

  inline ClientIncidentReport_EnvironmentData& operator=(const ClientIncidentReport_EnvironmentData& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport_EnvironmentData& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport_EnvironmentData* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport_EnvironmentData* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport_EnvironmentData* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport_EnvironmentData& from);
  void MergeFrom(const ClientIncidentReport_EnvironmentData& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientIncidentReport_EnvironmentData_OS OS;
  typedef ClientIncidentReport_EnvironmentData_Machine Machine;
  typedef ClientIncidentReport_EnvironmentData_Process Process;

  // accessors -------------------------------------------------------

  // optional .safe_browsing.ClientIncidentReport.EnvironmentData.OS os = 1;
  inline bool has_os() const;
  inline void clear_os();
  static const int kOsFieldNumber = 1;
  inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_OS& os() const;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_OS* mutable_os();
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_OS* release_os();
  inline void set_allocated_os(::safe_browsing::ClientIncidentReport_EnvironmentData_OS* os);

  // optional .safe_browsing.ClientIncidentReport.EnvironmentData.Machine machine = 2;
  inline bool has_machine() const;
  inline void clear_machine();
  static const int kMachineFieldNumber = 2;
  inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Machine& machine() const;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Machine* mutable_machine();
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Machine* release_machine();
  inline void set_allocated_machine(::safe_browsing::ClientIncidentReport_EnvironmentData_Machine* machine);

  // optional .safe_browsing.ClientIncidentReport.EnvironmentData.Process process = 3;
  inline bool has_process() const;
  inline void clear_process();
  static const int kProcessFieldNumber = 3;
  inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Process& process() const;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process* mutable_process();
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process* release_process();
  inline void set_allocated_process(::safe_browsing::ClientIncidentReport_EnvironmentData_Process* process);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport.EnvironmentData)
 private:
  inline void set_has_os();
  inline void clear_has_os();
  inline void set_has_machine();
  inline void clear_has_machine();
  inline void set_has_process();
  inline void clear_has_process();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::safe_browsing::ClientIncidentReport_EnvironmentData_OS* os_;
  ::safe_browsing::ClientIncidentReport_EnvironmentData_Machine* machine_;
  ::safe_browsing::ClientIncidentReport_EnvironmentData_Process* process_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport_EnvironmentData* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentReport : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentReport();
  virtual ~ClientIncidentReport();

  ClientIncidentReport(const ClientIncidentReport& from);

  inline ClientIncidentReport& operator=(const ClientIncidentReport& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentReport& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentReport* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentReport* other);

  // implements Message ----------------------------------------------

  ClientIncidentReport* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentReport& from);
  void MergeFrom(const ClientIncidentReport& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientIncidentReport_IncidentData IncidentData;
  typedef ClientIncidentReport_DownloadDetails DownloadDetails;
  typedef ClientIncidentReport_EnvironmentData EnvironmentData;

  // accessors -------------------------------------------------------

  // repeated .safe_browsing.ClientIncidentReport.IncidentData incident = 1;
  inline int incident_size() const;
  inline void clear_incident();
  static const int kIncidentFieldNumber = 1;
  inline const ::safe_browsing::ClientIncidentReport_IncidentData& incident(int index) const;
  inline ::safe_browsing::ClientIncidentReport_IncidentData* mutable_incident(int index);
  inline ::safe_browsing::ClientIncidentReport_IncidentData* add_incident();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_IncidentData >&
      incident() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_IncidentData >*
      mutable_incident();

  // optional .safe_browsing.ClientIncidentReport.DownloadDetails download = 2;
  inline bool has_download() const;
  inline void clear_download();
  static const int kDownloadFieldNumber = 2;
  inline const ::safe_browsing::ClientIncidentReport_DownloadDetails& download() const;
  inline ::safe_browsing::ClientIncidentReport_DownloadDetails* mutable_download();
  inline ::safe_browsing::ClientIncidentReport_DownloadDetails* release_download();
  inline void set_allocated_download(::safe_browsing::ClientIncidentReport_DownloadDetails* download);

  // optional .safe_browsing.ClientIncidentReport.EnvironmentData environment = 3;
  inline bool has_environment() const;
  inline void clear_environment();
  static const int kEnvironmentFieldNumber = 3;
  inline const ::safe_browsing::ClientIncidentReport_EnvironmentData& environment() const;
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData* mutable_environment();
  inline ::safe_browsing::ClientIncidentReport_EnvironmentData* release_environment();
  inline void set_allocated_environment(::safe_browsing::ClientIncidentReport_EnvironmentData* environment);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentReport)
 private:
  inline void set_has_download();
  inline void clear_has_download();
  inline void set_has_environment();
  inline void clear_has_environment();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_IncidentData > incident_;
  ::safe_browsing::ClientIncidentReport_DownloadDetails* download_;
  ::safe_browsing::ClientIncidentReport_EnvironmentData* environment_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentReport* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentResponse_EnvironmentRequest : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentResponse_EnvironmentRequest();
  virtual ~ClientIncidentResponse_EnvironmentRequest();

  ClientIncidentResponse_EnvironmentRequest(const ClientIncidentResponse_EnvironmentRequest& from);

  inline ClientIncidentResponse_EnvironmentRequest& operator=(const ClientIncidentResponse_EnvironmentRequest& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentResponse_EnvironmentRequest& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentResponse_EnvironmentRequest* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentResponse_EnvironmentRequest* other);

  // implements Message ----------------------------------------------

  ClientIncidentResponse_EnvironmentRequest* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentResponse_EnvironmentRequest& from);
  void MergeFrom(const ClientIncidentResponse_EnvironmentRequest& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional int32 dll_index = 1;
  inline bool has_dll_index() const;
  inline void clear_dll_index();
  static const int kDllIndexFieldNumber = 1;
  inline ::google::protobuf::int32 dll_index() const;
  inline void set_dll_index(::google::protobuf::int32 value);

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentResponse.EnvironmentRequest)
 private:
  inline void set_has_dll_index();
  inline void clear_has_dll_index();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::google::protobuf::int32 dll_index_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentResponse_EnvironmentRequest* default_instance_;
};
// -------------------------------------------------------------------

class ClientIncidentResponse : public ::google::protobuf::MessageLite {
 public:
  ClientIncidentResponse();
  virtual ~ClientIncidentResponse();

  ClientIncidentResponse(const ClientIncidentResponse& from);

  inline ClientIncidentResponse& operator=(const ClientIncidentResponse& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const ClientIncidentResponse& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const ClientIncidentResponse* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(ClientIncidentResponse* other);

  // implements Message ----------------------------------------------

  ClientIncidentResponse* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const ClientIncidentResponse& from);
  void MergeFrom(const ClientIncidentResponse& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  typedef ClientIncidentResponse_EnvironmentRequest EnvironmentRequest;

  // accessors -------------------------------------------------------

  // optional bytes token = 1;
  inline bool has_token() const;
  inline void clear_token();
  static const int kTokenFieldNumber = 1;
  inline const ::std::string& token() const;
  inline void set_token(const ::std::string& value);
  inline void set_token(const char* value);
  inline void set_token(const void* value, size_t size);
  inline ::std::string* mutable_token();
  inline ::std::string* release_token();
  inline void set_allocated_token(::std::string* token);

  // optional bool download_requested = 2;
  inline bool has_download_requested() const;
  inline void clear_download_requested();
  static const int kDownloadRequestedFieldNumber = 2;
  inline bool download_requested() const;
  inline void set_download_requested(bool value);

  // repeated .safe_browsing.ClientIncidentResponse.EnvironmentRequest environment_requests = 3;
  inline int environment_requests_size() const;
  inline void clear_environment_requests();
  static const int kEnvironmentRequestsFieldNumber = 3;
  inline const ::safe_browsing::ClientIncidentResponse_EnvironmentRequest& environment_requests(int index) const;
  inline ::safe_browsing::ClientIncidentResponse_EnvironmentRequest* mutable_environment_requests(int index);
  inline ::safe_browsing::ClientIncidentResponse_EnvironmentRequest* add_environment_requests();
  inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentResponse_EnvironmentRequest >&
      environment_requests() const;
  inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentResponse_EnvironmentRequest >*
      mutable_environment_requests();

  // @@protoc_insertion_point(class_scope:safe_browsing.ClientIncidentResponse)
 private:
  inline void set_has_token();
  inline void clear_has_token();
  inline void set_has_download_requested();
  inline void clear_has_download_requested();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::std::string* token_;
  ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentResponse_EnvironmentRequest > environment_requests_;
  bool download_requested_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static ClientIncidentResponse* default_instance_;
};
// -------------------------------------------------------------------

class DownloadMetadata : public ::google::protobuf::MessageLite {
 public:
  DownloadMetadata();
  virtual ~DownloadMetadata();

  DownloadMetadata(const DownloadMetadata& from);

  inline DownloadMetadata& operator=(const DownloadMetadata& from) {
    CopyFrom(from);
    return *this;
  }

  inline const ::std::string& unknown_fields() const {
    return _unknown_fields_;
  }

  inline ::std::string* mutable_unknown_fields() {
    return &_unknown_fields_;
  }

  static const DownloadMetadata& default_instance();

  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  // Returns the internal default instance pointer. This function can
  // return NULL thus should not be used by the user. This is intended
  // for Protobuf internal code. Please use default_instance() declared
  // above instead.
  static inline const DownloadMetadata* internal_default_instance() {
    return default_instance_;
  }
  #endif

  void Swap(DownloadMetadata* other);

  // implements Message ----------------------------------------------

  DownloadMetadata* New() const;
  void CheckTypeAndMergeFrom(const ::google::protobuf::MessageLite& from);
  void CopyFrom(const DownloadMetadata& from);
  void MergeFrom(const DownloadMetadata& from);
  void Clear();
  bool IsInitialized() const;

  int ByteSize() const;
  bool MergePartialFromCodedStream(
      ::google::protobuf::io::CodedInputStream* input);
  void SerializeWithCachedSizes(
      ::google::protobuf::io::CodedOutputStream* output) const;
  void DiscardUnknownFields();
  int GetCachedSize() const { return _cached_size_; }
  private:
  void SharedCtor();
  void SharedDtor();
  void SetCachedSize(int size) const;
  public:
  ::std::string GetTypeName() const;

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  // optional uint32 download_id = 1;
  inline bool has_download_id() const;
  inline void clear_download_id();
  static const int kDownloadIdFieldNumber = 1;
  inline ::google::protobuf::uint32 download_id() const;
  inline void set_download_id(::google::protobuf::uint32 value);

  // optional .safe_browsing.ClientIncidentReport.DownloadDetails download = 2;
  inline bool has_download() const;
  inline void clear_download();
  static const int kDownloadFieldNumber = 2;
  inline const ::safe_browsing::ClientIncidentReport_DownloadDetails& download() const;
  inline ::safe_browsing::ClientIncidentReport_DownloadDetails* mutable_download();
  inline ::safe_browsing::ClientIncidentReport_DownloadDetails* release_download();
  inline void set_allocated_download(::safe_browsing::ClientIncidentReport_DownloadDetails* download);

  // @@protoc_insertion_point(class_scope:safe_browsing.DownloadMetadata)
 private:
  inline void set_has_download_id();
  inline void clear_has_download_id();
  inline void set_has_download();
  inline void clear_has_download();

  ::std::string _unknown_fields_;

  ::google::protobuf::uint32 _has_bits_[1];
  mutable int _cached_size_;
  ::safe_browsing::ClientIncidentReport_DownloadDetails* download_;
  ::google::protobuf::uint32 download_id_;
  #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  friend void  protobuf_AddDesc_csd_2eproto_impl();
  #else
  friend void  protobuf_AddDesc_csd_2eproto();
  #endif
  friend void protobuf_AssignDesc_csd_2eproto();
  friend void protobuf_ShutdownFile_csd_2eproto();

  void InitAsDefaultInstance();
  static DownloadMetadata* default_instance_;
};
// ===================================================================


// ===================================================================

// ClientPhishingRequest_Feature

// required string name = 1;
inline bool ClientPhishingRequest_Feature::has_name() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientPhishingRequest_Feature::set_has_name() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientPhishingRequest_Feature::clear_has_name() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientPhishingRequest_Feature::clear_name() {
  if (name_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    name_->clear();
  }
  clear_has_name();
}
inline const ::std::string& ClientPhishingRequest_Feature::name() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.Feature.name)
  return *name_;
}
inline void ClientPhishingRequest_Feature::set_name(const ::std::string& value) {
  set_has_name();
  if (name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    name_ = new ::std::string;
  }
  name_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingRequest.Feature.name)
}
inline void ClientPhishingRequest_Feature::set_name(const char* value) {
  set_has_name();
  if (name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    name_ = new ::std::string;
  }
  name_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientPhishingRequest.Feature.name)
}
inline void ClientPhishingRequest_Feature::set_name(const char* value, size_t size) {
  set_has_name();
  if (name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    name_ = new ::std::string;
  }
  name_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientPhishingRequest.Feature.name)
}
inline ::std::string* ClientPhishingRequest_Feature::mutable_name() {
  set_has_name();
  if (name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    name_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientPhishingRequest.Feature.name)
  return name_;
}
inline ::std::string* ClientPhishingRequest_Feature::release_name() {
  clear_has_name();
  if (name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = name_;
    name_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientPhishingRequest_Feature::set_allocated_name(::std::string* name) {
  if (name_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete name_;
  }
  if (name) {
    set_has_name();
    name_ = name;
  } else {
    clear_has_name();
    name_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientPhishingRequest.Feature.name)
}

// required double value = 2;
inline bool ClientPhishingRequest_Feature::has_value() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientPhishingRequest_Feature::set_has_value() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientPhishingRequest_Feature::clear_has_value() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientPhishingRequest_Feature::clear_value() {
  value_ = 0;
  clear_has_value();
}
inline double ClientPhishingRequest_Feature::value() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.Feature.value)
  return value_;
}
inline void ClientPhishingRequest_Feature::set_value(double value) {
  set_has_value();
  value_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingRequest.Feature.value)
}

// -------------------------------------------------------------------

// ClientPhishingRequest

// optional string url = 1;
inline bool ClientPhishingRequest::has_url() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientPhishingRequest::set_has_url() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientPhishingRequest::clear_has_url() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientPhishingRequest::clear_url() {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_->clear();
  }
  clear_has_url();
}
inline const ::std::string& ClientPhishingRequest::url() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.url)
  return *url_;
}
inline void ClientPhishingRequest::set_url(const ::std::string& value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingRequest.url)
}
inline void ClientPhishingRequest::set_url(const char* value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientPhishingRequest.url)
}
inline void ClientPhishingRequest::set_url(const char* value, size_t size) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientPhishingRequest.url)
}
inline ::std::string* ClientPhishingRequest::mutable_url() {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientPhishingRequest.url)
  return url_;
}
inline ::std::string* ClientPhishingRequest::release_url() {
  clear_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = url_;
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientPhishingRequest::set_allocated_url(::std::string* url) {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete url_;
  }
  if (url) {
    set_has_url();
    url_ = url;
  } else {
    clear_has_url();
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientPhishingRequest.url)
}

// optional bytes OBSOLETE_hash_prefix = 10;
inline bool ClientPhishingRequest::has_obsolete_hash_prefix() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientPhishingRequest::set_has_obsolete_hash_prefix() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientPhishingRequest::clear_has_obsolete_hash_prefix() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientPhishingRequest::clear_obsolete_hash_prefix() {
  if (obsolete_hash_prefix_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    obsolete_hash_prefix_->clear();
  }
  clear_has_obsolete_hash_prefix();
}
inline const ::std::string& ClientPhishingRequest::obsolete_hash_prefix() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.OBSOLETE_hash_prefix)
  return *obsolete_hash_prefix_;
}
inline void ClientPhishingRequest::set_obsolete_hash_prefix(const ::std::string& value) {
  set_has_obsolete_hash_prefix();
  if (obsolete_hash_prefix_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    obsolete_hash_prefix_ = new ::std::string;
  }
  obsolete_hash_prefix_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingRequest.OBSOLETE_hash_prefix)
}
inline void ClientPhishingRequest::set_obsolete_hash_prefix(const char* value) {
  set_has_obsolete_hash_prefix();
  if (obsolete_hash_prefix_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    obsolete_hash_prefix_ = new ::std::string;
  }
  obsolete_hash_prefix_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientPhishingRequest.OBSOLETE_hash_prefix)
}
inline void ClientPhishingRequest::set_obsolete_hash_prefix(const void* value, size_t size) {
  set_has_obsolete_hash_prefix();
  if (obsolete_hash_prefix_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    obsolete_hash_prefix_ = new ::std::string;
  }
  obsolete_hash_prefix_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientPhishingRequest.OBSOLETE_hash_prefix)
}
inline ::std::string* ClientPhishingRequest::mutable_obsolete_hash_prefix() {
  set_has_obsolete_hash_prefix();
  if (obsolete_hash_prefix_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    obsolete_hash_prefix_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientPhishingRequest.OBSOLETE_hash_prefix)
  return obsolete_hash_prefix_;
}
inline ::std::string* ClientPhishingRequest::release_obsolete_hash_prefix() {
  clear_has_obsolete_hash_prefix();
  if (obsolete_hash_prefix_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = obsolete_hash_prefix_;
    obsolete_hash_prefix_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientPhishingRequest::set_allocated_obsolete_hash_prefix(::std::string* obsolete_hash_prefix) {
  if (obsolete_hash_prefix_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete obsolete_hash_prefix_;
  }
  if (obsolete_hash_prefix) {
    set_has_obsolete_hash_prefix();
    obsolete_hash_prefix_ = obsolete_hash_prefix;
  } else {
    clear_has_obsolete_hash_prefix();
    obsolete_hash_prefix_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientPhishingRequest.OBSOLETE_hash_prefix)
}

// required float client_score = 2;
inline bool ClientPhishingRequest::has_client_score() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientPhishingRequest::set_has_client_score() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientPhishingRequest::clear_has_client_score() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientPhishingRequest::clear_client_score() {
  client_score_ = 0;
  clear_has_client_score();
}
inline float ClientPhishingRequest::client_score() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.client_score)
  return client_score_;
}
inline void ClientPhishingRequest::set_client_score(float value) {
  set_has_client_score();
  client_score_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingRequest.client_score)
}

// optional bool is_phishing = 4;
inline bool ClientPhishingRequest::has_is_phishing() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ClientPhishingRequest::set_has_is_phishing() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ClientPhishingRequest::clear_has_is_phishing() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ClientPhishingRequest::clear_is_phishing() {
  is_phishing_ = false;
  clear_has_is_phishing();
}
inline bool ClientPhishingRequest::is_phishing() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.is_phishing)
  return is_phishing_;
}
inline void ClientPhishingRequest::set_is_phishing(bool value) {
  set_has_is_phishing();
  is_phishing_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingRequest.is_phishing)
}

// repeated .safe_browsing.ClientPhishingRequest.Feature feature_map = 5;
inline int ClientPhishingRequest::feature_map_size() const {
  return feature_map_.size();
}
inline void ClientPhishingRequest::clear_feature_map() {
  feature_map_.Clear();
}
inline const ::safe_browsing::ClientPhishingRequest_Feature& ClientPhishingRequest::feature_map(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.feature_map)
  return feature_map_.Get(index);
}
inline ::safe_browsing::ClientPhishingRequest_Feature* ClientPhishingRequest::mutable_feature_map(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientPhishingRequest.feature_map)
  return feature_map_.Mutable(index);
}
inline ::safe_browsing::ClientPhishingRequest_Feature* ClientPhishingRequest::add_feature_map() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientPhishingRequest.feature_map)
  return feature_map_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientPhishingRequest_Feature >&
ClientPhishingRequest::feature_map() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientPhishingRequest.feature_map)
  return feature_map_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientPhishingRequest_Feature >*
ClientPhishingRequest::mutable_feature_map() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientPhishingRequest.feature_map)
  return &feature_map_;
}

// optional int32 model_version = 6;
inline bool ClientPhishingRequest::has_model_version() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ClientPhishingRequest::set_has_model_version() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ClientPhishingRequest::clear_has_model_version() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ClientPhishingRequest::clear_model_version() {
  model_version_ = 0;
  clear_has_model_version();
}
inline ::google::protobuf::int32 ClientPhishingRequest::model_version() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.model_version)
  return model_version_;
}
inline void ClientPhishingRequest::set_model_version(::google::protobuf::int32 value) {
  set_has_model_version();
  model_version_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingRequest.model_version)
}

// repeated .safe_browsing.ClientPhishingRequest.Feature non_model_feature_map = 8;
inline int ClientPhishingRequest::non_model_feature_map_size() const {
  return non_model_feature_map_.size();
}
inline void ClientPhishingRequest::clear_non_model_feature_map() {
  non_model_feature_map_.Clear();
}
inline const ::safe_browsing::ClientPhishingRequest_Feature& ClientPhishingRequest::non_model_feature_map(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.non_model_feature_map)
  return non_model_feature_map_.Get(index);
}
inline ::safe_browsing::ClientPhishingRequest_Feature* ClientPhishingRequest::mutable_non_model_feature_map(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientPhishingRequest.non_model_feature_map)
  return non_model_feature_map_.Mutable(index);
}
inline ::safe_browsing::ClientPhishingRequest_Feature* ClientPhishingRequest::add_non_model_feature_map() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientPhishingRequest.non_model_feature_map)
  return non_model_feature_map_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientPhishingRequest_Feature >&
ClientPhishingRequest::non_model_feature_map() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientPhishingRequest.non_model_feature_map)
  return non_model_feature_map_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientPhishingRequest_Feature >*
ClientPhishingRequest::mutable_non_model_feature_map() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientPhishingRequest.non_model_feature_map)
  return &non_model_feature_map_;
}

// optional string OBSOLETE_referrer_url = 9;
inline bool ClientPhishingRequest::has_obsolete_referrer_url() const {
  return (_has_bits_[0] & 0x00000080u) != 0;
}
inline void ClientPhishingRequest::set_has_obsolete_referrer_url() {
  _has_bits_[0] |= 0x00000080u;
}
inline void ClientPhishingRequest::clear_has_obsolete_referrer_url() {
  _has_bits_[0] &= ~0x00000080u;
}
inline void ClientPhishingRequest::clear_obsolete_referrer_url() {
  if (obsolete_referrer_url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    obsolete_referrer_url_->clear();
  }
  clear_has_obsolete_referrer_url();
}
inline const ::std::string& ClientPhishingRequest::obsolete_referrer_url() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.OBSOLETE_referrer_url)
  return *obsolete_referrer_url_;
}
inline void ClientPhishingRequest::set_obsolete_referrer_url(const ::std::string& value) {
  set_has_obsolete_referrer_url();
  if (obsolete_referrer_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    obsolete_referrer_url_ = new ::std::string;
  }
  obsolete_referrer_url_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingRequest.OBSOLETE_referrer_url)
}
inline void ClientPhishingRequest::set_obsolete_referrer_url(const char* value) {
  set_has_obsolete_referrer_url();
  if (obsolete_referrer_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    obsolete_referrer_url_ = new ::std::string;
  }
  obsolete_referrer_url_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientPhishingRequest.OBSOLETE_referrer_url)
}
inline void ClientPhishingRequest::set_obsolete_referrer_url(const char* value, size_t size) {
  set_has_obsolete_referrer_url();
  if (obsolete_referrer_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    obsolete_referrer_url_ = new ::std::string;
  }
  obsolete_referrer_url_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientPhishingRequest.OBSOLETE_referrer_url)
}
inline ::std::string* ClientPhishingRequest::mutable_obsolete_referrer_url() {
  set_has_obsolete_referrer_url();
  if (obsolete_referrer_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    obsolete_referrer_url_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientPhishingRequest.OBSOLETE_referrer_url)
  return obsolete_referrer_url_;
}
inline ::std::string* ClientPhishingRequest::release_obsolete_referrer_url() {
  clear_has_obsolete_referrer_url();
  if (obsolete_referrer_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = obsolete_referrer_url_;
    obsolete_referrer_url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientPhishingRequest::set_allocated_obsolete_referrer_url(::std::string* obsolete_referrer_url) {
  if (obsolete_referrer_url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete obsolete_referrer_url_;
  }
  if (obsolete_referrer_url) {
    set_has_obsolete_referrer_url();
    obsolete_referrer_url_ = obsolete_referrer_url;
  } else {
    clear_has_obsolete_referrer_url();
    obsolete_referrer_url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientPhishingRequest.OBSOLETE_referrer_url)
}

// repeated uint32 shingle_hashes = 12 [packed = true];
inline int ClientPhishingRequest::shingle_hashes_size() const {
  return shingle_hashes_.size();
}
inline void ClientPhishingRequest::clear_shingle_hashes() {
  shingle_hashes_.Clear();
}
inline ::google::protobuf::uint32 ClientPhishingRequest::shingle_hashes(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingRequest.shingle_hashes)
  return shingle_hashes_.Get(index);
}
inline void ClientPhishingRequest::set_shingle_hashes(int index, ::google::protobuf::uint32 value) {
  shingle_hashes_.Set(index, value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingRequest.shingle_hashes)
}
inline void ClientPhishingRequest::add_shingle_hashes(::google::protobuf::uint32 value) {
  shingle_hashes_.Add(value);
  // @@protoc_insertion_point(field_add:safe_browsing.ClientPhishingRequest.shingle_hashes)
}
inline const ::google::protobuf::RepeatedField< ::google::protobuf::uint32 >&
ClientPhishingRequest::shingle_hashes() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientPhishingRequest.shingle_hashes)
  return shingle_hashes_;
}
inline ::google::protobuf::RepeatedField< ::google::protobuf::uint32 >*
ClientPhishingRequest::mutable_shingle_hashes() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientPhishingRequest.shingle_hashes)
  return &shingle_hashes_;
}

// -------------------------------------------------------------------

// ClientPhishingResponse

// required bool phishy = 1;
inline bool ClientPhishingResponse::has_phishy() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientPhishingResponse::set_has_phishy() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientPhishingResponse::clear_has_phishy() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientPhishingResponse::clear_phishy() {
  phishy_ = false;
  clear_has_phishy();
}
inline bool ClientPhishingResponse::phishy() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingResponse.phishy)
  return phishy_;
}
inline void ClientPhishingResponse::set_phishy(bool value) {
  set_has_phishy();
  phishy_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingResponse.phishy)
}

// repeated string OBSOLETE_whitelist_expression = 2;
inline int ClientPhishingResponse::obsolete_whitelist_expression_size() const {
  return obsolete_whitelist_expression_.size();
}
inline void ClientPhishingResponse::clear_obsolete_whitelist_expression() {
  obsolete_whitelist_expression_.Clear();
}
inline const ::std::string& ClientPhishingResponse::obsolete_whitelist_expression(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientPhishingResponse.OBSOLETE_whitelist_expression)
  return obsolete_whitelist_expression_.Get(index);
}
inline ::std::string* ClientPhishingResponse::mutable_obsolete_whitelist_expression(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientPhishingResponse.OBSOLETE_whitelist_expression)
  return obsolete_whitelist_expression_.Mutable(index);
}
inline void ClientPhishingResponse::set_obsolete_whitelist_expression(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:safe_browsing.ClientPhishingResponse.OBSOLETE_whitelist_expression)
  obsolete_whitelist_expression_.Mutable(index)->assign(value);
}
inline void ClientPhishingResponse::set_obsolete_whitelist_expression(int index, const char* value) {
  obsolete_whitelist_expression_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientPhishingResponse.OBSOLETE_whitelist_expression)
}
inline void ClientPhishingResponse::set_obsolete_whitelist_expression(int index, const char* value, size_t size) {
  obsolete_whitelist_expression_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientPhishingResponse.OBSOLETE_whitelist_expression)
}
inline ::std::string* ClientPhishingResponse::add_obsolete_whitelist_expression() {
  return obsolete_whitelist_expression_.Add();
}
inline void ClientPhishingResponse::add_obsolete_whitelist_expression(const ::std::string& value) {
  obsolete_whitelist_expression_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:safe_browsing.ClientPhishingResponse.OBSOLETE_whitelist_expression)
}
inline void ClientPhishingResponse::add_obsolete_whitelist_expression(const char* value) {
  obsolete_whitelist_expression_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:safe_browsing.ClientPhishingResponse.OBSOLETE_whitelist_expression)
}
inline void ClientPhishingResponse::add_obsolete_whitelist_expression(const char* value, size_t size) {
  obsolete_whitelist_expression_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:safe_browsing.ClientPhishingResponse.OBSOLETE_whitelist_expression)
}
inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
ClientPhishingResponse::obsolete_whitelist_expression() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientPhishingResponse.OBSOLETE_whitelist_expression)
  return obsolete_whitelist_expression_;
}
inline ::google::protobuf::RepeatedPtrField< ::std::string>*
ClientPhishingResponse::mutable_obsolete_whitelist_expression() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientPhishingResponse.OBSOLETE_whitelist_expression)
  return &obsolete_whitelist_expression_;
}

// -------------------------------------------------------------------

// ClientMalwareRequest_UrlInfo

// required string ip = 1;
inline bool ClientMalwareRequest_UrlInfo::has_ip() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientMalwareRequest_UrlInfo::set_has_ip() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientMalwareRequest_UrlInfo::clear_has_ip() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientMalwareRequest_UrlInfo::clear_ip() {
  if (ip_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    ip_->clear();
  }
  clear_has_ip();
}
inline const ::std::string& ClientMalwareRequest_UrlInfo::ip() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareRequest.UrlInfo.ip)
  return *ip_;
}
inline void ClientMalwareRequest_UrlInfo::set_ip(const ::std::string& value) {
  set_has_ip();
  if (ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    ip_ = new ::std::string;
  }
  ip_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientMalwareRequest.UrlInfo.ip)
}
inline void ClientMalwareRequest_UrlInfo::set_ip(const char* value) {
  set_has_ip();
  if (ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    ip_ = new ::std::string;
  }
  ip_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientMalwareRequest.UrlInfo.ip)
}
inline void ClientMalwareRequest_UrlInfo::set_ip(const char* value, size_t size) {
  set_has_ip();
  if (ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    ip_ = new ::std::string;
  }
  ip_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientMalwareRequest.UrlInfo.ip)
}
inline ::std::string* ClientMalwareRequest_UrlInfo::mutable_ip() {
  set_has_ip();
  if (ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    ip_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientMalwareRequest.UrlInfo.ip)
  return ip_;
}
inline ::std::string* ClientMalwareRequest_UrlInfo::release_ip() {
  clear_has_ip();
  if (ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = ip_;
    ip_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientMalwareRequest_UrlInfo::set_allocated_ip(::std::string* ip) {
  if (ip_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete ip_;
  }
  if (ip) {
    set_has_ip();
    ip_ = ip;
  } else {
    clear_has_ip();
    ip_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientMalwareRequest.UrlInfo.ip)
}

// required string url = 2;
inline bool ClientMalwareRequest_UrlInfo::has_url() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientMalwareRequest_UrlInfo::set_has_url() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientMalwareRequest_UrlInfo::clear_has_url() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientMalwareRequest_UrlInfo::clear_url() {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_->clear();
  }
  clear_has_url();
}
inline const ::std::string& ClientMalwareRequest_UrlInfo::url() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareRequest.UrlInfo.url)
  return *url_;
}
inline void ClientMalwareRequest_UrlInfo::set_url(const ::std::string& value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientMalwareRequest.UrlInfo.url)
}
inline void ClientMalwareRequest_UrlInfo::set_url(const char* value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientMalwareRequest.UrlInfo.url)
}
inline void ClientMalwareRequest_UrlInfo::set_url(const char* value, size_t size) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientMalwareRequest.UrlInfo.url)
}
inline ::std::string* ClientMalwareRequest_UrlInfo::mutable_url() {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientMalwareRequest.UrlInfo.url)
  return url_;
}
inline ::std::string* ClientMalwareRequest_UrlInfo::release_url() {
  clear_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = url_;
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientMalwareRequest_UrlInfo::set_allocated_url(::std::string* url) {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete url_;
  }
  if (url) {
    set_has_url();
    url_ = url;
  } else {
    clear_has_url();
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientMalwareRequest.UrlInfo.url)
}

// optional string method = 3;
inline bool ClientMalwareRequest_UrlInfo::has_method() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientMalwareRequest_UrlInfo::set_has_method() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientMalwareRequest_UrlInfo::clear_has_method() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientMalwareRequest_UrlInfo::clear_method() {
  if (method_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    method_->clear();
  }
  clear_has_method();
}
inline const ::std::string& ClientMalwareRequest_UrlInfo::method() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareRequest.UrlInfo.method)
  return *method_;
}
inline void ClientMalwareRequest_UrlInfo::set_method(const ::std::string& value) {
  set_has_method();
  if (method_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    method_ = new ::std::string;
  }
  method_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientMalwareRequest.UrlInfo.method)
}
inline void ClientMalwareRequest_UrlInfo::set_method(const char* value) {
  set_has_method();
  if (method_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    method_ = new ::std::string;
  }
  method_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientMalwareRequest.UrlInfo.method)
}
inline void ClientMalwareRequest_UrlInfo::set_method(const char* value, size_t size) {
  set_has_method();
  if (method_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    method_ = new ::std::string;
  }
  method_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientMalwareRequest.UrlInfo.method)
}
inline ::std::string* ClientMalwareRequest_UrlInfo::mutable_method() {
  set_has_method();
  if (method_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    method_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientMalwareRequest.UrlInfo.method)
  return method_;
}
inline ::std::string* ClientMalwareRequest_UrlInfo::release_method() {
  clear_has_method();
  if (method_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = method_;
    method_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientMalwareRequest_UrlInfo::set_allocated_method(::std::string* method) {
  if (method_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete method_;
  }
  if (method) {
    set_has_method();
    method_ = method;
  } else {
    clear_has_method();
    method_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientMalwareRequest.UrlInfo.method)
}

// optional string referrer = 4;
inline bool ClientMalwareRequest_UrlInfo::has_referrer() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ClientMalwareRequest_UrlInfo::set_has_referrer() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ClientMalwareRequest_UrlInfo::clear_has_referrer() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ClientMalwareRequest_UrlInfo::clear_referrer() {
  if (referrer_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_->clear();
  }
  clear_has_referrer();
}
inline const ::std::string& ClientMalwareRequest_UrlInfo::referrer() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareRequest.UrlInfo.referrer)
  return *referrer_;
}
inline void ClientMalwareRequest_UrlInfo::set_referrer(const ::std::string& value) {
  set_has_referrer();
  if (referrer_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_ = new ::std::string;
  }
  referrer_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientMalwareRequest.UrlInfo.referrer)
}
inline void ClientMalwareRequest_UrlInfo::set_referrer(const char* value) {
  set_has_referrer();
  if (referrer_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_ = new ::std::string;
  }
  referrer_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientMalwareRequest.UrlInfo.referrer)
}
inline void ClientMalwareRequest_UrlInfo::set_referrer(const char* value, size_t size) {
  set_has_referrer();
  if (referrer_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_ = new ::std::string;
  }
  referrer_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientMalwareRequest.UrlInfo.referrer)
}
inline ::std::string* ClientMalwareRequest_UrlInfo::mutable_referrer() {
  set_has_referrer();
  if (referrer_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientMalwareRequest.UrlInfo.referrer)
  return referrer_;
}
inline ::std::string* ClientMalwareRequest_UrlInfo::release_referrer() {
  clear_has_referrer();
  if (referrer_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = referrer_;
    referrer_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientMalwareRequest_UrlInfo::set_allocated_referrer(::std::string* referrer) {
  if (referrer_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete referrer_;
  }
  if (referrer) {
    set_has_referrer();
    referrer_ = referrer;
  } else {
    clear_has_referrer();
    referrer_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientMalwareRequest.UrlInfo.referrer)
}

// optional int32 resource_type = 5;
inline bool ClientMalwareRequest_UrlInfo::has_resource_type() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ClientMalwareRequest_UrlInfo::set_has_resource_type() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ClientMalwareRequest_UrlInfo::clear_has_resource_type() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ClientMalwareRequest_UrlInfo::clear_resource_type() {
  resource_type_ = 0;
  clear_has_resource_type();
}
inline ::google::protobuf::int32 ClientMalwareRequest_UrlInfo::resource_type() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareRequest.UrlInfo.resource_type)
  return resource_type_;
}
inline void ClientMalwareRequest_UrlInfo::set_resource_type(::google::protobuf::int32 value) {
  set_has_resource_type();
  resource_type_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientMalwareRequest.UrlInfo.resource_type)
}

// -------------------------------------------------------------------

// ClientMalwareRequest

// required string url = 1;
inline bool ClientMalwareRequest::has_url() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientMalwareRequest::set_has_url() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientMalwareRequest::clear_has_url() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientMalwareRequest::clear_url() {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_->clear();
  }
  clear_has_url();
}
inline const ::std::string& ClientMalwareRequest::url() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareRequest.url)
  return *url_;
}
inline void ClientMalwareRequest::set_url(const ::std::string& value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientMalwareRequest.url)
}
inline void ClientMalwareRequest::set_url(const char* value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientMalwareRequest.url)
}
inline void ClientMalwareRequest::set_url(const char* value, size_t size) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientMalwareRequest.url)
}
inline ::std::string* ClientMalwareRequest::mutable_url() {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientMalwareRequest.url)
  return url_;
}
inline ::std::string* ClientMalwareRequest::release_url() {
  clear_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = url_;
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientMalwareRequest::set_allocated_url(::std::string* url) {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete url_;
  }
  if (url) {
    set_has_url();
    url_ = url;
  } else {
    clear_has_url();
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientMalwareRequest.url)
}

// optional string referrer_url = 4;
inline bool ClientMalwareRequest::has_referrer_url() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientMalwareRequest::set_has_referrer_url() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientMalwareRequest::clear_has_referrer_url() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientMalwareRequest::clear_referrer_url() {
  if (referrer_url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_url_->clear();
  }
  clear_has_referrer_url();
}
inline const ::std::string& ClientMalwareRequest::referrer_url() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareRequest.referrer_url)
  return *referrer_url_;
}
inline void ClientMalwareRequest::set_referrer_url(const ::std::string& value) {
  set_has_referrer_url();
  if (referrer_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_url_ = new ::std::string;
  }
  referrer_url_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientMalwareRequest.referrer_url)
}
inline void ClientMalwareRequest::set_referrer_url(const char* value) {
  set_has_referrer_url();
  if (referrer_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_url_ = new ::std::string;
  }
  referrer_url_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientMalwareRequest.referrer_url)
}
inline void ClientMalwareRequest::set_referrer_url(const char* value, size_t size) {
  set_has_referrer_url();
  if (referrer_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_url_ = new ::std::string;
  }
  referrer_url_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientMalwareRequest.referrer_url)
}
inline ::std::string* ClientMalwareRequest::mutable_referrer_url() {
  set_has_referrer_url();
  if (referrer_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_url_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientMalwareRequest.referrer_url)
  return referrer_url_;
}
inline ::std::string* ClientMalwareRequest::release_referrer_url() {
  clear_has_referrer_url();
  if (referrer_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = referrer_url_;
    referrer_url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientMalwareRequest::set_allocated_referrer_url(::std::string* referrer_url) {
  if (referrer_url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete referrer_url_;
  }
  if (referrer_url) {
    set_has_referrer_url();
    referrer_url_ = referrer_url;
  } else {
    clear_has_referrer_url();
    referrer_url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientMalwareRequest.referrer_url)
}

// repeated .safe_browsing.ClientMalwareRequest.UrlInfo bad_ip_url_info = 7;
inline int ClientMalwareRequest::bad_ip_url_info_size() const {
  return bad_ip_url_info_.size();
}
inline void ClientMalwareRequest::clear_bad_ip_url_info() {
  bad_ip_url_info_.Clear();
}
inline const ::safe_browsing::ClientMalwareRequest_UrlInfo& ClientMalwareRequest::bad_ip_url_info(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareRequest.bad_ip_url_info)
  return bad_ip_url_info_.Get(index);
}
inline ::safe_browsing::ClientMalwareRequest_UrlInfo* ClientMalwareRequest::mutable_bad_ip_url_info(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientMalwareRequest.bad_ip_url_info)
  return bad_ip_url_info_.Mutable(index);
}
inline ::safe_browsing::ClientMalwareRequest_UrlInfo* ClientMalwareRequest::add_bad_ip_url_info() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientMalwareRequest.bad_ip_url_info)
  return bad_ip_url_info_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientMalwareRequest_UrlInfo >&
ClientMalwareRequest::bad_ip_url_info() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientMalwareRequest.bad_ip_url_info)
  return bad_ip_url_info_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientMalwareRequest_UrlInfo >*
ClientMalwareRequest::mutable_bad_ip_url_info() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientMalwareRequest.bad_ip_url_info)
  return &bad_ip_url_info_;
}

// -------------------------------------------------------------------

// ClientMalwareResponse

// required bool blacklist = 1;
inline bool ClientMalwareResponse::has_blacklist() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientMalwareResponse::set_has_blacklist() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientMalwareResponse::clear_has_blacklist() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientMalwareResponse::clear_blacklist() {
  blacklist_ = false;
  clear_has_blacklist();
}
inline bool ClientMalwareResponse::blacklist() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareResponse.blacklist)
  return blacklist_;
}
inline void ClientMalwareResponse::set_blacklist(bool value) {
  set_has_blacklist();
  blacklist_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientMalwareResponse.blacklist)
}

// optional string bad_ip = 2;
inline bool ClientMalwareResponse::has_bad_ip() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientMalwareResponse::set_has_bad_ip() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientMalwareResponse::clear_has_bad_ip() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientMalwareResponse::clear_bad_ip() {
  if (bad_ip_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    bad_ip_->clear();
  }
  clear_has_bad_ip();
}
inline const ::std::string& ClientMalwareResponse::bad_ip() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareResponse.bad_ip)
  return *bad_ip_;
}
inline void ClientMalwareResponse::set_bad_ip(const ::std::string& value) {
  set_has_bad_ip();
  if (bad_ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    bad_ip_ = new ::std::string;
  }
  bad_ip_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientMalwareResponse.bad_ip)
}
inline void ClientMalwareResponse::set_bad_ip(const char* value) {
  set_has_bad_ip();
  if (bad_ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    bad_ip_ = new ::std::string;
  }
  bad_ip_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientMalwareResponse.bad_ip)
}
inline void ClientMalwareResponse::set_bad_ip(const char* value, size_t size) {
  set_has_bad_ip();
  if (bad_ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    bad_ip_ = new ::std::string;
  }
  bad_ip_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientMalwareResponse.bad_ip)
}
inline ::std::string* ClientMalwareResponse::mutable_bad_ip() {
  set_has_bad_ip();
  if (bad_ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    bad_ip_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientMalwareResponse.bad_ip)
  return bad_ip_;
}
inline ::std::string* ClientMalwareResponse::release_bad_ip() {
  clear_has_bad_ip();
  if (bad_ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = bad_ip_;
    bad_ip_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientMalwareResponse::set_allocated_bad_ip(::std::string* bad_ip) {
  if (bad_ip_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete bad_ip_;
  }
  if (bad_ip) {
    set_has_bad_ip();
    bad_ip_ = bad_ip;
  } else {
    clear_has_bad_ip();
    bad_ip_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientMalwareResponse.bad_ip)
}

// optional string bad_url = 3;
inline bool ClientMalwareResponse::has_bad_url() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientMalwareResponse::set_has_bad_url() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientMalwareResponse::clear_has_bad_url() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientMalwareResponse::clear_bad_url() {
  if (bad_url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    bad_url_->clear();
  }
  clear_has_bad_url();
}
inline const ::std::string& ClientMalwareResponse::bad_url() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientMalwareResponse.bad_url)
  return *bad_url_;
}
inline void ClientMalwareResponse::set_bad_url(const ::std::string& value) {
  set_has_bad_url();
  if (bad_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    bad_url_ = new ::std::string;
  }
  bad_url_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientMalwareResponse.bad_url)
}
inline void ClientMalwareResponse::set_bad_url(const char* value) {
  set_has_bad_url();
  if (bad_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    bad_url_ = new ::std::string;
  }
  bad_url_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientMalwareResponse.bad_url)
}
inline void ClientMalwareResponse::set_bad_url(const char* value, size_t size) {
  set_has_bad_url();
  if (bad_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    bad_url_ = new ::std::string;
  }
  bad_url_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientMalwareResponse.bad_url)
}
inline ::std::string* ClientMalwareResponse::mutable_bad_url() {
  set_has_bad_url();
  if (bad_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    bad_url_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientMalwareResponse.bad_url)
  return bad_url_;
}
inline ::std::string* ClientMalwareResponse::release_bad_url() {
  clear_has_bad_url();
  if (bad_url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = bad_url_;
    bad_url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientMalwareResponse::set_allocated_bad_url(::std::string* bad_url) {
  if (bad_url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete bad_url_;
  }
  if (bad_url) {
    set_has_bad_url();
    bad_url_ = bad_url;
  } else {
    clear_has_bad_url();
    bad_url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientMalwareResponse.bad_url)
}

// -------------------------------------------------------------------

// ClientDownloadRequest_Digests

// optional bytes sha256 = 1;
inline bool ClientDownloadRequest_Digests::has_sha256() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadRequest_Digests::set_has_sha256() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadRequest_Digests::clear_has_sha256() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadRequest_Digests::clear_sha256() {
  if (sha256_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    sha256_->clear();
  }
  clear_has_sha256();
}
inline const ::std::string& ClientDownloadRequest_Digests::sha256() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.Digests.sha256)
  return *sha256_;
}
inline void ClientDownloadRequest_Digests::set_sha256(const ::std::string& value) {
  set_has_sha256();
  if (sha256_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    sha256_ = new ::std::string;
  }
  sha256_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.Digests.sha256)
}
inline void ClientDownloadRequest_Digests::set_sha256(const char* value) {
  set_has_sha256();
  if (sha256_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    sha256_ = new ::std::string;
  }
  sha256_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.Digests.sha256)
}
inline void ClientDownloadRequest_Digests::set_sha256(const void* value, size_t size) {
  set_has_sha256();
  if (sha256_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    sha256_ = new ::std::string;
  }
  sha256_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.Digests.sha256)
}
inline ::std::string* ClientDownloadRequest_Digests::mutable_sha256() {
  set_has_sha256();
  if (sha256_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    sha256_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.Digests.sha256)
  return sha256_;
}
inline ::std::string* ClientDownloadRequest_Digests::release_sha256() {
  clear_has_sha256();
  if (sha256_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = sha256_;
    sha256_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_Digests::set_allocated_sha256(::std::string* sha256) {
  if (sha256_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete sha256_;
  }
  if (sha256) {
    set_has_sha256();
    sha256_ = sha256;
  } else {
    clear_has_sha256();
    sha256_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.Digests.sha256)
}

// optional bytes sha1 = 2;
inline bool ClientDownloadRequest_Digests::has_sha1() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientDownloadRequest_Digests::set_has_sha1() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientDownloadRequest_Digests::clear_has_sha1() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientDownloadRequest_Digests::clear_sha1() {
  if (sha1_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    sha1_->clear();
  }
  clear_has_sha1();
}
inline const ::std::string& ClientDownloadRequest_Digests::sha1() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.Digests.sha1)
  return *sha1_;
}
inline void ClientDownloadRequest_Digests::set_sha1(const ::std::string& value) {
  set_has_sha1();
  if (sha1_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    sha1_ = new ::std::string;
  }
  sha1_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.Digests.sha1)
}
inline void ClientDownloadRequest_Digests::set_sha1(const char* value) {
  set_has_sha1();
  if (sha1_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    sha1_ = new ::std::string;
  }
  sha1_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.Digests.sha1)
}
inline void ClientDownloadRequest_Digests::set_sha1(const void* value, size_t size) {
  set_has_sha1();
  if (sha1_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    sha1_ = new ::std::string;
  }
  sha1_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.Digests.sha1)
}
inline ::std::string* ClientDownloadRequest_Digests::mutable_sha1() {
  set_has_sha1();
  if (sha1_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    sha1_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.Digests.sha1)
  return sha1_;
}
inline ::std::string* ClientDownloadRequest_Digests::release_sha1() {
  clear_has_sha1();
  if (sha1_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = sha1_;
    sha1_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_Digests::set_allocated_sha1(::std::string* sha1) {
  if (sha1_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete sha1_;
  }
  if (sha1) {
    set_has_sha1();
    sha1_ = sha1;
  } else {
    clear_has_sha1();
    sha1_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.Digests.sha1)
}

// optional bytes md5 = 3;
inline bool ClientDownloadRequest_Digests::has_md5() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientDownloadRequest_Digests::set_has_md5() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientDownloadRequest_Digests::clear_has_md5() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientDownloadRequest_Digests::clear_md5() {
  if (md5_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    md5_->clear();
  }
  clear_has_md5();
}
inline const ::std::string& ClientDownloadRequest_Digests::md5() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.Digests.md5)
  return *md5_;
}
inline void ClientDownloadRequest_Digests::set_md5(const ::std::string& value) {
  set_has_md5();
  if (md5_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    md5_ = new ::std::string;
  }
  md5_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.Digests.md5)
}
inline void ClientDownloadRequest_Digests::set_md5(const char* value) {
  set_has_md5();
  if (md5_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    md5_ = new ::std::string;
  }
  md5_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.Digests.md5)
}
inline void ClientDownloadRequest_Digests::set_md5(const void* value, size_t size) {
  set_has_md5();
  if (md5_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    md5_ = new ::std::string;
  }
  md5_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.Digests.md5)
}
inline ::std::string* ClientDownloadRequest_Digests::mutable_md5() {
  set_has_md5();
  if (md5_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    md5_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.Digests.md5)
  return md5_;
}
inline ::std::string* ClientDownloadRequest_Digests::release_md5() {
  clear_has_md5();
  if (md5_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = md5_;
    md5_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_Digests::set_allocated_md5(::std::string* md5) {
  if (md5_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete md5_;
  }
  if (md5) {
    set_has_md5();
    md5_ = md5;
  } else {
    clear_has_md5();
    md5_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.Digests.md5)
}

// -------------------------------------------------------------------

// ClientDownloadRequest_Resource

// required string url = 1;
inline bool ClientDownloadRequest_Resource::has_url() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadRequest_Resource::set_has_url() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadRequest_Resource::clear_has_url() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadRequest_Resource::clear_url() {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_->clear();
  }
  clear_has_url();
}
inline const ::std::string& ClientDownloadRequest_Resource::url() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.Resource.url)
  return *url_;
}
inline void ClientDownloadRequest_Resource::set_url(const ::std::string& value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.Resource.url)
}
inline void ClientDownloadRequest_Resource::set_url(const char* value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.Resource.url)
}
inline void ClientDownloadRequest_Resource::set_url(const char* value, size_t size) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.Resource.url)
}
inline ::std::string* ClientDownloadRequest_Resource::mutable_url() {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.Resource.url)
  return url_;
}
inline ::std::string* ClientDownloadRequest_Resource::release_url() {
  clear_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = url_;
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_Resource::set_allocated_url(::std::string* url) {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete url_;
  }
  if (url) {
    set_has_url();
    url_ = url;
  } else {
    clear_has_url();
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.Resource.url)
}

// required .safe_browsing.ClientDownloadRequest.ResourceType type = 2;
inline bool ClientDownloadRequest_Resource::has_type() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientDownloadRequest_Resource::set_has_type() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientDownloadRequest_Resource::clear_has_type() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientDownloadRequest_Resource::clear_type() {
  type_ = 0;
  clear_has_type();
}
inline ::safe_browsing::ClientDownloadRequest_ResourceType ClientDownloadRequest_Resource::type() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.Resource.type)
  return static_cast< ::safe_browsing::ClientDownloadRequest_ResourceType >(type_);
}
inline void ClientDownloadRequest_Resource::set_type(::safe_browsing::ClientDownloadRequest_ResourceType value) {
  assert(::safe_browsing::ClientDownloadRequest_ResourceType_IsValid(value));
  set_has_type();
  type_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.Resource.type)
}

// optional bytes remote_ip = 3;
inline bool ClientDownloadRequest_Resource::has_remote_ip() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientDownloadRequest_Resource::set_has_remote_ip() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientDownloadRequest_Resource::clear_has_remote_ip() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientDownloadRequest_Resource::clear_remote_ip() {
  if (remote_ip_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    remote_ip_->clear();
  }
  clear_has_remote_ip();
}
inline const ::std::string& ClientDownloadRequest_Resource::remote_ip() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.Resource.remote_ip)
  return *remote_ip_;
}
inline void ClientDownloadRequest_Resource::set_remote_ip(const ::std::string& value) {
  set_has_remote_ip();
  if (remote_ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    remote_ip_ = new ::std::string;
  }
  remote_ip_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.Resource.remote_ip)
}
inline void ClientDownloadRequest_Resource::set_remote_ip(const char* value) {
  set_has_remote_ip();
  if (remote_ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    remote_ip_ = new ::std::string;
  }
  remote_ip_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.Resource.remote_ip)
}
inline void ClientDownloadRequest_Resource::set_remote_ip(const void* value, size_t size) {
  set_has_remote_ip();
  if (remote_ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    remote_ip_ = new ::std::string;
  }
  remote_ip_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.Resource.remote_ip)
}
inline ::std::string* ClientDownloadRequest_Resource::mutable_remote_ip() {
  set_has_remote_ip();
  if (remote_ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    remote_ip_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.Resource.remote_ip)
  return remote_ip_;
}
inline ::std::string* ClientDownloadRequest_Resource::release_remote_ip() {
  clear_has_remote_ip();
  if (remote_ip_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = remote_ip_;
    remote_ip_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_Resource::set_allocated_remote_ip(::std::string* remote_ip) {
  if (remote_ip_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete remote_ip_;
  }
  if (remote_ip) {
    set_has_remote_ip();
    remote_ip_ = remote_ip;
  } else {
    clear_has_remote_ip();
    remote_ip_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.Resource.remote_ip)
}

// optional string referrer = 4;
inline bool ClientDownloadRequest_Resource::has_referrer() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ClientDownloadRequest_Resource::set_has_referrer() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ClientDownloadRequest_Resource::clear_has_referrer() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ClientDownloadRequest_Resource::clear_referrer() {
  if (referrer_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_->clear();
  }
  clear_has_referrer();
}
inline const ::std::string& ClientDownloadRequest_Resource::referrer() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.Resource.referrer)
  return *referrer_;
}
inline void ClientDownloadRequest_Resource::set_referrer(const ::std::string& value) {
  set_has_referrer();
  if (referrer_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_ = new ::std::string;
  }
  referrer_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.Resource.referrer)
}
inline void ClientDownloadRequest_Resource::set_referrer(const char* value) {
  set_has_referrer();
  if (referrer_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_ = new ::std::string;
  }
  referrer_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.Resource.referrer)
}
inline void ClientDownloadRequest_Resource::set_referrer(const char* value, size_t size) {
  set_has_referrer();
  if (referrer_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_ = new ::std::string;
  }
  referrer_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.Resource.referrer)
}
inline ::std::string* ClientDownloadRequest_Resource::mutable_referrer() {
  set_has_referrer();
  if (referrer_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    referrer_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.Resource.referrer)
  return referrer_;
}
inline ::std::string* ClientDownloadRequest_Resource::release_referrer() {
  clear_has_referrer();
  if (referrer_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = referrer_;
    referrer_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_Resource::set_allocated_referrer(::std::string* referrer) {
  if (referrer_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete referrer_;
  }
  if (referrer) {
    set_has_referrer();
    referrer_ = referrer;
  } else {
    clear_has_referrer();
    referrer_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.Resource.referrer)
}

// -------------------------------------------------------------------

// ClientDownloadRequest_CertificateChain_Element

// optional bytes certificate = 1;
inline bool ClientDownloadRequest_CertificateChain_Element::has_certificate() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadRequest_CertificateChain_Element::set_has_certificate() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadRequest_CertificateChain_Element::clear_has_certificate() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadRequest_CertificateChain_Element::clear_certificate() {
  if (certificate_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    certificate_->clear();
  }
  clear_has_certificate();
}
inline const ::std::string& ClientDownloadRequest_CertificateChain_Element::certificate() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.CertificateChain.Element.certificate)
  return *certificate_;
}
inline void ClientDownloadRequest_CertificateChain_Element::set_certificate(const ::std::string& value) {
  set_has_certificate();
  if (certificate_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    certificate_ = new ::std::string;
  }
  certificate_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.CertificateChain.Element.certificate)
}
inline void ClientDownloadRequest_CertificateChain_Element::set_certificate(const char* value) {
  set_has_certificate();
  if (certificate_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    certificate_ = new ::std::string;
  }
  certificate_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.CertificateChain.Element.certificate)
}
inline void ClientDownloadRequest_CertificateChain_Element::set_certificate(const void* value, size_t size) {
  set_has_certificate();
  if (certificate_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    certificate_ = new ::std::string;
  }
  certificate_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.CertificateChain.Element.certificate)
}
inline ::std::string* ClientDownloadRequest_CertificateChain_Element::mutable_certificate() {
  set_has_certificate();
  if (certificate_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    certificate_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.CertificateChain.Element.certificate)
  return certificate_;
}
inline ::std::string* ClientDownloadRequest_CertificateChain_Element::release_certificate() {
  clear_has_certificate();
  if (certificate_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = certificate_;
    certificate_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_CertificateChain_Element::set_allocated_certificate(::std::string* certificate) {
  if (certificate_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete certificate_;
  }
  if (certificate) {
    set_has_certificate();
    certificate_ = certificate;
  } else {
    clear_has_certificate();
    certificate_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.CertificateChain.Element.certificate)
}

// -------------------------------------------------------------------

// ClientDownloadRequest_CertificateChain

// repeated .safe_browsing.ClientDownloadRequest.CertificateChain.Element element = 1;
inline int ClientDownloadRequest_CertificateChain::element_size() const {
  return element_.size();
}
inline void ClientDownloadRequest_CertificateChain::clear_element() {
  element_.Clear();
}
inline const ::safe_browsing::ClientDownloadRequest_CertificateChain_Element& ClientDownloadRequest_CertificateChain::element(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.CertificateChain.element)
  return element_.Get(index);
}
inline ::safe_browsing::ClientDownloadRequest_CertificateChain_Element* ClientDownloadRequest_CertificateChain::mutable_element(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.CertificateChain.element)
  return element_.Mutable(index);
}
inline ::safe_browsing::ClientDownloadRequest_CertificateChain_Element* ClientDownloadRequest_CertificateChain::add_element() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientDownloadRequest.CertificateChain.element)
  return element_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_CertificateChain_Element >&
ClientDownloadRequest_CertificateChain::element() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientDownloadRequest.CertificateChain.element)
  return element_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_CertificateChain_Element >*
ClientDownloadRequest_CertificateChain::mutable_element() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientDownloadRequest.CertificateChain.element)
  return &element_;
}

// -------------------------------------------------------------------

// ClientDownloadRequest_SignatureInfo

// repeated .safe_browsing.ClientDownloadRequest.CertificateChain certificate_chain = 1;
inline int ClientDownloadRequest_SignatureInfo::certificate_chain_size() const {
  return certificate_chain_.size();
}
inline void ClientDownloadRequest_SignatureInfo::clear_certificate_chain() {
  certificate_chain_.Clear();
}
inline const ::safe_browsing::ClientDownloadRequest_CertificateChain& ClientDownloadRequest_SignatureInfo::certificate_chain(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.SignatureInfo.certificate_chain)
  return certificate_chain_.Get(index);
}
inline ::safe_browsing::ClientDownloadRequest_CertificateChain* ClientDownloadRequest_SignatureInfo::mutable_certificate_chain(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.SignatureInfo.certificate_chain)
  return certificate_chain_.Mutable(index);
}
inline ::safe_browsing::ClientDownloadRequest_CertificateChain* ClientDownloadRequest_SignatureInfo::add_certificate_chain() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientDownloadRequest.SignatureInfo.certificate_chain)
  return certificate_chain_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_CertificateChain >&
ClientDownloadRequest_SignatureInfo::certificate_chain() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientDownloadRequest.SignatureInfo.certificate_chain)
  return certificate_chain_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_CertificateChain >*
ClientDownloadRequest_SignatureInfo::mutable_certificate_chain() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientDownloadRequest.SignatureInfo.certificate_chain)
  return &certificate_chain_;
}

// optional bool trusted = 2;
inline bool ClientDownloadRequest_SignatureInfo::has_trusted() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientDownloadRequest_SignatureInfo::set_has_trusted() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientDownloadRequest_SignatureInfo::clear_has_trusted() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientDownloadRequest_SignatureInfo::clear_trusted() {
  trusted_ = false;
  clear_has_trusted();
}
inline bool ClientDownloadRequest_SignatureInfo::trusted() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.SignatureInfo.trusted)
  return trusted_;
}
inline void ClientDownloadRequest_SignatureInfo::set_trusted(bool value) {
  set_has_trusted();
  trusted_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.SignatureInfo.trusted)
}

// -------------------------------------------------------------------

// ClientDownloadRequest_PEImageHeaders_DebugData

// optional bytes directory_entry = 1;
inline bool ClientDownloadRequest_PEImageHeaders_DebugData::has_directory_entry() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::set_has_directory_entry() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::clear_has_directory_entry() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::clear_directory_entry() {
  if (directory_entry_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    directory_entry_->clear();
  }
  clear_has_directory_entry();
}
inline const ::std::string& ClientDownloadRequest_PEImageHeaders_DebugData::directory_entry() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.directory_entry)
  return *directory_entry_;
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::set_directory_entry(const ::std::string& value) {
  set_has_directory_entry();
  if (directory_entry_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    directory_entry_ = new ::std::string;
  }
  directory_entry_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.directory_entry)
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::set_directory_entry(const char* value) {
  set_has_directory_entry();
  if (directory_entry_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    directory_entry_ = new ::std::string;
  }
  directory_entry_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.directory_entry)
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::set_directory_entry(const void* value, size_t size) {
  set_has_directory_entry();
  if (directory_entry_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    directory_entry_ = new ::std::string;
  }
  directory_entry_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.directory_entry)
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders_DebugData::mutable_directory_entry() {
  set_has_directory_entry();
  if (directory_entry_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    directory_entry_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.directory_entry)
  return directory_entry_;
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders_DebugData::release_directory_entry() {
  clear_has_directory_entry();
  if (directory_entry_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = directory_entry_;
    directory_entry_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::set_allocated_directory_entry(::std::string* directory_entry) {
  if (directory_entry_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete directory_entry_;
  }
  if (directory_entry) {
    set_has_directory_entry();
    directory_entry_ = directory_entry;
  } else {
    clear_has_directory_entry();
    directory_entry_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.directory_entry)
}

// optional bytes raw_data = 2;
inline bool ClientDownloadRequest_PEImageHeaders_DebugData::has_raw_data() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::set_has_raw_data() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::clear_has_raw_data() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::clear_raw_data() {
  if (raw_data_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    raw_data_->clear();
  }
  clear_has_raw_data();
}
inline const ::std::string& ClientDownloadRequest_PEImageHeaders_DebugData::raw_data() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.raw_data)
  return *raw_data_;
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::set_raw_data(const ::std::string& value) {
  set_has_raw_data();
  if (raw_data_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    raw_data_ = new ::std::string;
  }
  raw_data_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.raw_data)
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::set_raw_data(const char* value) {
  set_has_raw_data();
  if (raw_data_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    raw_data_ = new ::std::string;
  }
  raw_data_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.raw_data)
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::set_raw_data(const void* value, size_t size) {
  set_has_raw_data();
  if (raw_data_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    raw_data_ = new ::std::string;
  }
  raw_data_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.raw_data)
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders_DebugData::mutable_raw_data() {
  set_has_raw_data();
  if (raw_data_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    raw_data_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.raw_data)
  return raw_data_;
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders_DebugData::release_raw_data() {
  clear_has_raw_data();
  if (raw_data_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = raw_data_;
    raw_data_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_PEImageHeaders_DebugData::set_allocated_raw_data(::std::string* raw_data) {
  if (raw_data_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete raw_data_;
  }
  if (raw_data) {
    set_has_raw_data();
    raw_data_ = raw_data;
  } else {
    clear_has_raw_data();
    raw_data_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData.raw_data)
}

// -------------------------------------------------------------------

// ClientDownloadRequest_PEImageHeaders

// optional bytes dos_header = 1;
inline bool ClientDownloadRequest_PEImageHeaders::has_dos_header() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadRequest_PEImageHeaders::set_has_dos_header() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadRequest_PEImageHeaders::clear_has_dos_header() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadRequest_PEImageHeaders::clear_dos_header() {
  if (dos_header_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    dos_header_->clear();
  }
  clear_has_dos_header();
}
inline const ::std::string& ClientDownloadRequest_PEImageHeaders::dos_header() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.PEImageHeaders.dos_header)
  return *dos_header_;
}
inline void ClientDownloadRequest_PEImageHeaders::set_dos_header(const ::std::string& value) {
  set_has_dos_header();
  if (dos_header_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    dos_header_ = new ::std::string;
  }
  dos_header_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.PEImageHeaders.dos_header)
}
inline void ClientDownloadRequest_PEImageHeaders::set_dos_header(const char* value) {
  set_has_dos_header();
  if (dos_header_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    dos_header_ = new ::std::string;
  }
  dos_header_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.PEImageHeaders.dos_header)
}
inline void ClientDownloadRequest_PEImageHeaders::set_dos_header(const void* value, size_t size) {
  set_has_dos_header();
  if (dos_header_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    dos_header_ = new ::std::string;
  }
  dos_header_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.PEImageHeaders.dos_header)
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::mutable_dos_header() {
  set_has_dos_header();
  if (dos_header_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    dos_header_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.PEImageHeaders.dos_header)
  return dos_header_;
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::release_dos_header() {
  clear_has_dos_header();
  if (dos_header_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = dos_header_;
    dos_header_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_PEImageHeaders::set_allocated_dos_header(::std::string* dos_header) {
  if (dos_header_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete dos_header_;
  }
  if (dos_header) {
    set_has_dos_header();
    dos_header_ = dos_header;
  } else {
    clear_has_dos_header();
    dos_header_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.PEImageHeaders.dos_header)
}

// optional bytes file_header = 2;
inline bool ClientDownloadRequest_PEImageHeaders::has_file_header() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientDownloadRequest_PEImageHeaders::set_has_file_header() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientDownloadRequest_PEImageHeaders::clear_has_file_header() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientDownloadRequest_PEImageHeaders::clear_file_header() {
  if (file_header_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_header_->clear();
  }
  clear_has_file_header();
}
inline const ::std::string& ClientDownloadRequest_PEImageHeaders::file_header() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.PEImageHeaders.file_header)
  return *file_header_;
}
inline void ClientDownloadRequest_PEImageHeaders::set_file_header(const ::std::string& value) {
  set_has_file_header();
  if (file_header_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_header_ = new ::std::string;
  }
  file_header_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.PEImageHeaders.file_header)
}
inline void ClientDownloadRequest_PEImageHeaders::set_file_header(const char* value) {
  set_has_file_header();
  if (file_header_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_header_ = new ::std::string;
  }
  file_header_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.PEImageHeaders.file_header)
}
inline void ClientDownloadRequest_PEImageHeaders::set_file_header(const void* value, size_t size) {
  set_has_file_header();
  if (file_header_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_header_ = new ::std::string;
  }
  file_header_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.PEImageHeaders.file_header)
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::mutable_file_header() {
  set_has_file_header();
  if (file_header_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_header_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.PEImageHeaders.file_header)
  return file_header_;
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::release_file_header() {
  clear_has_file_header();
  if (file_header_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = file_header_;
    file_header_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_PEImageHeaders::set_allocated_file_header(::std::string* file_header) {
  if (file_header_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete file_header_;
  }
  if (file_header) {
    set_has_file_header();
    file_header_ = file_header;
  } else {
    clear_has_file_header();
    file_header_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.PEImageHeaders.file_header)
}

// optional bytes optional_headers32 = 3;
inline bool ClientDownloadRequest_PEImageHeaders::has_optional_headers32() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientDownloadRequest_PEImageHeaders::set_has_optional_headers32() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientDownloadRequest_PEImageHeaders::clear_has_optional_headers32() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientDownloadRequest_PEImageHeaders::clear_optional_headers32() {
  if (optional_headers32_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    optional_headers32_->clear();
  }
  clear_has_optional_headers32();
}
inline const ::std::string& ClientDownloadRequest_PEImageHeaders::optional_headers32() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers32)
  return *optional_headers32_;
}
inline void ClientDownloadRequest_PEImageHeaders::set_optional_headers32(const ::std::string& value) {
  set_has_optional_headers32();
  if (optional_headers32_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    optional_headers32_ = new ::std::string;
  }
  optional_headers32_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers32)
}
inline void ClientDownloadRequest_PEImageHeaders::set_optional_headers32(const char* value) {
  set_has_optional_headers32();
  if (optional_headers32_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    optional_headers32_ = new ::std::string;
  }
  optional_headers32_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers32)
}
inline void ClientDownloadRequest_PEImageHeaders::set_optional_headers32(const void* value, size_t size) {
  set_has_optional_headers32();
  if (optional_headers32_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    optional_headers32_ = new ::std::string;
  }
  optional_headers32_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers32)
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::mutable_optional_headers32() {
  set_has_optional_headers32();
  if (optional_headers32_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    optional_headers32_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers32)
  return optional_headers32_;
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::release_optional_headers32() {
  clear_has_optional_headers32();
  if (optional_headers32_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = optional_headers32_;
    optional_headers32_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_PEImageHeaders::set_allocated_optional_headers32(::std::string* optional_headers32) {
  if (optional_headers32_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete optional_headers32_;
  }
  if (optional_headers32) {
    set_has_optional_headers32();
    optional_headers32_ = optional_headers32;
  } else {
    clear_has_optional_headers32();
    optional_headers32_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers32)
}

// optional bytes optional_headers64 = 4;
inline bool ClientDownloadRequest_PEImageHeaders::has_optional_headers64() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ClientDownloadRequest_PEImageHeaders::set_has_optional_headers64() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ClientDownloadRequest_PEImageHeaders::clear_has_optional_headers64() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ClientDownloadRequest_PEImageHeaders::clear_optional_headers64() {
  if (optional_headers64_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    optional_headers64_->clear();
  }
  clear_has_optional_headers64();
}
inline const ::std::string& ClientDownloadRequest_PEImageHeaders::optional_headers64() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers64)
  return *optional_headers64_;
}
inline void ClientDownloadRequest_PEImageHeaders::set_optional_headers64(const ::std::string& value) {
  set_has_optional_headers64();
  if (optional_headers64_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    optional_headers64_ = new ::std::string;
  }
  optional_headers64_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers64)
}
inline void ClientDownloadRequest_PEImageHeaders::set_optional_headers64(const char* value) {
  set_has_optional_headers64();
  if (optional_headers64_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    optional_headers64_ = new ::std::string;
  }
  optional_headers64_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers64)
}
inline void ClientDownloadRequest_PEImageHeaders::set_optional_headers64(const void* value, size_t size) {
  set_has_optional_headers64();
  if (optional_headers64_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    optional_headers64_ = new ::std::string;
  }
  optional_headers64_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers64)
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::mutable_optional_headers64() {
  set_has_optional_headers64();
  if (optional_headers64_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    optional_headers64_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers64)
  return optional_headers64_;
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::release_optional_headers64() {
  clear_has_optional_headers64();
  if (optional_headers64_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = optional_headers64_;
    optional_headers64_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_PEImageHeaders::set_allocated_optional_headers64(::std::string* optional_headers64) {
  if (optional_headers64_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete optional_headers64_;
  }
  if (optional_headers64) {
    set_has_optional_headers64();
    optional_headers64_ = optional_headers64;
  } else {
    clear_has_optional_headers64();
    optional_headers64_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.PEImageHeaders.optional_headers64)
}

// repeated bytes section_header = 5;
inline int ClientDownloadRequest_PEImageHeaders::section_header_size() const {
  return section_header_.size();
}
inline void ClientDownloadRequest_PEImageHeaders::clear_section_header() {
  section_header_.Clear();
}
inline const ::std::string& ClientDownloadRequest_PEImageHeaders::section_header(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.PEImageHeaders.section_header)
  return section_header_.Get(index);
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::mutable_section_header(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.PEImageHeaders.section_header)
  return section_header_.Mutable(index);
}
inline void ClientDownloadRequest_PEImageHeaders::set_section_header(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.PEImageHeaders.section_header)
  section_header_.Mutable(index)->assign(value);
}
inline void ClientDownloadRequest_PEImageHeaders::set_section_header(int index, const char* value) {
  section_header_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.PEImageHeaders.section_header)
}
inline void ClientDownloadRequest_PEImageHeaders::set_section_header(int index, const void* value, size_t size) {
  section_header_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.PEImageHeaders.section_header)
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::add_section_header() {
  return section_header_.Add();
}
inline void ClientDownloadRequest_PEImageHeaders::add_section_header(const ::std::string& value) {
  section_header_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:safe_browsing.ClientDownloadRequest.PEImageHeaders.section_header)
}
inline void ClientDownloadRequest_PEImageHeaders::add_section_header(const char* value) {
  section_header_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:safe_browsing.ClientDownloadRequest.PEImageHeaders.section_header)
}
inline void ClientDownloadRequest_PEImageHeaders::add_section_header(const void* value, size_t size) {
  section_header_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:safe_browsing.ClientDownloadRequest.PEImageHeaders.section_header)
}
inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
ClientDownloadRequest_PEImageHeaders::section_header() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientDownloadRequest.PEImageHeaders.section_header)
  return section_header_;
}
inline ::google::protobuf::RepeatedPtrField< ::std::string>*
ClientDownloadRequest_PEImageHeaders::mutable_section_header() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientDownloadRequest.PEImageHeaders.section_header)
  return &section_header_;
}

// optional bytes export_section_data = 6;
inline bool ClientDownloadRequest_PEImageHeaders::has_export_section_data() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ClientDownloadRequest_PEImageHeaders::set_has_export_section_data() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ClientDownloadRequest_PEImageHeaders::clear_has_export_section_data() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ClientDownloadRequest_PEImageHeaders::clear_export_section_data() {
  if (export_section_data_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    export_section_data_->clear();
  }
  clear_has_export_section_data();
}
inline const ::std::string& ClientDownloadRequest_PEImageHeaders::export_section_data() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.PEImageHeaders.export_section_data)
  return *export_section_data_;
}
inline void ClientDownloadRequest_PEImageHeaders::set_export_section_data(const ::std::string& value) {
  set_has_export_section_data();
  if (export_section_data_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    export_section_data_ = new ::std::string;
  }
  export_section_data_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.PEImageHeaders.export_section_data)
}
inline void ClientDownloadRequest_PEImageHeaders::set_export_section_data(const char* value) {
  set_has_export_section_data();
  if (export_section_data_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    export_section_data_ = new ::std::string;
  }
  export_section_data_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.PEImageHeaders.export_section_data)
}
inline void ClientDownloadRequest_PEImageHeaders::set_export_section_data(const void* value, size_t size) {
  set_has_export_section_data();
  if (export_section_data_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    export_section_data_ = new ::std::string;
  }
  export_section_data_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.PEImageHeaders.export_section_data)
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::mutable_export_section_data() {
  set_has_export_section_data();
  if (export_section_data_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    export_section_data_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.PEImageHeaders.export_section_data)
  return export_section_data_;
}
inline ::std::string* ClientDownloadRequest_PEImageHeaders::release_export_section_data() {
  clear_has_export_section_data();
  if (export_section_data_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = export_section_data_;
    export_section_data_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_PEImageHeaders::set_allocated_export_section_data(::std::string* export_section_data) {
  if (export_section_data_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete export_section_data_;
  }
  if (export_section_data) {
    set_has_export_section_data();
    export_section_data_ = export_section_data;
  } else {
    clear_has_export_section_data();
    export_section_data_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.PEImageHeaders.export_section_data)
}

// repeated .safe_browsing.ClientDownloadRequest.PEImageHeaders.DebugData debug_data = 7;
inline int ClientDownloadRequest_PEImageHeaders::debug_data_size() const {
  return debug_data_.size();
}
inline void ClientDownloadRequest_PEImageHeaders::clear_debug_data() {
  debug_data_.Clear();
}
inline const ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData& ClientDownloadRequest_PEImageHeaders::debug_data(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.PEImageHeaders.debug_data)
  return debug_data_.Get(index);
}
inline ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData* ClientDownloadRequest_PEImageHeaders::mutable_debug_data(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.PEImageHeaders.debug_data)
  return debug_data_.Mutable(index);
}
inline ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData* ClientDownloadRequest_PEImageHeaders::add_debug_data() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientDownloadRequest.PEImageHeaders.debug_data)
  return debug_data_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData >&
ClientDownloadRequest_PEImageHeaders::debug_data() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientDownloadRequest.PEImageHeaders.debug_data)
  return debug_data_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData >*
ClientDownloadRequest_PEImageHeaders::mutable_debug_data() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientDownloadRequest.PEImageHeaders.debug_data)
  return &debug_data_;
}

// -------------------------------------------------------------------

// ClientDownloadRequest_ImageHeaders

// optional .safe_browsing.ClientDownloadRequest.PEImageHeaders pe_headers = 1;
inline bool ClientDownloadRequest_ImageHeaders::has_pe_headers() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadRequest_ImageHeaders::set_has_pe_headers() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadRequest_ImageHeaders::clear_has_pe_headers() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadRequest_ImageHeaders::clear_pe_headers() {
  if (pe_headers_ != NULL) pe_headers_->::safe_browsing::ClientDownloadRequest_PEImageHeaders::Clear();
  clear_has_pe_headers();
}
inline const ::safe_browsing::ClientDownloadRequest_PEImageHeaders& ClientDownloadRequest_ImageHeaders::pe_headers() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.ImageHeaders.pe_headers)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return pe_headers_ != NULL ? *pe_headers_ : *default_instance().pe_headers_;
#else
  return pe_headers_ != NULL ? *pe_headers_ : *default_instance_->pe_headers_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_PEImageHeaders* ClientDownloadRequest_ImageHeaders::mutable_pe_headers() {
  set_has_pe_headers();
  if (pe_headers_ == NULL) pe_headers_ = new ::safe_browsing::ClientDownloadRequest_PEImageHeaders;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.ImageHeaders.pe_headers)
  return pe_headers_;
}
inline ::safe_browsing::ClientDownloadRequest_PEImageHeaders* ClientDownloadRequest_ImageHeaders::release_pe_headers() {
  clear_has_pe_headers();
  ::safe_browsing::ClientDownloadRequest_PEImageHeaders* temp = pe_headers_;
  pe_headers_ = NULL;
  return temp;
}
inline void ClientDownloadRequest_ImageHeaders::set_allocated_pe_headers(::safe_browsing::ClientDownloadRequest_PEImageHeaders* pe_headers) {
  delete pe_headers_;
  pe_headers_ = pe_headers;
  if (pe_headers) {
    set_has_pe_headers();
  } else {
    clear_has_pe_headers();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.ImageHeaders.pe_headers)
}

// -------------------------------------------------------------------

// ClientDownloadRequest_ArchivedBinary

// optional string file_basename = 1;
inline bool ClientDownloadRequest_ArchivedBinary::has_file_basename() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadRequest_ArchivedBinary::set_has_file_basename() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_has_file_basename() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_file_basename() {
  if (file_basename_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_->clear();
  }
  clear_has_file_basename();
}
inline const ::std::string& ClientDownloadRequest_ArchivedBinary::file_basename() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.ArchivedBinary.file_basename)
  return *file_basename_;
}
inline void ClientDownloadRequest_ArchivedBinary::set_file_basename(const ::std::string& value) {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  file_basename_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.ArchivedBinary.file_basename)
}
inline void ClientDownloadRequest_ArchivedBinary::set_file_basename(const char* value) {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  file_basename_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.ArchivedBinary.file_basename)
}
inline void ClientDownloadRequest_ArchivedBinary::set_file_basename(const char* value, size_t size) {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  file_basename_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.ArchivedBinary.file_basename)
}
inline ::std::string* ClientDownloadRequest_ArchivedBinary::mutable_file_basename() {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.ArchivedBinary.file_basename)
  return file_basename_;
}
inline ::std::string* ClientDownloadRequest_ArchivedBinary::release_file_basename() {
  clear_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = file_basename_;
    file_basename_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest_ArchivedBinary::set_allocated_file_basename(::std::string* file_basename) {
  if (file_basename_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete file_basename_;
  }
  if (file_basename) {
    set_has_file_basename();
    file_basename_ = file_basename;
  } else {
    clear_has_file_basename();
    file_basename_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.ArchivedBinary.file_basename)
}

// optional .safe_browsing.ClientDownloadRequest.DownloadType download_type = 2;
inline bool ClientDownloadRequest_ArchivedBinary::has_download_type() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientDownloadRequest_ArchivedBinary::set_has_download_type() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_has_download_type() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_download_type() {
  download_type_ = 0;
  clear_has_download_type();
}
inline ::safe_browsing::ClientDownloadRequest_DownloadType ClientDownloadRequest_ArchivedBinary::download_type() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.ArchivedBinary.download_type)
  return static_cast< ::safe_browsing::ClientDownloadRequest_DownloadType >(download_type_);
}
inline void ClientDownloadRequest_ArchivedBinary::set_download_type(::safe_browsing::ClientDownloadRequest_DownloadType value) {
  assert(::safe_browsing::ClientDownloadRequest_DownloadType_IsValid(value));
  set_has_download_type();
  download_type_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.ArchivedBinary.download_type)
}

// optional .safe_browsing.ClientDownloadRequest.Digests digests = 3;
inline bool ClientDownloadRequest_ArchivedBinary::has_digests() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientDownloadRequest_ArchivedBinary::set_has_digests() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_has_digests() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_digests() {
  if (digests_ != NULL) digests_->::safe_browsing::ClientDownloadRequest_Digests::Clear();
  clear_has_digests();
}
inline const ::safe_browsing::ClientDownloadRequest_Digests& ClientDownloadRequest_ArchivedBinary::digests() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.ArchivedBinary.digests)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return digests_ != NULL ? *digests_ : *default_instance().digests_;
#else
  return digests_ != NULL ? *digests_ : *default_instance_->digests_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_Digests* ClientDownloadRequest_ArchivedBinary::mutable_digests() {
  set_has_digests();
  if (digests_ == NULL) digests_ = new ::safe_browsing::ClientDownloadRequest_Digests;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.ArchivedBinary.digests)
  return digests_;
}
inline ::safe_browsing::ClientDownloadRequest_Digests* ClientDownloadRequest_ArchivedBinary::release_digests() {
  clear_has_digests();
  ::safe_browsing::ClientDownloadRequest_Digests* temp = digests_;
  digests_ = NULL;
  return temp;
}
inline void ClientDownloadRequest_ArchivedBinary::set_allocated_digests(::safe_browsing::ClientDownloadRequest_Digests* digests) {
  delete digests_;
  digests_ = digests;
  if (digests) {
    set_has_digests();
  } else {
    clear_has_digests();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.ArchivedBinary.digests)
}

// optional int64 length = 4;
inline bool ClientDownloadRequest_ArchivedBinary::has_length() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ClientDownloadRequest_ArchivedBinary::set_has_length() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_has_length() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_length() {
  length_ = GOOGLE_LONGLONG(0);
  clear_has_length();
}
inline ::google::protobuf::int64 ClientDownloadRequest_ArchivedBinary::length() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.ArchivedBinary.length)
  return length_;
}
inline void ClientDownloadRequest_ArchivedBinary::set_length(::google::protobuf::int64 value) {
  set_has_length();
  length_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.ArchivedBinary.length)
}

// optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 5;
inline bool ClientDownloadRequest_ArchivedBinary::has_signature() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ClientDownloadRequest_ArchivedBinary::set_has_signature() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_has_signature() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_signature() {
  if (signature_ != NULL) signature_->::safe_browsing::ClientDownloadRequest_SignatureInfo::Clear();
  clear_has_signature();
}
inline const ::safe_browsing::ClientDownloadRequest_SignatureInfo& ClientDownloadRequest_ArchivedBinary::signature() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.ArchivedBinary.signature)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return signature_ != NULL ? *signature_ : *default_instance().signature_;
#else
  return signature_ != NULL ? *signature_ : *default_instance_->signature_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* ClientDownloadRequest_ArchivedBinary::mutable_signature() {
  set_has_signature();
  if (signature_ == NULL) signature_ = new ::safe_browsing::ClientDownloadRequest_SignatureInfo;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.ArchivedBinary.signature)
  return signature_;
}
inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* ClientDownloadRequest_ArchivedBinary::release_signature() {
  clear_has_signature();
  ::safe_browsing::ClientDownloadRequest_SignatureInfo* temp = signature_;
  signature_ = NULL;
  return temp;
}
inline void ClientDownloadRequest_ArchivedBinary::set_allocated_signature(::safe_browsing::ClientDownloadRequest_SignatureInfo* signature) {
  delete signature_;
  signature_ = signature;
  if (signature) {
    set_has_signature();
  } else {
    clear_has_signature();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.ArchivedBinary.signature)
}

// optional .safe_browsing.ClientDownloadRequest.ImageHeaders image_headers = 6;
inline bool ClientDownloadRequest_ArchivedBinary::has_image_headers() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ClientDownloadRequest_ArchivedBinary::set_has_image_headers() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_has_image_headers() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ClientDownloadRequest_ArchivedBinary::clear_image_headers() {
  if (image_headers_ != NULL) image_headers_->::safe_browsing::ClientDownloadRequest_ImageHeaders::Clear();
  clear_has_image_headers();
}
inline const ::safe_browsing::ClientDownloadRequest_ImageHeaders& ClientDownloadRequest_ArchivedBinary::image_headers() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.ArchivedBinary.image_headers)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return image_headers_ != NULL ? *image_headers_ : *default_instance().image_headers_;
#else
  return image_headers_ != NULL ? *image_headers_ : *default_instance_->image_headers_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* ClientDownloadRequest_ArchivedBinary::mutable_image_headers() {
  set_has_image_headers();
  if (image_headers_ == NULL) image_headers_ = new ::safe_browsing::ClientDownloadRequest_ImageHeaders;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.ArchivedBinary.image_headers)
  return image_headers_;
}
inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* ClientDownloadRequest_ArchivedBinary::release_image_headers() {
  clear_has_image_headers();
  ::safe_browsing::ClientDownloadRequest_ImageHeaders* temp = image_headers_;
  image_headers_ = NULL;
  return temp;
}
inline void ClientDownloadRequest_ArchivedBinary::set_allocated_image_headers(::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers) {
  delete image_headers_;
  image_headers_ = image_headers;
  if (image_headers) {
    set_has_image_headers();
  } else {
    clear_has_image_headers();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.ArchivedBinary.image_headers)
}

// -------------------------------------------------------------------

// ClientDownloadRequest

// required string url = 1;
inline bool ClientDownloadRequest::has_url() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadRequest::set_has_url() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadRequest::clear_has_url() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadRequest::clear_url() {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_->clear();
  }
  clear_has_url();
}
inline const ::std::string& ClientDownloadRequest::url() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.url)
  return *url_;
}
inline void ClientDownloadRequest::set_url(const ::std::string& value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.url)
}
inline void ClientDownloadRequest::set_url(const char* value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.url)
}
inline void ClientDownloadRequest::set_url(const char* value, size_t size) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.url)
}
inline ::std::string* ClientDownloadRequest::mutable_url() {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.url)
  return url_;
}
inline ::std::string* ClientDownloadRequest::release_url() {
  clear_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = url_;
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest::set_allocated_url(::std::string* url) {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete url_;
  }
  if (url) {
    set_has_url();
    url_ = url;
  } else {
    clear_has_url();
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.url)
}

// required .safe_browsing.ClientDownloadRequest.Digests digests = 2;
inline bool ClientDownloadRequest::has_digests() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientDownloadRequest::set_has_digests() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientDownloadRequest::clear_has_digests() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientDownloadRequest::clear_digests() {
  if (digests_ != NULL) digests_->::safe_browsing::ClientDownloadRequest_Digests::Clear();
  clear_has_digests();
}
inline const ::safe_browsing::ClientDownloadRequest_Digests& ClientDownloadRequest::digests() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.digests)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return digests_ != NULL ? *digests_ : *default_instance().digests_;
#else
  return digests_ != NULL ? *digests_ : *default_instance_->digests_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_Digests* ClientDownloadRequest::mutable_digests() {
  set_has_digests();
  if (digests_ == NULL) digests_ = new ::safe_browsing::ClientDownloadRequest_Digests;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.digests)
  return digests_;
}
inline ::safe_browsing::ClientDownloadRequest_Digests* ClientDownloadRequest::release_digests() {
  clear_has_digests();
  ::safe_browsing::ClientDownloadRequest_Digests* temp = digests_;
  digests_ = NULL;
  return temp;
}
inline void ClientDownloadRequest::set_allocated_digests(::safe_browsing::ClientDownloadRequest_Digests* digests) {
  delete digests_;
  digests_ = digests;
  if (digests) {
    set_has_digests();
  } else {
    clear_has_digests();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.digests)
}

// required int64 length = 3;
inline bool ClientDownloadRequest::has_length() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientDownloadRequest::set_has_length() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientDownloadRequest::clear_has_length() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientDownloadRequest::clear_length() {
  length_ = GOOGLE_LONGLONG(0);
  clear_has_length();
}
inline ::google::protobuf::int64 ClientDownloadRequest::length() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.length)
  return length_;
}
inline void ClientDownloadRequest::set_length(::google::protobuf::int64 value) {
  set_has_length();
  length_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.length)
}

// repeated .safe_browsing.ClientDownloadRequest.Resource resources = 4;
inline int ClientDownloadRequest::resources_size() const {
  return resources_.size();
}
inline void ClientDownloadRequest::clear_resources() {
  resources_.Clear();
}
inline const ::safe_browsing::ClientDownloadRequest_Resource& ClientDownloadRequest::resources(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.resources)
  return resources_.Get(index);
}
inline ::safe_browsing::ClientDownloadRequest_Resource* ClientDownloadRequest::mutable_resources(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.resources)
  return resources_.Mutable(index);
}
inline ::safe_browsing::ClientDownloadRequest_Resource* ClientDownloadRequest::add_resources() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientDownloadRequest.resources)
  return resources_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_Resource >&
ClientDownloadRequest::resources() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientDownloadRequest.resources)
  return resources_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_Resource >*
ClientDownloadRequest::mutable_resources() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientDownloadRequest.resources)
  return &resources_;
}

// optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 5;
inline bool ClientDownloadRequest::has_signature() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ClientDownloadRequest::set_has_signature() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ClientDownloadRequest::clear_has_signature() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ClientDownloadRequest::clear_signature() {
  if (signature_ != NULL) signature_->::safe_browsing::ClientDownloadRequest_SignatureInfo::Clear();
  clear_has_signature();
}
inline const ::safe_browsing::ClientDownloadRequest_SignatureInfo& ClientDownloadRequest::signature() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.signature)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return signature_ != NULL ? *signature_ : *default_instance().signature_;
#else
  return signature_ != NULL ? *signature_ : *default_instance_->signature_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* ClientDownloadRequest::mutable_signature() {
  set_has_signature();
  if (signature_ == NULL) signature_ = new ::safe_browsing::ClientDownloadRequest_SignatureInfo;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.signature)
  return signature_;
}
inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* ClientDownloadRequest::release_signature() {
  clear_has_signature();
  ::safe_browsing::ClientDownloadRequest_SignatureInfo* temp = signature_;
  signature_ = NULL;
  return temp;
}
inline void ClientDownloadRequest::set_allocated_signature(::safe_browsing::ClientDownloadRequest_SignatureInfo* signature) {
  delete signature_;
  signature_ = signature;
  if (signature) {
    set_has_signature();
  } else {
    clear_has_signature();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.signature)
}

// optional bool user_initiated = 6;
inline bool ClientDownloadRequest::has_user_initiated() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ClientDownloadRequest::set_has_user_initiated() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ClientDownloadRequest::clear_has_user_initiated() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ClientDownloadRequest::clear_user_initiated() {
  user_initiated_ = false;
  clear_has_user_initiated();
}
inline bool ClientDownloadRequest::user_initiated() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.user_initiated)
  return user_initiated_;
}
inline void ClientDownloadRequest::set_user_initiated(bool value) {
  set_has_user_initiated();
  user_initiated_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.user_initiated)
}

// optional string file_basename = 9;
inline bool ClientDownloadRequest::has_file_basename() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void ClientDownloadRequest::set_has_file_basename() {
  _has_bits_[0] |= 0x00000040u;
}
inline void ClientDownloadRequest::clear_has_file_basename() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void ClientDownloadRequest::clear_file_basename() {
  if (file_basename_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_->clear();
  }
  clear_has_file_basename();
}
inline const ::std::string& ClientDownloadRequest::file_basename() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.file_basename)
  return *file_basename_;
}
inline void ClientDownloadRequest::set_file_basename(const ::std::string& value) {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  file_basename_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.file_basename)
}
inline void ClientDownloadRequest::set_file_basename(const char* value) {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  file_basename_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.file_basename)
}
inline void ClientDownloadRequest::set_file_basename(const char* value, size_t size) {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  file_basename_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.file_basename)
}
inline ::std::string* ClientDownloadRequest::mutable_file_basename() {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.file_basename)
  return file_basename_;
}
inline ::std::string* ClientDownloadRequest::release_file_basename() {
  clear_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = file_basename_;
    file_basename_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest::set_allocated_file_basename(::std::string* file_basename) {
  if (file_basename_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete file_basename_;
  }
  if (file_basename) {
    set_has_file_basename();
    file_basename_ = file_basename;
  } else {
    clear_has_file_basename();
    file_basename_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.file_basename)
}

// optional .safe_browsing.ClientDownloadRequest.DownloadType download_type = 10 [default = WIN_EXECUTABLE];
inline bool ClientDownloadRequest::has_download_type() const {
  return (_has_bits_[0] & 0x00000080u) != 0;
}
inline void ClientDownloadRequest::set_has_download_type() {
  _has_bits_[0] |= 0x00000080u;
}
inline void ClientDownloadRequest::clear_has_download_type() {
  _has_bits_[0] &= ~0x00000080u;
}
inline void ClientDownloadRequest::clear_download_type() {
  download_type_ = 0;
  clear_has_download_type();
}
inline ::safe_browsing::ClientDownloadRequest_DownloadType ClientDownloadRequest::download_type() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.download_type)
  return static_cast< ::safe_browsing::ClientDownloadRequest_DownloadType >(download_type_);
}
inline void ClientDownloadRequest::set_download_type(::safe_browsing::ClientDownloadRequest_DownloadType value) {
  assert(::safe_browsing::ClientDownloadRequest_DownloadType_IsValid(value));
  set_has_download_type();
  download_type_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.download_type)
}

// optional string locale = 11;
inline bool ClientDownloadRequest::has_locale() const {
  return (_has_bits_[0] & 0x00000100u) != 0;
}
inline void ClientDownloadRequest::set_has_locale() {
  _has_bits_[0] |= 0x00000100u;
}
inline void ClientDownloadRequest::clear_has_locale() {
  _has_bits_[0] &= ~0x00000100u;
}
inline void ClientDownloadRequest::clear_locale() {
  if (locale_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    locale_->clear();
  }
  clear_has_locale();
}
inline const ::std::string& ClientDownloadRequest::locale() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.locale)
  return *locale_;
}
inline void ClientDownloadRequest::set_locale(const ::std::string& value) {
  set_has_locale();
  if (locale_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    locale_ = new ::std::string;
  }
  locale_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadRequest.locale)
}
inline void ClientDownloadRequest::set_locale(const char* value) {
  set_has_locale();
  if (locale_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    locale_ = new ::std::string;
  }
  locale_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadRequest.locale)
}
inline void ClientDownloadRequest::set_locale(const char* value, size_t size) {
  set_has_locale();
  if (locale_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    locale_ = new ::std::string;
  }
  locale_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadRequest.locale)
}
inline ::std::string* ClientDownloadRequest::mutable_locale() {
  set_has_locale();
  if (locale_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    locale_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.locale)
  return locale_;
}
inline ::std::string* ClientDownloadRequest::release_locale() {
  clear_has_locale();
  if (locale_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = locale_;
    locale_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadRequest::set_allocated_locale(::std::string* locale) {
  if (locale_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete locale_;
  }
  if (locale) {
    set_has_locale();
    locale_ = locale;
  } else {
    clear_has_locale();
    locale_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.locale)
}

// optional .safe_browsing.ClientDownloadRequest.ImageHeaders image_headers = 18;
inline bool ClientDownloadRequest::has_image_headers() const {
  return (_has_bits_[0] & 0x00000200u) != 0;
}
inline void ClientDownloadRequest::set_has_image_headers() {
  _has_bits_[0] |= 0x00000200u;
}
inline void ClientDownloadRequest::clear_has_image_headers() {
  _has_bits_[0] &= ~0x00000200u;
}
inline void ClientDownloadRequest::clear_image_headers() {
  if (image_headers_ != NULL) image_headers_->::safe_browsing::ClientDownloadRequest_ImageHeaders::Clear();
  clear_has_image_headers();
}
inline const ::safe_browsing::ClientDownloadRequest_ImageHeaders& ClientDownloadRequest::image_headers() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.image_headers)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return image_headers_ != NULL ? *image_headers_ : *default_instance().image_headers_;
#else
  return image_headers_ != NULL ? *image_headers_ : *default_instance_->image_headers_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* ClientDownloadRequest::mutable_image_headers() {
  set_has_image_headers();
  if (image_headers_ == NULL) image_headers_ = new ::safe_browsing::ClientDownloadRequest_ImageHeaders;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.image_headers)
  return image_headers_;
}
inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* ClientDownloadRequest::release_image_headers() {
  clear_has_image_headers();
  ::safe_browsing::ClientDownloadRequest_ImageHeaders* temp = image_headers_;
  image_headers_ = NULL;
  return temp;
}
inline void ClientDownloadRequest::set_allocated_image_headers(::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers) {
  delete image_headers_;
  image_headers_ = image_headers;
  if (image_headers) {
    set_has_image_headers();
  } else {
    clear_has_image_headers();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadRequest.image_headers)
}

// repeated .safe_browsing.ClientDownloadRequest.ArchivedBinary archived_binary = 22;
inline int ClientDownloadRequest::archived_binary_size() const {
  return archived_binary_.size();
}
inline void ClientDownloadRequest::clear_archived_binary() {
  archived_binary_.Clear();
}
inline const ::safe_browsing::ClientDownloadRequest_ArchivedBinary& ClientDownloadRequest::archived_binary(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadRequest.archived_binary)
  return archived_binary_.Get(index);
}
inline ::safe_browsing::ClientDownloadRequest_ArchivedBinary* ClientDownloadRequest::mutable_archived_binary(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadRequest.archived_binary)
  return archived_binary_.Mutable(index);
}
inline ::safe_browsing::ClientDownloadRequest_ArchivedBinary* ClientDownloadRequest::add_archived_binary() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientDownloadRequest.archived_binary)
  return archived_binary_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_ArchivedBinary >&
ClientDownloadRequest::archived_binary() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientDownloadRequest.archived_binary)
  return archived_binary_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientDownloadRequest_ArchivedBinary >*
ClientDownloadRequest::mutable_archived_binary() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientDownloadRequest.archived_binary)
  return &archived_binary_;
}

// -------------------------------------------------------------------

// ClientDownloadResponse_MoreInfo

// optional string description = 1;
inline bool ClientDownloadResponse_MoreInfo::has_description() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadResponse_MoreInfo::set_has_description() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadResponse_MoreInfo::clear_has_description() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadResponse_MoreInfo::clear_description() {
  if (description_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    description_->clear();
  }
  clear_has_description();
}
inline const ::std::string& ClientDownloadResponse_MoreInfo::description() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadResponse.MoreInfo.description)
  return *description_;
}
inline void ClientDownloadResponse_MoreInfo::set_description(const ::std::string& value) {
  set_has_description();
  if (description_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    description_ = new ::std::string;
  }
  description_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadResponse.MoreInfo.description)
}
inline void ClientDownloadResponse_MoreInfo::set_description(const char* value) {
  set_has_description();
  if (description_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    description_ = new ::std::string;
  }
  description_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadResponse.MoreInfo.description)
}
inline void ClientDownloadResponse_MoreInfo::set_description(const char* value, size_t size) {
  set_has_description();
  if (description_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    description_ = new ::std::string;
  }
  description_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadResponse.MoreInfo.description)
}
inline ::std::string* ClientDownloadResponse_MoreInfo::mutable_description() {
  set_has_description();
  if (description_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    description_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadResponse.MoreInfo.description)
  return description_;
}
inline ::std::string* ClientDownloadResponse_MoreInfo::release_description() {
  clear_has_description();
  if (description_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = description_;
    description_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadResponse_MoreInfo::set_allocated_description(::std::string* description) {
  if (description_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete description_;
  }
  if (description) {
    set_has_description();
    description_ = description;
  } else {
    clear_has_description();
    description_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadResponse.MoreInfo.description)
}

// optional string url = 2;
inline bool ClientDownloadResponse_MoreInfo::has_url() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientDownloadResponse_MoreInfo::set_has_url() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientDownloadResponse_MoreInfo::clear_has_url() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientDownloadResponse_MoreInfo::clear_url() {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_->clear();
  }
  clear_has_url();
}
inline const ::std::string& ClientDownloadResponse_MoreInfo::url() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadResponse.MoreInfo.url)
  return *url_;
}
inline void ClientDownloadResponse_MoreInfo::set_url(const ::std::string& value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadResponse.MoreInfo.url)
}
inline void ClientDownloadResponse_MoreInfo::set_url(const char* value) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadResponse.MoreInfo.url)
}
inline void ClientDownloadResponse_MoreInfo::set_url(const char* value, size_t size) {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  url_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadResponse.MoreInfo.url)
}
inline ::std::string* ClientDownloadResponse_MoreInfo::mutable_url() {
  set_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    url_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadResponse.MoreInfo.url)
  return url_;
}
inline ::std::string* ClientDownloadResponse_MoreInfo::release_url() {
  clear_has_url();
  if (url_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = url_;
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadResponse_MoreInfo::set_allocated_url(::std::string* url) {
  if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete url_;
  }
  if (url) {
    set_has_url();
    url_ = url;
  } else {
    clear_has_url();
    url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadResponse.MoreInfo.url)
}

// -------------------------------------------------------------------

// ClientDownloadResponse

// required .safe_browsing.ClientDownloadResponse.Verdict verdict = 1;
inline bool ClientDownloadResponse::has_verdict() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadResponse::set_has_verdict() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadResponse::clear_has_verdict() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadResponse::clear_verdict() {
  verdict_ = 0;
  clear_has_verdict();
}
inline ::safe_browsing::ClientDownloadResponse_Verdict ClientDownloadResponse::verdict() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadResponse.verdict)
  return static_cast< ::safe_browsing::ClientDownloadResponse_Verdict >(verdict_);
}
inline void ClientDownloadResponse::set_verdict(::safe_browsing::ClientDownloadResponse_Verdict value) {
  assert(::safe_browsing::ClientDownloadResponse_Verdict_IsValid(value));
  set_has_verdict();
  verdict_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadResponse.verdict)
}

// optional .safe_browsing.ClientDownloadResponse.MoreInfo more_info = 2;
inline bool ClientDownloadResponse::has_more_info() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientDownloadResponse::set_has_more_info() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientDownloadResponse::clear_has_more_info() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientDownloadResponse::clear_more_info() {
  if (more_info_ != NULL) more_info_->::safe_browsing::ClientDownloadResponse_MoreInfo::Clear();
  clear_has_more_info();
}
inline const ::safe_browsing::ClientDownloadResponse_MoreInfo& ClientDownloadResponse::more_info() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadResponse.more_info)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return more_info_ != NULL ? *more_info_ : *default_instance().more_info_;
#else
  return more_info_ != NULL ? *more_info_ : *default_instance_->more_info_;
#endif
}
inline ::safe_browsing::ClientDownloadResponse_MoreInfo* ClientDownloadResponse::mutable_more_info() {
  set_has_more_info();
  if (more_info_ == NULL) more_info_ = new ::safe_browsing::ClientDownloadResponse_MoreInfo;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadResponse.more_info)
  return more_info_;
}
inline ::safe_browsing::ClientDownloadResponse_MoreInfo* ClientDownloadResponse::release_more_info() {
  clear_has_more_info();
  ::safe_browsing::ClientDownloadResponse_MoreInfo* temp = more_info_;
  more_info_ = NULL;
  return temp;
}
inline void ClientDownloadResponse::set_allocated_more_info(::safe_browsing::ClientDownloadResponse_MoreInfo* more_info) {
  delete more_info_;
  more_info_ = more_info;
  if (more_info) {
    set_has_more_info();
  } else {
    clear_has_more_info();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadResponse.more_info)
}

// optional bytes token = 3;
inline bool ClientDownloadResponse::has_token() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientDownloadResponse::set_has_token() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientDownloadResponse::clear_has_token() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientDownloadResponse::clear_token() {
  if (token_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_->clear();
  }
  clear_has_token();
}
inline const ::std::string& ClientDownloadResponse::token() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadResponse.token)
  return *token_;
}
inline void ClientDownloadResponse::set_token(const ::std::string& value) {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  token_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadResponse.token)
}
inline void ClientDownloadResponse::set_token(const char* value) {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  token_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadResponse.token)
}
inline void ClientDownloadResponse::set_token(const void* value, size_t size) {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  token_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadResponse.token)
}
inline ::std::string* ClientDownloadResponse::mutable_token() {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadResponse.token)
  return token_;
}
inline ::std::string* ClientDownloadResponse::release_token() {
  clear_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = token_;
    token_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadResponse::set_allocated_token(::std::string* token) {
  if (token_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete token_;
  }
  if (token) {
    set_has_token();
    token_ = token;
  } else {
    clear_has_token();
    token_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadResponse.token)
}

// -------------------------------------------------------------------

// ClientDownloadReport_UserInformation

// optional string email = 1;
inline bool ClientDownloadReport_UserInformation::has_email() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadReport_UserInformation::set_has_email() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadReport_UserInformation::clear_has_email() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadReport_UserInformation::clear_email() {
  if (email_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    email_->clear();
  }
  clear_has_email();
}
inline const ::std::string& ClientDownloadReport_UserInformation::email() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadReport.UserInformation.email)
  return *email_;
}
inline void ClientDownloadReport_UserInformation::set_email(const ::std::string& value) {
  set_has_email();
  if (email_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    email_ = new ::std::string;
  }
  email_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadReport.UserInformation.email)
}
inline void ClientDownloadReport_UserInformation::set_email(const char* value) {
  set_has_email();
  if (email_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    email_ = new ::std::string;
  }
  email_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadReport.UserInformation.email)
}
inline void ClientDownloadReport_UserInformation::set_email(const char* value, size_t size) {
  set_has_email();
  if (email_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    email_ = new ::std::string;
  }
  email_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadReport.UserInformation.email)
}
inline ::std::string* ClientDownloadReport_UserInformation::mutable_email() {
  set_has_email();
  if (email_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    email_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadReport.UserInformation.email)
  return email_;
}
inline ::std::string* ClientDownloadReport_UserInformation::release_email() {
  clear_has_email();
  if (email_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = email_;
    email_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadReport_UserInformation::set_allocated_email(::std::string* email) {
  if (email_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete email_;
  }
  if (email) {
    set_has_email();
    email_ = email;
  } else {
    clear_has_email();
    email_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadReport.UserInformation.email)
}

// -------------------------------------------------------------------

// ClientDownloadReport

// optional .safe_browsing.ClientDownloadReport.Reason reason = 1;
inline bool ClientDownloadReport::has_reason() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientDownloadReport::set_has_reason() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientDownloadReport::clear_has_reason() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientDownloadReport::clear_reason() {
  reason_ = 0;
  clear_has_reason();
}
inline ::safe_browsing::ClientDownloadReport_Reason ClientDownloadReport::reason() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadReport.reason)
  return static_cast< ::safe_browsing::ClientDownloadReport_Reason >(reason_);
}
inline void ClientDownloadReport::set_reason(::safe_browsing::ClientDownloadReport_Reason value) {
  assert(::safe_browsing::ClientDownloadReport_Reason_IsValid(value));
  set_has_reason();
  reason_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadReport.reason)
}

// optional .safe_browsing.ClientDownloadRequest download_request = 2;
inline bool ClientDownloadReport::has_download_request() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientDownloadReport::set_has_download_request() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientDownloadReport::clear_has_download_request() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientDownloadReport::clear_download_request() {
  if (download_request_ != NULL) download_request_->::safe_browsing::ClientDownloadRequest::Clear();
  clear_has_download_request();
}
inline const ::safe_browsing::ClientDownloadRequest& ClientDownloadReport::download_request() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadReport.download_request)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return download_request_ != NULL ? *download_request_ : *default_instance().download_request_;
#else
  return download_request_ != NULL ? *download_request_ : *default_instance_->download_request_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest* ClientDownloadReport::mutable_download_request() {
  set_has_download_request();
  if (download_request_ == NULL) download_request_ = new ::safe_browsing::ClientDownloadRequest;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadReport.download_request)
  return download_request_;
}
inline ::safe_browsing::ClientDownloadRequest* ClientDownloadReport::release_download_request() {
  clear_has_download_request();
  ::safe_browsing::ClientDownloadRequest* temp = download_request_;
  download_request_ = NULL;
  return temp;
}
inline void ClientDownloadReport::set_allocated_download_request(::safe_browsing::ClientDownloadRequest* download_request) {
  delete download_request_;
  download_request_ = download_request;
  if (download_request) {
    set_has_download_request();
  } else {
    clear_has_download_request();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadReport.download_request)
}

// optional .safe_browsing.ClientDownloadReport.UserInformation user_information = 3;
inline bool ClientDownloadReport::has_user_information() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientDownloadReport::set_has_user_information() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientDownloadReport::clear_has_user_information() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientDownloadReport::clear_user_information() {
  if (user_information_ != NULL) user_information_->::safe_browsing::ClientDownloadReport_UserInformation::Clear();
  clear_has_user_information();
}
inline const ::safe_browsing::ClientDownloadReport_UserInformation& ClientDownloadReport::user_information() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadReport.user_information)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return user_information_ != NULL ? *user_information_ : *default_instance().user_information_;
#else
  return user_information_ != NULL ? *user_information_ : *default_instance_->user_information_;
#endif
}
inline ::safe_browsing::ClientDownloadReport_UserInformation* ClientDownloadReport::mutable_user_information() {
  set_has_user_information();
  if (user_information_ == NULL) user_information_ = new ::safe_browsing::ClientDownloadReport_UserInformation;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadReport.user_information)
  return user_information_;
}
inline ::safe_browsing::ClientDownloadReport_UserInformation* ClientDownloadReport::release_user_information() {
  clear_has_user_information();
  ::safe_browsing::ClientDownloadReport_UserInformation* temp = user_information_;
  user_information_ = NULL;
  return temp;
}
inline void ClientDownloadReport::set_allocated_user_information(::safe_browsing::ClientDownloadReport_UserInformation* user_information) {
  delete user_information_;
  user_information_ = user_information;
  if (user_information) {
    set_has_user_information();
  } else {
    clear_has_user_information();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadReport.user_information)
}

// optional bytes comment = 4;
inline bool ClientDownloadReport::has_comment() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ClientDownloadReport::set_has_comment() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ClientDownloadReport::clear_has_comment() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ClientDownloadReport::clear_comment() {
  if (comment_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    comment_->clear();
  }
  clear_has_comment();
}
inline const ::std::string& ClientDownloadReport::comment() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadReport.comment)
  return *comment_;
}
inline void ClientDownloadReport::set_comment(const ::std::string& value) {
  set_has_comment();
  if (comment_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    comment_ = new ::std::string;
  }
  comment_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientDownloadReport.comment)
}
inline void ClientDownloadReport::set_comment(const char* value) {
  set_has_comment();
  if (comment_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    comment_ = new ::std::string;
  }
  comment_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientDownloadReport.comment)
}
inline void ClientDownloadReport::set_comment(const void* value, size_t size) {
  set_has_comment();
  if (comment_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    comment_ = new ::std::string;
  }
  comment_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientDownloadReport.comment)
}
inline ::std::string* ClientDownloadReport::mutable_comment() {
  set_has_comment();
  if (comment_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    comment_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadReport.comment)
  return comment_;
}
inline ::std::string* ClientDownloadReport::release_comment() {
  clear_has_comment();
  if (comment_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = comment_;
    comment_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientDownloadReport::set_allocated_comment(::std::string* comment) {
  if (comment_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete comment_;
  }
  if (comment) {
    set_has_comment();
    comment_ = comment;
  } else {
    clear_has_comment();
    comment_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadReport.comment)
}

// optional .safe_browsing.ClientDownloadResponse download_response = 5;
inline bool ClientDownloadReport::has_download_response() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ClientDownloadReport::set_has_download_response() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ClientDownloadReport::clear_has_download_response() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ClientDownloadReport::clear_download_response() {
  if (download_response_ != NULL) download_response_->::safe_browsing::ClientDownloadResponse::Clear();
  clear_has_download_response();
}
inline const ::safe_browsing::ClientDownloadResponse& ClientDownloadReport::download_response() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientDownloadReport.download_response)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return download_response_ != NULL ? *download_response_ : *default_instance().download_response_;
#else
  return download_response_ != NULL ? *download_response_ : *default_instance_->download_response_;
#endif
}
inline ::safe_browsing::ClientDownloadResponse* ClientDownloadReport::mutable_download_response() {
  set_has_download_response();
  if (download_response_ == NULL) download_response_ = new ::safe_browsing::ClientDownloadResponse;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientDownloadReport.download_response)
  return download_response_;
}
inline ::safe_browsing::ClientDownloadResponse* ClientDownloadReport::release_download_response() {
  clear_has_download_response();
  ::safe_browsing::ClientDownloadResponse* temp = download_response_;
  download_response_ = NULL;
  return temp;
}
inline void ClientDownloadReport::set_allocated_download_response(::safe_browsing::ClientDownloadResponse* download_response) {
  delete download_response_;
  download_response_ = download_response;
  if (download_response) {
    set_has_download_response();
  } else {
    clear_has_download_response();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientDownloadReport.download_response)
}

// -------------------------------------------------------------------

// ClientUploadResponse

// optional .safe_browsing.ClientUploadResponse.UploadStatus status = 1;
inline bool ClientUploadResponse::has_status() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientUploadResponse::set_has_status() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientUploadResponse::clear_has_status() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientUploadResponse::clear_status() {
  status_ = 0;
  clear_has_status();
}
inline ::safe_browsing::ClientUploadResponse_UploadStatus ClientUploadResponse::status() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientUploadResponse.status)
  return static_cast< ::safe_browsing::ClientUploadResponse_UploadStatus >(status_);
}
inline void ClientUploadResponse::set_status(::safe_browsing::ClientUploadResponse_UploadStatus value) {
  assert(::safe_browsing::ClientUploadResponse_UploadStatus_IsValid(value));
  set_has_status();
  status_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientUploadResponse.status)
}

// optional string permalink = 2;
inline bool ClientUploadResponse::has_permalink() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientUploadResponse::set_has_permalink() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientUploadResponse::clear_has_permalink() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientUploadResponse::clear_permalink() {
  if (permalink_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    permalink_->clear();
  }
  clear_has_permalink();
}
inline const ::std::string& ClientUploadResponse::permalink() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientUploadResponse.permalink)
  return *permalink_;
}
inline void ClientUploadResponse::set_permalink(const ::std::string& value) {
  set_has_permalink();
  if (permalink_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    permalink_ = new ::std::string;
  }
  permalink_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientUploadResponse.permalink)
}
inline void ClientUploadResponse::set_permalink(const char* value) {
  set_has_permalink();
  if (permalink_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    permalink_ = new ::std::string;
  }
  permalink_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientUploadResponse.permalink)
}
inline void ClientUploadResponse::set_permalink(const char* value, size_t size) {
  set_has_permalink();
  if (permalink_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    permalink_ = new ::std::string;
  }
  permalink_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientUploadResponse.permalink)
}
inline ::std::string* ClientUploadResponse::mutable_permalink() {
  set_has_permalink();
  if (permalink_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    permalink_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientUploadResponse.permalink)
  return permalink_;
}
inline ::std::string* ClientUploadResponse::release_permalink() {
  clear_has_permalink();
  if (permalink_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = permalink_;
    permalink_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientUploadResponse::set_allocated_permalink(::std::string* permalink) {
  if (permalink_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete permalink_;
  }
  if (permalink) {
    set_has_permalink();
    permalink_ = permalink;
  } else {
    clear_has_permalink();
    permalink_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientUploadResponse.permalink)
}

// -------------------------------------------------------------------

// ClientIncidentReport_IncidentData_TrackedPreferenceIncident

// optional string path = 1;
inline bool ClientIncidentReport_IncidentData_TrackedPreferenceIncident::has_path() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_has_path() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::clear_has_path() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::clear_path() {
  if (path_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_->clear();
  }
  clear_has_path();
}
inline const ::std::string& ClientIncidentReport_IncidentData_TrackedPreferenceIncident::path() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.path)
  return *path_;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_path(const ::std::string& value) {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  path_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.path)
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_path(const char* value) {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  path_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.path)
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_path(const char* value, size_t size) {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  path_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.path)
}
inline ::std::string* ClientIncidentReport_IncidentData_TrackedPreferenceIncident::mutable_path() {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.path)
  return path_;
}
inline ::std::string* ClientIncidentReport_IncidentData_TrackedPreferenceIncident::release_path() {
  clear_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = path_;
    path_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_allocated_path(::std::string* path) {
  if (path_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete path_;
  }
  if (path) {
    set_has_path();
    path_ = path;
  } else {
    clear_has_path();
    path_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.path)
}

// optional string atomic_value = 2;
inline bool ClientIncidentReport_IncidentData_TrackedPreferenceIncident::has_atomic_value() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_has_atomic_value() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::clear_has_atomic_value() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::clear_atomic_value() {
  if (atomic_value_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    atomic_value_->clear();
  }
  clear_has_atomic_value();
}
inline const ::std::string& ClientIncidentReport_IncidentData_TrackedPreferenceIncident::atomic_value() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.atomic_value)
  return *atomic_value_;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_atomic_value(const ::std::string& value) {
  set_has_atomic_value();
  if (atomic_value_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    atomic_value_ = new ::std::string;
  }
  atomic_value_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.atomic_value)
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_atomic_value(const char* value) {
  set_has_atomic_value();
  if (atomic_value_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    atomic_value_ = new ::std::string;
  }
  atomic_value_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.atomic_value)
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_atomic_value(const char* value, size_t size) {
  set_has_atomic_value();
  if (atomic_value_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    atomic_value_ = new ::std::string;
  }
  atomic_value_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.atomic_value)
}
inline ::std::string* ClientIncidentReport_IncidentData_TrackedPreferenceIncident::mutable_atomic_value() {
  set_has_atomic_value();
  if (atomic_value_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    atomic_value_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.atomic_value)
  return atomic_value_;
}
inline ::std::string* ClientIncidentReport_IncidentData_TrackedPreferenceIncident::release_atomic_value() {
  clear_has_atomic_value();
  if (atomic_value_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = atomic_value_;
    atomic_value_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_allocated_atomic_value(::std::string* atomic_value) {
  if (atomic_value_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete atomic_value_;
  }
  if (atomic_value) {
    set_has_atomic_value();
    atomic_value_ = atomic_value;
  } else {
    clear_has_atomic_value();
    atomic_value_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.atomic_value)
}

// repeated string split_key = 3;
inline int ClientIncidentReport_IncidentData_TrackedPreferenceIncident::split_key_size() const {
  return split_key_.size();
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::clear_split_key() {
  split_key_.Clear();
}
inline const ::std::string& ClientIncidentReport_IncidentData_TrackedPreferenceIncident::split_key(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.split_key)
  return split_key_.Get(index);
}
inline ::std::string* ClientIncidentReport_IncidentData_TrackedPreferenceIncident::mutable_split_key(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.split_key)
  return split_key_.Mutable(index);
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_split_key(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.split_key)
  split_key_.Mutable(index)->assign(value);
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_split_key(int index, const char* value) {
  split_key_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.split_key)
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_split_key(int index, const char* value, size_t size) {
  split_key_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.split_key)
}
inline ::std::string* ClientIncidentReport_IncidentData_TrackedPreferenceIncident::add_split_key() {
  return split_key_.Add();
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::add_split_key(const ::std::string& value) {
  split_key_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.split_key)
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::add_split_key(const char* value) {
  split_key_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.split_key)
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::add_split_key(const char* value, size_t size) {
  split_key_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.split_key)
}
inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
ClientIncidentReport_IncidentData_TrackedPreferenceIncident::split_key() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.split_key)
  return split_key_;
}
inline ::google::protobuf::RepeatedPtrField< ::std::string>*
ClientIncidentReport_IncidentData_TrackedPreferenceIncident::mutable_split_key() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.split_key)
  return &split_key_;
}

// optional .safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.ValueState value_state = 4;
inline bool ClientIncidentReport_IncidentData_TrackedPreferenceIncident::has_value_state() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_has_value_state() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::clear_has_value_state() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::clear_value_state() {
  value_state_ = 0;
  clear_has_value_state();
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState ClientIncidentReport_IncidentData_TrackedPreferenceIncident::value_state() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.value_state)
  return static_cast< ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState >(value_state_);
}
inline void ClientIncidentReport_IncidentData_TrackedPreferenceIncident::set_value_state(::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState value) {
  assert(::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident_ValueState_IsValid(value));
  set_has_value_state();
  value_state_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident.value_state)
}

// -------------------------------------------------------------------

// ClientIncidentReport_IncidentData_BinaryIntegrityIncident

// optional string file_basename = 1;
inline bool ClientIncidentReport_IncidentData_BinaryIntegrityIncident::has_file_basename() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::set_has_file_basename() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::clear_has_file_basename() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::clear_file_basename() {
  if (file_basename_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_->clear();
  }
  clear_has_file_basename();
}
inline const ::std::string& ClientIncidentReport_IncidentData_BinaryIntegrityIncident::file_basename() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident.file_basename)
  return *file_basename_;
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::set_file_basename(const ::std::string& value) {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  file_basename_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident.file_basename)
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::set_file_basename(const char* value) {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  file_basename_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident.file_basename)
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::set_file_basename(const char* value, size_t size) {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  file_basename_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident.file_basename)
}
inline ::std::string* ClientIncidentReport_IncidentData_BinaryIntegrityIncident::mutable_file_basename() {
  set_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    file_basename_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident.file_basename)
  return file_basename_;
}
inline ::std::string* ClientIncidentReport_IncidentData_BinaryIntegrityIncident::release_file_basename() {
  clear_has_file_basename();
  if (file_basename_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = file_basename_;
    file_basename_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::set_allocated_file_basename(::std::string* file_basename) {
  if (file_basename_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete file_basename_;
  }
  if (file_basename) {
    set_has_file_basename();
    file_basename_ = file_basename;
  } else {
    clear_has_file_basename();
    file_basename_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident.file_basename)
}

// optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 2;
inline bool ClientIncidentReport_IncidentData_BinaryIntegrityIncident::has_signature() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::set_has_signature() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::clear_has_signature() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::clear_signature() {
  if (signature_ != NULL) signature_->::safe_browsing::ClientDownloadRequest_SignatureInfo::Clear();
  clear_has_signature();
}
inline const ::safe_browsing::ClientDownloadRequest_SignatureInfo& ClientIncidentReport_IncidentData_BinaryIntegrityIncident::signature() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident.signature)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return signature_ != NULL ? *signature_ : *default_instance().signature_;
#else
  return signature_ != NULL ? *signature_ : *default_instance_->signature_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* ClientIncidentReport_IncidentData_BinaryIntegrityIncident::mutable_signature() {
  set_has_signature();
  if (signature_ == NULL) signature_ = new ::safe_browsing::ClientDownloadRequest_SignatureInfo;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident.signature)
  return signature_;
}
inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* ClientIncidentReport_IncidentData_BinaryIntegrityIncident::release_signature() {
  clear_has_signature();
  ::safe_browsing::ClientDownloadRequest_SignatureInfo* temp = signature_;
  signature_ = NULL;
  return temp;
}
inline void ClientIncidentReport_IncidentData_BinaryIntegrityIncident::set_allocated_signature(::safe_browsing::ClientDownloadRequest_SignatureInfo* signature) {
  delete signature_;
  signature_ = signature;
  if (signature) {
    set_has_signature();
  } else {
    clear_has_signature();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident.signature)
}

// -------------------------------------------------------------------

// ClientIncidentReport_IncidentData_BlacklistLoadIncident

// optional string path = 1;
inline bool ClientIncidentReport_IncidentData_BlacklistLoadIncident::has_path() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_has_path() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_has_path() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_path() {
  if (path_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_->clear();
  }
  clear_has_path();
}
inline const ::std::string& ClientIncidentReport_IncidentData_BlacklistLoadIncident::path() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.path)
  return *path_;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_path(const ::std::string& value) {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  path_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.path)
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_path(const char* value) {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  path_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.path)
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_path(const char* value, size_t size) {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  path_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.path)
}
inline ::std::string* ClientIncidentReport_IncidentData_BlacklistLoadIncident::mutable_path() {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.path)
  return path_;
}
inline ::std::string* ClientIncidentReport_IncidentData_BlacklistLoadIncident::release_path() {
  clear_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = path_;
    path_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_allocated_path(::std::string* path) {
  if (path_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete path_;
  }
  if (path) {
    set_has_path();
    path_ = path;
  } else {
    clear_has_path();
    path_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.path)
}

// optional .safe_browsing.ClientDownloadRequest.Digests digest = 2;
inline bool ClientIncidentReport_IncidentData_BlacklistLoadIncident::has_digest() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_has_digest() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_has_digest() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_digest() {
  if (digest_ != NULL) digest_->::safe_browsing::ClientDownloadRequest_Digests::Clear();
  clear_has_digest();
}
inline const ::safe_browsing::ClientDownloadRequest_Digests& ClientIncidentReport_IncidentData_BlacklistLoadIncident::digest() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.digest)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return digest_ != NULL ? *digest_ : *default_instance().digest_;
#else
  return digest_ != NULL ? *digest_ : *default_instance_->digest_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_Digests* ClientIncidentReport_IncidentData_BlacklistLoadIncident::mutable_digest() {
  set_has_digest();
  if (digest_ == NULL) digest_ = new ::safe_browsing::ClientDownloadRequest_Digests;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.digest)
  return digest_;
}
inline ::safe_browsing::ClientDownloadRequest_Digests* ClientIncidentReport_IncidentData_BlacklistLoadIncident::release_digest() {
  clear_has_digest();
  ::safe_browsing::ClientDownloadRequest_Digests* temp = digest_;
  digest_ = NULL;
  return temp;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_allocated_digest(::safe_browsing::ClientDownloadRequest_Digests* digest) {
  delete digest_;
  digest_ = digest;
  if (digest) {
    set_has_digest();
  } else {
    clear_has_digest();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.digest)
}

// optional string version = 3;
inline bool ClientIncidentReport_IncidentData_BlacklistLoadIncident::has_version() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_has_version() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_has_version() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_version() {
  if (version_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    version_->clear();
  }
  clear_has_version();
}
inline const ::std::string& ClientIncidentReport_IncidentData_BlacklistLoadIncident::version() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.version)
  return *version_;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_version(const ::std::string& value) {
  set_has_version();
  if (version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    version_ = new ::std::string;
  }
  version_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.version)
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_version(const char* value) {
  set_has_version();
  if (version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    version_ = new ::std::string;
  }
  version_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.version)
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_version(const char* value, size_t size) {
  set_has_version();
  if (version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    version_ = new ::std::string;
  }
  version_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.version)
}
inline ::std::string* ClientIncidentReport_IncidentData_BlacklistLoadIncident::mutable_version() {
  set_has_version();
  if (version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    version_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.version)
  return version_;
}
inline ::std::string* ClientIncidentReport_IncidentData_BlacklistLoadIncident::release_version() {
  clear_has_version();
  if (version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = version_;
    version_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_allocated_version(::std::string* version) {
  if (version_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete version_;
  }
  if (version) {
    set_has_version();
    version_ = version;
  } else {
    clear_has_version();
    version_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.version)
}

// optional bool blacklist_initialized = 4;
inline bool ClientIncidentReport_IncidentData_BlacklistLoadIncident::has_blacklist_initialized() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_has_blacklist_initialized() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_has_blacklist_initialized() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_blacklist_initialized() {
  blacklist_initialized_ = false;
  clear_has_blacklist_initialized();
}
inline bool ClientIncidentReport_IncidentData_BlacklistLoadIncident::blacklist_initialized() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.blacklist_initialized)
  return blacklist_initialized_;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_blacklist_initialized(bool value) {
  set_has_blacklist_initialized();
  blacklist_initialized_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.blacklist_initialized)
}

// optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 5;
inline bool ClientIncidentReport_IncidentData_BlacklistLoadIncident::has_signature() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_has_signature() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_has_signature() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_signature() {
  if (signature_ != NULL) signature_->::safe_browsing::ClientDownloadRequest_SignatureInfo::Clear();
  clear_has_signature();
}
inline const ::safe_browsing::ClientDownloadRequest_SignatureInfo& ClientIncidentReport_IncidentData_BlacklistLoadIncident::signature() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.signature)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return signature_ != NULL ? *signature_ : *default_instance().signature_;
#else
  return signature_ != NULL ? *signature_ : *default_instance_->signature_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* ClientIncidentReport_IncidentData_BlacklistLoadIncident::mutable_signature() {
  set_has_signature();
  if (signature_ == NULL) signature_ = new ::safe_browsing::ClientDownloadRequest_SignatureInfo;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.signature)
  return signature_;
}
inline ::safe_browsing::ClientDownloadRequest_SignatureInfo* ClientIncidentReport_IncidentData_BlacklistLoadIncident::release_signature() {
  clear_has_signature();
  ::safe_browsing::ClientDownloadRequest_SignatureInfo* temp = signature_;
  signature_ = NULL;
  return temp;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_allocated_signature(::safe_browsing::ClientDownloadRequest_SignatureInfo* signature) {
  delete signature_;
  signature_ = signature;
  if (signature) {
    set_has_signature();
  } else {
    clear_has_signature();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.signature)
}

// optional .safe_browsing.ClientDownloadRequest.ImageHeaders image_headers = 6;
inline bool ClientIncidentReport_IncidentData_BlacklistLoadIncident::has_image_headers() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_has_image_headers() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_has_image_headers() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::clear_image_headers() {
  if (image_headers_ != NULL) image_headers_->::safe_browsing::ClientDownloadRequest_ImageHeaders::Clear();
  clear_has_image_headers();
}
inline const ::safe_browsing::ClientDownloadRequest_ImageHeaders& ClientIncidentReport_IncidentData_BlacklistLoadIncident::image_headers() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.image_headers)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return image_headers_ != NULL ? *image_headers_ : *default_instance().image_headers_;
#else
  return image_headers_ != NULL ? *image_headers_ : *default_instance_->image_headers_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* ClientIncidentReport_IncidentData_BlacklistLoadIncident::mutable_image_headers() {
  set_has_image_headers();
  if (image_headers_ == NULL) image_headers_ = new ::safe_browsing::ClientDownloadRequest_ImageHeaders;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.image_headers)
  return image_headers_;
}
inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* ClientIncidentReport_IncidentData_BlacklistLoadIncident::release_image_headers() {
  clear_has_image_headers();
  ::safe_browsing::ClientDownloadRequest_ImageHeaders* temp = image_headers_;
  image_headers_ = NULL;
  return temp;
}
inline void ClientIncidentReport_IncidentData_BlacklistLoadIncident::set_allocated_image_headers(::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers) {
  delete image_headers_;
  image_headers_ = image_headers;
  if (image_headers) {
    set_has_image_headers();
  } else {
    clear_has_image_headers();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident.image_headers)
}

// -------------------------------------------------------------------

// ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident

// optional string variations_seed_signature = 1;
inline bool ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::has_variations_seed_signature() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::set_has_variations_seed_signature() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::clear_has_variations_seed_signature() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::clear_variations_seed_signature() {
  if (variations_seed_signature_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    variations_seed_signature_->clear();
  }
  clear_has_variations_seed_signature();
}
inline const ::std::string& ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::variations_seed_signature() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.VariationsSeedSignatureIncident.variations_seed_signature)
  return *variations_seed_signature_;
}
inline void ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::set_variations_seed_signature(const ::std::string& value) {
  set_has_variations_seed_signature();
  if (variations_seed_signature_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    variations_seed_signature_ = new ::std::string;
  }
  variations_seed_signature_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.VariationsSeedSignatureIncident.variations_seed_signature)
}
inline void ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::set_variations_seed_signature(const char* value) {
  set_has_variations_seed_signature();
  if (variations_seed_signature_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    variations_seed_signature_ = new ::std::string;
  }
  variations_seed_signature_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.IncidentData.VariationsSeedSignatureIncident.variations_seed_signature)
}
inline void ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::set_variations_seed_signature(const char* value, size_t size) {
  set_has_variations_seed_signature();
  if (variations_seed_signature_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    variations_seed_signature_ = new ::std::string;
  }
  variations_seed_signature_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.IncidentData.VariationsSeedSignatureIncident.variations_seed_signature)
}
inline ::std::string* ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::mutable_variations_seed_signature() {
  set_has_variations_seed_signature();
  if (variations_seed_signature_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    variations_seed_signature_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.VariationsSeedSignatureIncident.variations_seed_signature)
  return variations_seed_signature_;
}
inline ::std::string* ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::release_variations_seed_signature() {
  clear_has_variations_seed_signature();
  if (variations_seed_signature_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = variations_seed_signature_;
    variations_seed_signature_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::set_allocated_variations_seed_signature(::std::string* variations_seed_signature) {
  if (variations_seed_signature_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete variations_seed_signature_;
  }
  if (variations_seed_signature) {
    set_has_variations_seed_signature();
    variations_seed_signature_ = variations_seed_signature;
  } else {
    clear_has_variations_seed_signature();
    variations_seed_signature_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.VariationsSeedSignatureIncident.variations_seed_signature)
}

// -------------------------------------------------------------------

// ClientIncidentReport_IncidentData_ScriptRequestIncident

// optional string script_digest = 1;
inline bool ClientIncidentReport_IncidentData_ScriptRequestIncident::has_script_digest() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::set_has_script_digest() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::clear_has_script_digest() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::clear_script_digest() {
  if (script_digest_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    script_digest_->clear();
  }
  clear_has_script_digest();
}
inline const ::std::string& ClientIncidentReport_IncidentData_ScriptRequestIncident::script_digest() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.script_digest)
  return *script_digest_;
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::set_script_digest(const ::std::string& value) {
  set_has_script_digest();
  if (script_digest_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    script_digest_ = new ::std::string;
  }
  script_digest_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.script_digest)
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::set_script_digest(const char* value) {
  set_has_script_digest();
  if (script_digest_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    script_digest_ = new ::std::string;
  }
  script_digest_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.script_digest)
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::set_script_digest(const char* value, size_t size) {
  set_has_script_digest();
  if (script_digest_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    script_digest_ = new ::std::string;
  }
  script_digest_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.script_digest)
}
inline ::std::string* ClientIncidentReport_IncidentData_ScriptRequestIncident::mutable_script_digest() {
  set_has_script_digest();
  if (script_digest_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    script_digest_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.script_digest)
  return script_digest_;
}
inline ::std::string* ClientIncidentReport_IncidentData_ScriptRequestIncident::release_script_digest() {
  clear_has_script_digest();
  if (script_digest_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = script_digest_;
    script_digest_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::set_allocated_script_digest(::std::string* script_digest) {
  if (script_digest_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete script_digest_;
  }
  if (script_digest) {
    set_has_script_digest();
    script_digest_ = script_digest;
  } else {
    clear_has_script_digest();
    script_digest_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.script_digest)
}

// optional string inclusion_origin = 2;
inline bool ClientIncidentReport_IncidentData_ScriptRequestIncident::has_inclusion_origin() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::set_has_inclusion_origin() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::clear_has_inclusion_origin() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::clear_inclusion_origin() {
  if (inclusion_origin_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    inclusion_origin_->clear();
  }
  clear_has_inclusion_origin();
}
inline const ::std::string& ClientIncidentReport_IncidentData_ScriptRequestIncident::inclusion_origin() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.inclusion_origin)
  return *inclusion_origin_;
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::set_inclusion_origin(const ::std::string& value) {
  set_has_inclusion_origin();
  if (inclusion_origin_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    inclusion_origin_ = new ::std::string;
  }
  inclusion_origin_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.inclusion_origin)
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::set_inclusion_origin(const char* value) {
  set_has_inclusion_origin();
  if (inclusion_origin_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    inclusion_origin_ = new ::std::string;
  }
  inclusion_origin_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.inclusion_origin)
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::set_inclusion_origin(const char* value, size_t size) {
  set_has_inclusion_origin();
  if (inclusion_origin_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    inclusion_origin_ = new ::std::string;
  }
  inclusion_origin_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.inclusion_origin)
}
inline ::std::string* ClientIncidentReport_IncidentData_ScriptRequestIncident::mutable_inclusion_origin() {
  set_has_inclusion_origin();
  if (inclusion_origin_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    inclusion_origin_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.inclusion_origin)
  return inclusion_origin_;
}
inline ::std::string* ClientIncidentReport_IncidentData_ScriptRequestIncident::release_inclusion_origin() {
  clear_has_inclusion_origin();
  if (inclusion_origin_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = inclusion_origin_;
    inclusion_origin_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_IncidentData_ScriptRequestIncident::set_allocated_inclusion_origin(::std::string* inclusion_origin) {
  if (inclusion_origin_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete inclusion_origin_;
  }
  if (inclusion_origin) {
    set_has_inclusion_origin();
    inclusion_origin_ = inclusion_origin;
  } else {
    clear_has_inclusion_origin();
    inclusion_origin_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident.inclusion_origin)
}

// -------------------------------------------------------------------

// ClientIncidentReport_IncidentData

// optional int64 incident_time_msec = 1;
inline bool ClientIncidentReport_IncidentData::has_incident_time_msec() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_IncidentData::set_has_incident_time_msec() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_IncidentData::clear_has_incident_time_msec() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_IncidentData::clear_incident_time_msec() {
  incident_time_msec_ = GOOGLE_LONGLONG(0);
  clear_has_incident_time_msec();
}
inline ::google::protobuf::int64 ClientIncidentReport_IncidentData::incident_time_msec() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.incident_time_msec)
  return incident_time_msec_;
}
inline void ClientIncidentReport_IncidentData::set_incident_time_msec(::google::protobuf::int64 value) {
  set_has_incident_time_msec();
  incident_time_msec_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.IncidentData.incident_time_msec)
}

// optional .safe_browsing.ClientIncidentReport.IncidentData.TrackedPreferenceIncident tracked_preference = 2;
inline bool ClientIncidentReport_IncidentData::has_tracked_preference() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_IncidentData::set_has_tracked_preference() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_IncidentData::clear_has_tracked_preference() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_IncidentData::clear_tracked_preference() {
  if (tracked_preference_ != NULL) tracked_preference_->::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident::Clear();
  clear_has_tracked_preference();
}
inline const ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident& ClientIncidentReport_IncidentData::tracked_preference() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.tracked_preference)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return tracked_preference_ != NULL ? *tracked_preference_ : *default_instance().tracked_preference_;
#else
  return tracked_preference_ != NULL ? *tracked_preference_ : *default_instance_->tracked_preference_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident* ClientIncidentReport_IncidentData::mutable_tracked_preference() {
  set_has_tracked_preference();
  if (tracked_preference_ == NULL) tracked_preference_ = new ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.tracked_preference)
  return tracked_preference_;
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident* ClientIncidentReport_IncidentData::release_tracked_preference() {
  clear_has_tracked_preference();
  ::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident* temp = tracked_preference_;
  tracked_preference_ = NULL;
  return temp;
}
inline void ClientIncidentReport_IncidentData::set_allocated_tracked_preference(::safe_browsing::ClientIncidentReport_IncidentData_TrackedPreferenceIncident* tracked_preference) {
  delete tracked_preference_;
  tracked_preference_ = tracked_preference;
  if (tracked_preference) {
    set_has_tracked_preference();
  } else {
    clear_has_tracked_preference();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.tracked_preference)
}

// optional .safe_browsing.ClientIncidentReport.IncidentData.BinaryIntegrityIncident binary_integrity = 3;
inline bool ClientIncidentReport_IncidentData::has_binary_integrity() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientIncidentReport_IncidentData::set_has_binary_integrity() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientIncidentReport_IncidentData::clear_has_binary_integrity() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientIncidentReport_IncidentData::clear_binary_integrity() {
  if (binary_integrity_ != NULL) binary_integrity_->::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident::Clear();
  clear_has_binary_integrity();
}
inline const ::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident& ClientIncidentReport_IncidentData::binary_integrity() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.binary_integrity)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return binary_integrity_ != NULL ? *binary_integrity_ : *default_instance().binary_integrity_;
#else
  return binary_integrity_ != NULL ? *binary_integrity_ : *default_instance_->binary_integrity_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident* ClientIncidentReport_IncidentData::mutable_binary_integrity() {
  set_has_binary_integrity();
  if (binary_integrity_ == NULL) binary_integrity_ = new ::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.binary_integrity)
  return binary_integrity_;
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident* ClientIncidentReport_IncidentData::release_binary_integrity() {
  clear_has_binary_integrity();
  ::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident* temp = binary_integrity_;
  binary_integrity_ = NULL;
  return temp;
}
inline void ClientIncidentReport_IncidentData::set_allocated_binary_integrity(::safe_browsing::ClientIncidentReport_IncidentData_BinaryIntegrityIncident* binary_integrity) {
  delete binary_integrity_;
  binary_integrity_ = binary_integrity;
  if (binary_integrity) {
    set_has_binary_integrity();
  } else {
    clear_has_binary_integrity();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.binary_integrity)
}

// optional .safe_browsing.ClientIncidentReport.IncidentData.BlacklistLoadIncident blacklist_load = 4;
inline bool ClientIncidentReport_IncidentData::has_blacklist_load() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ClientIncidentReport_IncidentData::set_has_blacklist_load() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ClientIncidentReport_IncidentData::clear_has_blacklist_load() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ClientIncidentReport_IncidentData::clear_blacklist_load() {
  if (blacklist_load_ != NULL) blacklist_load_->::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident::Clear();
  clear_has_blacklist_load();
}
inline const ::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident& ClientIncidentReport_IncidentData::blacklist_load() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.blacklist_load)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return blacklist_load_ != NULL ? *blacklist_load_ : *default_instance().blacklist_load_;
#else
  return blacklist_load_ != NULL ? *blacklist_load_ : *default_instance_->blacklist_load_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident* ClientIncidentReport_IncidentData::mutable_blacklist_load() {
  set_has_blacklist_load();
  if (blacklist_load_ == NULL) blacklist_load_ = new ::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.blacklist_load)
  return blacklist_load_;
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident* ClientIncidentReport_IncidentData::release_blacklist_load() {
  clear_has_blacklist_load();
  ::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident* temp = blacklist_load_;
  blacklist_load_ = NULL;
  return temp;
}
inline void ClientIncidentReport_IncidentData::set_allocated_blacklist_load(::safe_browsing::ClientIncidentReport_IncidentData_BlacklistLoadIncident* blacklist_load) {
  delete blacklist_load_;
  blacklist_load_ = blacklist_load;
  if (blacklist_load) {
    set_has_blacklist_load();
  } else {
    clear_has_blacklist_load();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.blacklist_load)
}

// optional .safe_browsing.ClientIncidentReport.IncidentData.VariationsSeedSignatureIncident variations_seed_signature = 6;
inline bool ClientIncidentReport_IncidentData::has_variations_seed_signature() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ClientIncidentReport_IncidentData::set_has_variations_seed_signature() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ClientIncidentReport_IncidentData::clear_has_variations_seed_signature() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ClientIncidentReport_IncidentData::clear_variations_seed_signature() {
  if (variations_seed_signature_ != NULL) variations_seed_signature_->::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident::Clear();
  clear_has_variations_seed_signature();
}
inline const ::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident& ClientIncidentReport_IncidentData::variations_seed_signature() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.variations_seed_signature)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return variations_seed_signature_ != NULL ? *variations_seed_signature_ : *default_instance().variations_seed_signature_;
#else
  return variations_seed_signature_ != NULL ? *variations_seed_signature_ : *default_instance_->variations_seed_signature_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* ClientIncidentReport_IncidentData::mutable_variations_seed_signature() {
  set_has_variations_seed_signature();
  if (variations_seed_signature_ == NULL) variations_seed_signature_ = new ::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.variations_seed_signature)
  return variations_seed_signature_;
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* ClientIncidentReport_IncidentData::release_variations_seed_signature() {
  clear_has_variations_seed_signature();
  ::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* temp = variations_seed_signature_;
  variations_seed_signature_ = NULL;
  return temp;
}
inline void ClientIncidentReport_IncidentData::set_allocated_variations_seed_signature(::safe_browsing::ClientIncidentReport_IncidentData_VariationsSeedSignatureIncident* variations_seed_signature) {
  delete variations_seed_signature_;
  variations_seed_signature_ = variations_seed_signature;
  if (variations_seed_signature) {
    set_has_variations_seed_signature();
  } else {
    clear_has_variations_seed_signature();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.variations_seed_signature)
}

// optional .safe_browsing.ClientIncidentReport.IncidentData.ScriptRequestIncident script_request = 7;
inline bool ClientIncidentReport_IncidentData::has_script_request() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ClientIncidentReport_IncidentData::set_has_script_request() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ClientIncidentReport_IncidentData::clear_has_script_request() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ClientIncidentReport_IncidentData::clear_script_request() {
  if (script_request_ != NULL) script_request_->::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident::Clear();
  clear_has_script_request();
}
inline const ::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident& ClientIncidentReport_IncidentData::script_request() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.IncidentData.script_request)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return script_request_ != NULL ? *script_request_ : *default_instance().script_request_;
#else
  return script_request_ != NULL ? *script_request_ : *default_instance_->script_request_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident* ClientIncidentReport_IncidentData::mutable_script_request() {
  set_has_script_request();
  if (script_request_ == NULL) script_request_ = new ::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.IncidentData.script_request)
  return script_request_;
}
inline ::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident* ClientIncidentReport_IncidentData::release_script_request() {
  clear_has_script_request();
  ::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident* temp = script_request_;
  script_request_ = NULL;
  return temp;
}
inline void ClientIncidentReport_IncidentData::set_allocated_script_request(::safe_browsing::ClientIncidentReport_IncidentData_ScriptRequestIncident* script_request) {
  delete script_request_;
  script_request_ = script_request;
  if (script_request) {
    set_has_script_request();
  } else {
    clear_has_script_request();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.IncidentData.script_request)
}

// -------------------------------------------------------------------

// ClientIncidentReport_DownloadDetails

// optional bytes token = 1;
inline bool ClientIncidentReport_DownloadDetails::has_token() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_DownloadDetails::set_has_token() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_DownloadDetails::clear_has_token() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_DownloadDetails::clear_token() {
  if (token_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_->clear();
  }
  clear_has_token();
}
inline const ::std::string& ClientIncidentReport_DownloadDetails::token() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.DownloadDetails.token)
  return *token_;
}
inline void ClientIncidentReport_DownloadDetails::set_token(const ::std::string& value) {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  token_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.DownloadDetails.token)
}
inline void ClientIncidentReport_DownloadDetails::set_token(const char* value) {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  token_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.DownloadDetails.token)
}
inline void ClientIncidentReport_DownloadDetails::set_token(const void* value, size_t size) {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  token_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.DownloadDetails.token)
}
inline ::std::string* ClientIncidentReport_DownloadDetails::mutable_token() {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.DownloadDetails.token)
  return token_;
}
inline ::std::string* ClientIncidentReport_DownloadDetails::release_token() {
  clear_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = token_;
    token_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_DownloadDetails::set_allocated_token(::std::string* token) {
  if (token_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete token_;
  }
  if (token) {
    set_has_token();
    token_ = token;
  } else {
    clear_has_token();
    token_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.DownloadDetails.token)
}

// optional .safe_browsing.ClientDownloadRequest download = 2;
inline bool ClientIncidentReport_DownloadDetails::has_download() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_DownloadDetails::set_has_download() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_DownloadDetails::clear_has_download() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_DownloadDetails::clear_download() {
  if (download_ != NULL) download_->::safe_browsing::ClientDownloadRequest::Clear();
  clear_has_download();
}
inline const ::safe_browsing::ClientDownloadRequest& ClientIncidentReport_DownloadDetails::download() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.DownloadDetails.download)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return download_ != NULL ? *download_ : *default_instance().download_;
#else
  return download_ != NULL ? *download_ : *default_instance_->download_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest* ClientIncidentReport_DownloadDetails::mutable_download() {
  set_has_download();
  if (download_ == NULL) download_ = new ::safe_browsing::ClientDownloadRequest;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.DownloadDetails.download)
  return download_;
}
inline ::safe_browsing::ClientDownloadRequest* ClientIncidentReport_DownloadDetails::release_download() {
  clear_has_download();
  ::safe_browsing::ClientDownloadRequest* temp = download_;
  download_ = NULL;
  return temp;
}
inline void ClientIncidentReport_DownloadDetails::set_allocated_download(::safe_browsing::ClientDownloadRequest* download) {
  delete download_;
  download_ = download;
  if (download) {
    set_has_download();
  } else {
    clear_has_download();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.DownloadDetails.download)
}

// optional int64 download_time_msec = 3;
inline bool ClientIncidentReport_DownloadDetails::has_download_time_msec() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientIncidentReport_DownloadDetails::set_has_download_time_msec() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientIncidentReport_DownloadDetails::clear_has_download_time_msec() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientIncidentReport_DownloadDetails::clear_download_time_msec() {
  download_time_msec_ = GOOGLE_LONGLONG(0);
  clear_has_download_time_msec();
}
inline ::google::protobuf::int64 ClientIncidentReport_DownloadDetails::download_time_msec() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.DownloadDetails.download_time_msec)
  return download_time_msec_;
}
inline void ClientIncidentReport_DownloadDetails::set_download_time_msec(::google::protobuf::int64 value) {
  set_has_download_time_msec();
  download_time_msec_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.DownloadDetails.download_time_msec)
}

// optional int64 open_time_msec = 4;
inline bool ClientIncidentReport_DownloadDetails::has_open_time_msec() const {
  return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void ClientIncidentReport_DownloadDetails::set_has_open_time_msec() {
  _has_bits_[0] |= 0x00000008u;
}
inline void ClientIncidentReport_DownloadDetails::clear_has_open_time_msec() {
  _has_bits_[0] &= ~0x00000008u;
}
inline void ClientIncidentReport_DownloadDetails::clear_open_time_msec() {
  open_time_msec_ = GOOGLE_LONGLONG(0);
  clear_has_open_time_msec();
}
inline ::google::protobuf::int64 ClientIncidentReport_DownloadDetails::open_time_msec() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.DownloadDetails.open_time_msec)
  return open_time_msec_;
}
inline void ClientIncidentReport_DownloadDetails::set_open_time_msec(::google::protobuf::int64 value) {
  set_has_open_time_msec();
  open_time_msec_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.DownloadDetails.open_time_msec)
}

// -------------------------------------------------------------------

// ClientIncidentReport_EnvironmentData_OS

// optional string os_name = 1;
inline bool ClientIncidentReport_EnvironmentData_OS::has_os_name() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_OS::set_has_os_name() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_OS::clear_has_os_name() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_OS::clear_os_name() {
  if (os_name_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    os_name_->clear();
  }
  clear_has_os_name();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_OS::os_name() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_name)
  return *os_name_;
}
inline void ClientIncidentReport_EnvironmentData_OS::set_os_name(const ::std::string& value) {
  set_has_os_name();
  if (os_name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    os_name_ = new ::std::string;
  }
  os_name_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_name)
}
inline void ClientIncidentReport_EnvironmentData_OS::set_os_name(const char* value) {
  set_has_os_name();
  if (os_name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    os_name_ = new ::std::string;
  }
  os_name_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_name)
}
inline void ClientIncidentReport_EnvironmentData_OS::set_os_name(const char* value, size_t size) {
  set_has_os_name();
  if (os_name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    os_name_ = new ::std::string;
  }
  os_name_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_name)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_OS::mutable_os_name() {
  set_has_os_name();
  if (os_name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    os_name_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_name)
  return os_name_;
}
inline ::std::string* ClientIncidentReport_EnvironmentData_OS::release_os_name() {
  clear_has_os_name();
  if (os_name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = os_name_;
    os_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_EnvironmentData_OS::set_allocated_os_name(::std::string* os_name) {
  if (os_name_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete os_name_;
  }
  if (os_name) {
    set_has_os_name();
    os_name_ = os_name;
  } else {
    clear_has_os_name();
    os_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_name)
}

// optional string os_version = 2;
inline bool ClientIncidentReport_EnvironmentData_OS::has_os_version() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_OS::set_has_os_version() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData_OS::clear_has_os_version() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData_OS::clear_os_version() {
  if (os_version_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    os_version_->clear();
  }
  clear_has_os_version();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_OS::os_version() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_version)
  return *os_version_;
}
inline void ClientIncidentReport_EnvironmentData_OS::set_os_version(const ::std::string& value) {
  set_has_os_version();
  if (os_version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    os_version_ = new ::std::string;
  }
  os_version_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_version)
}
inline void ClientIncidentReport_EnvironmentData_OS::set_os_version(const char* value) {
  set_has_os_version();
  if (os_version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    os_version_ = new ::std::string;
  }
  os_version_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_version)
}
inline void ClientIncidentReport_EnvironmentData_OS::set_os_version(const char* value, size_t size) {
  set_has_os_version();
  if (os_version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    os_version_ = new ::std::string;
  }
  os_version_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_version)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_OS::mutable_os_version() {
  set_has_os_version();
  if (os_version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    os_version_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_version)
  return os_version_;
}
inline ::std::string* ClientIncidentReport_EnvironmentData_OS::release_os_version() {
  clear_has_os_version();
  if (os_version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = os_version_;
    os_version_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_EnvironmentData_OS::set_allocated_os_version(::std::string* os_version) {
  if (os_version_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete os_version_;
  }
  if (os_version) {
    set_has_os_version();
    os_version_ = os_version;
  } else {
    clear_has_os_version();
    os_version_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.OS.os_version)
}

// -------------------------------------------------------------------

// ClientIncidentReport_EnvironmentData_Machine

// optional string cpu_architecture = 1;
inline bool ClientIncidentReport_EnvironmentData_Machine::has_cpu_architecture() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_has_cpu_architecture() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_Machine::clear_has_cpu_architecture() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_Machine::clear_cpu_architecture() {
  if (cpu_architecture_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    cpu_architecture_->clear();
  }
  clear_has_cpu_architecture();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_Machine::cpu_architecture() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_architecture)
  return *cpu_architecture_;
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_cpu_architecture(const ::std::string& value) {
  set_has_cpu_architecture();
  if (cpu_architecture_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    cpu_architecture_ = new ::std::string;
  }
  cpu_architecture_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_architecture)
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_cpu_architecture(const char* value) {
  set_has_cpu_architecture();
  if (cpu_architecture_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    cpu_architecture_ = new ::std::string;
  }
  cpu_architecture_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_architecture)
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_cpu_architecture(const char* value, size_t size) {
  set_has_cpu_architecture();
  if (cpu_architecture_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    cpu_architecture_ = new ::std::string;
  }
  cpu_architecture_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_architecture)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Machine::mutable_cpu_architecture() {
  set_has_cpu_architecture();
  if (cpu_architecture_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    cpu_architecture_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_architecture)
  return cpu_architecture_;
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Machine::release_cpu_architecture() {
  clear_has_cpu_architecture();
  if (cpu_architecture_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = cpu_architecture_;
    cpu_architecture_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_allocated_cpu_architecture(::std::string* cpu_architecture) {
  if (cpu_architecture_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete cpu_architecture_;
  }
  if (cpu_architecture) {
    set_has_cpu_architecture();
    cpu_architecture_ = cpu_architecture;
  } else {
    clear_has_cpu_architecture();
    cpu_architecture_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_architecture)
}

// optional string cpu_vendor = 2;
inline bool ClientIncidentReport_EnvironmentData_Machine::has_cpu_vendor() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_has_cpu_vendor() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData_Machine::clear_has_cpu_vendor() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData_Machine::clear_cpu_vendor() {
  if (cpu_vendor_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    cpu_vendor_->clear();
  }
  clear_has_cpu_vendor();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_Machine::cpu_vendor() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_vendor)
  return *cpu_vendor_;
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_cpu_vendor(const ::std::string& value) {
  set_has_cpu_vendor();
  if (cpu_vendor_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    cpu_vendor_ = new ::std::string;
  }
  cpu_vendor_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_vendor)
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_cpu_vendor(const char* value) {
  set_has_cpu_vendor();
  if (cpu_vendor_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    cpu_vendor_ = new ::std::string;
  }
  cpu_vendor_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_vendor)
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_cpu_vendor(const char* value, size_t size) {
  set_has_cpu_vendor();
  if (cpu_vendor_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    cpu_vendor_ = new ::std::string;
  }
  cpu_vendor_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_vendor)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Machine::mutable_cpu_vendor() {
  set_has_cpu_vendor();
  if (cpu_vendor_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    cpu_vendor_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_vendor)
  return cpu_vendor_;
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Machine::release_cpu_vendor() {
  clear_has_cpu_vendor();
  if (cpu_vendor_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = cpu_vendor_;
    cpu_vendor_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_allocated_cpu_vendor(::std::string* cpu_vendor) {
  if (cpu_vendor_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete cpu_vendor_;
  }
  if (cpu_vendor) {
    set_has_cpu_vendor();
    cpu_vendor_ = cpu_vendor;
  } else {
    clear_has_cpu_vendor();
    cpu_vendor_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpu_vendor)
}

// optional uint32 cpuid = 3;
inline bool ClientIncidentReport_EnvironmentData_Machine::has_cpuid() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_has_cpuid() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientIncidentReport_EnvironmentData_Machine::clear_has_cpuid() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientIncidentReport_EnvironmentData_Machine::clear_cpuid() {
  cpuid_ = 0u;
  clear_has_cpuid();
}
inline ::google::protobuf::uint32 ClientIncidentReport_EnvironmentData_Machine::cpuid() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpuid)
  return cpuid_;
}
inline void ClientIncidentReport_EnvironmentData_Machine::set_cpuid(::google::protobuf::uint32 value) {
  set_has_cpuid();
  cpuid_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Machine.cpuid)
}

// -------------------------------------------------------------------

// ClientIncidentReport_EnvironmentData_Process_Patch

// optional string function = 1;
inline bool ClientIncidentReport_EnvironmentData_Process_Patch::has_function() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::set_has_function() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::clear_has_function() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::clear_function() {
  if (function_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    function_->clear();
  }
  clear_has_function();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_Process_Patch::function() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.function)
  return *function_;
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::set_function(const ::std::string& value) {
  set_has_function();
  if (function_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    function_ = new ::std::string;
  }
  function_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.function)
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::set_function(const char* value) {
  set_has_function();
  if (function_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    function_ = new ::std::string;
  }
  function_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.function)
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::set_function(const char* value, size_t size) {
  set_has_function();
  if (function_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    function_ = new ::std::string;
  }
  function_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.function)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process_Patch::mutable_function() {
  set_has_function();
  if (function_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    function_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.function)
  return function_;
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process_Patch::release_function() {
  clear_has_function();
  if (function_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = function_;
    function_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::set_allocated_function(::std::string* function) {
  if (function_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete function_;
  }
  if (function) {
    set_has_function();
    function_ = function;
  } else {
    clear_has_function();
    function_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.function)
}

// optional string target_dll = 2;
inline bool ClientIncidentReport_EnvironmentData_Process_Patch::has_target_dll() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::set_has_target_dll() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::clear_has_target_dll() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::clear_target_dll() {
  if (target_dll_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    target_dll_->clear();
  }
  clear_has_target_dll();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_Process_Patch::target_dll() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.target_dll)
  return *target_dll_;
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::set_target_dll(const ::std::string& value) {
  set_has_target_dll();
  if (target_dll_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    target_dll_ = new ::std::string;
  }
  target_dll_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.target_dll)
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::set_target_dll(const char* value) {
  set_has_target_dll();
  if (target_dll_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    target_dll_ = new ::std::string;
  }
  target_dll_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.target_dll)
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::set_target_dll(const char* value, size_t size) {
  set_has_target_dll();
  if (target_dll_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    target_dll_ = new ::std::string;
  }
  target_dll_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.target_dll)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process_Patch::mutable_target_dll() {
  set_has_target_dll();
  if (target_dll_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    target_dll_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.target_dll)
  return target_dll_;
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process_Patch::release_target_dll() {
  clear_has_target_dll();
  if (target_dll_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = target_dll_;
    target_dll_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_EnvironmentData_Process_Patch::set_allocated_target_dll(::std::string* target_dll) {
  if (target_dll_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete target_dll_;
  }
  if (target_dll) {
    set_has_target_dll();
    target_dll_ = target_dll;
  } else {
    clear_has_target_dll();
    target_dll_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch.target_dll)
}

// -------------------------------------------------------------------

// ClientIncidentReport_EnvironmentData_Process_NetworkProvider

// -------------------------------------------------------------------

// ClientIncidentReport_EnvironmentData_Process_Dll

// optional string path = 1;
inline bool ClientIncidentReport_EnvironmentData_Process_Dll::has_path() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_has_path() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::clear_has_path() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::clear_path() {
  if (path_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_->clear();
  }
  clear_has_path();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_Process_Dll::path() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.path)
  return *path_;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_path(const ::std::string& value) {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  path_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.path)
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_path(const char* value) {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  path_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.path)
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_path(const char* value, size_t size) {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  path_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.path)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process_Dll::mutable_path() {
  set_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    path_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.path)
  return path_;
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process_Dll::release_path() {
  clear_has_path();
  if (path_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = path_;
    path_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_allocated_path(::std::string* path) {
  if (path_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete path_;
  }
  if (path) {
    set_has_path();
    path_ = path;
  } else {
    clear_has_path();
    path_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.path)
}

// optional uint64 base_address = 2;
inline bool ClientIncidentReport_EnvironmentData_Process_Dll::has_base_address() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_has_base_address() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::clear_has_base_address() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::clear_base_address() {
  base_address_ = GOOGLE_ULONGLONG(0);
  clear_has_base_address();
}
inline ::google::protobuf::uint64 ClientIncidentReport_EnvironmentData_Process_Dll::base_address() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.base_address)
  return base_address_;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_base_address(::google::protobuf::uint64 value) {
  set_has_base_address();
  base_address_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.base_address)
}

// optional uint32 length = 3;
inline bool ClientIncidentReport_EnvironmentData_Process_Dll::has_length() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_has_length() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::clear_has_length() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::clear_length() {
  length_ = 0u;
  clear_has_length();
}
inline ::google::protobuf::uint32 ClientIncidentReport_EnvironmentData_Process_Dll::length() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.length)
  return length_;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_length(::google::protobuf::uint32 value) {
  set_has_length();
  length_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.length)
}

// repeated .safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.Feature feature = 4;
inline int ClientIncidentReport_EnvironmentData_Process_Dll::feature_size() const {
  return feature_.size();
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::clear_feature() {
  feature_.Clear();
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll_Feature ClientIncidentReport_EnvironmentData_Process_Dll::feature(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.feature)
  return static_cast< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll_Feature >(feature_.Get(index));
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_feature(int index, ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll_Feature value) {
  assert(::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll_Feature_IsValid(value));
  feature_.Set(index, value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.feature)
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::add_feature(::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll_Feature value) {
  assert(::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll_Feature_IsValid(value));
  feature_.Add(value);
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.feature)
}
inline const ::google::protobuf::RepeatedField<int>&
ClientIncidentReport_EnvironmentData_Process_Dll::feature() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.feature)
  return feature_;
}
inline ::google::protobuf::RepeatedField<int>*
ClientIncidentReport_EnvironmentData_Process_Dll::mutable_feature() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.feature)
  return &feature_;
}

// optional .safe_browsing.ClientDownloadRequest.ImageHeaders image_headers = 5;
inline bool ClientIncidentReport_EnvironmentData_Process_Dll::has_image_headers() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_has_image_headers() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::clear_has_image_headers() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::clear_image_headers() {
  if (image_headers_ != NULL) image_headers_->::safe_browsing::ClientDownloadRequest_ImageHeaders::Clear();
  clear_has_image_headers();
}
inline const ::safe_browsing::ClientDownloadRequest_ImageHeaders& ClientIncidentReport_EnvironmentData_Process_Dll::image_headers() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.image_headers)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return image_headers_ != NULL ? *image_headers_ : *default_instance().image_headers_;
#else
  return image_headers_ != NULL ? *image_headers_ : *default_instance_->image_headers_;
#endif
}
inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* ClientIncidentReport_EnvironmentData_Process_Dll::mutable_image_headers() {
  set_has_image_headers();
  if (image_headers_ == NULL) image_headers_ = new ::safe_browsing::ClientDownloadRequest_ImageHeaders;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.image_headers)
  return image_headers_;
}
inline ::safe_browsing::ClientDownloadRequest_ImageHeaders* ClientIncidentReport_EnvironmentData_Process_Dll::release_image_headers() {
  clear_has_image_headers();
  ::safe_browsing::ClientDownloadRequest_ImageHeaders* temp = image_headers_;
  image_headers_ = NULL;
  return temp;
}
inline void ClientIncidentReport_EnvironmentData_Process_Dll::set_allocated_image_headers(::safe_browsing::ClientDownloadRequest_ImageHeaders* image_headers) {
  delete image_headers_;
  image_headers_ = image_headers;
  if (image_headers) {
    set_has_image_headers();
  } else {
    clear_has_image_headers();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll.image_headers)
}

// -------------------------------------------------------------------

// ClientIncidentReport_EnvironmentData_Process_ModuleState

// optional string name = 1;
inline bool ClientIncidentReport_EnvironmentData_Process_ModuleState::has_name() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::set_has_name() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::clear_has_name() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::clear_name() {
  if (name_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    name_->clear();
  }
  clear_has_name();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_Process_ModuleState::name() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.name)
  return *name_;
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::set_name(const ::std::string& value) {
  set_has_name();
  if (name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    name_ = new ::std::string;
  }
  name_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.name)
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::set_name(const char* value) {
  set_has_name();
  if (name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    name_ = new ::std::string;
  }
  name_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.name)
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::set_name(const char* value, size_t size) {
  set_has_name();
  if (name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    name_ = new ::std::string;
  }
  name_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.name)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process_ModuleState::mutable_name() {
  set_has_name();
  if (name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    name_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.name)
  return name_;
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process_ModuleState::release_name() {
  clear_has_name();
  if (name_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = name_;
    name_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::set_allocated_name(::std::string* name) {
  if (name_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete name_;
  }
  if (name) {
    set_has_name();
    name_ = name;
  } else {
    clear_has_name();
    name_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.name)
}

// optional .safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.ModifiedState modified_state = 2;
inline bool ClientIncidentReport_EnvironmentData_Process_ModuleState::has_modified_state() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::set_has_modified_state() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::clear_has_modified_state() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::clear_modified_state() {
  modified_state_ = 0;
  clear_has_modified_state();
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState ClientIncidentReport_EnvironmentData_Process_ModuleState::modified_state() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_state)
  return static_cast< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState >(modified_state_);
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::set_modified_state(::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState value) {
  assert(::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState_ModifiedState_IsValid(value));
  set_has_modified_state();
  modified_state_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_state)
}

// repeated string modified_export = 3;
inline int ClientIncidentReport_EnvironmentData_Process_ModuleState::modified_export_size() const {
  return modified_export_.size();
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::clear_modified_export() {
  modified_export_.Clear();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_Process_ModuleState::modified_export(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_export)
  return modified_export_.Get(index);
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process_ModuleState::mutable_modified_export(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_export)
  return modified_export_.Mutable(index);
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::set_modified_export(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_export)
  modified_export_.Mutable(index)->assign(value);
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::set_modified_export(int index, const char* value) {
  modified_export_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_export)
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::set_modified_export(int index, const char* value, size_t size) {
  modified_export_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_export)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process_ModuleState::add_modified_export() {
  return modified_export_.Add();
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::add_modified_export(const ::std::string& value) {
  modified_export_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_export)
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::add_modified_export(const char* value) {
  modified_export_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_export)
}
inline void ClientIncidentReport_EnvironmentData_Process_ModuleState::add_modified_export(const char* value, size_t size) {
  modified_export_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_export)
}
inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
ClientIncidentReport_EnvironmentData_Process_ModuleState::modified_export() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_export)
  return modified_export_;
}
inline ::google::protobuf::RepeatedPtrField< ::std::string>*
ClientIncidentReport_EnvironmentData_Process_ModuleState::mutable_modified_export() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState.modified_export)
  return &modified_export_;
}

// -------------------------------------------------------------------

// ClientIncidentReport_EnvironmentData_Process

// optional string version = 1;
inline bool ClientIncidentReport_EnvironmentData_Process::has_version() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process::set_has_version() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_has_version() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_version() {
  if (version_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    version_->clear();
  }
  clear_has_version();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_Process::version() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.version)
  return *version_;
}
inline void ClientIncidentReport_EnvironmentData_Process::set_version(const ::std::string& value) {
  set_has_version();
  if (version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    version_ = new ::std::string;
  }
  version_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.version)
}
inline void ClientIncidentReport_EnvironmentData_Process::set_version(const char* value) {
  set_has_version();
  if (version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    version_ = new ::std::string;
  }
  version_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.version)
}
inline void ClientIncidentReport_EnvironmentData_Process::set_version(const char* value, size_t size) {
  set_has_version();
  if (version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    version_ = new ::std::string;
  }
  version_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.version)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process::mutable_version() {
  set_has_version();
  if (version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    version_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.version)
  return version_;
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process::release_version() {
  clear_has_version();
  if (version_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = version_;
    version_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentReport_EnvironmentData_Process::set_allocated_version(::std::string* version) {
  if (version_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete version_;
  }
  if (version) {
    set_has_version();
    version_ = version;
  } else {
    clear_has_version();
    version_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.Process.version)
}

// repeated string OBSOLETE_dlls = 2;
inline int ClientIncidentReport_EnvironmentData_Process::obsolete_dlls_size() const {
  return obsolete_dlls_.size();
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_obsolete_dlls() {
  obsolete_dlls_.Clear();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_Process::obsolete_dlls(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.OBSOLETE_dlls)
  return obsolete_dlls_.Get(index);
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process::mutable_obsolete_dlls(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.OBSOLETE_dlls)
  return obsolete_dlls_.Mutable(index);
}
inline void ClientIncidentReport_EnvironmentData_Process::set_obsolete_dlls(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.OBSOLETE_dlls)
  obsolete_dlls_.Mutable(index)->assign(value);
}
inline void ClientIncidentReport_EnvironmentData_Process::set_obsolete_dlls(int index, const char* value) {
  obsolete_dlls_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.OBSOLETE_dlls)
}
inline void ClientIncidentReport_EnvironmentData_Process::set_obsolete_dlls(int index, const char* value, size_t size) {
  obsolete_dlls_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.OBSOLETE_dlls)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process::add_obsolete_dlls() {
  return obsolete_dlls_.Add();
}
inline void ClientIncidentReport_EnvironmentData_Process::add_obsolete_dlls(const ::std::string& value) {
  obsolete_dlls_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentReport.EnvironmentData.Process.OBSOLETE_dlls)
}
inline void ClientIncidentReport_EnvironmentData_Process::add_obsolete_dlls(const char* value) {
  obsolete_dlls_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.OBSOLETE_dlls)
}
inline void ClientIncidentReport_EnvironmentData_Process::add_obsolete_dlls(const char* value, size_t size) {
  obsolete_dlls_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.OBSOLETE_dlls)
}
inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
ClientIncidentReport_EnvironmentData_Process::obsolete_dlls() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.OBSOLETE_dlls)
  return obsolete_dlls_;
}
inline ::google::protobuf::RepeatedPtrField< ::std::string>*
ClientIncidentReport_EnvironmentData_Process::mutable_obsolete_dlls() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.OBSOLETE_dlls)
  return &obsolete_dlls_;
}

// repeated .safe_browsing.ClientIncidentReport.EnvironmentData.Process.Patch patches = 3;
inline int ClientIncidentReport_EnvironmentData_Process::patches_size() const {
  return patches_.size();
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_patches() {
  patches_.Clear();
}
inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch& ClientIncidentReport_EnvironmentData_Process::patches(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.patches)
  return patches_.Get(index);
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch* ClientIncidentReport_EnvironmentData_Process::mutable_patches(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.patches)
  return patches_.Mutable(index);
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch* ClientIncidentReport_EnvironmentData_Process::add_patches() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentReport.EnvironmentData.Process.patches)
  return patches_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch >&
ClientIncidentReport_EnvironmentData_Process::patches() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.patches)
  return patches_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Patch >*
ClientIncidentReport_EnvironmentData_Process::mutable_patches() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.patches)
  return &patches_;
}

// repeated .safe_browsing.ClientIncidentReport.EnvironmentData.Process.NetworkProvider network_providers = 4;
inline int ClientIncidentReport_EnvironmentData_Process::network_providers_size() const {
  return network_providers_.size();
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_network_providers() {
  network_providers_.Clear();
}
inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider& ClientIncidentReport_EnvironmentData_Process::network_providers(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.network_providers)
  return network_providers_.Get(index);
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider* ClientIncidentReport_EnvironmentData_Process::mutable_network_providers(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.network_providers)
  return network_providers_.Mutable(index);
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider* ClientIncidentReport_EnvironmentData_Process::add_network_providers() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentReport.EnvironmentData.Process.network_providers)
  return network_providers_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider >&
ClientIncidentReport_EnvironmentData_Process::network_providers() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.network_providers)
  return network_providers_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_NetworkProvider >*
ClientIncidentReport_EnvironmentData_Process::mutable_network_providers() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.network_providers)
  return &network_providers_;
}

// optional .safe_browsing.ClientIncidentReport.EnvironmentData.Process.Channel chrome_update_channel = 5;
inline bool ClientIncidentReport_EnvironmentData_Process::has_chrome_update_channel() const {
  return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process::set_has_chrome_update_channel() {
  _has_bits_[0] |= 0x00000010u;
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_has_chrome_update_channel() {
  _has_bits_[0] &= ~0x00000010u;
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_chrome_update_channel() {
  chrome_update_channel_ = 0;
  clear_has_chrome_update_channel();
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Channel ClientIncidentReport_EnvironmentData_Process::chrome_update_channel() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.chrome_update_channel)
  return static_cast< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Channel >(chrome_update_channel_);
}
inline void ClientIncidentReport_EnvironmentData_Process::set_chrome_update_channel(::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Channel value) {
  assert(::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Channel_IsValid(value));
  set_has_chrome_update_channel();
  chrome_update_channel_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.chrome_update_channel)
}

// optional int64 uptime_msec = 6;
inline bool ClientIncidentReport_EnvironmentData_Process::has_uptime_msec() const {
  return (_has_bits_[0] & 0x00000020u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process::set_has_uptime_msec() {
  _has_bits_[0] |= 0x00000020u;
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_has_uptime_msec() {
  _has_bits_[0] &= ~0x00000020u;
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_uptime_msec() {
  uptime_msec_ = GOOGLE_LONGLONG(0);
  clear_has_uptime_msec();
}
inline ::google::protobuf::int64 ClientIncidentReport_EnvironmentData_Process::uptime_msec() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.uptime_msec)
  return uptime_msec_;
}
inline void ClientIncidentReport_EnvironmentData_Process::set_uptime_msec(::google::protobuf::int64 value) {
  set_has_uptime_msec();
  uptime_msec_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.uptime_msec)
}

// optional bool metrics_consent = 7;
inline bool ClientIncidentReport_EnvironmentData_Process::has_metrics_consent() const {
  return (_has_bits_[0] & 0x00000040u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process::set_has_metrics_consent() {
  _has_bits_[0] |= 0x00000040u;
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_has_metrics_consent() {
  _has_bits_[0] &= ~0x00000040u;
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_metrics_consent() {
  metrics_consent_ = false;
  clear_has_metrics_consent();
}
inline bool ClientIncidentReport_EnvironmentData_Process::metrics_consent() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.metrics_consent)
  return metrics_consent_;
}
inline void ClientIncidentReport_EnvironmentData_Process::set_metrics_consent(bool value) {
  set_has_metrics_consent();
  metrics_consent_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.metrics_consent)
}

// optional bool extended_consent = 8;
inline bool ClientIncidentReport_EnvironmentData_Process::has_extended_consent() const {
  return (_has_bits_[0] & 0x00000080u) != 0;
}
inline void ClientIncidentReport_EnvironmentData_Process::set_has_extended_consent() {
  _has_bits_[0] |= 0x00000080u;
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_has_extended_consent() {
  _has_bits_[0] &= ~0x00000080u;
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_extended_consent() {
  extended_consent_ = false;
  clear_has_extended_consent();
}
inline bool ClientIncidentReport_EnvironmentData_Process::extended_consent() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.extended_consent)
  return extended_consent_;
}
inline void ClientIncidentReport_EnvironmentData_Process::set_extended_consent(bool value) {
  set_has_extended_consent();
  extended_consent_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.extended_consent)
}

// repeated .safe_browsing.ClientIncidentReport.EnvironmentData.Process.Dll dll = 9;
inline int ClientIncidentReport_EnvironmentData_Process::dll_size() const {
  return dll_.size();
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_dll() {
  dll_.Clear();
}
inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll& ClientIncidentReport_EnvironmentData_Process::dll(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.dll)
  return dll_.Get(index);
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll* ClientIncidentReport_EnvironmentData_Process::mutable_dll(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.dll)
  return dll_.Mutable(index);
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll* ClientIncidentReport_EnvironmentData_Process::add_dll() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentReport.EnvironmentData.Process.dll)
  return dll_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll >&
ClientIncidentReport_EnvironmentData_Process::dll() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.dll)
  return dll_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_Dll >*
ClientIncidentReport_EnvironmentData_Process::mutable_dll() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.dll)
  return &dll_;
}

// repeated string blacklisted_dll = 10;
inline int ClientIncidentReport_EnvironmentData_Process::blacklisted_dll_size() const {
  return blacklisted_dll_.size();
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_blacklisted_dll() {
  blacklisted_dll_.Clear();
}
inline const ::std::string& ClientIncidentReport_EnvironmentData_Process::blacklisted_dll(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.blacklisted_dll)
  return blacklisted_dll_.Get(index);
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process::mutable_blacklisted_dll(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.blacklisted_dll)
  return blacklisted_dll_.Mutable(index);
}
inline void ClientIncidentReport_EnvironmentData_Process::set_blacklisted_dll(int index, const ::std::string& value) {
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentReport.EnvironmentData.Process.blacklisted_dll)
  blacklisted_dll_.Mutable(index)->assign(value);
}
inline void ClientIncidentReport_EnvironmentData_Process::set_blacklisted_dll(int index, const char* value) {
  blacklisted_dll_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.blacklisted_dll)
}
inline void ClientIncidentReport_EnvironmentData_Process::set_blacklisted_dll(int index, const char* value, size_t size) {
  blacklisted_dll_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.blacklisted_dll)
}
inline ::std::string* ClientIncidentReport_EnvironmentData_Process::add_blacklisted_dll() {
  return blacklisted_dll_.Add();
}
inline void ClientIncidentReport_EnvironmentData_Process::add_blacklisted_dll(const ::std::string& value) {
  blacklisted_dll_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentReport.EnvironmentData.Process.blacklisted_dll)
}
inline void ClientIncidentReport_EnvironmentData_Process::add_blacklisted_dll(const char* value) {
  blacklisted_dll_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:safe_browsing.ClientIncidentReport.EnvironmentData.Process.blacklisted_dll)
}
inline void ClientIncidentReport_EnvironmentData_Process::add_blacklisted_dll(const char* value, size_t size) {
  blacklisted_dll_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:safe_browsing.ClientIncidentReport.EnvironmentData.Process.blacklisted_dll)
}
inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
ClientIncidentReport_EnvironmentData_Process::blacklisted_dll() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.blacklisted_dll)
  return blacklisted_dll_;
}
inline ::google::protobuf::RepeatedPtrField< ::std::string>*
ClientIncidentReport_EnvironmentData_Process::mutable_blacklisted_dll() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.blacklisted_dll)
  return &blacklisted_dll_;
}

// repeated .safe_browsing.ClientIncidentReport.EnvironmentData.Process.ModuleState module_state = 11;
inline int ClientIncidentReport_EnvironmentData_Process::module_state_size() const {
  return module_state_.size();
}
inline void ClientIncidentReport_EnvironmentData_Process::clear_module_state() {
  module_state_.Clear();
}
inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState& ClientIncidentReport_EnvironmentData_Process::module_state(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.Process.module_state)
  return module_state_.Get(index);
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState* ClientIncidentReport_EnvironmentData_Process::mutable_module_state(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.Process.module_state)
  return module_state_.Mutable(index);
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState* ClientIncidentReport_EnvironmentData_Process::add_module_state() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentReport.EnvironmentData.Process.module_state)
  return module_state_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState >&
ClientIncidentReport_EnvironmentData_Process::module_state() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.module_state)
  return module_state_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_EnvironmentData_Process_ModuleState >*
ClientIncidentReport_EnvironmentData_Process::mutable_module_state() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentReport.EnvironmentData.Process.module_state)
  return &module_state_;
}

// -------------------------------------------------------------------

// ClientIncidentReport_EnvironmentData

// optional .safe_browsing.ClientIncidentReport.EnvironmentData.OS os = 1;
inline bool ClientIncidentReport_EnvironmentData::has_os() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentReport_EnvironmentData::set_has_os() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData::clear_has_os() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentReport_EnvironmentData::clear_os() {
  if (os_ != NULL) os_->::safe_browsing::ClientIncidentReport_EnvironmentData_OS::Clear();
  clear_has_os();
}
inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_OS& ClientIncidentReport_EnvironmentData::os() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.os)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return os_ != NULL ? *os_ : *default_instance().os_;
#else
  return os_ != NULL ? *os_ : *default_instance_->os_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_OS* ClientIncidentReport_EnvironmentData::mutable_os() {
  set_has_os();
  if (os_ == NULL) os_ = new ::safe_browsing::ClientIncidentReport_EnvironmentData_OS;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.os)
  return os_;
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_OS* ClientIncidentReport_EnvironmentData::release_os() {
  clear_has_os();
  ::safe_browsing::ClientIncidentReport_EnvironmentData_OS* temp = os_;
  os_ = NULL;
  return temp;
}
inline void ClientIncidentReport_EnvironmentData::set_allocated_os(::safe_browsing::ClientIncidentReport_EnvironmentData_OS* os) {
  delete os_;
  os_ = os;
  if (os) {
    set_has_os();
  } else {
    clear_has_os();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.os)
}

// optional .safe_browsing.ClientIncidentReport.EnvironmentData.Machine machine = 2;
inline bool ClientIncidentReport_EnvironmentData::has_machine() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport_EnvironmentData::set_has_machine() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData::clear_has_machine() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport_EnvironmentData::clear_machine() {
  if (machine_ != NULL) machine_->::safe_browsing::ClientIncidentReport_EnvironmentData_Machine::Clear();
  clear_has_machine();
}
inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Machine& ClientIncidentReport_EnvironmentData::machine() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.machine)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return machine_ != NULL ? *machine_ : *default_instance().machine_;
#else
  return machine_ != NULL ? *machine_ : *default_instance_->machine_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Machine* ClientIncidentReport_EnvironmentData::mutable_machine() {
  set_has_machine();
  if (machine_ == NULL) machine_ = new ::safe_browsing::ClientIncidentReport_EnvironmentData_Machine;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.machine)
  return machine_;
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Machine* ClientIncidentReport_EnvironmentData::release_machine() {
  clear_has_machine();
  ::safe_browsing::ClientIncidentReport_EnvironmentData_Machine* temp = machine_;
  machine_ = NULL;
  return temp;
}
inline void ClientIncidentReport_EnvironmentData::set_allocated_machine(::safe_browsing::ClientIncidentReport_EnvironmentData_Machine* machine) {
  delete machine_;
  machine_ = machine;
  if (machine) {
    set_has_machine();
  } else {
    clear_has_machine();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.machine)
}

// optional .safe_browsing.ClientIncidentReport.EnvironmentData.Process process = 3;
inline bool ClientIncidentReport_EnvironmentData::has_process() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientIncidentReport_EnvironmentData::set_has_process() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientIncidentReport_EnvironmentData::clear_has_process() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientIncidentReport_EnvironmentData::clear_process() {
  if (process_ != NULL) process_->::safe_browsing::ClientIncidentReport_EnvironmentData_Process::Clear();
  clear_has_process();
}
inline const ::safe_browsing::ClientIncidentReport_EnvironmentData_Process& ClientIncidentReport_EnvironmentData::process() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.EnvironmentData.process)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return process_ != NULL ? *process_ : *default_instance().process_;
#else
  return process_ != NULL ? *process_ : *default_instance_->process_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process* ClientIncidentReport_EnvironmentData::mutable_process() {
  set_has_process();
  if (process_ == NULL) process_ = new ::safe_browsing::ClientIncidentReport_EnvironmentData_Process;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.EnvironmentData.process)
  return process_;
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData_Process* ClientIncidentReport_EnvironmentData::release_process() {
  clear_has_process();
  ::safe_browsing::ClientIncidentReport_EnvironmentData_Process* temp = process_;
  process_ = NULL;
  return temp;
}
inline void ClientIncidentReport_EnvironmentData::set_allocated_process(::safe_browsing::ClientIncidentReport_EnvironmentData_Process* process) {
  delete process_;
  process_ = process;
  if (process) {
    set_has_process();
  } else {
    clear_has_process();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.EnvironmentData.process)
}

// -------------------------------------------------------------------

// ClientIncidentReport

// repeated .safe_browsing.ClientIncidentReport.IncidentData incident = 1;
inline int ClientIncidentReport::incident_size() const {
  return incident_.size();
}
inline void ClientIncidentReport::clear_incident() {
  incident_.Clear();
}
inline const ::safe_browsing::ClientIncidentReport_IncidentData& ClientIncidentReport::incident(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.incident)
  return incident_.Get(index);
}
inline ::safe_browsing::ClientIncidentReport_IncidentData* ClientIncidentReport::mutable_incident(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.incident)
  return incident_.Mutable(index);
}
inline ::safe_browsing::ClientIncidentReport_IncidentData* ClientIncidentReport::add_incident() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentReport.incident)
  return incident_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_IncidentData >&
ClientIncidentReport::incident() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentReport.incident)
  return incident_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentReport_IncidentData >*
ClientIncidentReport::mutable_incident() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentReport.incident)
  return &incident_;
}

// optional .safe_browsing.ClientIncidentReport.DownloadDetails download = 2;
inline bool ClientIncidentReport::has_download() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentReport::set_has_download() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentReport::clear_has_download() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentReport::clear_download() {
  if (download_ != NULL) download_->::safe_browsing::ClientIncidentReport_DownloadDetails::Clear();
  clear_has_download();
}
inline const ::safe_browsing::ClientIncidentReport_DownloadDetails& ClientIncidentReport::download() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.download)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return download_ != NULL ? *download_ : *default_instance().download_;
#else
  return download_ != NULL ? *download_ : *default_instance_->download_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_DownloadDetails* ClientIncidentReport::mutable_download() {
  set_has_download();
  if (download_ == NULL) download_ = new ::safe_browsing::ClientIncidentReport_DownloadDetails;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.download)
  return download_;
}
inline ::safe_browsing::ClientIncidentReport_DownloadDetails* ClientIncidentReport::release_download() {
  clear_has_download();
  ::safe_browsing::ClientIncidentReport_DownloadDetails* temp = download_;
  download_ = NULL;
  return temp;
}
inline void ClientIncidentReport::set_allocated_download(::safe_browsing::ClientIncidentReport_DownloadDetails* download) {
  delete download_;
  download_ = download;
  if (download) {
    set_has_download();
  } else {
    clear_has_download();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.download)
}

// optional .safe_browsing.ClientIncidentReport.EnvironmentData environment = 3;
inline bool ClientIncidentReport::has_environment() const {
  return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void ClientIncidentReport::set_has_environment() {
  _has_bits_[0] |= 0x00000004u;
}
inline void ClientIncidentReport::clear_has_environment() {
  _has_bits_[0] &= ~0x00000004u;
}
inline void ClientIncidentReport::clear_environment() {
  if (environment_ != NULL) environment_->::safe_browsing::ClientIncidentReport_EnvironmentData::Clear();
  clear_has_environment();
}
inline const ::safe_browsing::ClientIncidentReport_EnvironmentData& ClientIncidentReport::environment() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentReport.environment)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return environment_ != NULL ? *environment_ : *default_instance().environment_;
#else
  return environment_ != NULL ? *environment_ : *default_instance_->environment_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData* ClientIncidentReport::mutable_environment() {
  set_has_environment();
  if (environment_ == NULL) environment_ = new ::safe_browsing::ClientIncidentReport_EnvironmentData;
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentReport.environment)
  return environment_;
}
inline ::safe_browsing::ClientIncidentReport_EnvironmentData* ClientIncidentReport::release_environment() {
  clear_has_environment();
  ::safe_browsing::ClientIncidentReport_EnvironmentData* temp = environment_;
  environment_ = NULL;
  return temp;
}
inline void ClientIncidentReport::set_allocated_environment(::safe_browsing::ClientIncidentReport_EnvironmentData* environment) {
  delete environment_;
  environment_ = environment;
  if (environment) {
    set_has_environment();
  } else {
    clear_has_environment();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentReport.environment)
}

// -------------------------------------------------------------------

// ClientIncidentResponse_EnvironmentRequest

// optional int32 dll_index = 1;
inline bool ClientIncidentResponse_EnvironmentRequest::has_dll_index() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentResponse_EnvironmentRequest::set_has_dll_index() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentResponse_EnvironmentRequest::clear_has_dll_index() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentResponse_EnvironmentRequest::clear_dll_index() {
  dll_index_ = 0;
  clear_has_dll_index();
}
inline ::google::protobuf::int32 ClientIncidentResponse_EnvironmentRequest::dll_index() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentResponse.EnvironmentRequest.dll_index)
  return dll_index_;
}
inline void ClientIncidentResponse_EnvironmentRequest::set_dll_index(::google::protobuf::int32 value) {
  set_has_dll_index();
  dll_index_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentResponse.EnvironmentRequest.dll_index)
}

// -------------------------------------------------------------------

// ClientIncidentResponse

// optional bytes token = 1;
inline bool ClientIncidentResponse::has_token() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void ClientIncidentResponse::set_has_token() {
  _has_bits_[0] |= 0x00000001u;
}
inline void ClientIncidentResponse::clear_has_token() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void ClientIncidentResponse::clear_token() {
  if (token_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_->clear();
  }
  clear_has_token();
}
inline const ::std::string& ClientIncidentResponse::token() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentResponse.token)
  return *token_;
}
inline void ClientIncidentResponse::set_token(const ::std::string& value) {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  token_->assign(value);
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentResponse.token)
}
inline void ClientIncidentResponse::set_token(const char* value) {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  token_->assign(value);
  // @@protoc_insertion_point(field_set_char:safe_browsing.ClientIncidentResponse.token)
}
inline void ClientIncidentResponse::set_token(const void* value, size_t size) {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  token_->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:safe_browsing.ClientIncidentResponse.token)
}
inline ::std::string* ClientIncidentResponse::mutable_token() {
  set_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    token_ = new ::std::string;
  }
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentResponse.token)
  return token_;
}
inline ::std::string* ClientIncidentResponse::release_token() {
  clear_has_token();
  if (token_ == &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    return NULL;
  } else {
    ::std::string* temp = token_;
    token_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    return temp;
  }
}
inline void ClientIncidentResponse::set_allocated_token(::std::string* token) {
  if (token_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    delete token_;
  }
  if (token) {
    set_has_token();
    token_ = token;
  } else {
    clear_has_token();
    token_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.ClientIncidentResponse.token)
}

// optional bool download_requested = 2;
inline bool ClientIncidentResponse::has_download_requested() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void ClientIncidentResponse::set_has_download_requested() {
  _has_bits_[0] |= 0x00000002u;
}
inline void ClientIncidentResponse::clear_has_download_requested() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void ClientIncidentResponse::clear_download_requested() {
  download_requested_ = false;
  clear_has_download_requested();
}
inline bool ClientIncidentResponse::download_requested() const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentResponse.download_requested)
  return download_requested_;
}
inline void ClientIncidentResponse::set_download_requested(bool value) {
  set_has_download_requested();
  download_requested_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.ClientIncidentResponse.download_requested)
}

// repeated .safe_browsing.ClientIncidentResponse.EnvironmentRequest environment_requests = 3;
inline int ClientIncidentResponse::environment_requests_size() const {
  return environment_requests_.size();
}
inline void ClientIncidentResponse::clear_environment_requests() {
  environment_requests_.Clear();
}
inline const ::safe_browsing::ClientIncidentResponse_EnvironmentRequest& ClientIncidentResponse::environment_requests(int index) const {
  // @@protoc_insertion_point(field_get:safe_browsing.ClientIncidentResponse.environment_requests)
  return environment_requests_.Get(index);
}
inline ::safe_browsing::ClientIncidentResponse_EnvironmentRequest* ClientIncidentResponse::mutable_environment_requests(int index) {
  // @@protoc_insertion_point(field_mutable:safe_browsing.ClientIncidentResponse.environment_requests)
  return environment_requests_.Mutable(index);
}
inline ::safe_browsing::ClientIncidentResponse_EnvironmentRequest* ClientIncidentResponse::add_environment_requests() {
  // @@protoc_insertion_point(field_add:safe_browsing.ClientIncidentResponse.environment_requests)
  return environment_requests_.Add();
}
inline const ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentResponse_EnvironmentRequest >&
ClientIncidentResponse::environment_requests() const {
  // @@protoc_insertion_point(field_list:safe_browsing.ClientIncidentResponse.environment_requests)
  return environment_requests_;
}
inline ::google::protobuf::RepeatedPtrField< ::safe_browsing::ClientIncidentResponse_EnvironmentRequest >*
ClientIncidentResponse::mutable_environment_requests() {
  // @@protoc_insertion_point(field_mutable_list:safe_browsing.ClientIncidentResponse.environment_requests)
  return &environment_requests_;
}

// -------------------------------------------------------------------

// DownloadMetadata

// optional uint32 download_id = 1;
inline bool DownloadMetadata::has_download_id() const {
  return (_has_bits_[0] & 0x00000001u) != 0;
}
inline void DownloadMetadata::set_has_download_id() {
  _has_bits_[0] |= 0x00000001u;
}
inline void DownloadMetadata::clear_has_download_id() {
  _has_bits_[0] &= ~0x00000001u;
}
inline void DownloadMetadata::clear_download_id() {
  download_id_ = 0u;
  clear_has_download_id();
}
inline ::google::protobuf::uint32 DownloadMetadata::download_id() const {
  // @@protoc_insertion_point(field_get:safe_browsing.DownloadMetadata.download_id)
  return download_id_;
}
inline void DownloadMetadata::set_download_id(::google::protobuf::uint32 value) {
  set_has_download_id();
  download_id_ = value;
  // @@protoc_insertion_point(field_set:safe_browsing.DownloadMetadata.download_id)
}

// optional .safe_browsing.ClientIncidentReport.DownloadDetails download = 2;
inline bool DownloadMetadata::has_download() const {
  return (_has_bits_[0] & 0x00000002u) != 0;
}
inline void DownloadMetadata::set_has_download() {
  _has_bits_[0] |= 0x00000002u;
}
inline void DownloadMetadata::clear_has_download() {
  _has_bits_[0] &= ~0x00000002u;
}
inline void DownloadMetadata::clear_download() {
  if (download_ != NULL) download_->::safe_browsing::ClientIncidentReport_DownloadDetails::Clear();
  clear_has_download();
}
inline const ::safe_browsing::ClientIncidentReport_DownloadDetails& DownloadMetadata::download() const {
  // @@protoc_insertion_point(field_get:safe_browsing.DownloadMetadata.download)
#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
  return download_ != NULL ? *download_ : *default_instance().download_;
#else
  return download_ != NULL ? *download_ : *default_instance_->download_;
#endif
}
inline ::safe_browsing::ClientIncidentReport_DownloadDetails* DownloadMetadata::mutable_download() {
  set_has_download();
  if (download_ == NULL) download_ = new ::safe_browsing::ClientIncidentReport_DownloadDetails;
  // @@protoc_insertion_point(field_mutable:safe_browsing.DownloadMetadata.download)
  return download_;
}
inline ::safe_browsing::ClientIncidentReport_DownloadDetails* DownloadMetadata::release_download() {
  clear_has_download();
  ::safe_browsing::ClientIncidentReport_DownloadDetails* temp = download_;
  download_ = NULL;
  return temp;
}
inline void DownloadMetadata::set_allocated_download(::safe_browsing::ClientIncidentReport_DownloadDetails* download) {
  delete download_;
  download_ = download;
  if (download) {
    set_has_download();
  } else {
    clear_has_download();
  }
  // @@protoc_insertion_point(field_set_allocated:safe_browsing.DownloadMetadata.download)
}


// @@protoc_insertion_point(namespace_scope)

}  // namespace safe_browsing

// @@protoc_insertion_point(global_scope)

#endif  // PROTOBUF_csd_2eproto__INCLUDED
