LCOV - code coverage report
Current view: top level - toolkit/components/url-classifier/protobuf - safebrowsing.pb.cc (source / functions) Hit Total Coverage
Test: output.info Lines: 445 3612 12.3 %
Date: 2017-07-14 16:53:18 Functions: 93 532 17.5 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : // Generated by the protocol buffer compiler.  DO NOT EDIT!
       2             : // source: safebrowsing.proto
       3             : 
       4             : #define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
       5             : #include "safebrowsing.pb.h"
       6             : 
       7             : #include <algorithm>
       8             : 
       9             : #include <google/protobuf/stubs/common.h>
      10             : #include <google/protobuf/stubs/once.h>
      11             : #include <google/protobuf/io/coded_stream.h>
      12             : #include <google/protobuf/wire_format_lite_inl.h>
      13             : #include <google/protobuf/io/zero_copy_stream_impl_lite.h>
      14             : // @@protoc_insertion_point(includes)
      15             : 
      16             : namespace mozilla {
      17             : namespace safebrowsing {
      18             : 
      19           0 : void protobuf_ShutdownFile_safebrowsing_2eproto() {
      20           0 :   delete ThreatInfo::default_instance_;
      21           0 :   delete ThreatMatch::default_instance_;
      22           0 :   delete FindThreatMatchesRequest::default_instance_;
      23           0 :   delete FindThreatMatchesResponse::default_instance_;
      24           0 :   delete FetchThreatListUpdatesRequest::default_instance_;
      25           0 :   delete FetchThreatListUpdatesRequest_ListUpdateRequest::default_instance_;
      26           0 :   delete FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::default_instance_;
      27           0 :   delete FetchThreatListUpdatesResponse::default_instance_;
      28           0 :   delete FetchThreatListUpdatesResponse_ListUpdateResponse::default_instance_;
      29           0 :   delete FindFullHashesRequest::default_instance_;
      30           0 :   delete FindFullHashesResponse::default_instance_;
      31           0 :   delete ThreatHit::default_instance_;
      32           0 :   delete ThreatHit_ThreatSource::default_instance_;
      33           0 :   delete ClientInfo::default_instance_;
      34           0 :   delete ChromeClientInfo::default_instance_;
      35           0 :   delete Checksum::default_instance_;
      36           0 :   delete ThreatEntry::default_instance_;
      37           0 :   delete ThreatEntrySet::default_instance_;
      38           0 :   delete RawIndices::default_instance_;
      39           0 :   delete RawHashes::default_instance_;
      40           0 :   delete RiceDeltaEncoding::default_instance_;
      41           0 :   delete ThreatEntryMetadata::default_instance_;
      42           0 :   delete ThreatEntryMetadata_MetadataEntry::default_instance_;
      43           0 :   delete ThreatListDescriptor::default_instance_;
      44           0 :   delete ListThreatListsResponse::default_instance_;
      45           0 :   delete Duration::default_instance_;
      46           0 : }
      47             : 
      48             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
      49             : void protobuf_AddDesc_safebrowsing_2eproto_impl() {
      50             :   GOOGLE_PROTOBUF_VERIFY_VERSION;
      51             : 
      52             : #else
      53           3 : void protobuf_AddDesc_safebrowsing_2eproto() {
      54             :   static bool already_here = false;
      55           3 :   if (already_here) return;
      56           3 :   already_here = true;
      57           3 :   GOOGLE_PROTOBUF_VERIFY_VERSION;
      58             : 
      59             : #endif
      60           3 :   ThreatInfo::default_instance_ = new ThreatInfo();
      61           3 :   ThreatMatch::default_instance_ = new ThreatMatch();
      62           3 :   FindThreatMatchesRequest::default_instance_ = new FindThreatMatchesRequest();
      63           3 :   FindThreatMatchesResponse::default_instance_ = new FindThreatMatchesResponse();
      64           3 :   FetchThreatListUpdatesRequest::default_instance_ = new FetchThreatListUpdatesRequest();
      65           3 :   FetchThreatListUpdatesRequest_ListUpdateRequest::default_instance_ = new FetchThreatListUpdatesRequest_ListUpdateRequest();
      66           3 :   FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::default_instance_ = new FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints();
      67           3 :   FetchThreatListUpdatesResponse::default_instance_ = new FetchThreatListUpdatesResponse();
      68           3 :   FetchThreatListUpdatesResponse_ListUpdateResponse::default_instance_ = new FetchThreatListUpdatesResponse_ListUpdateResponse();
      69           3 :   FindFullHashesRequest::default_instance_ = new FindFullHashesRequest();
      70           3 :   FindFullHashesResponse::default_instance_ = new FindFullHashesResponse();
      71           3 :   ThreatHit::default_instance_ = new ThreatHit();
      72           3 :   ThreatHit_ThreatSource::default_instance_ = new ThreatHit_ThreatSource();
      73           3 :   ClientInfo::default_instance_ = new ClientInfo();
      74           3 :   ChromeClientInfo::default_instance_ = new ChromeClientInfo();
      75           3 :   Checksum::default_instance_ = new Checksum();
      76           3 :   ThreatEntry::default_instance_ = new ThreatEntry();
      77           3 :   ThreatEntrySet::default_instance_ = new ThreatEntrySet();
      78           3 :   RawIndices::default_instance_ = new RawIndices();
      79           3 :   RawHashes::default_instance_ = new RawHashes();
      80           3 :   RiceDeltaEncoding::default_instance_ = new RiceDeltaEncoding();
      81           3 :   ThreatEntryMetadata::default_instance_ = new ThreatEntryMetadata();
      82           3 :   ThreatEntryMetadata_MetadataEntry::default_instance_ = new ThreatEntryMetadata_MetadataEntry();
      83           3 :   ThreatListDescriptor::default_instance_ = new ThreatListDescriptor();
      84           3 :   ListThreatListsResponse::default_instance_ = new ListThreatListsResponse();
      85           3 :   Duration::default_instance_ = new Duration();
      86           3 :   ThreatInfo::default_instance_->InitAsDefaultInstance();
      87           3 :   ThreatMatch::default_instance_->InitAsDefaultInstance();
      88           3 :   FindThreatMatchesRequest::default_instance_->InitAsDefaultInstance();
      89           3 :   FindThreatMatchesResponse::default_instance_->InitAsDefaultInstance();
      90           3 :   FetchThreatListUpdatesRequest::default_instance_->InitAsDefaultInstance();
      91           3 :   FetchThreatListUpdatesRequest_ListUpdateRequest::default_instance_->InitAsDefaultInstance();
      92           3 :   FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::default_instance_->InitAsDefaultInstance();
      93           3 :   FetchThreatListUpdatesResponse::default_instance_->InitAsDefaultInstance();
      94           3 :   FetchThreatListUpdatesResponse_ListUpdateResponse::default_instance_->InitAsDefaultInstance();
      95           3 :   FindFullHashesRequest::default_instance_->InitAsDefaultInstance();
      96           3 :   FindFullHashesResponse::default_instance_->InitAsDefaultInstance();
      97           3 :   ThreatHit::default_instance_->InitAsDefaultInstance();
      98           3 :   ThreatHit_ThreatSource::default_instance_->InitAsDefaultInstance();
      99           3 :   ClientInfo::default_instance_->InitAsDefaultInstance();
     100           3 :   ChromeClientInfo::default_instance_->InitAsDefaultInstance();
     101           3 :   Checksum::default_instance_->InitAsDefaultInstance();
     102           3 :   ThreatEntry::default_instance_->InitAsDefaultInstance();
     103           3 :   ThreatEntrySet::default_instance_->InitAsDefaultInstance();
     104           3 :   RawIndices::default_instance_->InitAsDefaultInstance();
     105           3 :   RawHashes::default_instance_->InitAsDefaultInstance();
     106           3 :   RiceDeltaEncoding::default_instance_->InitAsDefaultInstance();
     107           3 :   ThreatEntryMetadata::default_instance_->InitAsDefaultInstance();
     108           3 :   ThreatEntryMetadata_MetadataEntry::default_instance_->InitAsDefaultInstance();
     109           3 :   ThreatListDescriptor::default_instance_->InitAsDefaultInstance();
     110           3 :   ListThreatListsResponse::default_instance_->InitAsDefaultInstance();
     111           3 :   Duration::default_instance_->InitAsDefaultInstance();
     112           3 :   ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_safebrowsing_2eproto);
     113             : }
     114             : 
     115             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     116             : GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AddDesc_safebrowsing_2eproto_once_);
     117             : void protobuf_AddDesc_safebrowsing_2eproto() {
     118             :   ::google::protobuf::GoogleOnceInit(&protobuf_AddDesc_safebrowsing_2eproto_once_,
     119             :                  &protobuf_AddDesc_safebrowsing_2eproto_impl);
     120             : }
     121             : #else
     122             : // Force AddDescriptors() to be called at static initialization time.
     123             : struct StaticDescriptorInitializer_safebrowsing_2eproto {
     124           3 :   StaticDescriptorInitializer_safebrowsing_2eproto() {
     125           3 :     protobuf_AddDesc_safebrowsing_2eproto();
     126           3 :   }
     127           3 : } static_descriptor_initializer_safebrowsing_2eproto_;
     128             : #endif
     129           0 : bool ThreatType_IsValid(int value) {
     130           0 :   switch(value) {
     131             :     case 0:
     132             :     case 1:
     133             :     case 2:
     134             :     case 3:
     135             :     case 4:
     136             :     case 5:
     137             :     case 6:
     138             :     case 7:
     139             :     case 8:
     140             :     case 9:
     141             :     case 10:
     142             :     case 13:
     143           0 :       return true;
     144             :     default:
     145           0 :       return false;
     146             :   }
     147             : }
     148             : 
     149           0 : bool PlatformType_IsValid(int value) {
     150           0 :   switch(value) {
     151             :     case 0:
     152             :     case 1:
     153             :     case 2:
     154             :     case 3:
     155             :     case 4:
     156             :     case 5:
     157             :     case 6:
     158             :     case 7:
     159             :     case 8:
     160           0 :       return true;
     161             :     default:
     162           0 :       return false;
     163             :   }
     164             : }
     165             : 
     166           0 : bool CompressionType_IsValid(int value) {
     167           0 :   switch(value) {
     168             :     case 0:
     169             :     case 1:
     170             :     case 2:
     171           0 :       return true;
     172             :     default:
     173           0 :       return false;
     174             :   }
     175             : }
     176             : 
     177           0 : bool ThreatEntryType_IsValid(int value) {
     178           0 :   switch(value) {
     179             :     case 0:
     180             :     case 1:
     181             :     case 2:
     182             :     case 3:
     183             :     case 4:
     184             :     case 5:
     185             :     case 6:
     186           0 :       return true;
     187             :     default:
     188           0 :       return false;
     189             :   }
     190             : }
     191             : 
     192             : 
     193             : // ===================================================================
     194             : 
     195             : #ifndef _MSC_VER
     196             : const int ThreatInfo::kThreatTypesFieldNumber;
     197             : const int ThreatInfo::kPlatformTypesFieldNumber;
     198             : const int ThreatInfo::kThreatEntryTypesFieldNumber;
     199             : const int ThreatInfo::kThreatEntriesFieldNumber;
     200             : #endif  // !_MSC_VER
     201             : 
     202           3 : ThreatInfo::ThreatInfo()
     203           3 :   : ::google::protobuf::MessageLite() {
     204           3 :   SharedCtor();
     205             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ThreatInfo)
     206           3 : }
     207             : 
     208           3 : void ThreatInfo::InitAsDefaultInstance() {
     209           3 : }
     210             : 
     211           0 : ThreatInfo::ThreatInfo(const ThreatInfo& from)
     212           0 :   : ::google::protobuf::MessageLite() {
     213           0 :   SharedCtor();
     214           0 :   MergeFrom(from);
     215             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ThreatInfo)
     216           0 : }
     217             : 
     218           3 : void ThreatInfo::SharedCtor() {
     219           3 :   _cached_size_ = 0;
     220           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
     221           3 : }
     222             : 
     223           0 : ThreatInfo::~ThreatInfo() {
     224             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ThreatInfo)
     225           0 :   SharedDtor();
     226           0 : }
     227             : 
     228           0 : void ThreatInfo::SharedDtor() {
     229             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     230             :   if (this != &default_instance()) {
     231             :   #else
     232           0 :   if (this != default_instance_) {
     233             :   #endif
     234             :   }
     235           0 : }
     236             : 
     237           0 : void ThreatInfo::SetCachedSize(int size) const {
     238             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
     239           0 :   _cached_size_ = size;
     240             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
     241           0 : }
     242           6 : const ThreatInfo& ThreatInfo::default_instance() {
     243             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     244             :   protobuf_AddDesc_safebrowsing_2eproto();
     245             : #else
     246           6 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
     247             : #endif
     248           6 :   return *default_instance_;
     249             : }
     250             : 
     251             : ThreatInfo* ThreatInfo::default_instance_ = NULL;
     252             : 
     253           0 : ThreatInfo* ThreatInfo::New() const {
     254           0 :   return new ThreatInfo;
     255             : }
     256             : 
     257           0 : void ThreatInfo::Clear() {
     258           0 :   threat_types_.Clear();
     259           0 :   platform_types_.Clear();
     260           0 :   threat_entry_types_.Clear();
     261           0 :   threat_entries_.Clear();
     262           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
     263           0 :   mutable_unknown_fields()->clear();
     264           0 : }
     265             : 
     266           0 : bool ThreatInfo::MergePartialFromCodedStream(
     267             :     ::google::protobuf::io::CodedInputStream* input) {
     268             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
     269             :   ::google::protobuf::uint32 tag;
     270             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
     271           0 :       mutable_unknown_fields());
     272             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
     273           0 :       &unknown_fields_string);
     274             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ThreatInfo)
     275             :   for (;;) {
     276             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
     277           0 :     tag = p.first;
     278           0 :     if (!p.second) goto handle_unusual;
     279           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
     280             :       // repeated .mozilla.safebrowsing.ThreatType threat_types = 1;
     281             :       case 1: {
     282           0 :         if (tag == 8) {
     283             :          parse_threat_types:
     284             :           int value;
     285           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
     286             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
     287             :                  input, &value)));
     288           0 :           if (::mozilla::safebrowsing::ThreatType_IsValid(value)) {
     289           0 :             add_threat_types(static_cast< ::mozilla::safebrowsing::ThreatType >(value));
     290             :           } else {
     291           0 :             unknown_fields_stream.WriteVarint32(tag);
     292           0 :             unknown_fields_stream.WriteVarint32(value);
     293             :           }
     294           0 :         } else if (tag == 10) {
     295           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
     296             :                  input,
     297             :                  &::mozilla::safebrowsing::ThreatType_IsValid,
     298             :                  this->mutable_threat_types())));
     299             :         } else {
     300           0 :           goto handle_unusual;
     301             :         }
     302           0 :         if (input->ExpectTag(8)) goto parse_threat_types;
     303           0 :         if (input->ExpectTag(16)) goto parse_platform_types;
     304           0 :         break;
     305             :       }
     306             : 
     307             :       // repeated .mozilla.safebrowsing.PlatformType platform_types = 2;
     308             :       case 2: {
     309           0 :         if (tag == 16) {
     310             :          parse_platform_types:
     311             :           int value;
     312           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
     313             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
     314             :                  input, &value)));
     315           0 :           if (::mozilla::safebrowsing::PlatformType_IsValid(value)) {
     316           0 :             add_platform_types(static_cast< ::mozilla::safebrowsing::PlatformType >(value));
     317             :           } else {
     318           0 :             unknown_fields_stream.WriteVarint32(tag);
     319           0 :             unknown_fields_stream.WriteVarint32(value);
     320             :           }
     321           0 :         } else if (tag == 18) {
     322           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
     323             :                  input,
     324             :                  &::mozilla::safebrowsing::PlatformType_IsValid,
     325             :                  this->mutable_platform_types())));
     326             :         } else {
     327           0 :           goto handle_unusual;
     328             :         }
     329           0 :         if (input->ExpectTag(16)) goto parse_platform_types;
     330           0 :         if (input->ExpectTag(26)) goto parse_threat_entries;
     331           0 :         break;
     332             :       }
     333             : 
     334             :       // repeated .mozilla.safebrowsing.ThreatEntry threat_entries = 3;
     335             :       case 3: {
     336           0 :         if (tag == 26) {
     337             :          parse_threat_entries:
     338           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
     339             :                 input, add_threat_entries()));
     340             :         } else {
     341           0 :           goto handle_unusual;
     342             :         }
     343           0 :         if (input->ExpectTag(26)) goto parse_threat_entries;
     344           0 :         if (input->ExpectTag(32)) goto parse_threat_entry_types;
     345           0 :         break;
     346             :       }
     347             : 
     348             :       // repeated .mozilla.safebrowsing.ThreatEntryType threat_entry_types = 4;
     349             :       case 4: {
     350           0 :         if (tag == 32) {
     351             :          parse_threat_entry_types:
     352             :           int value;
     353           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
     354             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
     355             :                  input, &value)));
     356           0 :           if (::mozilla::safebrowsing::ThreatEntryType_IsValid(value)) {
     357           0 :             add_threat_entry_types(static_cast< ::mozilla::safebrowsing::ThreatEntryType >(value));
     358             :           } else {
     359           0 :             unknown_fields_stream.WriteVarint32(tag);
     360           0 :             unknown_fields_stream.WriteVarint32(value);
     361             :           }
     362           0 :         } else if (tag == 34) {
     363           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
     364             :                  input,
     365             :                  &::mozilla::safebrowsing::ThreatEntryType_IsValid,
     366             :                  this->mutable_threat_entry_types())));
     367             :         } else {
     368           0 :           goto handle_unusual;
     369             :         }
     370           0 :         if (input->ExpectTag(32)) goto parse_threat_entry_types;
     371           0 :         if (input->ExpectAtEnd()) goto success;
     372           0 :         break;
     373             :       }
     374             : 
     375             :       default: {
     376             :       handle_unusual:
     377           0 :         if (tag == 0 ||
     378           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
     379             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
     380           0 :           goto success;
     381             :         }
     382           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
     383             :             input, tag, &unknown_fields_stream));
     384           0 :         break;
     385             :       }
     386             :     }
     387           0 :   }
     388             : success:
     389             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ThreatInfo)
     390           0 :   return true;
     391             : failure:
     392             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ThreatInfo)
     393           0 :   return false;
     394             : #undef DO_
     395             : }
     396             : 
     397           0 : void ThreatInfo::SerializeWithCachedSizes(
     398             :     ::google::protobuf::io::CodedOutputStream* output) const {
     399             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ThreatInfo)
     400             :   // repeated .mozilla.safebrowsing.ThreatType threat_types = 1;
     401           0 :   for (int i = 0; i < this->threat_types_size(); i++) {
     402           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
     403           0 :       1, this->threat_types(i), output);
     404             :   }
     405             : 
     406             :   // repeated .mozilla.safebrowsing.PlatformType platform_types = 2;
     407           0 :   for (int i = 0; i < this->platform_types_size(); i++) {
     408           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
     409           0 :       2, this->platform_types(i), output);
     410             :   }
     411             : 
     412             :   // repeated .mozilla.safebrowsing.ThreatEntry threat_entries = 3;
     413           0 :   for (int i = 0; i < this->threat_entries_size(); i++) {
     414           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
     415           0 :       3, this->threat_entries(i), output);
     416             :   }
     417             : 
     418             :   // repeated .mozilla.safebrowsing.ThreatEntryType threat_entry_types = 4;
     419           0 :   for (int i = 0; i < this->threat_entry_types_size(); i++) {
     420           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
     421           0 :       4, this->threat_entry_types(i), output);
     422             :   }
     423             : 
     424           0 :   output->WriteRaw(unknown_fields().data(),
     425           0 :                    unknown_fields().size());
     426             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ThreatInfo)
     427           0 : }
     428             : 
     429           0 : int ThreatInfo::ByteSize() const {
     430           0 :   int total_size = 0;
     431             : 
     432             :   // repeated .mozilla.safebrowsing.ThreatType threat_types = 1;
     433             :   {
     434           0 :     int data_size = 0;
     435           0 :     for (int i = 0; i < this->threat_types_size(); i++) {
     436           0 :       data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
     437           0 :         this->threat_types(i));
     438             :     }
     439           0 :     total_size += 1 * this->threat_types_size() + data_size;
     440             :   }
     441             : 
     442             :   // repeated .mozilla.safebrowsing.PlatformType platform_types = 2;
     443             :   {
     444           0 :     int data_size = 0;
     445           0 :     for (int i = 0; i < this->platform_types_size(); i++) {
     446           0 :       data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
     447           0 :         this->platform_types(i));
     448             :     }
     449           0 :     total_size += 1 * this->platform_types_size() + data_size;
     450             :   }
     451             : 
     452             :   // repeated .mozilla.safebrowsing.ThreatEntryType threat_entry_types = 4;
     453             :   {
     454           0 :     int data_size = 0;
     455           0 :     for (int i = 0; i < this->threat_entry_types_size(); i++) {
     456           0 :       data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
     457           0 :         this->threat_entry_types(i));
     458             :     }
     459           0 :     total_size += 1 * this->threat_entry_types_size() + data_size;
     460             :   }
     461             : 
     462             :   // repeated .mozilla.safebrowsing.ThreatEntry threat_entries = 3;
     463           0 :   total_size += 1 * this->threat_entries_size();
     464           0 :   for (int i = 0; i < this->threat_entries_size(); i++) {
     465           0 :     total_size +=
     466           0 :       ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
     467             :         this->threat_entries(i));
     468             :   }
     469             : 
     470           0 :   total_size += unknown_fields().size();
     471             : 
     472             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
     473           0 :   _cached_size_ = total_size;
     474             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
     475           0 :   return total_size;
     476             : }
     477             : 
     478           0 : void ThreatInfo::CheckTypeAndMergeFrom(
     479             :     const ::google::protobuf::MessageLite& from) {
     480           0 :   MergeFrom(*::google::protobuf::down_cast<const ThreatInfo*>(&from));
     481           0 : }
     482             : 
     483           0 : void ThreatInfo::MergeFrom(const ThreatInfo& from) {
     484           0 :   GOOGLE_CHECK_NE(&from, this);
     485           0 :   threat_types_.MergeFrom(from.threat_types_);
     486           0 :   platform_types_.MergeFrom(from.platform_types_);
     487           0 :   threat_entry_types_.MergeFrom(from.threat_entry_types_);
     488           0 :   threat_entries_.MergeFrom(from.threat_entries_);
     489           0 :   mutable_unknown_fields()->append(from.unknown_fields());
     490           0 : }
     491             : 
     492           0 : void ThreatInfo::CopyFrom(const ThreatInfo& from) {
     493           0 :   if (&from == this) return;
     494           0 :   Clear();
     495           0 :   MergeFrom(from);
     496             : }
     497             : 
     498           0 : bool ThreatInfo::IsInitialized() const {
     499             : 
     500           0 :   return true;
     501             : }
     502             : 
     503           0 : void ThreatInfo::Swap(ThreatInfo* other) {
     504           0 :   if (other != this) {
     505           0 :     threat_types_.Swap(&other->threat_types_);
     506           0 :     platform_types_.Swap(&other->platform_types_);
     507           0 :     threat_entry_types_.Swap(&other->threat_entry_types_);
     508           0 :     threat_entries_.Swap(&other->threat_entries_);
     509           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
     510           0 :     _unknown_fields_.swap(other->_unknown_fields_);
     511           0 :     std::swap(_cached_size_, other->_cached_size_);
     512             :   }
     513           0 : }
     514             : 
     515           0 : ::std::string ThreatInfo::GetTypeName() const {
     516           0 :   return "mozilla.safebrowsing.ThreatInfo";
     517             : }
     518             : 
     519             : 
     520             : // ===================================================================
     521             : 
     522             : #ifndef _MSC_VER
     523             : const int ThreatMatch::kThreatTypeFieldNumber;
     524             : const int ThreatMatch::kPlatformTypeFieldNumber;
     525             : const int ThreatMatch::kThreatEntryTypeFieldNumber;
     526             : const int ThreatMatch::kThreatFieldNumber;
     527             : const int ThreatMatch::kThreatEntryMetadataFieldNumber;
     528             : const int ThreatMatch::kCacheDurationFieldNumber;
     529             : #endif  // !_MSC_VER
     530             : 
     531           3 : ThreatMatch::ThreatMatch()
     532           3 :   : ::google::protobuf::MessageLite() {
     533           3 :   SharedCtor();
     534             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ThreatMatch)
     535           3 : }
     536             : 
     537           3 : void ThreatMatch::InitAsDefaultInstance() {
     538             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     539             :   threat_ = const_cast< ::mozilla::safebrowsing::ThreatEntry*>(
     540             :       ::mozilla::safebrowsing::ThreatEntry::internal_default_instance());
     541             : #else
     542           3 :   threat_ = const_cast< ::mozilla::safebrowsing::ThreatEntry*>(&::mozilla::safebrowsing::ThreatEntry::default_instance());
     543             : #endif
     544             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     545             :   threat_entry_metadata_ = const_cast< ::mozilla::safebrowsing::ThreatEntryMetadata*>(
     546             :       ::mozilla::safebrowsing::ThreatEntryMetadata::internal_default_instance());
     547             : #else
     548           3 :   threat_entry_metadata_ = const_cast< ::mozilla::safebrowsing::ThreatEntryMetadata*>(&::mozilla::safebrowsing::ThreatEntryMetadata::default_instance());
     549             : #endif
     550             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     551             :   cache_duration_ = const_cast< ::mozilla::safebrowsing::Duration*>(
     552             :       ::mozilla::safebrowsing::Duration::internal_default_instance());
     553             : #else
     554           3 :   cache_duration_ = const_cast< ::mozilla::safebrowsing::Duration*>(&::mozilla::safebrowsing::Duration::default_instance());
     555             : #endif
     556           3 : }
     557             : 
     558           0 : ThreatMatch::ThreatMatch(const ThreatMatch& from)
     559           0 :   : ::google::protobuf::MessageLite() {
     560           0 :   SharedCtor();
     561           0 :   MergeFrom(from);
     562             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ThreatMatch)
     563           0 : }
     564             : 
     565           3 : void ThreatMatch::SharedCtor() {
     566           3 :   _cached_size_ = 0;
     567           3 :   threat_type_ = 0;
     568           3 :   platform_type_ = 0;
     569           3 :   threat_entry_type_ = 0;
     570           3 :   threat_ = NULL;
     571           3 :   threat_entry_metadata_ = NULL;
     572           3 :   cache_duration_ = NULL;
     573           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
     574           3 : }
     575             : 
     576           0 : ThreatMatch::~ThreatMatch() {
     577             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ThreatMatch)
     578           0 :   SharedDtor();
     579           0 : }
     580             : 
     581           0 : void ThreatMatch::SharedDtor() {
     582             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     583             :   if (this != &default_instance()) {
     584             :   #else
     585           0 :   if (this != default_instance_) {
     586             :   #endif
     587           0 :     delete threat_;
     588           0 :     delete threat_entry_metadata_;
     589           0 :     delete cache_duration_;
     590             :   }
     591           0 : }
     592             : 
     593           0 : void ThreatMatch::SetCachedSize(int size) const {
     594             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
     595           0 :   _cached_size_ = size;
     596             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
     597           0 : }
     598           0 : const ThreatMatch& ThreatMatch::default_instance() {
     599             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     600             :   protobuf_AddDesc_safebrowsing_2eproto();
     601             : #else
     602           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
     603             : #endif
     604           0 :   return *default_instance_;
     605             : }
     606             : 
     607             : ThreatMatch* ThreatMatch::default_instance_ = NULL;
     608             : 
     609           0 : ThreatMatch* ThreatMatch::New() const {
     610           0 :   return new ThreatMatch;
     611             : }
     612             : 
     613           0 : void ThreatMatch::Clear() {
     614             : #define OFFSET_OF_FIELD_(f) (reinterpret_cast<char*>(      \
     615             :   &reinterpret_cast<ThreatMatch*>(16)->f) - \
     616             :    reinterpret_cast<char*>(16))
     617             : 
     618             : #define ZR_(first, last) do {                              \
     619             :     size_t f = OFFSET_OF_FIELD_(first);                    \
     620             :     size_t n = OFFSET_OF_FIELD_(last) - f + sizeof(last);  \
     621             :     ::memset(&first, 0, n);                                \
     622             :   } while (0)
     623             : 
     624           0 :   if (_has_bits_[0 / 32] & 63) {
     625           0 :     ZR_(threat_type_, platform_type_);
     626           0 :     threat_entry_type_ = 0;
     627           0 :     if (has_threat()) {
     628           0 :       if (threat_ != NULL) threat_->::mozilla::safebrowsing::ThreatEntry::Clear();
     629             :     }
     630           0 :     if (has_threat_entry_metadata()) {
     631           0 :       if (threat_entry_metadata_ != NULL) threat_entry_metadata_->::mozilla::safebrowsing::ThreatEntryMetadata::Clear();
     632             :     }
     633           0 :     if (has_cache_duration()) {
     634           0 :       if (cache_duration_ != NULL) cache_duration_->::mozilla::safebrowsing::Duration::Clear();
     635             :     }
     636             :   }
     637             : 
     638             : #undef OFFSET_OF_FIELD_
     639             : #undef ZR_
     640             : 
     641           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
     642           0 :   mutable_unknown_fields()->clear();
     643           0 : }
     644             : 
     645           0 : bool ThreatMatch::MergePartialFromCodedStream(
     646             :     ::google::protobuf::io::CodedInputStream* input) {
     647             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
     648             :   ::google::protobuf::uint32 tag;
     649             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
     650           0 :       mutable_unknown_fields());
     651             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
     652           0 :       &unknown_fields_string);
     653             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ThreatMatch)
     654             :   for (;;) {
     655             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
     656           0 :     tag = p.first;
     657           0 :     if (!p.second) goto handle_unusual;
     658           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
     659             :       // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
     660             :       case 1: {
     661           0 :         if (tag == 8) {
     662             :           int value;
     663           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
     664             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
     665             :                  input, &value)));
     666           0 :           if (::mozilla::safebrowsing::ThreatType_IsValid(value)) {
     667           0 :             set_threat_type(static_cast< ::mozilla::safebrowsing::ThreatType >(value));
     668             :           } else {
     669           0 :             unknown_fields_stream.WriteVarint32(tag);
     670           0 :             unknown_fields_stream.WriteVarint32(value);
     671             :           }
     672             :         } else {
     673           0 :           goto handle_unusual;
     674             :         }
     675           0 :         if (input->ExpectTag(16)) goto parse_platform_type;
     676           0 :         break;
     677             :       }
     678             : 
     679             :       // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
     680             :       case 2: {
     681           0 :         if (tag == 16) {
     682             :          parse_platform_type:
     683             :           int value;
     684           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
     685             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
     686             :                  input, &value)));
     687           0 :           if (::mozilla::safebrowsing::PlatformType_IsValid(value)) {
     688           0 :             set_platform_type(static_cast< ::mozilla::safebrowsing::PlatformType >(value));
     689             :           } else {
     690           0 :             unknown_fields_stream.WriteVarint32(tag);
     691           0 :             unknown_fields_stream.WriteVarint32(value);
     692             :           }
     693             :         } else {
     694           0 :           goto handle_unusual;
     695             :         }
     696           0 :         if (input->ExpectTag(26)) goto parse_threat;
     697           0 :         break;
     698             :       }
     699             : 
     700             :       // optional .mozilla.safebrowsing.ThreatEntry threat = 3;
     701             :       case 3: {
     702           0 :         if (tag == 26) {
     703             :          parse_threat:
     704           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
     705             :                input, mutable_threat()));
     706             :         } else {
     707           0 :           goto handle_unusual;
     708             :         }
     709           0 :         if (input->ExpectTag(34)) goto parse_threat_entry_metadata;
     710           0 :         break;
     711             :       }
     712             : 
     713             :       // optional .mozilla.safebrowsing.ThreatEntryMetadata threat_entry_metadata = 4;
     714             :       case 4: {
     715           0 :         if (tag == 34) {
     716             :          parse_threat_entry_metadata:
     717           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
     718             :                input, mutable_threat_entry_metadata()));
     719             :         } else {
     720           0 :           goto handle_unusual;
     721             :         }
     722           0 :         if (input->ExpectTag(42)) goto parse_cache_duration;
     723           0 :         break;
     724             :       }
     725             : 
     726             :       // optional .mozilla.safebrowsing.Duration cache_duration = 5;
     727             :       case 5: {
     728           0 :         if (tag == 42) {
     729             :          parse_cache_duration:
     730           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
     731             :                input, mutable_cache_duration()));
     732             :         } else {
     733           0 :           goto handle_unusual;
     734             :         }
     735           0 :         if (input->ExpectTag(48)) goto parse_threat_entry_type;
     736           0 :         break;
     737             :       }
     738             : 
     739             :       // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 6;
     740             :       case 6: {
     741           0 :         if (tag == 48) {
     742             :          parse_threat_entry_type:
     743             :           int value;
     744           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
     745             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
     746             :                  input, &value)));
     747           0 :           if (::mozilla::safebrowsing::ThreatEntryType_IsValid(value)) {
     748           0 :             set_threat_entry_type(static_cast< ::mozilla::safebrowsing::ThreatEntryType >(value));
     749             :           } else {
     750           0 :             unknown_fields_stream.WriteVarint32(tag);
     751           0 :             unknown_fields_stream.WriteVarint32(value);
     752             :           }
     753             :         } else {
     754           0 :           goto handle_unusual;
     755             :         }
     756           0 :         if (input->ExpectAtEnd()) goto success;
     757           0 :         break;
     758             :       }
     759             : 
     760             :       default: {
     761             :       handle_unusual:
     762           0 :         if (tag == 0 ||
     763           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
     764             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
     765           0 :           goto success;
     766             :         }
     767           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
     768             :             input, tag, &unknown_fields_stream));
     769           0 :         break;
     770             :       }
     771             :     }
     772           0 :   }
     773             : success:
     774             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ThreatMatch)
     775           0 :   return true;
     776             : failure:
     777             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ThreatMatch)
     778           0 :   return false;
     779             : #undef DO_
     780             : }
     781             : 
     782           0 : void ThreatMatch::SerializeWithCachedSizes(
     783             :     ::google::protobuf::io::CodedOutputStream* output) const {
     784             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ThreatMatch)
     785             :   // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
     786           0 :   if (has_threat_type()) {
     787           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
     788           0 :       1, this->threat_type(), output);
     789             :   }
     790             : 
     791             :   // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
     792           0 :   if (has_platform_type()) {
     793           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
     794           0 :       2, this->platform_type(), output);
     795             :   }
     796             : 
     797             :   // optional .mozilla.safebrowsing.ThreatEntry threat = 3;
     798           0 :   if (has_threat()) {
     799           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
     800           0 :       3, this->threat(), output);
     801             :   }
     802             : 
     803             :   // optional .mozilla.safebrowsing.ThreatEntryMetadata threat_entry_metadata = 4;
     804           0 :   if (has_threat_entry_metadata()) {
     805           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
     806           0 :       4, this->threat_entry_metadata(), output);
     807             :   }
     808             : 
     809             :   // optional .mozilla.safebrowsing.Duration cache_duration = 5;
     810           0 :   if (has_cache_duration()) {
     811           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
     812           0 :       5, this->cache_duration(), output);
     813             :   }
     814             : 
     815             :   // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 6;
     816           0 :   if (has_threat_entry_type()) {
     817           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
     818           0 :       6, this->threat_entry_type(), output);
     819             :   }
     820             : 
     821           0 :   output->WriteRaw(unknown_fields().data(),
     822           0 :                    unknown_fields().size());
     823             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ThreatMatch)
     824           0 : }
     825             : 
     826           0 : int ThreatMatch::ByteSize() const {
     827           0 :   int total_size = 0;
     828             : 
     829           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     830             :     // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
     831           0 :     if (has_threat_type()) {
     832           0 :       total_size += 1 +
     833           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->threat_type());
     834             :     }
     835             : 
     836             :     // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
     837           0 :     if (has_platform_type()) {
     838           0 :       total_size += 1 +
     839           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->platform_type());
     840             :     }
     841             : 
     842             :     // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 6;
     843           0 :     if (has_threat_entry_type()) {
     844           0 :       total_size += 1 +
     845           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->threat_entry_type());
     846             :     }
     847             : 
     848             :     // optional .mozilla.safebrowsing.ThreatEntry threat = 3;
     849           0 :     if (has_threat()) {
     850           0 :       total_size += 1 +
     851           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
     852             :           this->threat());
     853             :     }
     854             : 
     855             :     // optional .mozilla.safebrowsing.ThreatEntryMetadata threat_entry_metadata = 4;
     856           0 :     if (has_threat_entry_metadata()) {
     857           0 :       total_size += 1 +
     858           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
     859             :           this->threat_entry_metadata());
     860             :     }
     861             : 
     862             :     // optional .mozilla.safebrowsing.Duration cache_duration = 5;
     863           0 :     if (has_cache_duration()) {
     864           0 :       total_size += 1 +
     865           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
     866             :           this->cache_duration());
     867             :     }
     868             : 
     869             :   }
     870           0 :   total_size += unknown_fields().size();
     871             : 
     872             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
     873           0 :   _cached_size_ = total_size;
     874             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
     875           0 :   return total_size;
     876             : }
     877             : 
     878           0 : void ThreatMatch::CheckTypeAndMergeFrom(
     879             :     const ::google::protobuf::MessageLite& from) {
     880           0 :   MergeFrom(*::google::protobuf::down_cast<const ThreatMatch*>(&from));
     881           0 : }
     882             : 
     883           0 : void ThreatMatch::MergeFrom(const ThreatMatch& from) {
     884           0 :   GOOGLE_CHECK_NE(&from, this);
     885           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     886           0 :     if (from.has_threat_type()) {
     887           0 :       set_threat_type(from.threat_type());
     888             :     }
     889           0 :     if (from.has_platform_type()) {
     890           0 :       set_platform_type(from.platform_type());
     891             :     }
     892           0 :     if (from.has_threat_entry_type()) {
     893           0 :       set_threat_entry_type(from.threat_entry_type());
     894             :     }
     895           0 :     if (from.has_threat()) {
     896           0 :       mutable_threat()->::mozilla::safebrowsing::ThreatEntry::MergeFrom(from.threat());
     897             :     }
     898           0 :     if (from.has_threat_entry_metadata()) {
     899           0 :       mutable_threat_entry_metadata()->::mozilla::safebrowsing::ThreatEntryMetadata::MergeFrom(from.threat_entry_metadata());
     900             :     }
     901           0 :     if (from.has_cache_duration()) {
     902           0 :       mutable_cache_duration()->::mozilla::safebrowsing::Duration::MergeFrom(from.cache_duration());
     903             :     }
     904             :   }
     905           0 :   mutable_unknown_fields()->append(from.unknown_fields());
     906           0 : }
     907             : 
     908           0 : void ThreatMatch::CopyFrom(const ThreatMatch& from) {
     909           0 :   if (&from == this) return;
     910           0 :   Clear();
     911           0 :   MergeFrom(from);
     912             : }
     913             : 
     914           0 : bool ThreatMatch::IsInitialized() const {
     915             : 
     916           0 :   return true;
     917             : }
     918             : 
     919           0 : void ThreatMatch::Swap(ThreatMatch* other) {
     920           0 :   if (other != this) {
     921           0 :     std::swap(threat_type_, other->threat_type_);
     922           0 :     std::swap(platform_type_, other->platform_type_);
     923           0 :     std::swap(threat_entry_type_, other->threat_entry_type_);
     924           0 :     std::swap(threat_, other->threat_);
     925           0 :     std::swap(threat_entry_metadata_, other->threat_entry_metadata_);
     926           0 :     std::swap(cache_duration_, other->cache_duration_);
     927           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
     928           0 :     _unknown_fields_.swap(other->_unknown_fields_);
     929           0 :     std::swap(_cached_size_, other->_cached_size_);
     930             :   }
     931           0 : }
     932             : 
     933           0 : ::std::string ThreatMatch::GetTypeName() const {
     934           0 :   return "mozilla.safebrowsing.ThreatMatch";
     935             : }
     936             : 
     937             : 
     938             : // ===================================================================
     939             : 
     940             : #ifndef _MSC_VER
     941             : const int FindThreatMatchesRequest::kClientFieldNumber;
     942             : const int FindThreatMatchesRequest::kThreatInfoFieldNumber;
     943             : #endif  // !_MSC_VER
     944             : 
     945           3 : FindThreatMatchesRequest::FindThreatMatchesRequest()
     946           3 :   : ::google::protobuf::MessageLite() {
     947           3 :   SharedCtor();
     948             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.FindThreatMatchesRequest)
     949           3 : }
     950             : 
     951           3 : void FindThreatMatchesRequest::InitAsDefaultInstance() {
     952             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     953             :   client_ = const_cast< ::mozilla::safebrowsing::ClientInfo*>(
     954             :       ::mozilla::safebrowsing::ClientInfo::internal_default_instance());
     955             : #else
     956           3 :   client_ = const_cast< ::mozilla::safebrowsing::ClientInfo*>(&::mozilla::safebrowsing::ClientInfo::default_instance());
     957             : #endif
     958             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     959             :   threat_info_ = const_cast< ::mozilla::safebrowsing::ThreatInfo*>(
     960             :       ::mozilla::safebrowsing::ThreatInfo::internal_default_instance());
     961             : #else
     962           3 :   threat_info_ = const_cast< ::mozilla::safebrowsing::ThreatInfo*>(&::mozilla::safebrowsing::ThreatInfo::default_instance());
     963             : #endif
     964           3 : }
     965             : 
     966           0 : FindThreatMatchesRequest::FindThreatMatchesRequest(const FindThreatMatchesRequest& from)
     967           0 :   : ::google::protobuf::MessageLite() {
     968           0 :   SharedCtor();
     969           0 :   MergeFrom(from);
     970             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.FindThreatMatchesRequest)
     971           0 : }
     972             : 
     973           3 : void FindThreatMatchesRequest::SharedCtor() {
     974           3 :   _cached_size_ = 0;
     975           3 :   client_ = NULL;
     976           3 :   threat_info_ = NULL;
     977           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
     978           3 : }
     979             : 
     980           0 : FindThreatMatchesRequest::~FindThreatMatchesRequest() {
     981             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.FindThreatMatchesRequest)
     982           0 :   SharedDtor();
     983           0 : }
     984             : 
     985           0 : void FindThreatMatchesRequest::SharedDtor() {
     986             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
     987             :   if (this != &default_instance()) {
     988             :   #else
     989           0 :   if (this != default_instance_) {
     990             :   #endif
     991           0 :     delete client_;
     992           0 :     delete threat_info_;
     993             :   }
     994           0 : }
     995             : 
     996           0 : void FindThreatMatchesRequest::SetCachedSize(int size) const {
     997             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
     998           0 :   _cached_size_ = size;
     999             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    1000           0 : }
    1001           0 : const FindThreatMatchesRequest& FindThreatMatchesRequest::default_instance() {
    1002             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    1003             :   protobuf_AddDesc_safebrowsing_2eproto();
    1004             : #else
    1005           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    1006             : #endif
    1007           0 :   return *default_instance_;
    1008             : }
    1009             : 
    1010             : FindThreatMatchesRequest* FindThreatMatchesRequest::default_instance_ = NULL;
    1011             : 
    1012           0 : FindThreatMatchesRequest* FindThreatMatchesRequest::New() const {
    1013           0 :   return new FindThreatMatchesRequest;
    1014             : }
    1015             : 
    1016           0 : void FindThreatMatchesRequest::Clear() {
    1017           0 :   if (_has_bits_[0 / 32] & 3) {
    1018           0 :     if (has_client()) {
    1019           0 :       if (client_ != NULL) client_->::mozilla::safebrowsing::ClientInfo::Clear();
    1020             :     }
    1021           0 :     if (has_threat_info()) {
    1022           0 :       if (threat_info_ != NULL) threat_info_->::mozilla::safebrowsing::ThreatInfo::Clear();
    1023             :     }
    1024             :   }
    1025           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    1026           0 :   mutable_unknown_fields()->clear();
    1027           0 : }
    1028             : 
    1029           0 : bool FindThreatMatchesRequest::MergePartialFromCodedStream(
    1030             :     ::google::protobuf::io::CodedInputStream* input) {
    1031             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    1032             :   ::google::protobuf::uint32 tag;
    1033             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    1034           0 :       mutable_unknown_fields());
    1035             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    1036           0 :       &unknown_fields_string);
    1037             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.FindThreatMatchesRequest)
    1038             :   for (;;) {
    1039             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    1040           0 :     tag = p.first;
    1041           0 :     if (!p.second) goto handle_unusual;
    1042           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    1043             :       // optional .mozilla.safebrowsing.ClientInfo client = 1;
    1044             :       case 1: {
    1045           0 :         if (tag == 10) {
    1046           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    1047             :                input, mutable_client()));
    1048             :         } else {
    1049           0 :           goto handle_unusual;
    1050             :         }
    1051           0 :         if (input->ExpectTag(18)) goto parse_threat_info;
    1052           0 :         break;
    1053             :       }
    1054             : 
    1055             :       // optional .mozilla.safebrowsing.ThreatInfo threat_info = 2;
    1056             :       case 2: {
    1057           0 :         if (tag == 18) {
    1058             :          parse_threat_info:
    1059           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    1060             :                input, mutable_threat_info()));
    1061             :         } else {
    1062           0 :           goto handle_unusual;
    1063             :         }
    1064           0 :         if (input->ExpectAtEnd()) goto success;
    1065           0 :         break;
    1066             :       }
    1067             : 
    1068             :       default: {
    1069             :       handle_unusual:
    1070           0 :         if (tag == 0 ||
    1071           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    1072             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    1073           0 :           goto success;
    1074             :         }
    1075           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    1076             :             input, tag, &unknown_fields_stream));
    1077           0 :         break;
    1078             :       }
    1079             :     }
    1080           0 :   }
    1081             : success:
    1082             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.FindThreatMatchesRequest)
    1083           0 :   return true;
    1084             : failure:
    1085             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.FindThreatMatchesRequest)
    1086           0 :   return false;
    1087             : #undef DO_
    1088             : }
    1089             : 
    1090           0 : void FindThreatMatchesRequest::SerializeWithCachedSizes(
    1091             :     ::google::protobuf::io::CodedOutputStream* output) const {
    1092             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.FindThreatMatchesRequest)
    1093             :   // optional .mozilla.safebrowsing.ClientInfo client = 1;
    1094           0 :   if (has_client()) {
    1095           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    1096           0 :       1, this->client(), output);
    1097             :   }
    1098             : 
    1099             :   // optional .mozilla.safebrowsing.ThreatInfo threat_info = 2;
    1100           0 :   if (has_threat_info()) {
    1101           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    1102           0 :       2, this->threat_info(), output);
    1103             :   }
    1104             : 
    1105           0 :   output->WriteRaw(unknown_fields().data(),
    1106           0 :                    unknown_fields().size());
    1107             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.FindThreatMatchesRequest)
    1108           0 : }
    1109             : 
    1110           0 : int FindThreatMatchesRequest::ByteSize() const {
    1111           0 :   int total_size = 0;
    1112             : 
    1113           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    1114             :     // optional .mozilla.safebrowsing.ClientInfo client = 1;
    1115           0 :     if (has_client()) {
    1116           0 :       total_size += 1 +
    1117           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    1118             :           this->client());
    1119             :     }
    1120             : 
    1121             :     // optional .mozilla.safebrowsing.ThreatInfo threat_info = 2;
    1122           0 :     if (has_threat_info()) {
    1123           0 :       total_size += 1 +
    1124           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    1125             :           this->threat_info());
    1126             :     }
    1127             : 
    1128             :   }
    1129           0 :   total_size += unknown_fields().size();
    1130             : 
    1131             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    1132           0 :   _cached_size_ = total_size;
    1133             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    1134           0 :   return total_size;
    1135             : }
    1136             : 
    1137           0 : void FindThreatMatchesRequest::CheckTypeAndMergeFrom(
    1138             :     const ::google::protobuf::MessageLite& from) {
    1139           0 :   MergeFrom(*::google::protobuf::down_cast<const FindThreatMatchesRequest*>(&from));
    1140           0 : }
    1141             : 
    1142           0 : void FindThreatMatchesRequest::MergeFrom(const FindThreatMatchesRequest& from) {
    1143           0 :   GOOGLE_CHECK_NE(&from, this);
    1144           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    1145           0 :     if (from.has_client()) {
    1146           0 :       mutable_client()->::mozilla::safebrowsing::ClientInfo::MergeFrom(from.client());
    1147             :     }
    1148           0 :     if (from.has_threat_info()) {
    1149           0 :       mutable_threat_info()->::mozilla::safebrowsing::ThreatInfo::MergeFrom(from.threat_info());
    1150             :     }
    1151             :   }
    1152           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    1153           0 : }
    1154             : 
    1155           0 : void FindThreatMatchesRequest::CopyFrom(const FindThreatMatchesRequest& from) {
    1156           0 :   if (&from == this) return;
    1157           0 :   Clear();
    1158           0 :   MergeFrom(from);
    1159             : }
    1160             : 
    1161           0 : bool FindThreatMatchesRequest::IsInitialized() const {
    1162             : 
    1163           0 :   return true;
    1164             : }
    1165             : 
    1166           0 : void FindThreatMatchesRequest::Swap(FindThreatMatchesRequest* other) {
    1167           0 :   if (other != this) {
    1168           0 :     std::swap(client_, other->client_);
    1169           0 :     std::swap(threat_info_, other->threat_info_);
    1170           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    1171           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    1172           0 :     std::swap(_cached_size_, other->_cached_size_);
    1173             :   }
    1174           0 : }
    1175             : 
    1176           0 : ::std::string FindThreatMatchesRequest::GetTypeName() const {
    1177           0 :   return "mozilla.safebrowsing.FindThreatMatchesRequest";
    1178             : }
    1179             : 
    1180             : 
    1181             : // ===================================================================
    1182             : 
    1183             : #ifndef _MSC_VER
    1184             : const int FindThreatMatchesResponse::kMatchesFieldNumber;
    1185             : #endif  // !_MSC_VER
    1186             : 
    1187           3 : FindThreatMatchesResponse::FindThreatMatchesResponse()
    1188           3 :   : ::google::protobuf::MessageLite() {
    1189           3 :   SharedCtor();
    1190             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.FindThreatMatchesResponse)
    1191           3 : }
    1192             : 
    1193           3 : void FindThreatMatchesResponse::InitAsDefaultInstance() {
    1194           3 : }
    1195             : 
    1196           0 : FindThreatMatchesResponse::FindThreatMatchesResponse(const FindThreatMatchesResponse& from)
    1197           0 :   : ::google::protobuf::MessageLite() {
    1198           0 :   SharedCtor();
    1199           0 :   MergeFrom(from);
    1200             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.FindThreatMatchesResponse)
    1201           0 : }
    1202             : 
    1203           3 : void FindThreatMatchesResponse::SharedCtor() {
    1204           3 :   _cached_size_ = 0;
    1205           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    1206           3 : }
    1207             : 
    1208           0 : FindThreatMatchesResponse::~FindThreatMatchesResponse() {
    1209             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.FindThreatMatchesResponse)
    1210           0 :   SharedDtor();
    1211           0 : }
    1212             : 
    1213           0 : void FindThreatMatchesResponse::SharedDtor() {
    1214             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    1215             :   if (this != &default_instance()) {
    1216             :   #else
    1217           0 :   if (this != default_instance_) {
    1218             :   #endif
    1219             :   }
    1220           0 : }
    1221             : 
    1222           0 : void FindThreatMatchesResponse::SetCachedSize(int size) const {
    1223             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    1224           0 :   _cached_size_ = size;
    1225             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    1226           0 : }
    1227           0 : const FindThreatMatchesResponse& FindThreatMatchesResponse::default_instance() {
    1228             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    1229             :   protobuf_AddDesc_safebrowsing_2eproto();
    1230             : #else
    1231           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    1232             : #endif
    1233           0 :   return *default_instance_;
    1234             : }
    1235             : 
    1236             : FindThreatMatchesResponse* FindThreatMatchesResponse::default_instance_ = NULL;
    1237             : 
    1238           0 : FindThreatMatchesResponse* FindThreatMatchesResponse::New() const {
    1239           0 :   return new FindThreatMatchesResponse;
    1240             : }
    1241             : 
    1242           0 : void FindThreatMatchesResponse::Clear() {
    1243           0 :   matches_.Clear();
    1244           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    1245           0 :   mutable_unknown_fields()->clear();
    1246           0 : }
    1247             : 
    1248           0 : bool FindThreatMatchesResponse::MergePartialFromCodedStream(
    1249             :     ::google::protobuf::io::CodedInputStream* input) {
    1250             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    1251             :   ::google::protobuf::uint32 tag;
    1252             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    1253           0 :       mutable_unknown_fields());
    1254             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    1255           0 :       &unknown_fields_string);
    1256             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.FindThreatMatchesResponse)
    1257             :   for (;;) {
    1258             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    1259           0 :     tag = p.first;
    1260           0 :     if (!p.second) goto handle_unusual;
    1261           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    1262             :       // repeated .mozilla.safebrowsing.ThreatMatch matches = 1;
    1263             :       case 1: {
    1264           0 :         if (tag == 10) {
    1265             :          parse_matches:
    1266           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    1267             :                 input, add_matches()));
    1268             :         } else {
    1269           0 :           goto handle_unusual;
    1270             :         }
    1271           0 :         if (input->ExpectTag(10)) goto parse_matches;
    1272           0 :         if (input->ExpectAtEnd()) goto success;
    1273           0 :         break;
    1274             :       }
    1275             : 
    1276             :       default: {
    1277             :       handle_unusual:
    1278           0 :         if (tag == 0 ||
    1279           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    1280             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    1281           0 :           goto success;
    1282             :         }
    1283           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    1284             :             input, tag, &unknown_fields_stream));
    1285           0 :         break;
    1286             :       }
    1287             :     }
    1288           0 :   }
    1289             : success:
    1290             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.FindThreatMatchesResponse)
    1291           0 :   return true;
    1292             : failure:
    1293             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.FindThreatMatchesResponse)
    1294           0 :   return false;
    1295             : #undef DO_
    1296             : }
    1297             : 
    1298           0 : void FindThreatMatchesResponse::SerializeWithCachedSizes(
    1299             :     ::google::protobuf::io::CodedOutputStream* output) const {
    1300             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.FindThreatMatchesResponse)
    1301             :   // repeated .mozilla.safebrowsing.ThreatMatch matches = 1;
    1302           0 :   for (int i = 0; i < this->matches_size(); i++) {
    1303           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    1304           0 :       1, this->matches(i), output);
    1305             :   }
    1306             : 
    1307           0 :   output->WriteRaw(unknown_fields().data(),
    1308           0 :                    unknown_fields().size());
    1309             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.FindThreatMatchesResponse)
    1310           0 : }
    1311             : 
    1312           0 : int FindThreatMatchesResponse::ByteSize() const {
    1313           0 :   int total_size = 0;
    1314             : 
    1315             :   // repeated .mozilla.safebrowsing.ThreatMatch matches = 1;
    1316           0 :   total_size += 1 * this->matches_size();
    1317           0 :   for (int i = 0; i < this->matches_size(); i++) {
    1318           0 :     total_size +=
    1319           0 :       ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    1320             :         this->matches(i));
    1321             :   }
    1322             : 
    1323           0 :   total_size += unknown_fields().size();
    1324             : 
    1325             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    1326           0 :   _cached_size_ = total_size;
    1327             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    1328           0 :   return total_size;
    1329             : }
    1330             : 
    1331           0 : void FindThreatMatchesResponse::CheckTypeAndMergeFrom(
    1332             :     const ::google::protobuf::MessageLite& from) {
    1333           0 :   MergeFrom(*::google::protobuf::down_cast<const FindThreatMatchesResponse*>(&from));
    1334           0 : }
    1335             : 
    1336           0 : void FindThreatMatchesResponse::MergeFrom(const FindThreatMatchesResponse& from) {
    1337           0 :   GOOGLE_CHECK_NE(&from, this);
    1338           0 :   matches_.MergeFrom(from.matches_);
    1339           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    1340           0 : }
    1341             : 
    1342           0 : void FindThreatMatchesResponse::CopyFrom(const FindThreatMatchesResponse& from) {
    1343           0 :   if (&from == this) return;
    1344           0 :   Clear();
    1345           0 :   MergeFrom(from);
    1346             : }
    1347             : 
    1348           0 : bool FindThreatMatchesResponse::IsInitialized() const {
    1349             : 
    1350           0 :   return true;
    1351             : }
    1352             : 
    1353           0 : void FindThreatMatchesResponse::Swap(FindThreatMatchesResponse* other) {
    1354           0 :   if (other != this) {
    1355           0 :     matches_.Swap(&other->matches_);
    1356           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    1357           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    1358           0 :     std::swap(_cached_size_, other->_cached_size_);
    1359             :   }
    1360           0 : }
    1361             : 
    1362           0 : ::std::string FindThreatMatchesResponse::GetTypeName() const {
    1363           0 :   return "mozilla.safebrowsing.FindThreatMatchesResponse";
    1364             : }
    1365             : 
    1366             : 
    1367             : // ===================================================================
    1368             : 
    1369             : #ifndef _MSC_VER
    1370             : const int FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::kMaxUpdateEntriesFieldNumber;
    1371             : const int FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::kMaxDatabaseEntriesFieldNumber;
    1372             : const int FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::kRegionFieldNumber;
    1373             : const int FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::kSupportedCompressionsFieldNumber;
    1374             : #endif  // !_MSC_VER
    1375             : 
    1376           3 : FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints()
    1377           3 :   : ::google::protobuf::MessageLite() {
    1378           3 :   SharedCtor();
    1379             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints)
    1380           3 : }
    1381             : 
    1382           3 : void FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::InitAsDefaultInstance() {
    1383           3 : }
    1384             : 
    1385           0 : FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints(const FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints& from)
    1386           0 :   : ::google::protobuf::MessageLite() {
    1387           0 :   SharedCtor();
    1388           0 :   MergeFrom(from);
    1389             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints)
    1390           0 : }
    1391             : 
    1392           3 : void FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::SharedCtor() {
    1393           3 :   ::google::protobuf::internal::GetEmptyString();
    1394           3 :   _cached_size_ = 0;
    1395           3 :   max_update_entries_ = 0;
    1396           3 :   max_database_entries_ = 0;
    1397           3 :   region_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    1398           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    1399           3 : }
    1400             : 
    1401           0 : FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::~FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints() {
    1402             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints)
    1403           0 :   SharedDtor();
    1404           0 : }
    1405             : 
    1406           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::SharedDtor() {
    1407           0 :   if (region_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    1408           0 :     delete region_;
    1409             :   }
    1410             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    1411             :   if (this != &default_instance()) {
    1412             :   #else
    1413           0 :   if (this != default_instance_) {
    1414             :   #endif
    1415             :   }
    1416           0 : }
    1417             : 
    1418           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::SetCachedSize(int size) const {
    1419             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    1420           0 :   _cached_size_ = size;
    1421             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    1422           0 : }
    1423           3 : const FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints& FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::default_instance() {
    1424             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    1425             :   protobuf_AddDesc_safebrowsing_2eproto();
    1426             : #else
    1427           3 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    1428             : #endif
    1429           3 :   return *default_instance_;
    1430             : }
    1431             : 
    1432             : FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints* FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::default_instance_ = NULL;
    1433             : 
    1434           0 : FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints* FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::New() const {
    1435           0 :   return new FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints;
    1436             : }
    1437             : 
    1438           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::Clear() {
    1439             : #define OFFSET_OF_FIELD_(f) (reinterpret_cast<char*>(      \
    1440             :   &reinterpret_cast<FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints*>(16)->f) - \
    1441             :    reinterpret_cast<char*>(16))
    1442             : 
    1443             : #define ZR_(first, last) do {                              \
    1444             :     size_t f = OFFSET_OF_FIELD_(first);                    \
    1445             :     size_t n = OFFSET_OF_FIELD_(last) - f + sizeof(last);  \
    1446             :     ::memset(&first, 0, n);                                \
    1447             :   } while (0)
    1448             : 
    1449           0 :   if (_has_bits_[0 / 32] & 7) {
    1450           0 :     ZR_(max_update_entries_, max_database_entries_);
    1451           0 :     if (has_region()) {
    1452           0 :       if (region_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    1453           0 :         region_->clear();
    1454             :       }
    1455             :     }
    1456             :   }
    1457             : 
    1458             : #undef OFFSET_OF_FIELD_
    1459             : #undef ZR_
    1460             : 
    1461           0 :   supported_compressions_.Clear();
    1462           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    1463           0 :   mutable_unknown_fields()->clear();
    1464           0 : }
    1465             : 
    1466           0 : bool FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::MergePartialFromCodedStream(
    1467             :     ::google::protobuf::io::CodedInputStream* input) {
    1468             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    1469             :   ::google::protobuf::uint32 tag;
    1470             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    1471           0 :       mutable_unknown_fields());
    1472             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    1473           0 :       &unknown_fields_string);
    1474             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints)
    1475             :   for (;;) {
    1476             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    1477           0 :     tag = p.first;
    1478           0 :     if (!p.second) goto handle_unusual;
    1479           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    1480             :       // optional int32 max_update_entries = 1;
    1481             :       case 1: {
    1482           0 :         if (tag == 8) {
    1483           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    1484             :                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
    1485             :                  input, &max_update_entries_)));
    1486           0 :           set_has_max_update_entries();
    1487             :         } else {
    1488           0 :           goto handle_unusual;
    1489             :         }
    1490           0 :         if (input->ExpectTag(16)) goto parse_max_database_entries;
    1491           0 :         break;
    1492             :       }
    1493             : 
    1494             :       // optional int32 max_database_entries = 2;
    1495             :       case 2: {
    1496           0 :         if (tag == 16) {
    1497             :          parse_max_database_entries:
    1498           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    1499             :                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
    1500             :                  input, &max_database_entries_)));
    1501           0 :           set_has_max_database_entries();
    1502             :         } else {
    1503           0 :           goto handle_unusual;
    1504             :         }
    1505           0 :         if (input->ExpectTag(26)) goto parse_region;
    1506           0 :         break;
    1507             :       }
    1508             : 
    1509             :       // optional string region = 3;
    1510             :       case 3: {
    1511           0 :         if (tag == 26) {
    1512             :          parse_region:
    1513           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
    1514             :                 input, this->mutable_region()));
    1515             :         } else {
    1516           0 :           goto handle_unusual;
    1517             :         }
    1518           0 :         if (input->ExpectTag(32)) goto parse_supported_compressions;
    1519           0 :         break;
    1520             :       }
    1521             : 
    1522             :       // repeated .mozilla.safebrowsing.CompressionType supported_compressions = 4;
    1523             :       case 4: {
    1524           0 :         if (tag == 32) {
    1525             :          parse_supported_compressions:
    1526             :           int value;
    1527           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    1528             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    1529             :                  input, &value)));
    1530           0 :           if (::mozilla::safebrowsing::CompressionType_IsValid(value)) {
    1531           0 :             add_supported_compressions(static_cast< ::mozilla::safebrowsing::CompressionType >(value));
    1532             :           } else {
    1533           0 :             unknown_fields_stream.WriteVarint32(tag);
    1534           0 :             unknown_fields_stream.WriteVarint32(value);
    1535             :           }
    1536           0 :         } else if (tag == 34) {
    1537           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
    1538             :                  input,
    1539             :                  &::mozilla::safebrowsing::CompressionType_IsValid,
    1540             :                  this->mutable_supported_compressions())));
    1541             :         } else {
    1542           0 :           goto handle_unusual;
    1543             :         }
    1544           0 :         if (input->ExpectTag(32)) goto parse_supported_compressions;
    1545           0 :         if (input->ExpectAtEnd()) goto success;
    1546           0 :         break;
    1547             :       }
    1548             : 
    1549             :       default: {
    1550             :       handle_unusual:
    1551           0 :         if (tag == 0 ||
    1552           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    1553             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    1554           0 :           goto success;
    1555             :         }
    1556           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    1557             :             input, tag, &unknown_fields_stream));
    1558           0 :         break;
    1559             :       }
    1560             :     }
    1561           0 :   }
    1562             : success:
    1563             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints)
    1564           0 :   return true;
    1565             : failure:
    1566             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints)
    1567           0 :   return false;
    1568             : #undef DO_
    1569             : }
    1570             : 
    1571           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::SerializeWithCachedSizes(
    1572             :     ::google::protobuf::io::CodedOutputStream* output) const {
    1573             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints)
    1574             :   // optional int32 max_update_entries = 1;
    1575           0 :   if (has_max_update_entries()) {
    1576           0 :     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->max_update_entries(), output);
    1577             :   }
    1578             : 
    1579             :   // optional int32 max_database_entries = 2;
    1580           0 :   if (has_max_database_entries()) {
    1581           0 :     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->max_database_entries(), output);
    1582             :   }
    1583             : 
    1584             :   // optional string region = 3;
    1585           0 :   if (has_region()) {
    1586           0 :     ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
    1587           0 :       3, this->region(), output);
    1588             :   }
    1589             : 
    1590             :   // repeated .mozilla.safebrowsing.CompressionType supported_compressions = 4;
    1591           0 :   for (int i = 0; i < this->supported_compressions_size(); i++) {
    1592           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    1593           0 :       4, this->supported_compressions(i), output);
    1594             :   }
    1595             : 
    1596           0 :   output->WriteRaw(unknown_fields().data(),
    1597           0 :                    unknown_fields().size());
    1598             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints)
    1599           0 : }
    1600             : 
    1601           0 : int FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::ByteSize() const {
    1602           0 :   int total_size = 0;
    1603             : 
    1604           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    1605             :     // optional int32 max_update_entries = 1;
    1606           0 :     if (has_max_update_entries()) {
    1607           0 :       total_size += 1 +
    1608           0 :         ::google::protobuf::internal::WireFormatLite::Int32Size(
    1609             :           this->max_update_entries());
    1610             :     }
    1611             : 
    1612             :     // optional int32 max_database_entries = 2;
    1613           0 :     if (has_max_database_entries()) {
    1614           0 :       total_size += 1 +
    1615           0 :         ::google::protobuf::internal::WireFormatLite::Int32Size(
    1616             :           this->max_database_entries());
    1617             :     }
    1618             : 
    1619             :     // optional string region = 3;
    1620           0 :     if (has_region()) {
    1621           0 :       total_size += 1 +
    1622           0 :         ::google::protobuf::internal::WireFormatLite::StringSize(
    1623             :           this->region());
    1624             :     }
    1625             : 
    1626             :   }
    1627             :   // repeated .mozilla.safebrowsing.CompressionType supported_compressions = 4;
    1628             :   {
    1629           0 :     int data_size = 0;
    1630           0 :     for (int i = 0; i < this->supported_compressions_size(); i++) {
    1631           0 :       data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
    1632           0 :         this->supported_compressions(i));
    1633             :     }
    1634           0 :     total_size += 1 * this->supported_compressions_size() + data_size;
    1635             :   }
    1636             : 
    1637           0 :   total_size += unknown_fields().size();
    1638             : 
    1639             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    1640           0 :   _cached_size_ = total_size;
    1641             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    1642           0 :   return total_size;
    1643             : }
    1644             : 
    1645           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::CheckTypeAndMergeFrom(
    1646             :     const ::google::protobuf::MessageLite& from) {
    1647           0 :   MergeFrom(*::google::protobuf::down_cast<const FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints*>(&from));
    1648           0 : }
    1649             : 
    1650           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::MergeFrom(const FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints& from) {
    1651           0 :   GOOGLE_CHECK_NE(&from, this);
    1652           0 :   supported_compressions_.MergeFrom(from.supported_compressions_);
    1653           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    1654           0 :     if (from.has_max_update_entries()) {
    1655           0 :       set_max_update_entries(from.max_update_entries());
    1656             :     }
    1657           0 :     if (from.has_max_database_entries()) {
    1658           0 :       set_max_database_entries(from.max_database_entries());
    1659             :     }
    1660           0 :     if (from.has_region()) {
    1661           0 :       set_region(from.region());
    1662             :     }
    1663             :   }
    1664           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    1665           0 : }
    1666             : 
    1667           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::CopyFrom(const FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints& from) {
    1668           0 :   if (&from == this) return;
    1669           0 :   Clear();
    1670           0 :   MergeFrom(from);
    1671             : }
    1672             : 
    1673           0 : bool FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::IsInitialized() const {
    1674             : 
    1675           0 :   return true;
    1676             : }
    1677             : 
    1678           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::Swap(FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints* other) {
    1679           0 :   if (other != this) {
    1680           0 :     std::swap(max_update_entries_, other->max_update_entries_);
    1681           0 :     std::swap(max_database_entries_, other->max_database_entries_);
    1682           0 :     std::swap(region_, other->region_);
    1683           0 :     supported_compressions_.Swap(&other->supported_compressions_);
    1684           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    1685           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    1686           0 :     std::swap(_cached_size_, other->_cached_size_);
    1687             :   }
    1688           0 : }
    1689             : 
    1690           0 : ::std::string FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::GetTypeName() const {
    1691           0 :   return "mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints";
    1692             : }
    1693             : 
    1694             : 
    1695             : // -------------------------------------------------------------------
    1696             : 
    1697             : #ifndef _MSC_VER
    1698             : const int FetchThreatListUpdatesRequest_ListUpdateRequest::kThreatTypeFieldNumber;
    1699             : const int FetchThreatListUpdatesRequest_ListUpdateRequest::kPlatformTypeFieldNumber;
    1700             : const int FetchThreatListUpdatesRequest_ListUpdateRequest::kThreatEntryTypeFieldNumber;
    1701             : const int FetchThreatListUpdatesRequest_ListUpdateRequest::kStateFieldNumber;
    1702             : const int FetchThreatListUpdatesRequest_ListUpdateRequest::kConstraintsFieldNumber;
    1703             : #endif  // !_MSC_VER
    1704             : 
    1705           3 : FetchThreatListUpdatesRequest_ListUpdateRequest::FetchThreatListUpdatesRequest_ListUpdateRequest()
    1706           3 :   : ::google::protobuf::MessageLite() {
    1707           3 :   SharedCtor();
    1708             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest)
    1709           3 : }
    1710             : 
    1711           3 : void FetchThreatListUpdatesRequest_ListUpdateRequest::InitAsDefaultInstance() {
    1712             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    1713             :   constraints_ = const_cast< ::mozilla::safebrowsing::FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints*>(
    1714             :       ::mozilla::safebrowsing::FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::internal_default_instance());
    1715             : #else
    1716           3 :   constraints_ = const_cast< ::mozilla::safebrowsing::FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints*>(&::mozilla::safebrowsing::FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::default_instance());
    1717             : #endif
    1718           3 : }
    1719             : 
    1720           0 : FetchThreatListUpdatesRequest_ListUpdateRequest::FetchThreatListUpdatesRequest_ListUpdateRequest(const FetchThreatListUpdatesRequest_ListUpdateRequest& from)
    1721           0 :   : ::google::protobuf::MessageLite() {
    1722           0 :   SharedCtor();
    1723           0 :   MergeFrom(from);
    1724             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest)
    1725           0 : }
    1726             : 
    1727           3 : void FetchThreatListUpdatesRequest_ListUpdateRequest::SharedCtor() {
    1728           3 :   ::google::protobuf::internal::GetEmptyString();
    1729           3 :   _cached_size_ = 0;
    1730           3 :   threat_type_ = 0;
    1731           3 :   platform_type_ = 0;
    1732           3 :   threat_entry_type_ = 0;
    1733           3 :   state_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    1734           3 :   constraints_ = NULL;
    1735           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    1736           3 : }
    1737             : 
    1738           0 : FetchThreatListUpdatesRequest_ListUpdateRequest::~FetchThreatListUpdatesRequest_ListUpdateRequest() {
    1739             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest)
    1740           0 :   SharedDtor();
    1741           0 : }
    1742             : 
    1743           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest::SharedDtor() {
    1744           0 :   if (state_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    1745           0 :     delete state_;
    1746             :   }
    1747             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    1748             :   if (this != &default_instance()) {
    1749             :   #else
    1750           0 :   if (this != default_instance_) {
    1751             :   #endif
    1752           0 :     delete constraints_;
    1753             :   }
    1754           0 : }
    1755             : 
    1756           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest::SetCachedSize(int size) const {
    1757             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    1758           0 :   _cached_size_ = size;
    1759             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    1760           0 : }
    1761           0 : const FetchThreatListUpdatesRequest_ListUpdateRequest& FetchThreatListUpdatesRequest_ListUpdateRequest::default_instance() {
    1762             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    1763             :   protobuf_AddDesc_safebrowsing_2eproto();
    1764             : #else
    1765           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    1766             : #endif
    1767           0 :   return *default_instance_;
    1768             : }
    1769             : 
    1770             : FetchThreatListUpdatesRequest_ListUpdateRequest* FetchThreatListUpdatesRequest_ListUpdateRequest::default_instance_ = NULL;
    1771             : 
    1772           0 : FetchThreatListUpdatesRequest_ListUpdateRequest* FetchThreatListUpdatesRequest_ListUpdateRequest::New() const {
    1773           0 :   return new FetchThreatListUpdatesRequest_ListUpdateRequest;
    1774             : }
    1775             : 
    1776           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest::Clear() {
    1777             : #define OFFSET_OF_FIELD_(f) (reinterpret_cast<char*>(      \
    1778             :   &reinterpret_cast<FetchThreatListUpdatesRequest_ListUpdateRequest*>(16)->f) - \
    1779             :    reinterpret_cast<char*>(16))
    1780             : 
    1781             : #define ZR_(first, last) do {                              \
    1782             :     size_t f = OFFSET_OF_FIELD_(first);                    \
    1783             :     size_t n = OFFSET_OF_FIELD_(last) - f + sizeof(last);  \
    1784             :     ::memset(&first, 0, n);                                \
    1785             :   } while (0)
    1786             : 
    1787           0 :   if (_has_bits_[0 / 32] & 31) {
    1788           0 :     ZR_(threat_type_, platform_type_);
    1789           0 :     threat_entry_type_ = 0;
    1790           0 :     if (has_state()) {
    1791           0 :       if (state_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    1792           0 :         state_->clear();
    1793             :       }
    1794             :     }
    1795           0 :     if (has_constraints()) {
    1796           0 :       if (constraints_ != NULL) constraints_->::mozilla::safebrowsing::FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::Clear();
    1797             :     }
    1798             :   }
    1799             : 
    1800             : #undef OFFSET_OF_FIELD_
    1801             : #undef ZR_
    1802             : 
    1803           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    1804           0 :   mutable_unknown_fields()->clear();
    1805           0 : }
    1806             : 
    1807           0 : bool FetchThreatListUpdatesRequest_ListUpdateRequest::MergePartialFromCodedStream(
    1808             :     ::google::protobuf::io::CodedInputStream* input) {
    1809             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    1810             :   ::google::protobuf::uint32 tag;
    1811             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    1812           0 :       mutable_unknown_fields());
    1813             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    1814           0 :       &unknown_fields_string);
    1815             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest)
    1816             :   for (;;) {
    1817             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    1818           0 :     tag = p.first;
    1819           0 :     if (!p.second) goto handle_unusual;
    1820           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    1821             :       // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    1822             :       case 1: {
    1823           0 :         if (tag == 8) {
    1824             :           int value;
    1825           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    1826             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    1827             :                  input, &value)));
    1828           0 :           if (::mozilla::safebrowsing::ThreatType_IsValid(value)) {
    1829           0 :             set_threat_type(static_cast< ::mozilla::safebrowsing::ThreatType >(value));
    1830             :           } else {
    1831           0 :             unknown_fields_stream.WriteVarint32(tag);
    1832           0 :             unknown_fields_stream.WriteVarint32(value);
    1833             :           }
    1834             :         } else {
    1835           0 :           goto handle_unusual;
    1836             :         }
    1837           0 :         if (input->ExpectTag(16)) goto parse_platform_type;
    1838           0 :         break;
    1839             :       }
    1840             : 
    1841             :       // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
    1842             :       case 2: {
    1843           0 :         if (tag == 16) {
    1844             :          parse_platform_type:
    1845             :           int value;
    1846           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    1847             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    1848             :                  input, &value)));
    1849           0 :           if (::mozilla::safebrowsing::PlatformType_IsValid(value)) {
    1850           0 :             set_platform_type(static_cast< ::mozilla::safebrowsing::PlatformType >(value));
    1851             :           } else {
    1852           0 :             unknown_fields_stream.WriteVarint32(tag);
    1853           0 :             unknown_fields_stream.WriteVarint32(value);
    1854             :           }
    1855             :         } else {
    1856           0 :           goto handle_unusual;
    1857             :         }
    1858           0 :         if (input->ExpectTag(26)) goto parse_state;
    1859           0 :         break;
    1860             :       }
    1861             : 
    1862             :       // optional bytes state = 3;
    1863             :       case 3: {
    1864           0 :         if (tag == 26) {
    1865             :          parse_state:
    1866           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
    1867             :                 input, this->mutable_state()));
    1868             :         } else {
    1869           0 :           goto handle_unusual;
    1870             :         }
    1871           0 :         if (input->ExpectTag(34)) goto parse_constraints;
    1872           0 :         break;
    1873             :       }
    1874             : 
    1875             :       // optional .mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints constraints = 4;
    1876             :       case 4: {
    1877           0 :         if (tag == 34) {
    1878             :          parse_constraints:
    1879           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    1880             :                input, mutable_constraints()));
    1881             :         } else {
    1882           0 :           goto handle_unusual;
    1883             :         }
    1884           0 :         if (input->ExpectTag(40)) goto parse_threat_entry_type;
    1885           0 :         break;
    1886             :       }
    1887             : 
    1888             :       // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 5;
    1889             :       case 5: {
    1890           0 :         if (tag == 40) {
    1891             :          parse_threat_entry_type:
    1892             :           int value;
    1893           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    1894             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    1895             :                  input, &value)));
    1896           0 :           if (::mozilla::safebrowsing::ThreatEntryType_IsValid(value)) {
    1897           0 :             set_threat_entry_type(static_cast< ::mozilla::safebrowsing::ThreatEntryType >(value));
    1898             :           } else {
    1899           0 :             unknown_fields_stream.WriteVarint32(tag);
    1900           0 :             unknown_fields_stream.WriteVarint32(value);
    1901             :           }
    1902             :         } else {
    1903           0 :           goto handle_unusual;
    1904             :         }
    1905           0 :         if (input->ExpectAtEnd()) goto success;
    1906           0 :         break;
    1907             :       }
    1908             : 
    1909             :       default: {
    1910             :       handle_unusual:
    1911           0 :         if (tag == 0 ||
    1912           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    1913             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    1914           0 :           goto success;
    1915             :         }
    1916           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    1917             :             input, tag, &unknown_fields_stream));
    1918           0 :         break;
    1919             :       }
    1920             :     }
    1921           0 :   }
    1922             : success:
    1923             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest)
    1924           0 :   return true;
    1925             : failure:
    1926             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest)
    1927           0 :   return false;
    1928             : #undef DO_
    1929             : }
    1930             : 
    1931           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest::SerializeWithCachedSizes(
    1932             :     ::google::protobuf::io::CodedOutputStream* output) const {
    1933             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest)
    1934             :   // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    1935           0 :   if (has_threat_type()) {
    1936           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    1937           0 :       1, this->threat_type(), output);
    1938             :   }
    1939             : 
    1940             :   // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
    1941           0 :   if (has_platform_type()) {
    1942           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    1943           0 :       2, this->platform_type(), output);
    1944             :   }
    1945             : 
    1946             :   // optional bytes state = 3;
    1947           0 :   if (has_state()) {
    1948           0 :     ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
    1949           0 :       3, this->state(), output);
    1950             :   }
    1951             : 
    1952             :   // optional .mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints constraints = 4;
    1953           0 :   if (has_constraints()) {
    1954           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    1955           0 :       4, this->constraints(), output);
    1956             :   }
    1957             : 
    1958             :   // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 5;
    1959           0 :   if (has_threat_entry_type()) {
    1960           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    1961           0 :       5, this->threat_entry_type(), output);
    1962             :   }
    1963             : 
    1964           0 :   output->WriteRaw(unknown_fields().data(),
    1965           0 :                    unknown_fields().size());
    1966             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest)
    1967           0 : }
    1968             : 
    1969           0 : int FetchThreatListUpdatesRequest_ListUpdateRequest::ByteSize() const {
    1970           0 :   int total_size = 0;
    1971             : 
    1972           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    1973             :     // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    1974           0 :     if (has_threat_type()) {
    1975           0 :       total_size += 1 +
    1976           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->threat_type());
    1977             :     }
    1978             : 
    1979             :     // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
    1980           0 :     if (has_platform_type()) {
    1981           0 :       total_size += 1 +
    1982           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->platform_type());
    1983             :     }
    1984             : 
    1985             :     // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 5;
    1986           0 :     if (has_threat_entry_type()) {
    1987           0 :       total_size += 1 +
    1988           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->threat_entry_type());
    1989             :     }
    1990             : 
    1991             :     // optional bytes state = 3;
    1992           0 :     if (has_state()) {
    1993           0 :       total_size += 1 +
    1994           0 :         ::google::protobuf::internal::WireFormatLite::BytesSize(
    1995             :           this->state());
    1996             :     }
    1997             : 
    1998             :     // optional .mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest.Constraints constraints = 4;
    1999           0 :     if (has_constraints()) {
    2000           0 :       total_size += 1 +
    2001           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    2002             :           this->constraints());
    2003             :     }
    2004             : 
    2005             :   }
    2006           0 :   total_size += unknown_fields().size();
    2007             : 
    2008             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    2009           0 :   _cached_size_ = total_size;
    2010             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    2011           0 :   return total_size;
    2012             : }
    2013             : 
    2014           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest::CheckTypeAndMergeFrom(
    2015             :     const ::google::protobuf::MessageLite& from) {
    2016           0 :   MergeFrom(*::google::protobuf::down_cast<const FetchThreatListUpdatesRequest_ListUpdateRequest*>(&from));
    2017           0 : }
    2018             : 
    2019           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest::MergeFrom(const FetchThreatListUpdatesRequest_ListUpdateRequest& from) {
    2020           0 :   GOOGLE_CHECK_NE(&from, this);
    2021           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    2022           0 :     if (from.has_threat_type()) {
    2023           0 :       set_threat_type(from.threat_type());
    2024             :     }
    2025           0 :     if (from.has_platform_type()) {
    2026           0 :       set_platform_type(from.platform_type());
    2027             :     }
    2028           0 :     if (from.has_threat_entry_type()) {
    2029           0 :       set_threat_entry_type(from.threat_entry_type());
    2030             :     }
    2031           0 :     if (from.has_state()) {
    2032           0 :       set_state(from.state());
    2033             :     }
    2034           0 :     if (from.has_constraints()) {
    2035           0 :       mutable_constraints()->::mozilla::safebrowsing::FetchThreatListUpdatesRequest_ListUpdateRequest_Constraints::MergeFrom(from.constraints());
    2036             :     }
    2037             :   }
    2038           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    2039           0 : }
    2040             : 
    2041           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest::CopyFrom(const FetchThreatListUpdatesRequest_ListUpdateRequest& from) {
    2042           0 :   if (&from == this) return;
    2043           0 :   Clear();
    2044           0 :   MergeFrom(from);
    2045             : }
    2046             : 
    2047           0 : bool FetchThreatListUpdatesRequest_ListUpdateRequest::IsInitialized() const {
    2048             : 
    2049           0 :   return true;
    2050             : }
    2051             : 
    2052           0 : void FetchThreatListUpdatesRequest_ListUpdateRequest::Swap(FetchThreatListUpdatesRequest_ListUpdateRequest* other) {
    2053           0 :   if (other != this) {
    2054           0 :     std::swap(threat_type_, other->threat_type_);
    2055           0 :     std::swap(platform_type_, other->platform_type_);
    2056           0 :     std::swap(threat_entry_type_, other->threat_entry_type_);
    2057           0 :     std::swap(state_, other->state_);
    2058           0 :     std::swap(constraints_, other->constraints_);
    2059           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    2060           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    2061           0 :     std::swap(_cached_size_, other->_cached_size_);
    2062             :   }
    2063           0 : }
    2064             : 
    2065           0 : ::std::string FetchThreatListUpdatesRequest_ListUpdateRequest::GetTypeName() const {
    2066           0 :   return "mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest";
    2067             : }
    2068             : 
    2069             : 
    2070             : // -------------------------------------------------------------------
    2071             : 
    2072             : #ifndef _MSC_VER
    2073             : const int FetchThreatListUpdatesRequest::kClientFieldNumber;
    2074             : const int FetchThreatListUpdatesRequest::kListUpdateRequestsFieldNumber;
    2075             : const int FetchThreatListUpdatesRequest::kChromeClientInfoFieldNumber;
    2076             : #endif  // !_MSC_VER
    2077             : 
    2078           3 : FetchThreatListUpdatesRequest::FetchThreatListUpdatesRequest()
    2079           3 :   : ::google::protobuf::MessageLite() {
    2080           3 :   SharedCtor();
    2081             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.FetchThreatListUpdatesRequest)
    2082           3 : }
    2083             : 
    2084           3 : void FetchThreatListUpdatesRequest::InitAsDefaultInstance() {
    2085             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    2086             :   client_ = const_cast< ::mozilla::safebrowsing::ClientInfo*>(
    2087             :       ::mozilla::safebrowsing::ClientInfo::internal_default_instance());
    2088             : #else
    2089           3 :   client_ = const_cast< ::mozilla::safebrowsing::ClientInfo*>(&::mozilla::safebrowsing::ClientInfo::default_instance());
    2090             : #endif
    2091             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    2092             :   chrome_client_info_ = const_cast< ::mozilla::safebrowsing::ChromeClientInfo*>(
    2093             :       ::mozilla::safebrowsing::ChromeClientInfo::internal_default_instance());
    2094             : #else
    2095           3 :   chrome_client_info_ = const_cast< ::mozilla::safebrowsing::ChromeClientInfo*>(&::mozilla::safebrowsing::ChromeClientInfo::default_instance());
    2096             : #endif
    2097           3 : }
    2098             : 
    2099           0 : FetchThreatListUpdatesRequest::FetchThreatListUpdatesRequest(const FetchThreatListUpdatesRequest& from)
    2100           0 :   : ::google::protobuf::MessageLite() {
    2101           0 :   SharedCtor();
    2102           0 :   MergeFrom(from);
    2103             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.FetchThreatListUpdatesRequest)
    2104           0 : }
    2105             : 
    2106           3 : void FetchThreatListUpdatesRequest::SharedCtor() {
    2107           3 :   _cached_size_ = 0;
    2108           3 :   client_ = NULL;
    2109           3 :   chrome_client_info_ = NULL;
    2110           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    2111           3 : }
    2112             : 
    2113           0 : FetchThreatListUpdatesRequest::~FetchThreatListUpdatesRequest() {
    2114             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.FetchThreatListUpdatesRequest)
    2115           0 :   SharedDtor();
    2116           0 : }
    2117             : 
    2118           0 : void FetchThreatListUpdatesRequest::SharedDtor() {
    2119             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    2120             :   if (this != &default_instance()) {
    2121             :   #else
    2122           0 :   if (this != default_instance_) {
    2123             :   #endif
    2124           0 :     delete client_;
    2125           0 :     delete chrome_client_info_;
    2126             :   }
    2127           0 : }
    2128             : 
    2129           0 : void FetchThreatListUpdatesRequest::SetCachedSize(int size) const {
    2130             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    2131           0 :   _cached_size_ = size;
    2132             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    2133           0 : }
    2134           0 : const FetchThreatListUpdatesRequest& FetchThreatListUpdatesRequest::default_instance() {
    2135             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    2136             :   protobuf_AddDesc_safebrowsing_2eproto();
    2137             : #else
    2138           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    2139             : #endif
    2140           0 :   return *default_instance_;
    2141             : }
    2142             : 
    2143             : FetchThreatListUpdatesRequest* FetchThreatListUpdatesRequest::default_instance_ = NULL;
    2144             : 
    2145           0 : FetchThreatListUpdatesRequest* FetchThreatListUpdatesRequest::New() const {
    2146           0 :   return new FetchThreatListUpdatesRequest;
    2147             : }
    2148             : 
    2149           0 : void FetchThreatListUpdatesRequest::Clear() {
    2150           0 :   if (_has_bits_[0 / 32] & 5) {
    2151           0 :     if (has_client()) {
    2152           0 :       if (client_ != NULL) client_->::mozilla::safebrowsing::ClientInfo::Clear();
    2153             :     }
    2154           0 :     if (has_chrome_client_info()) {
    2155           0 :       if (chrome_client_info_ != NULL) chrome_client_info_->::mozilla::safebrowsing::ChromeClientInfo::Clear();
    2156             :     }
    2157             :   }
    2158           0 :   list_update_requests_.Clear();
    2159           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    2160           0 :   mutable_unknown_fields()->clear();
    2161           0 : }
    2162             : 
    2163           0 : bool FetchThreatListUpdatesRequest::MergePartialFromCodedStream(
    2164             :     ::google::protobuf::io::CodedInputStream* input) {
    2165             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    2166             :   ::google::protobuf::uint32 tag;
    2167             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    2168           0 :       mutable_unknown_fields());
    2169             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    2170           0 :       &unknown_fields_string);
    2171             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.FetchThreatListUpdatesRequest)
    2172             :   for (;;) {
    2173             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    2174           0 :     tag = p.first;
    2175           0 :     if (!p.second) goto handle_unusual;
    2176           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    2177             :       // optional .mozilla.safebrowsing.ClientInfo client = 1;
    2178             :       case 1: {
    2179           0 :         if (tag == 10) {
    2180           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    2181             :                input, mutable_client()));
    2182             :         } else {
    2183           0 :           goto handle_unusual;
    2184             :         }
    2185           0 :         if (input->ExpectTag(26)) goto parse_list_update_requests;
    2186           0 :         break;
    2187             :       }
    2188             : 
    2189             :       // repeated .mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest list_update_requests = 3;
    2190             :       case 3: {
    2191           0 :         if (tag == 26) {
    2192             :          parse_list_update_requests:
    2193           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    2194             :                 input, add_list_update_requests()));
    2195             :         } else {
    2196           0 :           goto handle_unusual;
    2197             :         }
    2198           0 :         if (input->ExpectTag(26)) goto parse_list_update_requests;
    2199           0 :         if (input->ExpectTag(34)) goto parse_chrome_client_info;
    2200           0 :         break;
    2201             :       }
    2202             : 
    2203             :       // optional .mozilla.safebrowsing.ChromeClientInfo chrome_client_info = 4;
    2204             :       case 4: {
    2205           0 :         if (tag == 34) {
    2206             :          parse_chrome_client_info:
    2207           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    2208             :                input, mutable_chrome_client_info()));
    2209             :         } else {
    2210           0 :           goto handle_unusual;
    2211             :         }
    2212           0 :         if (input->ExpectAtEnd()) goto success;
    2213           0 :         break;
    2214             :       }
    2215             : 
    2216             :       default: {
    2217             :       handle_unusual:
    2218           0 :         if (tag == 0 ||
    2219           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    2220             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    2221           0 :           goto success;
    2222             :         }
    2223           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    2224             :             input, tag, &unknown_fields_stream));
    2225           0 :         break;
    2226             :       }
    2227             :     }
    2228           0 :   }
    2229             : success:
    2230             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.FetchThreatListUpdatesRequest)
    2231           0 :   return true;
    2232             : failure:
    2233             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.FetchThreatListUpdatesRequest)
    2234           0 :   return false;
    2235             : #undef DO_
    2236             : }
    2237             : 
    2238           0 : void FetchThreatListUpdatesRequest::SerializeWithCachedSizes(
    2239             :     ::google::protobuf::io::CodedOutputStream* output) const {
    2240             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.FetchThreatListUpdatesRequest)
    2241             :   // optional .mozilla.safebrowsing.ClientInfo client = 1;
    2242           0 :   if (has_client()) {
    2243           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    2244           0 :       1, this->client(), output);
    2245             :   }
    2246             : 
    2247             :   // repeated .mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest list_update_requests = 3;
    2248           0 :   for (int i = 0; i < this->list_update_requests_size(); i++) {
    2249           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    2250           0 :       3, this->list_update_requests(i), output);
    2251             :   }
    2252             : 
    2253             :   // optional .mozilla.safebrowsing.ChromeClientInfo chrome_client_info = 4;
    2254           0 :   if (has_chrome_client_info()) {
    2255           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    2256           0 :       4, this->chrome_client_info(), output);
    2257             :   }
    2258             : 
    2259           0 :   output->WriteRaw(unknown_fields().data(),
    2260           0 :                    unknown_fields().size());
    2261             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.FetchThreatListUpdatesRequest)
    2262           0 : }
    2263             : 
    2264           0 : int FetchThreatListUpdatesRequest::ByteSize() const {
    2265           0 :   int total_size = 0;
    2266             : 
    2267           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    2268             :     // optional .mozilla.safebrowsing.ClientInfo client = 1;
    2269           0 :     if (has_client()) {
    2270           0 :       total_size += 1 +
    2271           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    2272             :           this->client());
    2273             :     }
    2274             : 
    2275             :     // optional .mozilla.safebrowsing.ChromeClientInfo chrome_client_info = 4;
    2276           0 :     if (has_chrome_client_info()) {
    2277           0 :       total_size += 1 +
    2278           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    2279             :           this->chrome_client_info());
    2280             :     }
    2281             : 
    2282             :   }
    2283             :   // repeated .mozilla.safebrowsing.FetchThreatListUpdatesRequest.ListUpdateRequest list_update_requests = 3;
    2284           0 :   total_size += 1 * this->list_update_requests_size();
    2285           0 :   for (int i = 0; i < this->list_update_requests_size(); i++) {
    2286           0 :     total_size +=
    2287           0 :       ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    2288             :         this->list_update_requests(i));
    2289             :   }
    2290             : 
    2291           0 :   total_size += unknown_fields().size();
    2292             : 
    2293             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    2294           0 :   _cached_size_ = total_size;
    2295             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    2296           0 :   return total_size;
    2297             : }
    2298             : 
    2299           0 : void FetchThreatListUpdatesRequest::CheckTypeAndMergeFrom(
    2300             :     const ::google::protobuf::MessageLite& from) {
    2301           0 :   MergeFrom(*::google::protobuf::down_cast<const FetchThreatListUpdatesRequest*>(&from));
    2302           0 : }
    2303             : 
    2304           0 : void FetchThreatListUpdatesRequest::MergeFrom(const FetchThreatListUpdatesRequest& from) {
    2305           0 :   GOOGLE_CHECK_NE(&from, this);
    2306           0 :   list_update_requests_.MergeFrom(from.list_update_requests_);
    2307           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    2308           0 :     if (from.has_client()) {
    2309           0 :       mutable_client()->::mozilla::safebrowsing::ClientInfo::MergeFrom(from.client());
    2310             :     }
    2311           0 :     if (from.has_chrome_client_info()) {
    2312           0 :       mutable_chrome_client_info()->::mozilla::safebrowsing::ChromeClientInfo::MergeFrom(from.chrome_client_info());
    2313             :     }
    2314             :   }
    2315           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    2316           0 : }
    2317             : 
    2318           0 : void FetchThreatListUpdatesRequest::CopyFrom(const FetchThreatListUpdatesRequest& from) {
    2319           0 :   if (&from == this) return;
    2320           0 :   Clear();
    2321           0 :   MergeFrom(from);
    2322             : }
    2323             : 
    2324           0 : bool FetchThreatListUpdatesRequest::IsInitialized() const {
    2325             : 
    2326           0 :   return true;
    2327             : }
    2328             : 
    2329           0 : void FetchThreatListUpdatesRequest::Swap(FetchThreatListUpdatesRequest* other) {
    2330           0 :   if (other != this) {
    2331           0 :     std::swap(client_, other->client_);
    2332           0 :     list_update_requests_.Swap(&other->list_update_requests_);
    2333           0 :     std::swap(chrome_client_info_, other->chrome_client_info_);
    2334           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    2335           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    2336           0 :     std::swap(_cached_size_, other->_cached_size_);
    2337             :   }
    2338           0 : }
    2339             : 
    2340           0 : ::std::string FetchThreatListUpdatesRequest::GetTypeName() const {
    2341           0 :   return "mozilla.safebrowsing.FetchThreatListUpdatesRequest";
    2342             : }
    2343             : 
    2344             : 
    2345             : // ===================================================================
    2346             : 
    2347           0 : bool FetchThreatListUpdatesResponse_ListUpdateResponse_ResponseType_IsValid(int value) {
    2348           0 :   switch(value) {
    2349             :     case 0:
    2350             :     case 1:
    2351             :     case 2:
    2352           0 :       return true;
    2353             :     default:
    2354           0 :       return false;
    2355             :   }
    2356             : }
    2357             : 
    2358             : #ifndef _MSC_VER
    2359             : const FetchThreatListUpdatesResponse_ListUpdateResponse_ResponseType FetchThreatListUpdatesResponse_ListUpdateResponse::RESPONSE_TYPE_UNSPECIFIED;
    2360             : const FetchThreatListUpdatesResponse_ListUpdateResponse_ResponseType FetchThreatListUpdatesResponse_ListUpdateResponse::PARTIAL_UPDATE;
    2361             : const FetchThreatListUpdatesResponse_ListUpdateResponse_ResponseType FetchThreatListUpdatesResponse_ListUpdateResponse::FULL_UPDATE;
    2362             : const FetchThreatListUpdatesResponse_ListUpdateResponse_ResponseType FetchThreatListUpdatesResponse_ListUpdateResponse::ResponseType_MIN;
    2363             : const FetchThreatListUpdatesResponse_ListUpdateResponse_ResponseType FetchThreatListUpdatesResponse_ListUpdateResponse::ResponseType_MAX;
    2364             : const int FetchThreatListUpdatesResponse_ListUpdateResponse::ResponseType_ARRAYSIZE;
    2365             : #endif  // _MSC_VER
    2366             : #ifndef _MSC_VER
    2367             : const int FetchThreatListUpdatesResponse_ListUpdateResponse::kThreatTypeFieldNumber;
    2368             : const int FetchThreatListUpdatesResponse_ListUpdateResponse::kThreatEntryTypeFieldNumber;
    2369             : const int FetchThreatListUpdatesResponse_ListUpdateResponse::kPlatformTypeFieldNumber;
    2370             : const int FetchThreatListUpdatesResponse_ListUpdateResponse::kResponseTypeFieldNumber;
    2371             : const int FetchThreatListUpdatesResponse_ListUpdateResponse::kAdditionsFieldNumber;
    2372             : const int FetchThreatListUpdatesResponse_ListUpdateResponse::kRemovalsFieldNumber;
    2373             : const int FetchThreatListUpdatesResponse_ListUpdateResponse::kNewClientStateFieldNumber;
    2374             : const int FetchThreatListUpdatesResponse_ListUpdateResponse::kChecksumFieldNumber;
    2375             : #endif  // !_MSC_VER
    2376             : 
    2377           3 : FetchThreatListUpdatesResponse_ListUpdateResponse::FetchThreatListUpdatesResponse_ListUpdateResponse()
    2378           3 :   : ::google::protobuf::MessageLite() {
    2379           3 :   SharedCtor();
    2380             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse)
    2381           3 : }
    2382             : 
    2383           3 : void FetchThreatListUpdatesResponse_ListUpdateResponse::InitAsDefaultInstance() {
    2384             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    2385             :   checksum_ = const_cast< ::mozilla::safebrowsing::Checksum*>(
    2386             :       ::mozilla::safebrowsing::Checksum::internal_default_instance());
    2387             : #else
    2388           3 :   checksum_ = const_cast< ::mozilla::safebrowsing::Checksum*>(&::mozilla::safebrowsing::Checksum::default_instance());
    2389             : #endif
    2390           3 : }
    2391             : 
    2392           0 : FetchThreatListUpdatesResponse_ListUpdateResponse::FetchThreatListUpdatesResponse_ListUpdateResponse(const FetchThreatListUpdatesResponse_ListUpdateResponse& from)
    2393           0 :   : ::google::protobuf::MessageLite() {
    2394           0 :   SharedCtor();
    2395           0 :   MergeFrom(from);
    2396             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse)
    2397           0 : }
    2398             : 
    2399           3 : void FetchThreatListUpdatesResponse_ListUpdateResponse::SharedCtor() {
    2400           3 :   ::google::protobuf::internal::GetEmptyString();
    2401           3 :   _cached_size_ = 0;
    2402           3 :   threat_type_ = 0;
    2403           3 :   threat_entry_type_ = 0;
    2404           3 :   platform_type_ = 0;
    2405           3 :   response_type_ = 0;
    2406           3 :   new_client_state_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    2407           3 :   checksum_ = NULL;
    2408           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    2409           3 : }
    2410             : 
    2411           0 : FetchThreatListUpdatesResponse_ListUpdateResponse::~FetchThreatListUpdatesResponse_ListUpdateResponse() {
    2412             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse)
    2413           0 :   SharedDtor();
    2414           0 : }
    2415             : 
    2416           0 : void FetchThreatListUpdatesResponse_ListUpdateResponse::SharedDtor() {
    2417           0 :   if (new_client_state_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    2418           0 :     delete new_client_state_;
    2419             :   }
    2420             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    2421             :   if (this != &default_instance()) {
    2422             :   #else
    2423           0 :   if (this != default_instance_) {
    2424             :   #endif
    2425           0 :     delete checksum_;
    2426             :   }
    2427           0 : }
    2428             : 
    2429           0 : void FetchThreatListUpdatesResponse_ListUpdateResponse::SetCachedSize(int size) const {
    2430             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    2431           0 :   _cached_size_ = size;
    2432             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    2433           0 : }
    2434           0 : const FetchThreatListUpdatesResponse_ListUpdateResponse& FetchThreatListUpdatesResponse_ListUpdateResponse::default_instance() {
    2435             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    2436             :   protobuf_AddDesc_safebrowsing_2eproto();
    2437             : #else
    2438           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    2439             : #endif
    2440           0 :   return *default_instance_;
    2441             : }
    2442             : 
    2443             : FetchThreatListUpdatesResponse_ListUpdateResponse* FetchThreatListUpdatesResponse_ListUpdateResponse::default_instance_ = NULL;
    2444             : 
    2445           0 : FetchThreatListUpdatesResponse_ListUpdateResponse* FetchThreatListUpdatesResponse_ListUpdateResponse::New() const {
    2446           0 :   return new FetchThreatListUpdatesResponse_ListUpdateResponse;
    2447             : }
    2448             : 
    2449           0 : void FetchThreatListUpdatesResponse_ListUpdateResponse::Clear() {
    2450             : #define OFFSET_OF_FIELD_(f) (reinterpret_cast<char*>(      \
    2451             :   &reinterpret_cast<FetchThreatListUpdatesResponse_ListUpdateResponse*>(16)->f) - \
    2452             :    reinterpret_cast<char*>(16))
    2453             : 
    2454             : #define ZR_(first, last) do {                              \
    2455             :     size_t f = OFFSET_OF_FIELD_(first);                    \
    2456             :     size_t n = OFFSET_OF_FIELD_(last) - f + sizeof(last);  \
    2457             :     ::memset(&first, 0, n);                                \
    2458             :   } while (0)
    2459             : 
    2460           0 :   if (_has_bits_[0 / 32] & 207) {
    2461           0 :     ZR_(threat_type_, response_type_);
    2462           0 :     if (has_new_client_state()) {
    2463           0 :       if (new_client_state_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    2464           0 :         new_client_state_->clear();
    2465             :       }
    2466             :     }
    2467           0 :     if (has_checksum()) {
    2468           0 :       if (checksum_ != NULL) checksum_->::mozilla::safebrowsing::Checksum::Clear();
    2469             :     }
    2470             :   }
    2471             : 
    2472             : #undef OFFSET_OF_FIELD_
    2473             : #undef ZR_
    2474             : 
    2475           0 :   additions_.Clear();
    2476           0 :   removals_.Clear();
    2477           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    2478           0 :   mutable_unknown_fields()->clear();
    2479           0 : }
    2480             : 
    2481           0 : bool FetchThreatListUpdatesResponse_ListUpdateResponse::MergePartialFromCodedStream(
    2482             :     ::google::protobuf::io::CodedInputStream* input) {
    2483             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    2484             :   ::google::protobuf::uint32 tag;
    2485             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    2486           0 :       mutable_unknown_fields());
    2487             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    2488           0 :       &unknown_fields_string);
    2489             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse)
    2490             :   for (;;) {
    2491             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    2492           0 :     tag = p.first;
    2493           0 :     if (!p.second) goto handle_unusual;
    2494           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    2495             :       // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    2496             :       case 1: {
    2497           0 :         if (tag == 8) {
    2498             :           int value;
    2499           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    2500             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    2501             :                  input, &value)));
    2502           0 :           if (::mozilla::safebrowsing::ThreatType_IsValid(value)) {
    2503           0 :             set_threat_type(static_cast< ::mozilla::safebrowsing::ThreatType >(value));
    2504             :           } else {
    2505           0 :             unknown_fields_stream.WriteVarint32(tag);
    2506           0 :             unknown_fields_stream.WriteVarint32(value);
    2507             :           }
    2508             :         } else {
    2509           0 :           goto handle_unusual;
    2510             :         }
    2511           0 :         if (input->ExpectTag(16)) goto parse_threat_entry_type;
    2512           0 :         break;
    2513             :       }
    2514             : 
    2515             :       // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 2;
    2516             :       case 2: {
    2517           0 :         if (tag == 16) {
    2518             :          parse_threat_entry_type:
    2519             :           int value;
    2520           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    2521             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    2522             :                  input, &value)));
    2523           0 :           if (::mozilla::safebrowsing::ThreatEntryType_IsValid(value)) {
    2524           0 :             set_threat_entry_type(static_cast< ::mozilla::safebrowsing::ThreatEntryType >(value));
    2525             :           } else {
    2526           0 :             unknown_fields_stream.WriteVarint32(tag);
    2527           0 :             unknown_fields_stream.WriteVarint32(value);
    2528             :           }
    2529             :         } else {
    2530           0 :           goto handle_unusual;
    2531             :         }
    2532           0 :         if (input->ExpectTag(24)) goto parse_platform_type;
    2533           0 :         break;
    2534             :       }
    2535             : 
    2536             :       // optional .mozilla.safebrowsing.PlatformType platform_type = 3;
    2537             :       case 3: {
    2538           0 :         if (tag == 24) {
    2539             :          parse_platform_type:
    2540             :           int value;
    2541           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    2542             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    2543             :                  input, &value)));
    2544           0 :           if (::mozilla::safebrowsing::PlatformType_IsValid(value)) {
    2545           0 :             set_platform_type(static_cast< ::mozilla::safebrowsing::PlatformType >(value));
    2546             :           } else {
    2547           0 :             unknown_fields_stream.WriteVarint32(tag);
    2548           0 :             unknown_fields_stream.WriteVarint32(value);
    2549             :           }
    2550             :         } else {
    2551           0 :           goto handle_unusual;
    2552             :         }
    2553           0 :         if (input->ExpectTag(32)) goto parse_response_type;
    2554           0 :         break;
    2555             :       }
    2556             : 
    2557             :       // optional .mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse.ResponseType response_type = 4;
    2558             :       case 4: {
    2559           0 :         if (tag == 32) {
    2560             :          parse_response_type:
    2561             :           int value;
    2562           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    2563             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    2564             :                  input, &value)));
    2565           0 :           if (::mozilla::safebrowsing::FetchThreatListUpdatesResponse_ListUpdateResponse_ResponseType_IsValid(value)) {
    2566           0 :             set_response_type(static_cast< ::mozilla::safebrowsing::FetchThreatListUpdatesResponse_ListUpdateResponse_ResponseType >(value));
    2567             :           } else {
    2568           0 :             unknown_fields_stream.WriteVarint32(tag);
    2569           0 :             unknown_fields_stream.WriteVarint32(value);
    2570             :           }
    2571             :         } else {
    2572           0 :           goto handle_unusual;
    2573             :         }
    2574           0 :         if (input->ExpectTag(42)) goto parse_additions;
    2575           0 :         break;
    2576             :       }
    2577             : 
    2578             :       // repeated .mozilla.safebrowsing.ThreatEntrySet additions = 5;
    2579             :       case 5: {
    2580           0 :         if (tag == 42) {
    2581             :          parse_additions:
    2582           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    2583             :                 input, add_additions()));
    2584             :         } else {
    2585           0 :           goto handle_unusual;
    2586             :         }
    2587           0 :         if (input->ExpectTag(42)) goto parse_additions;
    2588           0 :         if (input->ExpectTag(50)) goto parse_removals;
    2589           0 :         break;
    2590             :       }
    2591             : 
    2592             :       // repeated .mozilla.safebrowsing.ThreatEntrySet removals = 6;
    2593             :       case 6: {
    2594           0 :         if (tag == 50) {
    2595             :          parse_removals:
    2596           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    2597             :                 input, add_removals()));
    2598             :         } else {
    2599           0 :           goto handle_unusual;
    2600             :         }
    2601           0 :         if (input->ExpectTag(50)) goto parse_removals;
    2602           0 :         if (input->ExpectTag(58)) goto parse_new_client_state;
    2603           0 :         break;
    2604             :       }
    2605             : 
    2606             :       // optional bytes new_client_state = 7;
    2607             :       case 7: {
    2608           0 :         if (tag == 58) {
    2609             :          parse_new_client_state:
    2610           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
    2611             :                 input, this->mutable_new_client_state()));
    2612             :         } else {
    2613           0 :           goto handle_unusual;
    2614             :         }
    2615           0 :         if (input->ExpectTag(66)) goto parse_checksum;
    2616           0 :         break;
    2617             :       }
    2618             : 
    2619             :       // optional .mozilla.safebrowsing.Checksum checksum = 8;
    2620             :       case 8: {
    2621           0 :         if (tag == 66) {
    2622             :          parse_checksum:
    2623           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    2624             :                input, mutable_checksum()));
    2625             :         } else {
    2626           0 :           goto handle_unusual;
    2627             :         }
    2628           0 :         if (input->ExpectAtEnd()) goto success;
    2629           0 :         break;
    2630             :       }
    2631             : 
    2632             :       default: {
    2633             :       handle_unusual:
    2634           0 :         if (tag == 0 ||
    2635           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    2636             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    2637           0 :           goto success;
    2638             :         }
    2639           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    2640             :             input, tag, &unknown_fields_stream));
    2641           0 :         break;
    2642             :       }
    2643             :     }
    2644           0 :   }
    2645             : success:
    2646             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse)
    2647           0 :   return true;
    2648             : failure:
    2649             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse)
    2650           0 :   return false;
    2651             : #undef DO_
    2652             : }
    2653             : 
    2654           0 : void FetchThreatListUpdatesResponse_ListUpdateResponse::SerializeWithCachedSizes(
    2655             :     ::google::protobuf::io::CodedOutputStream* output) const {
    2656             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse)
    2657             :   // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    2658           0 :   if (has_threat_type()) {
    2659           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    2660           0 :       1, this->threat_type(), output);
    2661             :   }
    2662             : 
    2663             :   // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 2;
    2664           0 :   if (has_threat_entry_type()) {
    2665           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    2666           0 :       2, this->threat_entry_type(), output);
    2667             :   }
    2668             : 
    2669             :   // optional .mozilla.safebrowsing.PlatformType platform_type = 3;
    2670           0 :   if (has_platform_type()) {
    2671           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    2672           0 :       3, this->platform_type(), output);
    2673             :   }
    2674             : 
    2675             :   // optional .mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse.ResponseType response_type = 4;
    2676           0 :   if (has_response_type()) {
    2677           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    2678           0 :       4, this->response_type(), output);
    2679             :   }
    2680             : 
    2681             :   // repeated .mozilla.safebrowsing.ThreatEntrySet additions = 5;
    2682           0 :   for (int i = 0; i < this->additions_size(); i++) {
    2683           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    2684           0 :       5, this->additions(i), output);
    2685             :   }
    2686             : 
    2687             :   // repeated .mozilla.safebrowsing.ThreatEntrySet removals = 6;
    2688           0 :   for (int i = 0; i < this->removals_size(); i++) {
    2689           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    2690           0 :       6, this->removals(i), output);
    2691             :   }
    2692             : 
    2693             :   // optional bytes new_client_state = 7;
    2694           0 :   if (has_new_client_state()) {
    2695           0 :     ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
    2696           0 :       7, this->new_client_state(), output);
    2697             :   }
    2698             : 
    2699             :   // optional .mozilla.safebrowsing.Checksum checksum = 8;
    2700           0 :   if (has_checksum()) {
    2701           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    2702           0 :       8, this->checksum(), output);
    2703             :   }
    2704             : 
    2705           0 :   output->WriteRaw(unknown_fields().data(),
    2706           0 :                    unknown_fields().size());
    2707             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse)
    2708           0 : }
    2709             : 
    2710           0 : int FetchThreatListUpdatesResponse_ListUpdateResponse::ByteSize() const {
    2711           0 :   int total_size = 0;
    2712             : 
    2713           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    2714             :     // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    2715           0 :     if (has_threat_type()) {
    2716           0 :       total_size += 1 +
    2717           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->threat_type());
    2718             :     }
    2719             : 
    2720             :     // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 2;
    2721           0 :     if (has_threat_entry_type()) {
    2722           0 :       total_size += 1 +
    2723           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->threat_entry_type());
    2724             :     }
    2725             : 
    2726             :     // optional .mozilla.safebrowsing.PlatformType platform_type = 3;
    2727           0 :     if (has_platform_type()) {
    2728           0 :       total_size += 1 +
    2729           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->platform_type());
    2730             :     }
    2731             : 
    2732             :     // optional .mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse.ResponseType response_type = 4;
    2733           0 :     if (has_response_type()) {
    2734           0 :       total_size += 1 +
    2735           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->response_type());
    2736             :     }
    2737             : 
    2738             :     // optional bytes new_client_state = 7;
    2739           0 :     if (has_new_client_state()) {
    2740           0 :       total_size += 1 +
    2741           0 :         ::google::protobuf::internal::WireFormatLite::BytesSize(
    2742             :           this->new_client_state());
    2743             :     }
    2744             : 
    2745             :     // optional .mozilla.safebrowsing.Checksum checksum = 8;
    2746           0 :     if (has_checksum()) {
    2747           0 :       total_size += 1 +
    2748           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    2749             :           this->checksum());
    2750             :     }
    2751             : 
    2752             :   }
    2753             :   // repeated .mozilla.safebrowsing.ThreatEntrySet additions = 5;
    2754           0 :   total_size += 1 * this->additions_size();
    2755           0 :   for (int i = 0; i < this->additions_size(); i++) {
    2756           0 :     total_size +=
    2757           0 :       ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    2758             :         this->additions(i));
    2759             :   }
    2760             : 
    2761             :   // repeated .mozilla.safebrowsing.ThreatEntrySet removals = 6;
    2762           0 :   total_size += 1 * this->removals_size();
    2763           0 :   for (int i = 0; i < this->removals_size(); i++) {
    2764           0 :     total_size +=
    2765           0 :       ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    2766             :         this->removals(i));
    2767             :   }
    2768             : 
    2769           0 :   total_size += unknown_fields().size();
    2770             : 
    2771             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    2772           0 :   _cached_size_ = total_size;
    2773             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    2774           0 :   return total_size;
    2775             : }
    2776             : 
    2777           0 : void FetchThreatListUpdatesResponse_ListUpdateResponse::CheckTypeAndMergeFrom(
    2778             :     const ::google::protobuf::MessageLite& from) {
    2779           0 :   MergeFrom(*::google::protobuf::down_cast<const FetchThreatListUpdatesResponse_ListUpdateResponse*>(&from));
    2780           0 : }
    2781             : 
    2782           0 : void FetchThreatListUpdatesResponse_ListUpdateResponse::MergeFrom(const FetchThreatListUpdatesResponse_ListUpdateResponse& from) {
    2783           0 :   GOOGLE_CHECK_NE(&from, this);
    2784           0 :   additions_.MergeFrom(from.additions_);
    2785           0 :   removals_.MergeFrom(from.removals_);
    2786           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    2787           0 :     if (from.has_threat_type()) {
    2788           0 :       set_threat_type(from.threat_type());
    2789             :     }
    2790           0 :     if (from.has_threat_entry_type()) {
    2791           0 :       set_threat_entry_type(from.threat_entry_type());
    2792             :     }
    2793           0 :     if (from.has_platform_type()) {
    2794           0 :       set_platform_type(from.platform_type());
    2795             :     }
    2796           0 :     if (from.has_response_type()) {
    2797           0 :       set_response_type(from.response_type());
    2798             :     }
    2799           0 :     if (from.has_new_client_state()) {
    2800           0 :       set_new_client_state(from.new_client_state());
    2801             :     }
    2802           0 :     if (from.has_checksum()) {
    2803           0 :       mutable_checksum()->::mozilla::safebrowsing::Checksum::MergeFrom(from.checksum());
    2804             :     }
    2805             :   }
    2806           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    2807           0 : }
    2808             : 
    2809           0 : void FetchThreatListUpdatesResponse_ListUpdateResponse::CopyFrom(const FetchThreatListUpdatesResponse_ListUpdateResponse& from) {
    2810           0 :   if (&from == this) return;
    2811           0 :   Clear();
    2812           0 :   MergeFrom(from);
    2813             : }
    2814             : 
    2815           0 : bool FetchThreatListUpdatesResponse_ListUpdateResponse::IsInitialized() const {
    2816             : 
    2817           0 :   return true;
    2818             : }
    2819             : 
    2820           0 : void FetchThreatListUpdatesResponse_ListUpdateResponse::Swap(FetchThreatListUpdatesResponse_ListUpdateResponse* other) {
    2821           0 :   if (other != this) {
    2822           0 :     std::swap(threat_type_, other->threat_type_);
    2823           0 :     std::swap(threat_entry_type_, other->threat_entry_type_);
    2824           0 :     std::swap(platform_type_, other->platform_type_);
    2825           0 :     std::swap(response_type_, other->response_type_);
    2826           0 :     additions_.Swap(&other->additions_);
    2827           0 :     removals_.Swap(&other->removals_);
    2828           0 :     std::swap(new_client_state_, other->new_client_state_);
    2829           0 :     std::swap(checksum_, other->checksum_);
    2830           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    2831           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    2832           0 :     std::swap(_cached_size_, other->_cached_size_);
    2833             :   }
    2834           0 : }
    2835             : 
    2836           0 : ::std::string FetchThreatListUpdatesResponse_ListUpdateResponse::GetTypeName() const {
    2837           0 :   return "mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse";
    2838             : }
    2839             : 
    2840             : 
    2841             : // -------------------------------------------------------------------
    2842             : 
    2843             : #ifndef _MSC_VER
    2844             : const int FetchThreatListUpdatesResponse::kListUpdateResponsesFieldNumber;
    2845             : const int FetchThreatListUpdatesResponse::kMinimumWaitDurationFieldNumber;
    2846             : #endif  // !_MSC_VER
    2847             : 
    2848           3 : FetchThreatListUpdatesResponse::FetchThreatListUpdatesResponse()
    2849           3 :   : ::google::protobuf::MessageLite() {
    2850           3 :   SharedCtor();
    2851             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.FetchThreatListUpdatesResponse)
    2852           3 : }
    2853             : 
    2854           3 : void FetchThreatListUpdatesResponse::InitAsDefaultInstance() {
    2855             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    2856             :   minimum_wait_duration_ = const_cast< ::mozilla::safebrowsing::Duration*>(
    2857             :       ::mozilla::safebrowsing::Duration::internal_default_instance());
    2858             : #else
    2859           3 :   minimum_wait_duration_ = const_cast< ::mozilla::safebrowsing::Duration*>(&::mozilla::safebrowsing::Duration::default_instance());
    2860             : #endif
    2861           3 : }
    2862             : 
    2863           0 : FetchThreatListUpdatesResponse::FetchThreatListUpdatesResponse(const FetchThreatListUpdatesResponse& from)
    2864           0 :   : ::google::protobuf::MessageLite() {
    2865           0 :   SharedCtor();
    2866           0 :   MergeFrom(from);
    2867             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.FetchThreatListUpdatesResponse)
    2868           0 : }
    2869             : 
    2870           3 : void FetchThreatListUpdatesResponse::SharedCtor() {
    2871           3 :   _cached_size_ = 0;
    2872           3 :   minimum_wait_duration_ = NULL;
    2873           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    2874           3 : }
    2875             : 
    2876           0 : FetchThreatListUpdatesResponse::~FetchThreatListUpdatesResponse() {
    2877             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.FetchThreatListUpdatesResponse)
    2878           0 :   SharedDtor();
    2879           0 : }
    2880             : 
    2881           0 : void FetchThreatListUpdatesResponse::SharedDtor() {
    2882             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    2883             :   if (this != &default_instance()) {
    2884             :   #else
    2885           0 :   if (this != default_instance_) {
    2886             :   #endif
    2887           0 :     delete minimum_wait_duration_;
    2888             :   }
    2889           0 : }
    2890             : 
    2891           0 : void FetchThreatListUpdatesResponse::SetCachedSize(int size) const {
    2892             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    2893           0 :   _cached_size_ = size;
    2894             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    2895           0 : }
    2896           0 : const FetchThreatListUpdatesResponse& FetchThreatListUpdatesResponse::default_instance() {
    2897             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    2898             :   protobuf_AddDesc_safebrowsing_2eproto();
    2899             : #else
    2900           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    2901             : #endif
    2902           0 :   return *default_instance_;
    2903             : }
    2904             : 
    2905             : FetchThreatListUpdatesResponse* FetchThreatListUpdatesResponse::default_instance_ = NULL;
    2906             : 
    2907           0 : FetchThreatListUpdatesResponse* FetchThreatListUpdatesResponse::New() const {
    2908           0 :   return new FetchThreatListUpdatesResponse;
    2909             : }
    2910             : 
    2911           0 : void FetchThreatListUpdatesResponse::Clear() {
    2912           0 :   if (has_minimum_wait_duration()) {
    2913           0 :     if (minimum_wait_duration_ != NULL) minimum_wait_duration_->::mozilla::safebrowsing::Duration::Clear();
    2914             :   }
    2915           0 :   list_update_responses_.Clear();
    2916           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    2917           0 :   mutable_unknown_fields()->clear();
    2918           0 : }
    2919             : 
    2920           0 : bool FetchThreatListUpdatesResponse::MergePartialFromCodedStream(
    2921             :     ::google::protobuf::io::CodedInputStream* input) {
    2922             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    2923             :   ::google::protobuf::uint32 tag;
    2924             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    2925           0 :       mutable_unknown_fields());
    2926             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    2927           0 :       &unknown_fields_string);
    2928             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.FetchThreatListUpdatesResponse)
    2929             :   for (;;) {
    2930             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    2931           0 :     tag = p.first;
    2932           0 :     if (!p.second) goto handle_unusual;
    2933           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    2934             :       // repeated .mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse list_update_responses = 1;
    2935             :       case 1: {
    2936           0 :         if (tag == 10) {
    2937             :          parse_list_update_responses:
    2938           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    2939             :                 input, add_list_update_responses()));
    2940             :         } else {
    2941           0 :           goto handle_unusual;
    2942             :         }
    2943           0 :         if (input->ExpectTag(10)) goto parse_list_update_responses;
    2944           0 :         if (input->ExpectTag(18)) goto parse_minimum_wait_duration;
    2945           0 :         break;
    2946             :       }
    2947             : 
    2948             :       // optional .mozilla.safebrowsing.Duration minimum_wait_duration = 2;
    2949             :       case 2: {
    2950           0 :         if (tag == 18) {
    2951             :          parse_minimum_wait_duration:
    2952           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    2953             :                input, mutable_minimum_wait_duration()));
    2954             :         } else {
    2955           0 :           goto handle_unusual;
    2956             :         }
    2957           0 :         if (input->ExpectAtEnd()) goto success;
    2958           0 :         break;
    2959             :       }
    2960             : 
    2961             :       default: {
    2962             :       handle_unusual:
    2963           0 :         if (tag == 0 ||
    2964           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    2965             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    2966           0 :           goto success;
    2967             :         }
    2968           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    2969             :             input, tag, &unknown_fields_stream));
    2970           0 :         break;
    2971             :       }
    2972             :     }
    2973           0 :   }
    2974             : success:
    2975             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.FetchThreatListUpdatesResponse)
    2976           0 :   return true;
    2977             : failure:
    2978             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.FetchThreatListUpdatesResponse)
    2979           0 :   return false;
    2980             : #undef DO_
    2981             : }
    2982             : 
    2983           0 : void FetchThreatListUpdatesResponse::SerializeWithCachedSizes(
    2984             :     ::google::protobuf::io::CodedOutputStream* output) const {
    2985             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.FetchThreatListUpdatesResponse)
    2986             :   // repeated .mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse list_update_responses = 1;
    2987           0 :   for (int i = 0; i < this->list_update_responses_size(); i++) {
    2988           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    2989           0 :       1, this->list_update_responses(i), output);
    2990             :   }
    2991             : 
    2992             :   // optional .mozilla.safebrowsing.Duration minimum_wait_duration = 2;
    2993           0 :   if (has_minimum_wait_duration()) {
    2994           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    2995           0 :       2, this->minimum_wait_duration(), output);
    2996             :   }
    2997             : 
    2998           0 :   output->WriteRaw(unknown_fields().data(),
    2999           0 :                    unknown_fields().size());
    3000             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.FetchThreatListUpdatesResponse)
    3001           0 : }
    3002             : 
    3003           0 : int FetchThreatListUpdatesResponse::ByteSize() const {
    3004           0 :   int total_size = 0;
    3005             : 
    3006           0 :   if (_has_bits_[1 / 32] & (0xffu << (1 % 32))) {
    3007             :     // optional .mozilla.safebrowsing.Duration minimum_wait_duration = 2;
    3008           0 :     if (has_minimum_wait_duration()) {
    3009           0 :       total_size += 1 +
    3010           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    3011             :           this->minimum_wait_duration());
    3012             :     }
    3013             : 
    3014             :   }
    3015             :   // repeated .mozilla.safebrowsing.FetchThreatListUpdatesResponse.ListUpdateResponse list_update_responses = 1;
    3016           0 :   total_size += 1 * this->list_update_responses_size();
    3017           0 :   for (int i = 0; i < this->list_update_responses_size(); i++) {
    3018           0 :     total_size +=
    3019           0 :       ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    3020             :         this->list_update_responses(i));
    3021             :   }
    3022             : 
    3023           0 :   total_size += unknown_fields().size();
    3024             : 
    3025             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    3026           0 :   _cached_size_ = total_size;
    3027             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    3028           0 :   return total_size;
    3029             : }
    3030             : 
    3031           0 : void FetchThreatListUpdatesResponse::CheckTypeAndMergeFrom(
    3032             :     const ::google::protobuf::MessageLite& from) {
    3033           0 :   MergeFrom(*::google::protobuf::down_cast<const FetchThreatListUpdatesResponse*>(&from));
    3034           0 : }
    3035             : 
    3036           0 : void FetchThreatListUpdatesResponse::MergeFrom(const FetchThreatListUpdatesResponse& from) {
    3037           0 :   GOOGLE_CHECK_NE(&from, this);
    3038           0 :   list_update_responses_.MergeFrom(from.list_update_responses_);
    3039           0 :   if (from._has_bits_[1 / 32] & (0xffu << (1 % 32))) {
    3040           0 :     if (from.has_minimum_wait_duration()) {
    3041           0 :       mutable_minimum_wait_duration()->::mozilla::safebrowsing::Duration::MergeFrom(from.minimum_wait_duration());
    3042             :     }
    3043             :   }
    3044           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    3045           0 : }
    3046             : 
    3047           0 : void FetchThreatListUpdatesResponse::CopyFrom(const FetchThreatListUpdatesResponse& from) {
    3048           0 :   if (&from == this) return;
    3049           0 :   Clear();
    3050           0 :   MergeFrom(from);
    3051             : }
    3052             : 
    3053           0 : bool FetchThreatListUpdatesResponse::IsInitialized() const {
    3054             : 
    3055           0 :   return true;
    3056             : }
    3057             : 
    3058           0 : void FetchThreatListUpdatesResponse::Swap(FetchThreatListUpdatesResponse* other) {
    3059           0 :   if (other != this) {
    3060           0 :     list_update_responses_.Swap(&other->list_update_responses_);
    3061           0 :     std::swap(minimum_wait_duration_, other->minimum_wait_duration_);
    3062           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    3063           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    3064           0 :     std::swap(_cached_size_, other->_cached_size_);
    3065             :   }
    3066           0 : }
    3067             : 
    3068           0 : ::std::string FetchThreatListUpdatesResponse::GetTypeName() const {
    3069           0 :   return "mozilla.safebrowsing.FetchThreatListUpdatesResponse";
    3070             : }
    3071             : 
    3072             : 
    3073             : // ===================================================================
    3074             : 
    3075             : #ifndef _MSC_VER
    3076             : const int FindFullHashesRequest::kClientFieldNumber;
    3077             : const int FindFullHashesRequest::kClientStatesFieldNumber;
    3078             : const int FindFullHashesRequest::kThreatInfoFieldNumber;
    3079             : #endif  // !_MSC_VER
    3080             : 
    3081           3 : FindFullHashesRequest::FindFullHashesRequest()
    3082           3 :   : ::google::protobuf::MessageLite() {
    3083           3 :   SharedCtor();
    3084             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.FindFullHashesRequest)
    3085           3 : }
    3086             : 
    3087           3 : void FindFullHashesRequest::InitAsDefaultInstance() {
    3088             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3089             :   client_ = const_cast< ::mozilla::safebrowsing::ClientInfo*>(
    3090             :       ::mozilla::safebrowsing::ClientInfo::internal_default_instance());
    3091             : #else
    3092           3 :   client_ = const_cast< ::mozilla::safebrowsing::ClientInfo*>(&::mozilla::safebrowsing::ClientInfo::default_instance());
    3093             : #endif
    3094             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3095             :   threat_info_ = const_cast< ::mozilla::safebrowsing::ThreatInfo*>(
    3096             :       ::mozilla::safebrowsing::ThreatInfo::internal_default_instance());
    3097             : #else
    3098           3 :   threat_info_ = const_cast< ::mozilla::safebrowsing::ThreatInfo*>(&::mozilla::safebrowsing::ThreatInfo::default_instance());
    3099             : #endif
    3100           3 : }
    3101             : 
    3102           0 : FindFullHashesRequest::FindFullHashesRequest(const FindFullHashesRequest& from)
    3103           0 :   : ::google::protobuf::MessageLite() {
    3104           0 :   SharedCtor();
    3105           0 :   MergeFrom(from);
    3106             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.FindFullHashesRequest)
    3107           0 : }
    3108             : 
    3109           3 : void FindFullHashesRequest::SharedCtor() {
    3110           3 :   ::google::protobuf::internal::GetEmptyString();
    3111           3 :   _cached_size_ = 0;
    3112           3 :   client_ = NULL;
    3113           3 :   threat_info_ = NULL;
    3114           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    3115           3 : }
    3116             : 
    3117           0 : FindFullHashesRequest::~FindFullHashesRequest() {
    3118             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.FindFullHashesRequest)
    3119           0 :   SharedDtor();
    3120           0 : }
    3121             : 
    3122           0 : void FindFullHashesRequest::SharedDtor() {
    3123             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3124             :   if (this != &default_instance()) {
    3125             :   #else
    3126           0 :   if (this != default_instance_) {
    3127             :   #endif
    3128           0 :     delete client_;
    3129           0 :     delete threat_info_;
    3130             :   }
    3131           0 : }
    3132             : 
    3133           0 : void FindFullHashesRequest::SetCachedSize(int size) const {
    3134             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    3135           0 :   _cached_size_ = size;
    3136             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    3137           0 : }
    3138           0 : const FindFullHashesRequest& FindFullHashesRequest::default_instance() {
    3139             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3140             :   protobuf_AddDesc_safebrowsing_2eproto();
    3141             : #else
    3142           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    3143             : #endif
    3144           0 :   return *default_instance_;
    3145             : }
    3146             : 
    3147             : FindFullHashesRequest* FindFullHashesRequest::default_instance_ = NULL;
    3148             : 
    3149           0 : FindFullHashesRequest* FindFullHashesRequest::New() const {
    3150           0 :   return new FindFullHashesRequest;
    3151             : }
    3152             : 
    3153           0 : void FindFullHashesRequest::Clear() {
    3154           0 :   if (_has_bits_[0 / 32] & 5) {
    3155           0 :     if (has_client()) {
    3156           0 :       if (client_ != NULL) client_->::mozilla::safebrowsing::ClientInfo::Clear();
    3157             :     }
    3158           0 :     if (has_threat_info()) {
    3159           0 :       if (threat_info_ != NULL) threat_info_->::mozilla::safebrowsing::ThreatInfo::Clear();
    3160             :     }
    3161             :   }
    3162           0 :   client_states_.Clear();
    3163           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    3164           0 :   mutable_unknown_fields()->clear();
    3165           0 : }
    3166             : 
    3167           0 : bool FindFullHashesRequest::MergePartialFromCodedStream(
    3168             :     ::google::protobuf::io::CodedInputStream* input) {
    3169             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    3170             :   ::google::protobuf::uint32 tag;
    3171             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    3172           0 :       mutable_unknown_fields());
    3173             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    3174           0 :       &unknown_fields_string);
    3175             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.FindFullHashesRequest)
    3176             :   for (;;) {
    3177             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    3178           0 :     tag = p.first;
    3179           0 :     if (!p.second) goto handle_unusual;
    3180           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    3181             :       // optional .mozilla.safebrowsing.ClientInfo client = 1;
    3182             :       case 1: {
    3183           0 :         if (tag == 10) {
    3184           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    3185             :                input, mutable_client()));
    3186             :         } else {
    3187           0 :           goto handle_unusual;
    3188             :         }
    3189           0 :         if (input->ExpectTag(18)) goto parse_client_states;
    3190           0 :         break;
    3191             :       }
    3192             : 
    3193             :       // repeated bytes client_states = 2;
    3194             :       case 2: {
    3195           0 :         if (tag == 18) {
    3196             :          parse_client_states:
    3197           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
    3198             :                 input, this->add_client_states()));
    3199             :         } else {
    3200           0 :           goto handle_unusual;
    3201             :         }
    3202           0 :         if (input->ExpectTag(18)) goto parse_client_states;
    3203           0 :         if (input->ExpectTag(26)) goto parse_threat_info;
    3204           0 :         break;
    3205             :       }
    3206             : 
    3207             :       // optional .mozilla.safebrowsing.ThreatInfo threat_info = 3;
    3208             :       case 3: {
    3209           0 :         if (tag == 26) {
    3210             :          parse_threat_info:
    3211           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    3212             :                input, mutable_threat_info()));
    3213             :         } else {
    3214           0 :           goto handle_unusual;
    3215             :         }
    3216           0 :         if (input->ExpectAtEnd()) goto success;
    3217           0 :         break;
    3218             :       }
    3219             : 
    3220             :       default: {
    3221             :       handle_unusual:
    3222           0 :         if (tag == 0 ||
    3223           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    3224             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    3225           0 :           goto success;
    3226             :         }
    3227           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    3228             :             input, tag, &unknown_fields_stream));
    3229           0 :         break;
    3230             :       }
    3231             :     }
    3232           0 :   }
    3233             : success:
    3234             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.FindFullHashesRequest)
    3235           0 :   return true;
    3236             : failure:
    3237             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.FindFullHashesRequest)
    3238           0 :   return false;
    3239             : #undef DO_
    3240             : }
    3241             : 
    3242           0 : void FindFullHashesRequest::SerializeWithCachedSizes(
    3243             :     ::google::protobuf::io::CodedOutputStream* output) const {
    3244             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.FindFullHashesRequest)
    3245             :   // optional .mozilla.safebrowsing.ClientInfo client = 1;
    3246           0 :   if (has_client()) {
    3247           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    3248           0 :       1, this->client(), output);
    3249             :   }
    3250             : 
    3251             :   // repeated bytes client_states = 2;
    3252           0 :   for (int i = 0; i < this->client_states_size(); i++) {
    3253           0 :     ::google::protobuf::internal::WireFormatLite::WriteBytes(
    3254           0 :       2, this->client_states(i), output);
    3255             :   }
    3256             : 
    3257             :   // optional .mozilla.safebrowsing.ThreatInfo threat_info = 3;
    3258           0 :   if (has_threat_info()) {
    3259           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    3260           0 :       3, this->threat_info(), output);
    3261             :   }
    3262             : 
    3263           0 :   output->WriteRaw(unknown_fields().data(),
    3264           0 :                    unknown_fields().size());
    3265             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.FindFullHashesRequest)
    3266           0 : }
    3267             : 
    3268           0 : int FindFullHashesRequest::ByteSize() const {
    3269           0 :   int total_size = 0;
    3270             : 
    3271           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    3272             :     // optional .mozilla.safebrowsing.ClientInfo client = 1;
    3273           0 :     if (has_client()) {
    3274           0 :       total_size += 1 +
    3275           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    3276             :           this->client());
    3277             :     }
    3278             : 
    3279             :     // optional .mozilla.safebrowsing.ThreatInfo threat_info = 3;
    3280           0 :     if (has_threat_info()) {
    3281           0 :       total_size += 1 +
    3282           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    3283             :           this->threat_info());
    3284             :     }
    3285             : 
    3286             :   }
    3287             :   // repeated bytes client_states = 2;
    3288           0 :   total_size += 1 * this->client_states_size();
    3289           0 :   for (int i = 0; i < this->client_states_size(); i++) {
    3290           0 :     total_size += ::google::protobuf::internal::WireFormatLite::BytesSize(
    3291             :       this->client_states(i));
    3292             :   }
    3293             : 
    3294           0 :   total_size += unknown_fields().size();
    3295             : 
    3296             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    3297           0 :   _cached_size_ = total_size;
    3298             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    3299           0 :   return total_size;
    3300             : }
    3301             : 
    3302           0 : void FindFullHashesRequest::CheckTypeAndMergeFrom(
    3303             :     const ::google::protobuf::MessageLite& from) {
    3304           0 :   MergeFrom(*::google::protobuf::down_cast<const FindFullHashesRequest*>(&from));
    3305           0 : }
    3306             : 
    3307           0 : void FindFullHashesRequest::MergeFrom(const FindFullHashesRequest& from) {
    3308           0 :   GOOGLE_CHECK_NE(&from, this);
    3309           0 :   client_states_.MergeFrom(from.client_states_);
    3310           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    3311           0 :     if (from.has_client()) {
    3312           0 :       mutable_client()->::mozilla::safebrowsing::ClientInfo::MergeFrom(from.client());
    3313             :     }
    3314           0 :     if (from.has_threat_info()) {
    3315           0 :       mutable_threat_info()->::mozilla::safebrowsing::ThreatInfo::MergeFrom(from.threat_info());
    3316             :     }
    3317             :   }
    3318           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    3319           0 : }
    3320             : 
    3321           0 : void FindFullHashesRequest::CopyFrom(const FindFullHashesRequest& from) {
    3322           0 :   if (&from == this) return;
    3323           0 :   Clear();
    3324           0 :   MergeFrom(from);
    3325             : }
    3326             : 
    3327           0 : bool FindFullHashesRequest::IsInitialized() const {
    3328             : 
    3329           0 :   return true;
    3330             : }
    3331             : 
    3332           0 : void FindFullHashesRequest::Swap(FindFullHashesRequest* other) {
    3333           0 :   if (other != this) {
    3334           0 :     std::swap(client_, other->client_);
    3335           0 :     client_states_.Swap(&other->client_states_);
    3336           0 :     std::swap(threat_info_, other->threat_info_);
    3337           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    3338           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    3339           0 :     std::swap(_cached_size_, other->_cached_size_);
    3340             :   }
    3341           0 : }
    3342             : 
    3343           0 : ::std::string FindFullHashesRequest::GetTypeName() const {
    3344           0 :   return "mozilla.safebrowsing.FindFullHashesRequest";
    3345             : }
    3346             : 
    3347             : 
    3348             : // ===================================================================
    3349             : 
    3350             : #ifndef _MSC_VER
    3351             : const int FindFullHashesResponse::kMatchesFieldNumber;
    3352             : const int FindFullHashesResponse::kMinimumWaitDurationFieldNumber;
    3353             : const int FindFullHashesResponse::kNegativeCacheDurationFieldNumber;
    3354             : #endif  // !_MSC_VER
    3355             : 
    3356           3 : FindFullHashesResponse::FindFullHashesResponse()
    3357           3 :   : ::google::protobuf::MessageLite() {
    3358           3 :   SharedCtor();
    3359             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.FindFullHashesResponse)
    3360           3 : }
    3361             : 
    3362           3 : void FindFullHashesResponse::InitAsDefaultInstance() {
    3363             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3364             :   minimum_wait_duration_ = const_cast< ::mozilla::safebrowsing::Duration*>(
    3365             :       ::mozilla::safebrowsing::Duration::internal_default_instance());
    3366             : #else
    3367           3 :   minimum_wait_duration_ = const_cast< ::mozilla::safebrowsing::Duration*>(&::mozilla::safebrowsing::Duration::default_instance());
    3368             : #endif
    3369             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3370             :   negative_cache_duration_ = const_cast< ::mozilla::safebrowsing::Duration*>(
    3371             :       ::mozilla::safebrowsing::Duration::internal_default_instance());
    3372             : #else
    3373           3 :   negative_cache_duration_ = const_cast< ::mozilla::safebrowsing::Duration*>(&::mozilla::safebrowsing::Duration::default_instance());
    3374             : #endif
    3375           3 : }
    3376             : 
    3377           0 : FindFullHashesResponse::FindFullHashesResponse(const FindFullHashesResponse& from)
    3378           0 :   : ::google::protobuf::MessageLite() {
    3379           0 :   SharedCtor();
    3380           0 :   MergeFrom(from);
    3381             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.FindFullHashesResponse)
    3382           0 : }
    3383             : 
    3384           3 : void FindFullHashesResponse::SharedCtor() {
    3385           3 :   _cached_size_ = 0;
    3386           3 :   minimum_wait_duration_ = NULL;
    3387           3 :   negative_cache_duration_ = NULL;
    3388           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    3389           3 : }
    3390             : 
    3391           0 : FindFullHashesResponse::~FindFullHashesResponse() {
    3392             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.FindFullHashesResponse)
    3393           0 :   SharedDtor();
    3394           0 : }
    3395             : 
    3396           0 : void FindFullHashesResponse::SharedDtor() {
    3397             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3398             :   if (this != &default_instance()) {
    3399             :   #else
    3400           0 :   if (this != default_instance_) {
    3401             :   #endif
    3402           0 :     delete minimum_wait_duration_;
    3403           0 :     delete negative_cache_duration_;
    3404             :   }
    3405           0 : }
    3406             : 
    3407           0 : void FindFullHashesResponse::SetCachedSize(int size) const {
    3408             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    3409           0 :   _cached_size_ = size;
    3410             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    3411           0 : }
    3412           0 : const FindFullHashesResponse& FindFullHashesResponse::default_instance() {
    3413             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3414             :   protobuf_AddDesc_safebrowsing_2eproto();
    3415             : #else
    3416           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    3417             : #endif
    3418           0 :   return *default_instance_;
    3419             : }
    3420             : 
    3421             : FindFullHashesResponse* FindFullHashesResponse::default_instance_ = NULL;
    3422             : 
    3423           0 : FindFullHashesResponse* FindFullHashesResponse::New() const {
    3424           0 :   return new FindFullHashesResponse;
    3425             : }
    3426             : 
    3427           0 : void FindFullHashesResponse::Clear() {
    3428           0 :   if (_has_bits_[0 / 32] & 6) {
    3429           0 :     if (has_minimum_wait_duration()) {
    3430           0 :       if (minimum_wait_duration_ != NULL) minimum_wait_duration_->::mozilla::safebrowsing::Duration::Clear();
    3431             :     }
    3432           0 :     if (has_negative_cache_duration()) {
    3433           0 :       if (negative_cache_duration_ != NULL) negative_cache_duration_->::mozilla::safebrowsing::Duration::Clear();
    3434             :     }
    3435             :   }
    3436           0 :   matches_.Clear();
    3437           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    3438           0 :   mutable_unknown_fields()->clear();
    3439           0 : }
    3440             : 
    3441           0 : bool FindFullHashesResponse::MergePartialFromCodedStream(
    3442             :     ::google::protobuf::io::CodedInputStream* input) {
    3443             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    3444             :   ::google::protobuf::uint32 tag;
    3445             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    3446           0 :       mutable_unknown_fields());
    3447             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    3448           0 :       &unknown_fields_string);
    3449             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.FindFullHashesResponse)
    3450             :   for (;;) {
    3451             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    3452           0 :     tag = p.first;
    3453           0 :     if (!p.second) goto handle_unusual;
    3454           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    3455             :       // repeated .mozilla.safebrowsing.ThreatMatch matches = 1;
    3456             :       case 1: {
    3457           0 :         if (tag == 10) {
    3458             :          parse_matches:
    3459           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    3460             :                 input, add_matches()));
    3461             :         } else {
    3462           0 :           goto handle_unusual;
    3463             :         }
    3464           0 :         if (input->ExpectTag(10)) goto parse_matches;
    3465           0 :         if (input->ExpectTag(18)) goto parse_minimum_wait_duration;
    3466           0 :         break;
    3467             :       }
    3468             : 
    3469             :       // optional .mozilla.safebrowsing.Duration minimum_wait_duration = 2;
    3470             :       case 2: {
    3471           0 :         if (tag == 18) {
    3472             :          parse_minimum_wait_duration:
    3473           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    3474             :                input, mutable_minimum_wait_duration()));
    3475             :         } else {
    3476           0 :           goto handle_unusual;
    3477             :         }
    3478           0 :         if (input->ExpectTag(26)) goto parse_negative_cache_duration;
    3479           0 :         break;
    3480             :       }
    3481             : 
    3482             :       // optional .mozilla.safebrowsing.Duration negative_cache_duration = 3;
    3483             :       case 3: {
    3484           0 :         if (tag == 26) {
    3485             :          parse_negative_cache_duration:
    3486           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    3487             :                input, mutable_negative_cache_duration()));
    3488             :         } else {
    3489           0 :           goto handle_unusual;
    3490             :         }
    3491           0 :         if (input->ExpectAtEnd()) goto success;
    3492           0 :         break;
    3493             :       }
    3494             : 
    3495             :       default: {
    3496             :       handle_unusual:
    3497           0 :         if (tag == 0 ||
    3498           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    3499             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    3500           0 :           goto success;
    3501             :         }
    3502           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    3503             :             input, tag, &unknown_fields_stream));
    3504           0 :         break;
    3505             :       }
    3506             :     }
    3507           0 :   }
    3508             : success:
    3509             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.FindFullHashesResponse)
    3510           0 :   return true;
    3511             : failure:
    3512             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.FindFullHashesResponse)
    3513           0 :   return false;
    3514             : #undef DO_
    3515             : }
    3516             : 
    3517           0 : void FindFullHashesResponse::SerializeWithCachedSizes(
    3518             :     ::google::protobuf::io::CodedOutputStream* output) const {
    3519             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.FindFullHashesResponse)
    3520             :   // repeated .mozilla.safebrowsing.ThreatMatch matches = 1;
    3521           0 :   for (int i = 0; i < this->matches_size(); i++) {
    3522           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    3523           0 :       1, this->matches(i), output);
    3524             :   }
    3525             : 
    3526             :   // optional .mozilla.safebrowsing.Duration minimum_wait_duration = 2;
    3527           0 :   if (has_minimum_wait_duration()) {
    3528           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    3529           0 :       2, this->minimum_wait_duration(), output);
    3530             :   }
    3531             : 
    3532             :   // optional .mozilla.safebrowsing.Duration negative_cache_duration = 3;
    3533           0 :   if (has_negative_cache_duration()) {
    3534           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    3535           0 :       3, this->negative_cache_duration(), output);
    3536             :   }
    3537             : 
    3538           0 :   output->WriteRaw(unknown_fields().data(),
    3539           0 :                    unknown_fields().size());
    3540             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.FindFullHashesResponse)
    3541           0 : }
    3542             : 
    3543           0 : int FindFullHashesResponse::ByteSize() const {
    3544           0 :   int total_size = 0;
    3545             : 
    3546           0 :   if (_has_bits_[1 / 32] & (0xffu << (1 % 32))) {
    3547             :     // optional .mozilla.safebrowsing.Duration minimum_wait_duration = 2;
    3548           0 :     if (has_minimum_wait_duration()) {
    3549           0 :       total_size += 1 +
    3550           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    3551             :           this->minimum_wait_duration());
    3552             :     }
    3553             : 
    3554             :     // optional .mozilla.safebrowsing.Duration negative_cache_duration = 3;
    3555           0 :     if (has_negative_cache_duration()) {
    3556           0 :       total_size += 1 +
    3557           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    3558             :           this->negative_cache_duration());
    3559             :     }
    3560             : 
    3561             :   }
    3562             :   // repeated .mozilla.safebrowsing.ThreatMatch matches = 1;
    3563           0 :   total_size += 1 * this->matches_size();
    3564           0 :   for (int i = 0; i < this->matches_size(); i++) {
    3565           0 :     total_size +=
    3566           0 :       ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    3567             :         this->matches(i));
    3568             :   }
    3569             : 
    3570           0 :   total_size += unknown_fields().size();
    3571             : 
    3572             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    3573           0 :   _cached_size_ = total_size;
    3574             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    3575           0 :   return total_size;
    3576             : }
    3577             : 
    3578           0 : void FindFullHashesResponse::CheckTypeAndMergeFrom(
    3579             :     const ::google::protobuf::MessageLite& from) {
    3580           0 :   MergeFrom(*::google::protobuf::down_cast<const FindFullHashesResponse*>(&from));
    3581           0 : }
    3582             : 
    3583           0 : void FindFullHashesResponse::MergeFrom(const FindFullHashesResponse& from) {
    3584           0 :   GOOGLE_CHECK_NE(&from, this);
    3585           0 :   matches_.MergeFrom(from.matches_);
    3586           0 :   if (from._has_bits_[1 / 32] & (0xffu << (1 % 32))) {
    3587           0 :     if (from.has_minimum_wait_duration()) {
    3588           0 :       mutable_minimum_wait_duration()->::mozilla::safebrowsing::Duration::MergeFrom(from.minimum_wait_duration());
    3589             :     }
    3590           0 :     if (from.has_negative_cache_duration()) {
    3591           0 :       mutable_negative_cache_duration()->::mozilla::safebrowsing::Duration::MergeFrom(from.negative_cache_duration());
    3592             :     }
    3593             :   }
    3594           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    3595           0 : }
    3596             : 
    3597           0 : void FindFullHashesResponse::CopyFrom(const FindFullHashesResponse& from) {
    3598           0 :   if (&from == this) return;
    3599           0 :   Clear();
    3600           0 :   MergeFrom(from);
    3601             : }
    3602             : 
    3603           0 : bool FindFullHashesResponse::IsInitialized() const {
    3604             : 
    3605           0 :   return true;
    3606             : }
    3607             : 
    3608           0 : void FindFullHashesResponse::Swap(FindFullHashesResponse* other) {
    3609           0 :   if (other != this) {
    3610           0 :     matches_.Swap(&other->matches_);
    3611           0 :     std::swap(minimum_wait_duration_, other->minimum_wait_duration_);
    3612           0 :     std::swap(negative_cache_duration_, other->negative_cache_duration_);
    3613           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    3614           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    3615           0 :     std::swap(_cached_size_, other->_cached_size_);
    3616             :   }
    3617           0 : }
    3618             : 
    3619           0 : ::std::string FindFullHashesResponse::GetTypeName() const {
    3620           0 :   return "mozilla.safebrowsing.FindFullHashesResponse";
    3621             : }
    3622             : 
    3623             : 
    3624             : // ===================================================================
    3625             : 
    3626           0 : bool ThreatHit_ThreatSourceType_IsValid(int value) {
    3627           0 :   switch(value) {
    3628             :     case 0:
    3629             :     case 1:
    3630             :     case 2:
    3631             :     case 3:
    3632           0 :       return true;
    3633             :     default:
    3634           0 :       return false;
    3635             :   }
    3636             : }
    3637             : 
    3638             : #ifndef _MSC_VER
    3639             : const ThreatHit_ThreatSourceType ThreatHit::THREAT_SOURCE_TYPE_UNSPECIFIED;
    3640             : const ThreatHit_ThreatSourceType ThreatHit::MATCHING_URL;
    3641             : const ThreatHit_ThreatSourceType ThreatHit::TAB_URL;
    3642             : const ThreatHit_ThreatSourceType ThreatHit::TAB_REDIRECT;
    3643             : const ThreatHit_ThreatSourceType ThreatHit::ThreatSourceType_MIN;
    3644             : const ThreatHit_ThreatSourceType ThreatHit::ThreatSourceType_MAX;
    3645             : const int ThreatHit::ThreatSourceType_ARRAYSIZE;
    3646             : #endif  // _MSC_VER
    3647             : #ifndef _MSC_VER
    3648             : const int ThreatHit_ThreatSource::kUrlFieldNumber;
    3649             : const int ThreatHit_ThreatSource::kTypeFieldNumber;
    3650             : const int ThreatHit_ThreatSource::kRemoteIpFieldNumber;
    3651             : const int ThreatHit_ThreatSource::kReferrerFieldNumber;
    3652             : #endif  // !_MSC_VER
    3653             : 
    3654           3 : ThreatHit_ThreatSource::ThreatHit_ThreatSource()
    3655           3 :   : ::google::protobuf::MessageLite() {
    3656           3 :   SharedCtor();
    3657             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ThreatHit.ThreatSource)
    3658           3 : }
    3659             : 
    3660           3 : void ThreatHit_ThreatSource::InitAsDefaultInstance() {
    3661           3 : }
    3662             : 
    3663           0 : ThreatHit_ThreatSource::ThreatHit_ThreatSource(const ThreatHit_ThreatSource& from)
    3664           0 :   : ::google::protobuf::MessageLite() {
    3665           0 :   SharedCtor();
    3666           0 :   MergeFrom(from);
    3667             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ThreatHit.ThreatSource)
    3668           0 : }
    3669             : 
    3670           3 : void ThreatHit_ThreatSource::SharedCtor() {
    3671           3 :   ::google::protobuf::internal::GetEmptyString();
    3672           3 :   _cached_size_ = 0;
    3673           3 :   url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    3674           3 :   type_ = 0;
    3675           3 :   remote_ip_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    3676           3 :   referrer_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    3677           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    3678           3 : }
    3679             : 
    3680           0 : ThreatHit_ThreatSource::~ThreatHit_ThreatSource() {
    3681             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ThreatHit.ThreatSource)
    3682           0 :   SharedDtor();
    3683           0 : }
    3684             : 
    3685           0 : void ThreatHit_ThreatSource::SharedDtor() {
    3686           0 :   if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    3687           0 :     delete url_;
    3688             :   }
    3689           0 :   if (remote_ip_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    3690           0 :     delete remote_ip_;
    3691             :   }
    3692           0 :   if (referrer_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    3693           0 :     delete referrer_;
    3694             :   }
    3695             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3696             :   if (this != &default_instance()) {
    3697             :   #else
    3698           0 :   if (this != default_instance_) {
    3699             :   #endif
    3700             :   }
    3701           0 : }
    3702             : 
    3703           0 : void ThreatHit_ThreatSource::SetCachedSize(int size) const {
    3704             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    3705           0 :   _cached_size_ = size;
    3706             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    3707           0 : }
    3708           0 : const ThreatHit_ThreatSource& ThreatHit_ThreatSource::default_instance() {
    3709             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3710             :   protobuf_AddDesc_safebrowsing_2eproto();
    3711             : #else
    3712           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    3713             : #endif
    3714           0 :   return *default_instance_;
    3715             : }
    3716             : 
    3717             : ThreatHit_ThreatSource* ThreatHit_ThreatSource::default_instance_ = NULL;
    3718             : 
    3719           0 : ThreatHit_ThreatSource* ThreatHit_ThreatSource::New() const {
    3720           0 :   return new ThreatHit_ThreatSource;
    3721             : }
    3722             : 
    3723           0 : void ThreatHit_ThreatSource::Clear() {
    3724           0 :   if (_has_bits_[0 / 32] & 15) {
    3725           0 :     if (has_url()) {
    3726           0 :       if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    3727           0 :         url_->clear();
    3728             :       }
    3729             :     }
    3730           0 :     type_ = 0;
    3731           0 :     if (has_remote_ip()) {
    3732           0 :       if (remote_ip_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    3733           0 :         remote_ip_->clear();
    3734             :       }
    3735             :     }
    3736           0 :     if (has_referrer()) {
    3737           0 :       if (referrer_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    3738           0 :         referrer_->clear();
    3739             :       }
    3740             :     }
    3741             :   }
    3742           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    3743           0 :   mutable_unknown_fields()->clear();
    3744           0 : }
    3745             : 
    3746           0 : bool ThreatHit_ThreatSource::MergePartialFromCodedStream(
    3747             :     ::google::protobuf::io::CodedInputStream* input) {
    3748             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    3749             :   ::google::protobuf::uint32 tag;
    3750             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    3751           0 :       mutable_unknown_fields());
    3752             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    3753           0 :       &unknown_fields_string);
    3754             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ThreatHit.ThreatSource)
    3755             :   for (;;) {
    3756             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    3757           0 :     tag = p.first;
    3758           0 :     if (!p.second) goto handle_unusual;
    3759           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    3760             :       // optional string url = 1;
    3761             :       case 1: {
    3762           0 :         if (tag == 10) {
    3763           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
    3764             :                 input, this->mutable_url()));
    3765             :         } else {
    3766           0 :           goto handle_unusual;
    3767             :         }
    3768           0 :         if (input->ExpectTag(16)) goto parse_type;
    3769           0 :         break;
    3770             :       }
    3771             : 
    3772             :       // optional .mozilla.safebrowsing.ThreatHit.ThreatSourceType type = 2;
    3773             :       case 2: {
    3774           0 :         if (tag == 16) {
    3775             :          parse_type:
    3776             :           int value;
    3777           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    3778             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    3779             :                  input, &value)));
    3780           0 :           if (::mozilla::safebrowsing::ThreatHit_ThreatSourceType_IsValid(value)) {
    3781           0 :             set_type(static_cast< ::mozilla::safebrowsing::ThreatHit_ThreatSourceType >(value));
    3782             :           } else {
    3783           0 :             unknown_fields_stream.WriteVarint32(tag);
    3784           0 :             unknown_fields_stream.WriteVarint32(value);
    3785             :           }
    3786             :         } else {
    3787           0 :           goto handle_unusual;
    3788             :         }
    3789           0 :         if (input->ExpectTag(26)) goto parse_remote_ip;
    3790           0 :         break;
    3791             :       }
    3792             : 
    3793             :       // optional string remote_ip = 3;
    3794             :       case 3: {
    3795           0 :         if (tag == 26) {
    3796             :          parse_remote_ip:
    3797           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
    3798             :                 input, this->mutable_remote_ip()));
    3799             :         } else {
    3800           0 :           goto handle_unusual;
    3801             :         }
    3802           0 :         if (input->ExpectTag(34)) goto parse_referrer;
    3803           0 :         break;
    3804             :       }
    3805             : 
    3806             :       // optional string referrer = 4;
    3807             :       case 4: {
    3808           0 :         if (tag == 34) {
    3809             :          parse_referrer:
    3810           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
    3811             :                 input, this->mutable_referrer()));
    3812             :         } else {
    3813           0 :           goto handle_unusual;
    3814             :         }
    3815           0 :         if (input->ExpectAtEnd()) goto success;
    3816           0 :         break;
    3817             :       }
    3818             : 
    3819             :       default: {
    3820             :       handle_unusual:
    3821           0 :         if (tag == 0 ||
    3822           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    3823             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    3824           0 :           goto success;
    3825             :         }
    3826           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    3827             :             input, tag, &unknown_fields_stream));
    3828           0 :         break;
    3829             :       }
    3830             :     }
    3831           0 :   }
    3832             : success:
    3833             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ThreatHit.ThreatSource)
    3834           0 :   return true;
    3835             : failure:
    3836             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ThreatHit.ThreatSource)
    3837           0 :   return false;
    3838             : #undef DO_
    3839             : }
    3840             : 
    3841           0 : void ThreatHit_ThreatSource::SerializeWithCachedSizes(
    3842             :     ::google::protobuf::io::CodedOutputStream* output) const {
    3843             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ThreatHit.ThreatSource)
    3844             :   // optional string url = 1;
    3845           0 :   if (has_url()) {
    3846           0 :     ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
    3847           0 :       1, this->url(), output);
    3848             :   }
    3849             : 
    3850             :   // optional .mozilla.safebrowsing.ThreatHit.ThreatSourceType type = 2;
    3851           0 :   if (has_type()) {
    3852           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    3853           0 :       2, this->type(), output);
    3854             :   }
    3855             : 
    3856             :   // optional string remote_ip = 3;
    3857           0 :   if (has_remote_ip()) {
    3858           0 :     ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
    3859           0 :       3, this->remote_ip(), output);
    3860             :   }
    3861             : 
    3862             :   // optional string referrer = 4;
    3863           0 :   if (has_referrer()) {
    3864           0 :     ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
    3865           0 :       4, this->referrer(), output);
    3866             :   }
    3867             : 
    3868           0 :   output->WriteRaw(unknown_fields().data(),
    3869           0 :                    unknown_fields().size());
    3870             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ThreatHit.ThreatSource)
    3871           0 : }
    3872             : 
    3873           0 : int ThreatHit_ThreatSource::ByteSize() const {
    3874           0 :   int total_size = 0;
    3875             : 
    3876           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    3877             :     // optional string url = 1;
    3878           0 :     if (has_url()) {
    3879           0 :       total_size += 1 +
    3880           0 :         ::google::protobuf::internal::WireFormatLite::StringSize(
    3881             :           this->url());
    3882             :     }
    3883             : 
    3884             :     // optional .mozilla.safebrowsing.ThreatHit.ThreatSourceType type = 2;
    3885           0 :     if (has_type()) {
    3886           0 :       total_size += 1 +
    3887           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
    3888             :     }
    3889             : 
    3890             :     // optional string remote_ip = 3;
    3891           0 :     if (has_remote_ip()) {
    3892           0 :       total_size += 1 +
    3893           0 :         ::google::protobuf::internal::WireFormatLite::StringSize(
    3894             :           this->remote_ip());
    3895             :     }
    3896             : 
    3897             :     // optional string referrer = 4;
    3898           0 :     if (has_referrer()) {
    3899           0 :       total_size += 1 +
    3900           0 :         ::google::protobuf::internal::WireFormatLite::StringSize(
    3901             :           this->referrer());
    3902             :     }
    3903             : 
    3904             :   }
    3905           0 :   total_size += unknown_fields().size();
    3906             : 
    3907             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    3908           0 :   _cached_size_ = total_size;
    3909             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    3910           0 :   return total_size;
    3911             : }
    3912             : 
    3913           0 : void ThreatHit_ThreatSource::CheckTypeAndMergeFrom(
    3914             :     const ::google::protobuf::MessageLite& from) {
    3915           0 :   MergeFrom(*::google::protobuf::down_cast<const ThreatHit_ThreatSource*>(&from));
    3916           0 : }
    3917             : 
    3918           0 : void ThreatHit_ThreatSource::MergeFrom(const ThreatHit_ThreatSource& from) {
    3919           0 :   GOOGLE_CHECK_NE(&from, this);
    3920           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    3921           0 :     if (from.has_url()) {
    3922           0 :       set_url(from.url());
    3923             :     }
    3924           0 :     if (from.has_type()) {
    3925           0 :       set_type(from.type());
    3926             :     }
    3927           0 :     if (from.has_remote_ip()) {
    3928           0 :       set_remote_ip(from.remote_ip());
    3929             :     }
    3930           0 :     if (from.has_referrer()) {
    3931           0 :       set_referrer(from.referrer());
    3932             :     }
    3933             :   }
    3934           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    3935           0 : }
    3936             : 
    3937           0 : void ThreatHit_ThreatSource::CopyFrom(const ThreatHit_ThreatSource& from) {
    3938           0 :   if (&from == this) return;
    3939           0 :   Clear();
    3940           0 :   MergeFrom(from);
    3941             : }
    3942             : 
    3943           0 : bool ThreatHit_ThreatSource::IsInitialized() const {
    3944             : 
    3945           0 :   return true;
    3946             : }
    3947             : 
    3948           0 : void ThreatHit_ThreatSource::Swap(ThreatHit_ThreatSource* other) {
    3949           0 :   if (other != this) {
    3950           0 :     std::swap(url_, other->url_);
    3951           0 :     std::swap(type_, other->type_);
    3952           0 :     std::swap(remote_ip_, other->remote_ip_);
    3953           0 :     std::swap(referrer_, other->referrer_);
    3954           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    3955           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    3956           0 :     std::swap(_cached_size_, other->_cached_size_);
    3957             :   }
    3958           0 : }
    3959             : 
    3960           0 : ::std::string ThreatHit_ThreatSource::GetTypeName() const {
    3961           0 :   return "mozilla.safebrowsing.ThreatHit.ThreatSource";
    3962             : }
    3963             : 
    3964             : 
    3965             : // -------------------------------------------------------------------
    3966             : 
    3967             : #ifndef _MSC_VER
    3968             : const int ThreatHit::kThreatTypeFieldNumber;
    3969             : const int ThreatHit::kPlatformTypeFieldNumber;
    3970             : const int ThreatHit::kEntryFieldNumber;
    3971             : const int ThreatHit::kResourcesFieldNumber;
    3972             : #endif  // !_MSC_VER
    3973             : 
    3974           3 : ThreatHit::ThreatHit()
    3975           3 :   : ::google::protobuf::MessageLite() {
    3976           3 :   SharedCtor();
    3977             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ThreatHit)
    3978           3 : }
    3979             : 
    3980           3 : void ThreatHit::InitAsDefaultInstance() {
    3981             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    3982             :   entry_ = const_cast< ::mozilla::safebrowsing::ThreatEntry*>(
    3983             :       ::mozilla::safebrowsing::ThreatEntry::internal_default_instance());
    3984             : #else
    3985           3 :   entry_ = const_cast< ::mozilla::safebrowsing::ThreatEntry*>(&::mozilla::safebrowsing::ThreatEntry::default_instance());
    3986             : #endif
    3987           3 : }
    3988             : 
    3989           0 : ThreatHit::ThreatHit(const ThreatHit& from)
    3990           0 :   : ::google::protobuf::MessageLite() {
    3991           0 :   SharedCtor();
    3992           0 :   MergeFrom(from);
    3993             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ThreatHit)
    3994           0 : }
    3995             : 
    3996           3 : void ThreatHit::SharedCtor() {
    3997           3 :   _cached_size_ = 0;
    3998           3 :   threat_type_ = 0;
    3999           3 :   platform_type_ = 0;
    4000           3 :   entry_ = NULL;
    4001           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    4002           3 : }
    4003             : 
    4004           0 : ThreatHit::~ThreatHit() {
    4005             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ThreatHit)
    4006           0 :   SharedDtor();
    4007           0 : }
    4008             : 
    4009           0 : void ThreatHit::SharedDtor() {
    4010             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    4011             :   if (this != &default_instance()) {
    4012             :   #else
    4013           0 :   if (this != default_instance_) {
    4014             :   #endif
    4015           0 :     delete entry_;
    4016             :   }
    4017           0 : }
    4018             : 
    4019           0 : void ThreatHit::SetCachedSize(int size) const {
    4020             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    4021           0 :   _cached_size_ = size;
    4022             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    4023           0 : }
    4024           0 : const ThreatHit& ThreatHit::default_instance() {
    4025             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    4026             :   protobuf_AddDesc_safebrowsing_2eproto();
    4027             : #else
    4028           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    4029             : #endif
    4030           0 :   return *default_instance_;
    4031             : }
    4032             : 
    4033             : ThreatHit* ThreatHit::default_instance_ = NULL;
    4034             : 
    4035           0 : ThreatHit* ThreatHit::New() const {
    4036           0 :   return new ThreatHit;
    4037             : }
    4038             : 
    4039           0 : void ThreatHit::Clear() {
    4040             : #define OFFSET_OF_FIELD_(f) (reinterpret_cast<char*>(      \
    4041             :   &reinterpret_cast<ThreatHit*>(16)->f) - \
    4042             :    reinterpret_cast<char*>(16))
    4043             : 
    4044             : #define ZR_(first, last) do {                              \
    4045             :     size_t f = OFFSET_OF_FIELD_(first);                    \
    4046             :     size_t n = OFFSET_OF_FIELD_(last) - f + sizeof(last);  \
    4047             :     ::memset(&first, 0, n);                                \
    4048             :   } while (0)
    4049             : 
    4050           0 :   if (_has_bits_[0 / 32] & 7) {
    4051           0 :     ZR_(threat_type_, platform_type_);
    4052           0 :     if (has_entry()) {
    4053           0 :       if (entry_ != NULL) entry_->::mozilla::safebrowsing::ThreatEntry::Clear();
    4054             :     }
    4055             :   }
    4056             : 
    4057             : #undef OFFSET_OF_FIELD_
    4058             : #undef ZR_
    4059             : 
    4060           0 :   resources_.Clear();
    4061           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    4062           0 :   mutable_unknown_fields()->clear();
    4063           0 : }
    4064             : 
    4065           0 : bool ThreatHit::MergePartialFromCodedStream(
    4066             :     ::google::protobuf::io::CodedInputStream* input) {
    4067             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    4068             :   ::google::protobuf::uint32 tag;
    4069             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    4070           0 :       mutable_unknown_fields());
    4071             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    4072           0 :       &unknown_fields_string);
    4073             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ThreatHit)
    4074             :   for (;;) {
    4075             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    4076           0 :     tag = p.first;
    4077           0 :     if (!p.second) goto handle_unusual;
    4078           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    4079             :       // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    4080             :       case 1: {
    4081           0 :         if (tag == 8) {
    4082             :           int value;
    4083           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    4084             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    4085             :                  input, &value)));
    4086           0 :           if (::mozilla::safebrowsing::ThreatType_IsValid(value)) {
    4087           0 :             set_threat_type(static_cast< ::mozilla::safebrowsing::ThreatType >(value));
    4088             :           } else {
    4089           0 :             unknown_fields_stream.WriteVarint32(tag);
    4090           0 :             unknown_fields_stream.WriteVarint32(value);
    4091             :           }
    4092             :         } else {
    4093           0 :           goto handle_unusual;
    4094             :         }
    4095           0 :         if (input->ExpectTag(16)) goto parse_platform_type;
    4096           0 :         break;
    4097             :       }
    4098             : 
    4099             :       // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
    4100             :       case 2: {
    4101           0 :         if (tag == 16) {
    4102             :          parse_platform_type:
    4103             :           int value;
    4104           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    4105             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    4106             :                  input, &value)));
    4107           0 :           if (::mozilla::safebrowsing::PlatformType_IsValid(value)) {
    4108           0 :             set_platform_type(static_cast< ::mozilla::safebrowsing::PlatformType >(value));
    4109             :           } else {
    4110           0 :             unknown_fields_stream.WriteVarint32(tag);
    4111           0 :             unknown_fields_stream.WriteVarint32(value);
    4112             :           }
    4113             :         } else {
    4114           0 :           goto handle_unusual;
    4115             :         }
    4116           0 :         if (input->ExpectTag(26)) goto parse_entry;
    4117           0 :         break;
    4118             :       }
    4119             : 
    4120             :       // optional .mozilla.safebrowsing.ThreatEntry entry = 3;
    4121             :       case 3: {
    4122           0 :         if (tag == 26) {
    4123             :          parse_entry:
    4124           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    4125             :                input, mutable_entry()));
    4126             :         } else {
    4127           0 :           goto handle_unusual;
    4128             :         }
    4129           0 :         if (input->ExpectTag(34)) goto parse_resources;
    4130           0 :         break;
    4131             :       }
    4132             : 
    4133             :       // repeated .mozilla.safebrowsing.ThreatHit.ThreatSource resources = 4;
    4134             :       case 4: {
    4135           0 :         if (tag == 34) {
    4136             :          parse_resources:
    4137           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    4138             :                 input, add_resources()));
    4139             :         } else {
    4140           0 :           goto handle_unusual;
    4141             :         }
    4142           0 :         if (input->ExpectTag(34)) goto parse_resources;
    4143           0 :         if (input->ExpectAtEnd()) goto success;
    4144           0 :         break;
    4145             :       }
    4146             : 
    4147             :       default: {
    4148             :       handle_unusual:
    4149           0 :         if (tag == 0 ||
    4150           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    4151             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    4152           0 :           goto success;
    4153             :         }
    4154           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    4155             :             input, tag, &unknown_fields_stream));
    4156           0 :         break;
    4157             :       }
    4158             :     }
    4159           0 :   }
    4160             : success:
    4161             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ThreatHit)
    4162           0 :   return true;
    4163             : failure:
    4164             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ThreatHit)
    4165           0 :   return false;
    4166             : #undef DO_
    4167             : }
    4168             : 
    4169           0 : void ThreatHit::SerializeWithCachedSizes(
    4170             :     ::google::protobuf::io::CodedOutputStream* output) const {
    4171             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ThreatHit)
    4172             :   // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    4173           0 :   if (has_threat_type()) {
    4174           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    4175           0 :       1, this->threat_type(), output);
    4176             :   }
    4177             : 
    4178             :   // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
    4179           0 :   if (has_platform_type()) {
    4180           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    4181           0 :       2, this->platform_type(), output);
    4182             :   }
    4183             : 
    4184             :   // optional .mozilla.safebrowsing.ThreatEntry entry = 3;
    4185           0 :   if (has_entry()) {
    4186           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    4187           0 :       3, this->entry(), output);
    4188             :   }
    4189             : 
    4190             :   // repeated .mozilla.safebrowsing.ThreatHit.ThreatSource resources = 4;
    4191           0 :   for (int i = 0; i < this->resources_size(); i++) {
    4192           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    4193           0 :       4, this->resources(i), output);
    4194             :   }
    4195             : 
    4196           0 :   output->WriteRaw(unknown_fields().data(),
    4197           0 :                    unknown_fields().size());
    4198             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ThreatHit)
    4199           0 : }
    4200             : 
    4201           0 : int ThreatHit::ByteSize() const {
    4202           0 :   int total_size = 0;
    4203             : 
    4204           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    4205             :     // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    4206           0 :     if (has_threat_type()) {
    4207           0 :       total_size += 1 +
    4208           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->threat_type());
    4209             :     }
    4210             : 
    4211             :     // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
    4212           0 :     if (has_platform_type()) {
    4213           0 :       total_size += 1 +
    4214           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->platform_type());
    4215             :     }
    4216             : 
    4217             :     // optional .mozilla.safebrowsing.ThreatEntry entry = 3;
    4218           0 :     if (has_entry()) {
    4219           0 :       total_size += 1 +
    4220           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    4221             :           this->entry());
    4222             :     }
    4223             : 
    4224             :   }
    4225             :   // repeated .mozilla.safebrowsing.ThreatHit.ThreatSource resources = 4;
    4226           0 :   total_size += 1 * this->resources_size();
    4227           0 :   for (int i = 0; i < this->resources_size(); i++) {
    4228           0 :     total_size +=
    4229           0 :       ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    4230             :         this->resources(i));
    4231             :   }
    4232             : 
    4233           0 :   total_size += unknown_fields().size();
    4234             : 
    4235             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    4236           0 :   _cached_size_ = total_size;
    4237             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    4238           0 :   return total_size;
    4239             : }
    4240             : 
    4241           0 : void ThreatHit::CheckTypeAndMergeFrom(
    4242             :     const ::google::protobuf::MessageLite& from) {
    4243           0 :   MergeFrom(*::google::protobuf::down_cast<const ThreatHit*>(&from));
    4244           0 : }
    4245             : 
    4246           0 : void ThreatHit::MergeFrom(const ThreatHit& from) {
    4247           0 :   GOOGLE_CHECK_NE(&from, this);
    4248           0 :   resources_.MergeFrom(from.resources_);
    4249           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    4250           0 :     if (from.has_threat_type()) {
    4251           0 :       set_threat_type(from.threat_type());
    4252             :     }
    4253           0 :     if (from.has_platform_type()) {
    4254           0 :       set_platform_type(from.platform_type());
    4255             :     }
    4256           0 :     if (from.has_entry()) {
    4257           0 :       mutable_entry()->::mozilla::safebrowsing::ThreatEntry::MergeFrom(from.entry());
    4258             :     }
    4259             :   }
    4260           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    4261           0 : }
    4262             : 
    4263           0 : void ThreatHit::CopyFrom(const ThreatHit& from) {
    4264           0 :   if (&from == this) return;
    4265           0 :   Clear();
    4266           0 :   MergeFrom(from);
    4267             : }
    4268             : 
    4269           0 : bool ThreatHit::IsInitialized() const {
    4270             : 
    4271           0 :   return true;
    4272             : }
    4273             : 
    4274           0 : void ThreatHit::Swap(ThreatHit* other) {
    4275           0 :   if (other != this) {
    4276           0 :     std::swap(threat_type_, other->threat_type_);
    4277           0 :     std::swap(platform_type_, other->platform_type_);
    4278           0 :     std::swap(entry_, other->entry_);
    4279           0 :     resources_.Swap(&other->resources_);
    4280           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    4281           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    4282           0 :     std::swap(_cached_size_, other->_cached_size_);
    4283             :   }
    4284           0 : }
    4285             : 
    4286           0 : ::std::string ThreatHit::GetTypeName() const {
    4287           0 :   return "mozilla.safebrowsing.ThreatHit";
    4288             : }
    4289             : 
    4290             : 
    4291             : // ===================================================================
    4292             : 
    4293             : #ifndef _MSC_VER
    4294             : const int ClientInfo::kClientIdFieldNumber;
    4295             : const int ClientInfo::kClientVersionFieldNumber;
    4296             : #endif  // !_MSC_VER
    4297             : 
    4298           3 : ClientInfo::ClientInfo()
    4299           3 :   : ::google::protobuf::MessageLite() {
    4300           3 :   SharedCtor();
    4301             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ClientInfo)
    4302           3 : }
    4303             : 
    4304           3 : void ClientInfo::InitAsDefaultInstance() {
    4305           3 : }
    4306             : 
    4307           0 : ClientInfo::ClientInfo(const ClientInfo& from)
    4308           0 :   : ::google::protobuf::MessageLite() {
    4309           0 :   SharedCtor();
    4310           0 :   MergeFrom(from);
    4311             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ClientInfo)
    4312           0 : }
    4313             : 
    4314           3 : void ClientInfo::SharedCtor() {
    4315           3 :   ::google::protobuf::internal::GetEmptyString();
    4316           3 :   _cached_size_ = 0;
    4317           3 :   client_id_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    4318           3 :   client_version_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    4319           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    4320           3 : }
    4321             : 
    4322           0 : ClientInfo::~ClientInfo() {
    4323             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ClientInfo)
    4324           0 :   SharedDtor();
    4325           0 : }
    4326             : 
    4327           0 : void ClientInfo::SharedDtor() {
    4328           0 :   if (client_id_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    4329           0 :     delete client_id_;
    4330             :   }
    4331           0 :   if (client_version_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    4332           0 :     delete client_version_;
    4333             :   }
    4334             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    4335             :   if (this != &default_instance()) {
    4336             :   #else
    4337           0 :   if (this != default_instance_) {
    4338             :   #endif
    4339             :   }
    4340           0 : }
    4341             : 
    4342           0 : void ClientInfo::SetCachedSize(int size) const {
    4343             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    4344           0 :   _cached_size_ = size;
    4345             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    4346           0 : }
    4347           9 : const ClientInfo& ClientInfo::default_instance() {
    4348             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    4349             :   protobuf_AddDesc_safebrowsing_2eproto();
    4350             : #else
    4351           9 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    4352             : #endif
    4353           9 :   return *default_instance_;
    4354             : }
    4355             : 
    4356             : ClientInfo* ClientInfo::default_instance_ = NULL;
    4357             : 
    4358           0 : ClientInfo* ClientInfo::New() const {
    4359           0 :   return new ClientInfo;
    4360             : }
    4361             : 
    4362           0 : void ClientInfo::Clear() {
    4363           0 :   if (_has_bits_[0 / 32] & 3) {
    4364           0 :     if (has_client_id()) {
    4365           0 :       if (client_id_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    4366           0 :         client_id_->clear();
    4367             :       }
    4368             :     }
    4369           0 :     if (has_client_version()) {
    4370           0 :       if (client_version_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    4371           0 :         client_version_->clear();
    4372             :       }
    4373             :     }
    4374             :   }
    4375           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    4376           0 :   mutable_unknown_fields()->clear();
    4377           0 : }
    4378             : 
    4379           0 : bool ClientInfo::MergePartialFromCodedStream(
    4380             :     ::google::protobuf::io::CodedInputStream* input) {
    4381             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    4382             :   ::google::protobuf::uint32 tag;
    4383             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    4384           0 :       mutable_unknown_fields());
    4385             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    4386           0 :       &unknown_fields_string);
    4387             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ClientInfo)
    4388             :   for (;;) {
    4389             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    4390           0 :     tag = p.first;
    4391           0 :     if (!p.second) goto handle_unusual;
    4392           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    4393             :       // optional string client_id = 1;
    4394             :       case 1: {
    4395           0 :         if (tag == 10) {
    4396           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
    4397             :                 input, this->mutable_client_id()));
    4398             :         } else {
    4399           0 :           goto handle_unusual;
    4400             :         }
    4401           0 :         if (input->ExpectTag(18)) goto parse_client_version;
    4402           0 :         break;
    4403             :       }
    4404             : 
    4405             :       // optional string client_version = 2;
    4406             :       case 2: {
    4407           0 :         if (tag == 18) {
    4408             :          parse_client_version:
    4409           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
    4410             :                 input, this->mutable_client_version()));
    4411             :         } else {
    4412           0 :           goto handle_unusual;
    4413             :         }
    4414           0 :         if (input->ExpectAtEnd()) goto success;
    4415           0 :         break;
    4416             :       }
    4417             : 
    4418             :       default: {
    4419             :       handle_unusual:
    4420           0 :         if (tag == 0 ||
    4421           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    4422             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    4423           0 :           goto success;
    4424             :         }
    4425           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    4426             :             input, tag, &unknown_fields_stream));
    4427           0 :         break;
    4428             :       }
    4429             :     }
    4430           0 :   }
    4431             : success:
    4432             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ClientInfo)
    4433           0 :   return true;
    4434             : failure:
    4435             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ClientInfo)
    4436           0 :   return false;
    4437             : #undef DO_
    4438             : }
    4439             : 
    4440           0 : void ClientInfo::SerializeWithCachedSizes(
    4441             :     ::google::protobuf::io::CodedOutputStream* output) const {
    4442             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ClientInfo)
    4443             :   // optional string client_id = 1;
    4444           0 :   if (has_client_id()) {
    4445           0 :     ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
    4446           0 :       1, this->client_id(), output);
    4447             :   }
    4448             : 
    4449             :   // optional string client_version = 2;
    4450           0 :   if (has_client_version()) {
    4451           0 :     ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
    4452           0 :       2, this->client_version(), output);
    4453             :   }
    4454             : 
    4455           0 :   output->WriteRaw(unknown_fields().data(),
    4456           0 :                    unknown_fields().size());
    4457             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ClientInfo)
    4458           0 : }
    4459             : 
    4460           0 : int ClientInfo::ByteSize() const {
    4461           0 :   int total_size = 0;
    4462             : 
    4463           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    4464             :     // optional string client_id = 1;
    4465           0 :     if (has_client_id()) {
    4466           0 :       total_size += 1 +
    4467           0 :         ::google::protobuf::internal::WireFormatLite::StringSize(
    4468             :           this->client_id());
    4469             :     }
    4470             : 
    4471             :     // optional string client_version = 2;
    4472           0 :     if (has_client_version()) {
    4473           0 :       total_size += 1 +
    4474           0 :         ::google::protobuf::internal::WireFormatLite::StringSize(
    4475             :           this->client_version());
    4476             :     }
    4477             : 
    4478             :   }
    4479           0 :   total_size += unknown_fields().size();
    4480             : 
    4481             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    4482           0 :   _cached_size_ = total_size;
    4483             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    4484           0 :   return total_size;
    4485             : }
    4486             : 
    4487           0 : void ClientInfo::CheckTypeAndMergeFrom(
    4488             :     const ::google::protobuf::MessageLite& from) {
    4489           0 :   MergeFrom(*::google::protobuf::down_cast<const ClientInfo*>(&from));
    4490           0 : }
    4491             : 
    4492           0 : void ClientInfo::MergeFrom(const ClientInfo& from) {
    4493           0 :   GOOGLE_CHECK_NE(&from, this);
    4494           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    4495           0 :     if (from.has_client_id()) {
    4496           0 :       set_client_id(from.client_id());
    4497             :     }
    4498           0 :     if (from.has_client_version()) {
    4499           0 :       set_client_version(from.client_version());
    4500             :     }
    4501             :   }
    4502           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    4503           0 : }
    4504             : 
    4505           0 : void ClientInfo::CopyFrom(const ClientInfo& from) {
    4506           0 :   if (&from == this) return;
    4507           0 :   Clear();
    4508           0 :   MergeFrom(from);
    4509             : }
    4510             : 
    4511           0 : bool ClientInfo::IsInitialized() const {
    4512             : 
    4513           0 :   return true;
    4514             : }
    4515             : 
    4516           0 : void ClientInfo::Swap(ClientInfo* other) {
    4517           0 :   if (other != this) {
    4518           0 :     std::swap(client_id_, other->client_id_);
    4519           0 :     std::swap(client_version_, other->client_version_);
    4520           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    4521           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    4522           0 :     std::swap(_cached_size_, other->_cached_size_);
    4523             :   }
    4524           0 : }
    4525             : 
    4526           0 : ::std::string ClientInfo::GetTypeName() const {
    4527           0 :   return "mozilla.safebrowsing.ClientInfo";
    4528             : }
    4529             : 
    4530             : 
    4531             : // ===================================================================
    4532             : 
    4533           0 : bool ChromeClientInfo_SafeBrowsingReportingPopulation_IsValid(int value) {
    4534           0 :   switch(value) {
    4535             :     case 0:
    4536             :     case 1:
    4537             :     case 2:
    4538             :     case 3:
    4539           0 :       return true;
    4540             :     default:
    4541           0 :       return false;
    4542             :   }
    4543             : }
    4544             : 
    4545             : #ifndef _MSC_VER
    4546             : const ChromeClientInfo_SafeBrowsingReportingPopulation ChromeClientInfo::UNSPECIFIED;
    4547             : const ChromeClientInfo_SafeBrowsingReportingPopulation ChromeClientInfo::OPT_OUT;
    4548             : const ChromeClientInfo_SafeBrowsingReportingPopulation ChromeClientInfo::EXTENDED;
    4549             : const ChromeClientInfo_SafeBrowsingReportingPopulation ChromeClientInfo::SCOUT;
    4550             : const ChromeClientInfo_SafeBrowsingReportingPopulation ChromeClientInfo::SafeBrowsingReportingPopulation_MIN;
    4551             : const ChromeClientInfo_SafeBrowsingReportingPopulation ChromeClientInfo::SafeBrowsingReportingPopulation_MAX;
    4552             : const int ChromeClientInfo::SafeBrowsingReportingPopulation_ARRAYSIZE;
    4553             : #endif  // _MSC_VER
    4554             : #ifndef _MSC_VER
    4555             : const int ChromeClientInfo::kReportingPopulationFieldNumber;
    4556             : #endif  // !_MSC_VER
    4557             : 
    4558           3 : ChromeClientInfo::ChromeClientInfo()
    4559           3 :   : ::google::protobuf::MessageLite() {
    4560           3 :   SharedCtor();
    4561             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ChromeClientInfo)
    4562           3 : }
    4563             : 
    4564           3 : void ChromeClientInfo::InitAsDefaultInstance() {
    4565           3 : }
    4566             : 
    4567           0 : ChromeClientInfo::ChromeClientInfo(const ChromeClientInfo& from)
    4568           0 :   : ::google::protobuf::MessageLite() {
    4569           0 :   SharedCtor();
    4570           0 :   MergeFrom(from);
    4571             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ChromeClientInfo)
    4572           0 : }
    4573             : 
    4574           3 : void ChromeClientInfo::SharedCtor() {
    4575           3 :   _cached_size_ = 0;
    4576           3 :   reporting_population_ = 0;
    4577           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    4578           3 : }
    4579             : 
    4580           0 : ChromeClientInfo::~ChromeClientInfo() {
    4581             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ChromeClientInfo)
    4582           0 :   SharedDtor();
    4583           0 : }
    4584             : 
    4585           0 : void ChromeClientInfo::SharedDtor() {
    4586             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    4587             :   if (this != &default_instance()) {
    4588             :   #else
    4589           0 :   if (this != default_instance_) {
    4590             :   #endif
    4591             :   }
    4592           0 : }
    4593             : 
    4594           0 : void ChromeClientInfo::SetCachedSize(int size) const {
    4595             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    4596           0 :   _cached_size_ = size;
    4597             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    4598           0 : }
    4599           3 : const ChromeClientInfo& ChromeClientInfo::default_instance() {
    4600             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    4601             :   protobuf_AddDesc_safebrowsing_2eproto();
    4602             : #else
    4603           3 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    4604             : #endif
    4605           3 :   return *default_instance_;
    4606             : }
    4607             : 
    4608             : ChromeClientInfo* ChromeClientInfo::default_instance_ = NULL;
    4609             : 
    4610           0 : ChromeClientInfo* ChromeClientInfo::New() const {
    4611           0 :   return new ChromeClientInfo;
    4612             : }
    4613             : 
    4614           0 : void ChromeClientInfo::Clear() {
    4615           0 :   reporting_population_ = 0;
    4616           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    4617           0 :   mutable_unknown_fields()->clear();
    4618           0 : }
    4619             : 
    4620           0 : bool ChromeClientInfo::MergePartialFromCodedStream(
    4621             :     ::google::protobuf::io::CodedInputStream* input) {
    4622             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    4623             :   ::google::protobuf::uint32 tag;
    4624             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    4625           0 :       mutable_unknown_fields());
    4626             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    4627           0 :       &unknown_fields_string);
    4628             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ChromeClientInfo)
    4629             :   for (;;) {
    4630             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    4631           0 :     tag = p.first;
    4632           0 :     if (!p.second) goto handle_unusual;
    4633           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    4634             :       // optional .mozilla.safebrowsing.ChromeClientInfo.SafeBrowsingReportingPopulation reporting_population = 1;
    4635             :       case 1: {
    4636           0 :         if (tag == 8) {
    4637             :           int value;
    4638           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    4639             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    4640             :                  input, &value)));
    4641           0 :           if (::mozilla::safebrowsing::ChromeClientInfo_SafeBrowsingReportingPopulation_IsValid(value)) {
    4642           0 :             set_reporting_population(static_cast< ::mozilla::safebrowsing::ChromeClientInfo_SafeBrowsingReportingPopulation >(value));
    4643             :           } else {
    4644           0 :             unknown_fields_stream.WriteVarint32(tag);
    4645           0 :             unknown_fields_stream.WriteVarint32(value);
    4646             :           }
    4647             :         } else {
    4648           0 :           goto handle_unusual;
    4649             :         }
    4650           0 :         if (input->ExpectAtEnd()) goto success;
    4651           0 :         break;
    4652             :       }
    4653             : 
    4654             :       default: {
    4655             :       handle_unusual:
    4656           0 :         if (tag == 0 ||
    4657           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    4658             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    4659           0 :           goto success;
    4660             :         }
    4661           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    4662             :             input, tag, &unknown_fields_stream));
    4663           0 :         break;
    4664             :       }
    4665             :     }
    4666           0 :   }
    4667             : success:
    4668             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ChromeClientInfo)
    4669           0 :   return true;
    4670             : failure:
    4671             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ChromeClientInfo)
    4672           0 :   return false;
    4673             : #undef DO_
    4674             : }
    4675             : 
    4676           0 : void ChromeClientInfo::SerializeWithCachedSizes(
    4677             :     ::google::protobuf::io::CodedOutputStream* output) const {
    4678             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ChromeClientInfo)
    4679             :   // optional .mozilla.safebrowsing.ChromeClientInfo.SafeBrowsingReportingPopulation reporting_population = 1;
    4680           0 :   if (has_reporting_population()) {
    4681           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    4682           0 :       1, this->reporting_population(), output);
    4683             :   }
    4684             : 
    4685           0 :   output->WriteRaw(unknown_fields().data(),
    4686           0 :                    unknown_fields().size());
    4687             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ChromeClientInfo)
    4688           0 : }
    4689             : 
    4690           0 : int ChromeClientInfo::ByteSize() const {
    4691           0 :   int total_size = 0;
    4692             : 
    4693           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    4694             :     // optional .mozilla.safebrowsing.ChromeClientInfo.SafeBrowsingReportingPopulation reporting_population = 1;
    4695           0 :     if (has_reporting_population()) {
    4696           0 :       total_size += 1 +
    4697           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->reporting_population());
    4698             :     }
    4699             : 
    4700             :   }
    4701           0 :   total_size += unknown_fields().size();
    4702             : 
    4703             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    4704           0 :   _cached_size_ = total_size;
    4705             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    4706           0 :   return total_size;
    4707             : }
    4708             : 
    4709           0 : void ChromeClientInfo::CheckTypeAndMergeFrom(
    4710             :     const ::google::protobuf::MessageLite& from) {
    4711           0 :   MergeFrom(*::google::protobuf::down_cast<const ChromeClientInfo*>(&from));
    4712           0 : }
    4713             : 
    4714           0 : void ChromeClientInfo::MergeFrom(const ChromeClientInfo& from) {
    4715           0 :   GOOGLE_CHECK_NE(&from, this);
    4716           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    4717           0 :     if (from.has_reporting_population()) {
    4718           0 :       set_reporting_population(from.reporting_population());
    4719             :     }
    4720             :   }
    4721           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    4722           0 : }
    4723             : 
    4724           0 : void ChromeClientInfo::CopyFrom(const ChromeClientInfo& from) {
    4725           0 :   if (&from == this) return;
    4726           0 :   Clear();
    4727           0 :   MergeFrom(from);
    4728             : }
    4729             : 
    4730           0 : bool ChromeClientInfo::IsInitialized() const {
    4731             : 
    4732           0 :   return true;
    4733             : }
    4734             : 
    4735           0 : void ChromeClientInfo::Swap(ChromeClientInfo* other) {
    4736           0 :   if (other != this) {
    4737           0 :     std::swap(reporting_population_, other->reporting_population_);
    4738           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    4739           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    4740           0 :     std::swap(_cached_size_, other->_cached_size_);
    4741             :   }
    4742           0 : }
    4743             : 
    4744           0 : ::std::string ChromeClientInfo::GetTypeName() const {
    4745           0 :   return "mozilla.safebrowsing.ChromeClientInfo";
    4746             : }
    4747             : 
    4748             : 
    4749             : // ===================================================================
    4750             : 
    4751             : #ifndef _MSC_VER
    4752             : const int Checksum::kSha256FieldNumber;
    4753             : #endif  // !_MSC_VER
    4754             : 
    4755           3 : Checksum::Checksum()
    4756           3 :   : ::google::protobuf::MessageLite() {
    4757           3 :   SharedCtor();
    4758             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.Checksum)
    4759           3 : }
    4760             : 
    4761           3 : void Checksum::InitAsDefaultInstance() {
    4762           3 : }
    4763             : 
    4764           0 : Checksum::Checksum(const Checksum& from)
    4765           0 :   : ::google::protobuf::MessageLite() {
    4766           0 :   SharedCtor();
    4767           0 :   MergeFrom(from);
    4768             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.Checksum)
    4769           0 : }
    4770             : 
    4771           3 : void Checksum::SharedCtor() {
    4772           3 :   ::google::protobuf::internal::GetEmptyString();
    4773           3 :   _cached_size_ = 0;
    4774           3 :   sha256_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    4775           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    4776           3 : }
    4777             : 
    4778           0 : Checksum::~Checksum() {
    4779             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.Checksum)
    4780           0 :   SharedDtor();
    4781           0 : }
    4782             : 
    4783           0 : void Checksum::SharedDtor() {
    4784           0 :   if (sha256_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    4785           0 :     delete sha256_;
    4786             :   }
    4787             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    4788             :   if (this != &default_instance()) {
    4789             :   #else
    4790           0 :   if (this != default_instance_) {
    4791             :   #endif
    4792             :   }
    4793           0 : }
    4794             : 
    4795           0 : void Checksum::SetCachedSize(int size) const {
    4796             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    4797           0 :   _cached_size_ = size;
    4798             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    4799           0 : }
    4800           3 : const Checksum& Checksum::default_instance() {
    4801             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    4802             :   protobuf_AddDesc_safebrowsing_2eproto();
    4803             : #else
    4804           3 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    4805             : #endif
    4806           3 :   return *default_instance_;
    4807             : }
    4808             : 
    4809             : Checksum* Checksum::default_instance_ = NULL;
    4810             : 
    4811           0 : Checksum* Checksum::New() const {
    4812           0 :   return new Checksum;
    4813             : }
    4814             : 
    4815           0 : void Checksum::Clear() {
    4816           0 :   if (has_sha256()) {
    4817           0 :     if (sha256_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    4818           0 :       sha256_->clear();
    4819             :     }
    4820             :   }
    4821           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    4822           0 :   mutable_unknown_fields()->clear();
    4823           0 : }
    4824             : 
    4825           0 : bool Checksum::MergePartialFromCodedStream(
    4826             :     ::google::protobuf::io::CodedInputStream* input) {
    4827             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    4828             :   ::google::protobuf::uint32 tag;
    4829             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    4830           0 :       mutable_unknown_fields());
    4831             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    4832           0 :       &unknown_fields_string);
    4833             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.Checksum)
    4834             :   for (;;) {
    4835             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    4836           0 :     tag = p.first;
    4837           0 :     if (!p.second) goto handle_unusual;
    4838           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    4839             :       // optional bytes sha256 = 1;
    4840             :       case 1: {
    4841           0 :         if (tag == 10) {
    4842           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
    4843             :                 input, this->mutable_sha256()));
    4844             :         } else {
    4845           0 :           goto handle_unusual;
    4846             :         }
    4847           0 :         if (input->ExpectAtEnd()) goto success;
    4848           0 :         break;
    4849             :       }
    4850             : 
    4851             :       default: {
    4852             :       handle_unusual:
    4853           0 :         if (tag == 0 ||
    4854           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    4855             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    4856           0 :           goto success;
    4857             :         }
    4858           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    4859             :             input, tag, &unknown_fields_stream));
    4860           0 :         break;
    4861             :       }
    4862             :     }
    4863           0 :   }
    4864             : success:
    4865             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.Checksum)
    4866           0 :   return true;
    4867             : failure:
    4868             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.Checksum)
    4869           0 :   return false;
    4870             : #undef DO_
    4871             : }
    4872             : 
    4873           0 : void Checksum::SerializeWithCachedSizes(
    4874             :     ::google::protobuf::io::CodedOutputStream* output) const {
    4875             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.Checksum)
    4876             :   // optional bytes sha256 = 1;
    4877           0 :   if (has_sha256()) {
    4878           0 :     ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
    4879           0 :       1, this->sha256(), output);
    4880             :   }
    4881             : 
    4882           0 :   output->WriteRaw(unknown_fields().data(),
    4883           0 :                    unknown_fields().size());
    4884             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.Checksum)
    4885           0 : }
    4886             : 
    4887           0 : int Checksum::ByteSize() const {
    4888           0 :   int total_size = 0;
    4889             : 
    4890           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    4891             :     // optional bytes sha256 = 1;
    4892           0 :     if (has_sha256()) {
    4893           0 :       total_size += 1 +
    4894           0 :         ::google::protobuf::internal::WireFormatLite::BytesSize(
    4895             :           this->sha256());
    4896             :     }
    4897             : 
    4898             :   }
    4899           0 :   total_size += unknown_fields().size();
    4900             : 
    4901             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    4902           0 :   _cached_size_ = total_size;
    4903             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    4904           0 :   return total_size;
    4905             : }
    4906             : 
    4907           0 : void Checksum::CheckTypeAndMergeFrom(
    4908             :     const ::google::protobuf::MessageLite& from) {
    4909           0 :   MergeFrom(*::google::protobuf::down_cast<const Checksum*>(&from));
    4910           0 : }
    4911             : 
    4912           0 : void Checksum::MergeFrom(const Checksum& from) {
    4913           0 :   GOOGLE_CHECK_NE(&from, this);
    4914           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    4915           0 :     if (from.has_sha256()) {
    4916           0 :       set_sha256(from.sha256());
    4917             :     }
    4918             :   }
    4919           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    4920           0 : }
    4921             : 
    4922           0 : void Checksum::CopyFrom(const Checksum& from) {
    4923           0 :   if (&from == this) return;
    4924           0 :   Clear();
    4925           0 :   MergeFrom(from);
    4926             : }
    4927             : 
    4928           0 : bool Checksum::IsInitialized() const {
    4929             : 
    4930           0 :   return true;
    4931             : }
    4932             : 
    4933           0 : void Checksum::Swap(Checksum* other) {
    4934           0 :   if (other != this) {
    4935           0 :     std::swap(sha256_, other->sha256_);
    4936           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    4937           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    4938           0 :     std::swap(_cached_size_, other->_cached_size_);
    4939             :   }
    4940           0 : }
    4941             : 
    4942           0 : ::std::string Checksum::GetTypeName() const {
    4943           0 :   return "mozilla.safebrowsing.Checksum";
    4944             : }
    4945             : 
    4946             : 
    4947             : // ===================================================================
    4948             : 
    4949             : #ifndef _MSC_VER
    4950             : const int ThreatEntry::kHashFieldNumber;
    4951             : const int ThreatEntry::kUrlFieldNumber;
    4952             : #endif  // !_MSC_VER
    4953             : 
    4954           3 : ThreatEntry::ThreatEntry()
    4955           3 :   : ::google::protobuf::MessageLite() {
    4956           3 :   SharedCtor();
    4957             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ThreatEntry)
    4958           3 : }
    4959             : 
    4960           3 : void ThreatEntry::InitAsDefaultInstance() {
    4961           3 : }
    4962             : 
    4963           0 : ThreatEntry::ThreatEntry(const ThreatEntry& from)
    4964           0 :   : ::google::protobuf::MessageLite() {
    4965           0 :   SharedCtor();
    4966           0 :   MergeFrom(from);
    4967             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ThreatEntry)
    4968           0 : }
    4969             : 
    4970           3 : void ThreatEntry::SharedCtor() {
    4971           3 :   ::google::protobuf::internal::GetEmptyString();
    4972           3 :   _cached_size_ = 0;
    4973           3 :   hash_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    4974           3 :   url_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    4975           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    4976           3 : }
    4977             : 
    4978           0 : ThreatEntry::~ThreatEntry() {
    4979             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ThreatEntry)
    4980           0 :   SharedDtor();
    4981           0 : }
    4982             : 
    4983           0 : void ThreatEntry::SharedDtor() {
    4984           0 :   if (hash_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    4985           0 :     delete hash_;
    4986             :   }
    4987           0 :   if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    4988           0 :     delete url_;
    4989             :   }
    4990             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    4991             :   if (this != &default_instance()) {
    4992             :   #else
    4993           0 :   if (this != default_instance_) {
    4994             :   #endif
    4995             :   }
    4996           0 : }
    4997             : 
    4998           0 : void ThreatEntry::SetCachedSize(int size) const {
    4999             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    5000           0 :   _cached_size_ = size;
    5001             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    5002           0 : }
    5003           6 : const ThreatEntry& ThreatEntry::default_instance() {
    5004             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5005             :   protobuf_AddDesc_safebrowsing_2eproto();
    5006             : #else
    5007           6 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    5008             : #endif
    5009           6 :   return *default_instance_;
    5010             : }
    5011             : 
    5012             : ThreatEntry* ThreatEntry::default_instance_ = NULL;
    5013             : 
    5014           0 : ThreatEntry* ThreatEntry::New() const {
    5015           0 :   return new ThreatEntry;
    5016             : }
    5017             : 
    5018           0 : void ThreatEntry::Clear() {
    5019           0 :   if (_has_bits_[0 / 32] & 3) {
    5020           0 :     if (has_hash()) {
    5021           0 :       if (hash_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    5022           0 :         hash_->clear();
    5023             :       }
    5024             :     }
    5025           0 :     if (has_url()) {
    5026           0 :       if (url_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    5027           0 :         url_->clear();
    5028             :       }
    5029             :     }
    5030             :   }
    5031           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    5032           0 :   mutable_unknown_fields()->clear();
    5033           0 : }
    5034             : 
    5035           0 : bool ThreatEntry::MergePartialFromCodedStream(
    5036             :     ::google::protobuf::io::CodedInputStream* input) {
    5037             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    5038             :   ::google::protobuf::uint32 tag;
    5039             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    5040           0 :       mutable_unknown_fields());
    5041             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    5042           0 :       &unknown_fields_string);
    5043             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ThreatEntry)
    5044             :   for (;;) {
    5045             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    5046           0 :     tag = p.first;
    5047           0 :     if (!p.second) goto handle_unusual;
    5048           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    5049             :       // optional bytes hash = 1;
    5050             :       case 1: {
    5051           0 :         if (tag == 10) {
    5052           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
    5053             :                 input, this->mutable_hash()));
    5054             :         } else {
    5055           0 :           goto handle_unusual;
    5056             :         }
    5057           0 :         if (input->ExpectTag(18)) goto parse_url;
    5058           0 :         break;
    5059             :       }
    5060             : 
    5061             :       // optional string url = 2;
    5062             :       case 2: {
    5063           0 :         if (tag == 18) {
    5064             :          parse_url:
    5065           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
    5066             :                 input, this->mutable_url()));
    5067             :         } else {
    5068           0 :           goto handle_unusual;
    5069             :         }
    5070           0 :         if (input->ExpectAtEnd()) goto success;
    5071           0 :         break;
    5072             :       }
    5073             : 
    5074             :       default: {
    5075             :       handle_unusual:
    5076           0 :         if (tag == 0 ||
    5077           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    5078             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    5079           0 :           goto success;
    5080             :         }
    5081           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    5082             :             input, tag, &unknown_fields_stream));
    5083           0 :         break;
    5084             :       }
    5085             :     }
    5086           0 :   }
    5087             : success:
    5088             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ThreatEntry)
    5089           0 :   return true;
    5090             : failure:
    5091             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ThreatEntry)
    5092           0 :   return false;
    5093             : #undef DO_
    5094             : }
    5095             : 
    5096           0 : void ThreatEntry::SerializeWithCachedSizes(
    5097             :     ::google::protobuf::io::CodedOutputStream* output) const {
    5098             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ThreatEntry)
    5099             :   // optional bytes hash = 1;
    5100           0 :   if (has_hash()) {
    5101           0 :     ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
    5102           0 :       1, this->hash(), output);
    5103             :   }
    5104             : 
    5105             :   // optional string url = 2;
    5106           0 :   if (has_url()) {
    5107           0 :     ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
    5108           0 :       2, this->url(), output);
    5109             :   }
    5110             : 
    5111           0 :   output->WriteRaw(unknown_fields().data(),
    5112           0 :                    unknown_fields().size());
    5113             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ThreatEntry)
    5114           0 : }
    5115             : 
    5116           0 : int ThreatEntry::ByteSize() const {
    5117           0 :   int total_size = 0;
    5118             : 
    5119           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    5120             :     // optional bytes hash = 1;
    5121           0 :     if (has_hash()) {
    5122           0 :       total_size += 1 +
    5123           0 :         ::google::protobuf::internal::WireFormatLite::BytesSize(
    5124             :           this->hash());
    5125             :     }
    5126             : 
    5127             :     // optional string url = 2;
    5128           0 :     if (has_url()) {
    5129           0 :       total_size += 1 +
    5130           0 :         ::google::protobuf::internal::WireFormatLite::StringSize(
    5131             :           this->url());
    5132             :     }
    5133             : 
    5134             :   }
    5135           0 :   total_size += unknown_fields().size();
    5136             : 
    5137             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    5138           0 :   _cached_size_ = total_size;
    5139             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    5140           0 :   return total_size;
    5141             : }
    5142             : 
    5143           0 : void ThreatEntry::CheckTypeAndMergeFrom(
    5144             :     const ::google::protobuf::MessageLite& from) {
    5145           0 :   MergeFrom(*::google::protobuf::down_cast<const ThreatEntry*>(&from));
    5146           0 : }
    5147             : 
    5148           0 : void ThreatEntry::MergeFrom(const ThreatEntry& from) {
    5149           0 :   GOOGLE_CHECK_NE(&from, this);
    5150           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    5151           0 :     if (from.has_hash()) {
    5152           0 :       set_hash(from.hash());
    5153             :     }
    5154           0 :     if (from.has_url()) {
    5155           0 :       set_url(from.url());
    5156             :     }
    5157             :   }
    5158           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    5159           0 : }
    5160             : 
    5161           0 : void ThreatEntry::CopyFrom(const ThreatEntry& from) {
    5162           0 :   if (&from == this) return;
    5163           0 :   Clear();
    5164           0 :   MergeFrom(from);
    5165             : }
    5166             : 
    5167           0 : bool ThreatEntry::IsInitialized() const {
    5168             : 
    5169           0 :   return true;
    5170             : }
    5171             : 
    5172           0 : void ThreatEntry::Swap(ThreatEntry* other) {
    5173           0 :   if (other != this) {
    5174           0 :     std::swap(hash_, other->hash_);
    5175           0 :     std::swap(url_, other->url_);
    5176           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    5177           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    5178           0 :     std::swap(_cached_size_, other->_cached_size_);
    5179             :   }
    5180           0 : }
    5181             : 
    5182           0 : ::std::string ThreatEntry::GetTypeName() const {
    5183           0 :   return "mozilla.safebrowsing.ThreatEntry";
    5184             : }
    5185             : 
    5186             : 
    5187             : // ===================================================================
    5188             : 
    5189             : #ifndef _MSC_VER
    5190             : const int ThreatEntrySet::kCompressionTypeFieldNumber;
    5191             : const int ThreatEntrySet::kRawHashesFieldNumber;
    5192             : const int ThreatEntrySet::kRawIndicesFieldNumber;
    5193             : const int ThreatEntrySet::kRiceHashesFieldNumber;
    5194             : const int ThreatEntrySet::kRiceIndicesFieldNumber;
    5195             : #endif  // !_MSC_VER
    5196             : 
    5197           3 : ThreatEntrySet::ThreatEntrySet()
    5198           3 :   : ::google::protobuf::MessageLite() {
    5199           3 :   SharedCtor();
    5200             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ThreatEntrySet)
    5201           3 : }
    5202             : 
    5203           3 : void ThreatEntrySet::InitAsDefaultInstance() {
    5204             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5205             :   raw_hashes_ = const_cast< ::mozilla::safebrowsing::RawHashes*>(
    5206             :       ::mozilla::safebrowsing::RawHashes::internal_default_instance());
    5207             : #else
    5208           3 :   raw_hashes_ = const_cast< ::mozilla::safebrowsing::RawHashes*>(&::mozilla::safebrowsing::RawHashes::default_instance());
    5209             : #endif
    5210             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5211             :   raw_indices_ = const_cast< ::mozilla::safebrowsing::RawIndices*>(
    5212             :       ::mozilla::safebrowsing::RawIndices::internal_default_instance());
    5213             : #else
    5214           3 :   raw_indices_ = const_cast< ::mozilla::safebrowsing::RawIndices*>(&::mozilla::safebrowsing::RawIndices::default_instance());
    5215             : #endif
    5216             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5217             :   rice_hashes_ = const_cast< ::mozilla::safebrowsing::RiceDeltaEncoding*>(
    5218             :       ::mozilla::safebrowsing::RiceDeltaEncoding::internal_default_instance());
    5219             : #else
    5220           3 :   rice_hashes_ = const_cast< ::mozilla::safebrowsing::RiceDeltaEncoding*>(&::mozilla::safebrowsing::RiceDeltaEncoding::default_instance());
    5221             : #endif
    5222             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5223             :   rice_indices_ = const_cast< ::mozilla::safebrowsing::RiceDeltaEncoding*>(
    5224             :       ::mozilla::safebrowsing::RiceDeltaEncoding::internal_default_instance());
    5225             : #else
    5226           3 :   rice_indices_ = const_cast< ::mozilla::safebrowsing::RiceDeltaEncoding*>(&::mozilla::safebrowsing::RiceDeltaEncoding::default_instance());
    5227             : #endif
    5228           3 : }
    5229             : 
    5230           0 : ThreatEntrySet::ThreatEntrySet(const ThreatEntrySet& from)
    5231           0 :   : ::google::protobuf::MessageLite() {
    5232           0 :   SharedCtor();
    5233           0 :   MergeFrom(from);
    5234             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ThreatEntrySet)
    5235           0 : }
    5236             : 
    5237           3 : void ThreatEntrySet::SharedCtor() {
    5238           3 :   _cached_size_ = 0;
    5239           3 :   compression_type_ = 0;
    5240           3 :   raw_hashes_ = NULL;
    5241           3 :   raw_indices_ = NULL;
    5242           3 :   rice_hashes_ = NULL;
    5243           3 :   rice_indices_ = NULL;
    5244           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    5245           3 : }
    5246             : 
    5247           0 : ThreatEntrySet::~ThreatEntrySet() {
    5248             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ThreatEntrySet)
    5249           0 :   SharedDtor();
    5250           0 : }
    5251             : 
    5252           0 : void ThreatEntrySet::SharedDtor() {
    5253             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5254             :   if (this != &default_instance()) {
    5255             :   #else
    5256           0 :   if (this != default_instance_) {
    5257             :   #endif
    5258           0 :     delete raw_hashes_;
    5259           0 :     delete raw_indices_;
    5260           0 :     delete rice_hashes_;
    5261           0 :     delete rice_indices_;
    5262             :   }
    5263           0 : }
    5264             : 
    5265           0 : void ThreatEntrySet::SetCachedSize(int size) const {
    5266             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    5267           0 :   _cached_size_ = size;
    5268             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    5269           0 : }
    5270           0 : const ThreatEntrySet& ThreatEntrySet::default_instance() {
    5271             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5272             :   protobuf_AddDesc_safebrowsing_2eproto();
    5273             : #else
    5274           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    5275             : #endif
    5276           0 :   return *default_instance_;
    5277             : }
    5278             : 
    5279             : ThreatEntrySet* ThreatEntrySet::default_instance_ = NULL;
    5280             : 
    5281           0 : ThreatEntrySet* ThreatEntrySet::New() const {
    5282           0 :   return new ThreatEntrySet;
    5283             : }
    5284             : 
    5285           0 : void ThreatEntrySet::Clear() {
    5286           0 :   if (_has_bits_[0 / 32] & 31) {
    5287           0 :     compression_type_ = 0;
    5288           0 :     if (has_raw_hashes()) {
    5289           0 :       if (raw_hashes_ != NULL) raw_hashes_->::mozilla::safebrowsing::RawHashes::Clear();
    5290             :     }
    5291           0 :     if (has_raw_indices()) {
    5292           0 :       if (raw_indices_ != NULL) raw_indices_->::mozilla::safebrowsing::RawIndices::Clear();
    5293             :     }
    5294           0 :     if (has_rice_hashes()) {
    5295           0 :       if (rice_hashes_ != NULL) rice_hashes_->::mozilla::safebrowsing::RiceDeltaEncoding::Clear();
    5296             :     }
    5297           0 :     if (has_rice_indices()) {
    5298           0 :       if (rice_indices_ != NULL) rice_indices_->::mozilla::safebrowsing::RiceDeltaEncoding::Clear();
    5299             :     }
    5300             :   }
    5301           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    5302           0 :   mutable_unknown_fields()->clear();
    5303           0 : }
    5304             : 
    5305           0 : bool ThreatEntrySet::MergePartialFromCodedStream(
    5306             :     ::google::protobuf::io::CodedInputStream* input) {
    5307             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    5308             :   ::google::protobuf::uint32 tag;
    5309             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    5310           0 :       mutable_unknown_fields());
    5311             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    5312           0 :       &unknown_fields_string);
    5313             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ThreatEntrySet)
    5314             :   for (;;) {
    5315             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    5316           0 :     tag = p.first;
    5317           0 :     if (!p.second) goto handle_unusual;
    5318           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    5319             :       // optional .mozilla.safebrowsing.CompressionType compression_type = 1;
    5320             :       case 1: {
    5321           0 :         if (tag == 8) {
    5322             :           int value;
    5323           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    5324             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    5325             :                  input, &value)));
    5326           0 :           if (::mozilla::safebrowsing::CompressionType_IsValid(value)) {
    5327           0 :             set_compression_type(static_cast< ::mozilla::safebrowsing::CompressionType >(value));
    5328             :           } else {
    5329           0 :             unknown_fields_stream.WriteVarint32(tag);
    5330           0 :             unknown_fields_stream.WriteVarint32(value);
    5331             :           }
    5332             :         } else {
    5333           0 :           goto handle_unusual;
    5334             :         }
    5335           0 :         if (input->ExpectTag(18)) goto parse_raw_hashes;
    5336           0 :         break;
    5337             :       }
    5338             : 
    5339             :       // optional .mozilla.safebrowsing.RawHashes raw_hashes = 2;
    5340             :       case 2: {
    5341           0 :         if (tag == 18) {
    5342             :          parse_raw_hashes:
    5343           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    5344             :                input, mutable_raw_hashes()));
    5345             :         } else {
    5346           0 :           goto handle_unusual;
    5347             :         }
    5348           0 :         if (input->ExpectTag(26)) goto parse_raw_indices;
    5349           0 :         break;
    5350             :       }
    5351             : 
    5352             :       // optional .mozilla.safebrowsing.RawIndices raw_indices = 3;
    5353             :       case 3: {
    5354           0 :         if (tag == 26) {
    5355             :          parse_raw_indices:
    5356           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    5357             :                input, mutable_raw_indices()));
    5358             :         } else {
    5359           0 :           goto handle_unusual;
    5360             :         }
    5361           0 :         if (input->ExpectTag(34)) goto parse_rice_hashes;
    5362           0 :         break;
    5363             :       }
    5364             : 
    5365             :       // optional .mozilla.safebrowsing.RiceDeltaEncoding rice_hashes = 4;
    5366             :       case 4: {
    5367           0 :         if (tag == 34) {
    5368             :          parse_rice_hashes:
    5369           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    5370             :                input, mutable_rice_hashes()));
    5371             :         } else {
    5372           0 :           goto handle_unusual;
    5373             :         }
    5374           0 :         if (input->ExpectTag(42)) goto parse_rice_indices;
    5375           0 :         break;
    5376             :       }
    5377             : 
    5378             :       // optional .mozilla.safebrowsing.RiceDeltaEncoding rice_indices = 5;
    5379             :       case 5: {
    5380           0 :         if (tag == 42) {
    5381             :          parse_rice_indices:
    5382           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    5383             :                input, mutable_rice_indices()));
    5384             :         } else {
    5385           0 :           goto handle_unusual;
    5386             :         }
    5387           0 :         if (input->ExpectAtEnd()) goto success;
    5388           0 :         break;
    5389             :       }
    5390             : 
    5391             :       default: {
    5392             :       handle_unusual:
    5393           0 :         if (tag == 0 ||
    5394           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    5395             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    5396           0 :           goto success;
    5397             :         }
    5398           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    5399             :             input, tag, &unknown_fields_stream));
    5400           0 :         break;
    5401             :       }
    5402             :     }
    5403           0 :   }
    5404             : success:
    5405             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ThreatEntrySet)
    5406           0 :   return true;
    5407             : failure:
    5408             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ThreatEntrySet)
    5409           0 :   return false;
    5410             : #undef DO_
    5411             : }
    5412             : 
    5413           0 : void ThreatEntrySet::SerializeWithCachedSizes(
    5414             :     ::google::protobuf::io::CodedOutputStream* output) const {
    5415             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ThreatEntrySet)
    5416             :   // optional .mozilla.safebrowsing.CompressionType compression_type = 1;
    5417           0 :   if (has_compression_type()) {
    5418           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    5419           0 :       1, this->compression_type(), output);
    5420             :   }
    5421             : 
    5422             :   // optional .mozilla.safebrowsing.RawHashes raw_hashes = 2;
    5423           0 :   if (has_raw_hashes()) {
    5424           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    5425           0 :       2, this->raw_hashes(), output);
    5426             :   }
    5427             : 
    5428             :   // optional .mozilla.safebrowsing.RawIndices raw_indices = 3;
    5429           0 :   if (has_raw_indices()) {
    5430           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    5431           0 :       3, this->raw_indices(), output);
    5432             :   }
    5433             : 
    5434             :   // optional .mozilla.safebrowsing.RiceDeltaEncoding rice_hashes = 4;
    5435           0 :   if (has_rice_hashes()) {
    5436           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    5437           0 :       4, this->rice_hashes(), output);
    5438             :   }
    5439             : 
    5440             :   // optional .mozilla.safebrowsing.RiceDeltaEncoding rice_indices = 5;
    5441           0 :   if (has_rice_indices()) {
    5442           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    5443           0 :       5, this->rice_indices(), output);
    5444             :   }
    5445             : 
    5446           0 :   output->WriteRaw(unknown_fields().data(),
    5447           0 :                    unknown_fields().size());
    5448             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ThreatEntrySet)
    5449           0 : }
    5450             : 
    5451           0 : int ThreatEntrySet::ByteSize() const {
    5452           0 :   int total_size = 0;
    5453             : 
    5454           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    5455             :     // optional .mozilla.safebrowsing.CompressionType compression_type = 1;
    5456           0 :     if (has_compression_type()) {
    5457           0 :       total_size += 1 +
    5458           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->compression_type());
    5459             :     }
    5460             : 
    5461             :     // optional .mozilla.safebrowsing.RawHashes raw_hashes = 2;
    5462           0 :     if (has_raw_hashes()) {
    5463           0 :       total_size += 1 +
    5464           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    5465             :           this->raw_hashes());
    5466             :     }
    5467             : 
    5468             :     // optional .mozilla.safebrowsing.RawIndices raw_indices = 3;
    5469           0 :     if (has_raw_indices()) {
    5470           0 :       total_size += 1 +
    5471           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    5472             :           this->raw_indices());
    5473             :     }
    5474             : 
    5475             :     // optional .mozilla.safebrowsing.RiceDeltaEncoding rice_hashes = 4;
    5476           0 :     if (has_rice_hashes()) {
    5477           0 :       total_size += 1 +
    5478           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    5479             :           this->rice_hashes());
    5480             :     }
    5481             : 
    5482             :     // optional .mozilla.safebrowsing.RiceDeltaEncoding rice_indices = 5;
    5483           0 :     if (has_rice_indices()) {
    5484           0 :       total_size += 1 +
    5485           0 :         ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    5486             :           this->rice_indices());
    5487             :     }
    5488             : 
    5489             :   }
    5490           0 :   total_size += unknown_fields().size();
    5491             : 
    5492             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    5493           0 :   _cached_size_ = total_size;
    5494             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    5495           0 :   return total_size;
    5496             : }
    5497             : 
    5498           0 : void ThreatEntrySet::CheckTypeAndMergeFrom(
    5499             :     const ::google::protobuf::MessageLite& from) {
    5500           0 :   MergeFrom(*::google::protobuf::down_cast<const ThreatEntrySet*>(&from));
    5501           0 : }
    5502             : 
    5503           0 : void ThreatEntrySet::MergeFrom(const ThreatEntrySet& from) {
    5504           0 :   GOOGLE_CHECK_NE(&from, this);
    5505           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    5506           0 :     if (from.has_compression_type()) {
    5507           0 :       set_compression_type(from.compression_type());
    5508             :     }
    5509           0 :     if (from.has_raw_hashes()) {
    5510           0 :       mutable_raw_hashes()->::mozilla::safebrowsing::RawHashes::MergeFrom(from.raw_hashes());
    5511             :     }
    5512           0 :     if (from.has_raw_indices()) {
    5513           0 :       mutable_raw_indices()->::mozilla::safebrowsing::RawIndices::MergeFrom(from.raw_indices());
    5514             :     }
    5515           0 :     if (from.has_rice_hashes()) {
    5516           0 :       mutable_rice_hashes()->::mozilla::safebrowsing::RiceDeltaEncoding::MergeFrom(from.rice_hashes());
    5517             :     }
    5518           0 :     if (from.has_rice_indices()) {
    5519           0 :       mutable_rice_indices()->::mozilla::safebrowsing::RiceDeltaEncoding::MergeFrom(from.rice_indices());
    5520             :     }
    5521             :   }
    5522           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    5523           0 : }
    5524             : 
    5525           0 : void ThreatEntrySet::CopyFrom(const ThreatEntrySet& from) {
    5526           0 :   if (&from == this) return;
    5527           0 :   Clear();
    5528           0 :   MergeFrom(from);
    5529             : }
    5530             : 
    5531           0 : bool ThreatEntrySet::IsInitialized() const {
    5532             : 
    5533           0 :   return true;
    5534             : }
    5535             : 
    5536           0 : void ThreatEntrySet::Swap(ThreatEntrySet* other) {
    5537           0 :   if (other != this) {
    5538           0 :     std::swap(compression_type_, other->compression_type_);
    5539           0 :     std::swap(raw_hashes_, other->raw_hashes_);
    5540           0 :     std::swap(raw_indices_, other->raw_indices_);
    5541           0 :     std::swap(rice_hashes_, other->rice_hashes_);
    5542           0 :     std::swap(rice_indices_, other->rice_indices_);
    5543           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    5544           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    5545           0 :     std::swap(_cached_size_, other->_cached_size_);
    5546             :   }
    5547           0 : }
    5548             : 
    5549           0 : ::std::string ThreatEntrySet::GetTypeName() const {
    5550           0 :   return "mozilla.safebrowsing.ThreatEntrySet";
    5551             : }
    5552             : 
    5553             : 
    5554             : // ===================================================================
    5555             : 
    5556             : #ifndef _MSC_VER
    5557             : const int RawIndices::kIndicesFieldNumber;
    5558             : #endif  // !_MSC_VER
    5559             : 
    5560           3 : RawIndices::RawIndices()
    5561           3 :   : ::google::protobuf::MessageLite() {
    5562           3 :   SharedCtor();
    5563             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.RawIndices)
    5564           3 : }
    5565             : 
    5566           3 : void RawIndices::InitAsDefaultInstance() {
    5567           3 : }
    5568             : 
    5569           0 : RawIndices::RawIndices(const RawIndices& from)
    5570           0 :   : ::google::protobuf::MessageLite() {
    5571           0 :   SharedCtor();
    5572           0 :   MergeFrom(from);
    5573             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.RawIndices)
    5574           0 : }
    5575             : 
    5576           3 : void RawIndices::SharedCtor() {
    5577           3 :   _cached_size_ = 0;
    5578           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    5579           3 : }
    5580             : 
    5581           0 : RawIndices::~RawIndices() {
    5582             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.RawIndices)
    5583           0 :   SharedDtor();
    5584           0 : }
    5585             : 
    5586           0 : void RawIndices::SharedDtor() {
    5587             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5588             :   if (this != &default_instance()) {
    5589             :   #else
    5590           0 :   if (this != default_instance_) {
    5591             :   #endif
    5592             :   }
    5593           0 : }
    5594             : 
    5595           0 : void RawIndices::SetCachedSize(int size) const {
    5596             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    5597           0 :   _cached_size_ = size;
    5598             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    5599           0 : }
    5600           3 : const RawIndices& RawIndices::default_instance() {
    5601             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5602             :   protobuf_AddDesc_safebrowsing_2eproto();
    5603             : #else
    5604           3 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    5605             : #endif
    5606           3 :   return *default_instance_;
    5607             : }
    5608             : 
    5609             : RawIndices* RawIndices::default_instance_ = NULL;
    5610             : 
    5611           0 : RawIndices* RawIndices::New() const {
    5612           0 :   return new RawIndices;
    5613             : }
    5614             : 
    5615           0 : void RawIndices::Clear() {
    5616           0 :   indices_.Clear();
    5617           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    5618           0 :   mutable_unknown_fields()->clear();
    5619           0 : }
    5620             : 
    5621           0 : bool RawIndices::MergePartialFromCodedStream(
    5622             :     ::google::protobuf::io::CodedInputStream* input) {
    5623             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    5624             :   ::google::protobuf::uint32 tag;
    5625             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    5626           0 :       mutable_unknown_fields());
    5627             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    5628           0 :       &unknown_fields_string);
    5629             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.RawIndices)
    5630             :   for (;;) {
    5631             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    5632           0 :     tag = p.first;
    5633           0 :     if (!p.second) goto handle_unusual;
    5634           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    5635             :       // repeated int32 indices = 1;
    5636             :       case 1: {
    5637           0 :         if (tag == 8) {
    5638             :          parse_indices:
    5639           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitive<
    5640             :                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
    5641             :                  1, 8, input, this->mutable_indices())));
    5642           0 :         } else if (tag == 10) {
    5643           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitiveNoInline<
    5644             :                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
    5645             :                  input, this->mutable_indices())));
    5646             :         } else {
    5647           0 :           goto handle_unusual;
    5648             :         }
    5649           0 :         if (input->ExpectTag(8)) goto parse_indices;
    5650           0 :         if (input->ExpectAtEnd()) goto success;
    5651           0 :         break;
    5652             :       }
    5653             : 
    5654             :       default: {
    5655             :       handle_unusual:
    5656           0 :         if (tag == 0 ||
    5657           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    5658             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    5659           0 :           goto success;
    5660             :         }
    5661           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    5662             :             input, tag, &unknown_fields_stream));
    5663           0 :         break;
    5664             :       }
    5665             :     }
    5666           0 :   }
    5667             : success:
    5668             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.RawIndices)
    5669           0 :   return true;
    5670             : failure:
    5671             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.RawIndices)
    5672           0 :   return false;
    5673             : #undef DO_
    5674             : }
    5675             : 
    5676           0 : void RawIndices::SerializeWithCachedSizes(
    5677             :     ::google::protobuf::io::CodedOutputStream* output) const {
    5678             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.RawIndices)
    5679             :   // repeated int32 indices = 1;
    5680           0 :   for (int i = 0; i < this->indices_size(); i++) {
    5681           0 :     ::google::protobuf::internal::WireFormatLite::WriteInt32(
    5682           0 :       1, this->indices(i), output);
    5683             :   }
    5684             : 
    5685           0 :   output->WriteRaw(unknown_fields().data(),
    5686           0 :                    unknown_fields().size());
    5687             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.RawIndices)
    5688           0 : }
    5689             : 
    5690           0 : int RawIndices::ByteSize() const {
    5691           0 :   int total_size = 0;
    5692             : 
    5693             :   // repeated int32 indices = 1;
    5694             :   {
    5695           0 :     int data_size = 0;
    5696           0 :     for (int i = 0; i < this->indices_size(); i++) {
    5697           0 :       data_size += ::google::protobuf::internal::WireFormatLite::
    5698           0 :         Int32Size(this->indices(i));
    5699             :     }
    5700           0 :     total_size += 1 * this->indices_size() + data_size;
    5701             :   }
    5702             : 
    5703           0 :   total_size += unknown_fields().size();
    5704             : 
    5705             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    5706           0 :   _cached_size_ = total_size;
    5707             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    5708           0 :   return total_size;
    5709             : }
    5710             : 
    5711           0 : void RawIndices::CheckTypeAndMergeFrom(
    5712             :     const ::google::protobuf::MessageLite& from) {
    5713           0 :   MergeFrom(*::google::protobuf::down_cast<const RawIndices*>(&from));
    5714           0 : }
    5715             : 
    5716           0 : void RawIndices::MergeFrom(const RawIndices& from) {
    5717           0 :   GOOGLE_CHECK_NE(&from, this);
    5718           0 :   indices_.MergeFrom(from.indices_);
    5719           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    5720           0 : }
    5721             : 
    5722           0 : void RawIndices::CopyFrom(const RawIndices& from) {
    5723           0 :   if (&from == this) return;
    5724           0 :   Clear();
    5725           0 :   MergeFrom(from);
    5726             : }
    5727             : 
    5728           0 : bool RawIndices::IsInitialized() const {
    5729             : 
    5730           0 :   return true;
    5731             : }
    5732             : 
    5733           0 : void RawIndices::Swap(RawIndices* other) {
    5734           0 :   if (other != this) {
    5735           0 :     indices_.Swap(&other->indices_);
    5736           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    5737           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    5738           0 :     std::swap(_cached_size_, other->_cached_size_);
    5739             :   }
    5740           0 : }
    5741             : 
    5742           0 : ::std::string RawIndices::GetTypeName() const {
    5743           0 :   return "mozilla.safebrowsing.RawIndices";
    5744             : }
    5745             : 
    5746             : 
    5747             : // ===================================================================
    5748             : 
    5749             : #ifndef _MSC_VER
    5750             : const int RawHashes::kPrefixSizeFieldNumber;
    5751             : const int RawHashes::kRawHashesFieldNumber;
    5752             : #endif  // !_MSC_VER
    5753             : 
    5754           3 : RawHashes::RawHashes()
    5755           3 :   : ::google::protobuf::MessageLite() {
    5756           3 :   SharedCtor();
    5757             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.RawHashes)
    5758           3 : }
    5759             : 
    5760           3 : void RawHashes::InitAsDefaultInstance() {
    5761           3 : }
    5762             : 
    5763           0 : RawHashes::RawHashes(const RawHashes& from)
    5764           0 :   : ::google::protobuf::MessageLite() {
    5765           0 :   SharedCtor();
    5766           0 :   MergeFrom(from);
    5767             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.RawHashes)
    5768           0 : }
    5769             : 
    5770           3 : void RawHashes::SharedCtor() {
    5771           3 :   ::google::protobuf::internal::GetEmptyString();
    5772           3 :   _cached_size_ = 0;
    5773           3 :   prefix_size_ = 0;
    5774           3 :   raw_hashes_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    5775           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    5776           3 : }
    5777             : 
    5778           0 : RawHashes::~RawHashes() {
    5779             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.RawHashes)
    5780           0 :   SharedDtor();
    5781           0 : }
    5782             : 
    5783           0 : void RawHashes::SharedDtor() {
    5784           0 :   if (raw_hashes_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    5785           0 :     delete raw_hashes_;
    5786             :   }
    5787             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5788             :   if (this != &default_instance()) {
    5789             :   #else
    5790           0 :   if (this != default_instance_) {
    5791             :   #endif
    5792             :   }
    5793           0 : }
    5794             : 
    5795           0 : void RawHashes::SetCachedSize(int size) const {
    5796             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    5797           0 :   _cached_size_ = size;
    5798             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    5799           0 : }
    5800           3 : const RawHashes& RawHashes::default_instance() {
    5801             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    5802             :   protobuf_AddDesc_safebrowsing_2eproto();
    5803             : #else
    5804           3 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    5805             : #endif
    5806           3 :   return *default_instance_;
    5807             : }
    5808             : 
    5809             : RawHashes* RawHashes::default_instance_ = NULL;
    5810             : 
    5811           0 : RawHashes* RawHashes::New() const {
    5812           0 :   return new RawHashes;
    5813             : }
    5814             : 
    5815           0 : void RawHashes::Clear() {
    5816           0 :   if (_has_bits_[0 / 32] & 3) {
    5817           0 :     prefix_size_ = 0;
    5818           0 :     if (has_raw_hashes()) {
    5819           0 :       if (raw_hashes_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    5820           0 :         raw_hashes_->clear();
    5821             :       }
    5822             :     }
    5823             :   }
    5824           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    5825           0 :   mutable_unknown_fields()->clear();
    5826           0 : }
    5827             : 
    5828           0 : bool RawHashes::MergePartialFromCodedStream(
    5829             :     ::google::protobuf::io::CodedInputStream* input) {
    5830             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    5831             :   ::google::protobuf::uint32 tag;
    5832             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    5833           0 :       mutable_unknown_fields());
    5834             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    5835           0 :       &unknown_fields_string);
    5836             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.RawHashes)
    5837             :   for (;;) {
    5838             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    5839           0 :     tag = p.first;
    5840           0 :     if (!p.second) goto handle_unusual;
    5841           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    5842             :       // optional int32 prefix_size = 1;
    5843             :       case 1: {
    5844           0 :         if (tag == 8) {
    5845           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    5846             :                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
    5847             :                  input, &prefix_size_)));
    5848           0 :           set_has_prefix_size();
    5849             :         } else {
    5850           0 :           goto handle_unusual;
    5851             :         }
    5852           0 :         if (input->ExpectTag(18)) goto parse_raw_hashes;
    5853           0 :         break;
    5854             :       }
    5855             : 
    5856             :       // optional bytes raw_hashes = 2;
    5857             :       case 2: {
    5858           0 :         if (tag == 18) {
    5859             :          parse_raw_hashes:
    5860           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
    5861             :                 input, this->mutable_raw_hashes()));
    5862             :         } else {
    5863           0 :           goto handle_unusual;
    5864             :         }
    5865           0 :         if (input->ExpectAtEnd()) goto success;
    5866           0 :         break;
    5867             :       }
    5868             : 
    5869             :       default: {
    5870             :       handle_unusual:
    5871           0 :         if (tag == 0 ||
    5872           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    5873             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    5874           0 :           goto success;
    5875             :         }
    5876           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    5877             :             input, tag, &unknown_fields_stream));
    5878           0 :         break;
    5879             :       }
    5880             :     }
    5881           0 :   }
    5882             : success:
    5883             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.RawHashes)
    5884           0 :   return true;
    5885             : failure:
    5886             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.RawHashes)
    5887           0 :   return false;
    5888             : #undef DO_
    5889             : }
    5890             : 
    5891           0 : void RawHashes::SerializeWithCachedSizes(
    5892             :     ::google::protobuf::io::CodedOutputStream* output) const {
    5893             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.RawHashes)
    5894             :   // optional int32 prefix_size = 1;
    5895           0 :   if (has_prefix_size()) {
    5896           0 :     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->prefix_size(), output);
    5897             :   }
    5898             : 
    5899             :   // optional bytes raw_hashes = 2;
    5900           0 :   if (has_raw_hashes()) {
    5901           0 :     ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
    5902           0 :       2, this->raw_hashes(), output);
    5903             :   }
    5904             : 
    5905           0 :   output->WriteRaw(unknown_fields().data(),
    5906           0 :                    unknown_fields().size());
    5907             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.RawHashes)
    5908           0 : }
    5909             : 
    5910           0 : int RawHashes::ByteSize() const {
    5911           0 :   int total_size = 0;
    5912             : 
    5913           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    5914             :     // optional int32 prefix_size = 1;
    5915           0 :     if (has_prefix_size()) {
    5916           0 :       total_size += 1 +
    5917           0 :         ::google::protobuf::internal::WireFormatLite::Int32Size(
    5918             :           this->prefix_size());
    5919             :     }
    5920             : 
    5921             :     // optional bytes raw_hashes = 2;
    5922           0 :     if (has_raw_hashes()) {
    5923           0 :       total_size += 1 +
    5924           0 :         ::google::protobuf::internal::WireFormatLite::BytesSize(
    5925             :           this->raw_hashes());
    5926             :     }
    5927             : 
    5928             :   }
    5929           0 :   total_size += unknown_fields().size();
    5930             : 
    5931             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    5932           0 :   _cached_size_ = total_size;
    5933             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    5934           0 :   return total_size;
    5935             : }
    5936             : 
    5937           0 : void RawHashes::CheckTypeAndMergeFrom(
    5938             :     const ::google::protobuf::MessageLite& from) {
    5939           0 :   MergeFrom(*::google::protobuf::down_cast<const RawHashes*>(&from));
    5940           0 : }
    5941             : 
    5942           0 : void RawHashes::MergeFrom(const RawHashes& from) {
    5943           0 :   GOOGLE_CHECK_NE(&from, this);
    5944           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    5945           0 :     if (from.has_prefix_size()) {
    5946           0 :       set_prefix_size(from.prefix_size());
    5947             :     }
    5948           0 :     if (from.has_raw_hashes()) {
    5949           0 :       set_raw_hashes(from.raw_hashes());
    5950             :     }
    5951             :   }
    5952           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    5953           0 : }
    5954             : 
    5955           0 : void RawHashes::CopyFrom(const RawHashes& from) {
    5956           0 :   if (&from == this) return;
    5957           0 :   Clear();
    5958           0 :   MergeFrom(from);
    5959             : }
    5960             : 
    5961           0 : bool RawHashes::IsInitialized() const {
    5962             : 
    5963           0 :   return true;
    5964             : }
    5965             : 
    5966           0 : void RawHashes::Swap(RawHashes* other) {
    5967           0 :   if (other != this) {
    5968           0 :     std::swap(prefix_size_, other->prefix_size_);
    5969           0 :     std::swap(raw_hashes_, other->raw_hashes_);
    5970           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    5971           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    5972           0 :     std::swap(_cached_size_, other->_cached_size_);
    5973             :   }
    5974           0 : }
    5975             : 
    5976           0 : ::std::string RawHashes::GetTypeName() const {
    5977           0 :   return "mozilla.safebrowsing.RawHashes";
    5978             : }
    5979             : 
    5980             : 
    5981             : // ===================================================================
    5982             : 
    5983             : #ifndef _MSC_VER
    5984             : const int RiceDeltaEncoding::kFirstValueFieldNumber;
    5985             : const int RiceDeltaEncoding::kRiceParameterFieldNumber;
    5986             : const int RiceDeltaEncoding::kNumEntriesFieldNumber;
    5987             : const int RiceDeltaEncoding::kEncodedDataFieldNumber;
    5988             : #endif  // !_MSC_VER
    5989             : 
    5990           3 : RiceDeltaEncoding::RiceDeltaEncoding()
    5991           3 :   : ::google::protobuf::MessageLite() {
    5992           3 :   SharedCtor();
    5993             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.RiceDeltaEncoding)
    5994           3 : }
    5995             : 
    5996           3 : void RiceDeltaEncoding::InitAsDefaultInstance() {
    5997           3 : }
    5998             : 
    5999           0 : RiceDeltaEncoding::RiceDeltaEncoding(const RiceDeltaEncoding& from)
    6000           0 :   : ::google::protobuf::MessageLite() {
    6001           0 :   SharedCtor();
    6002           0 :   MergeFrom(from);
    6003             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.RiceDeltaEncoding)
    6004           0 : }
    6005             : 
    6006           3 : void RiceDeltaEncoding::SharedCtor() {
    6007           3 :   ::google::protobuf::internal::GetEmptyString();
    6008           3 :   _cached_size_ = 0;
    6009           3 :   first_value_ = GOOGLE_LONGLONG(0);
    6010           3 :   rice_parameter_ = 0;
    6011           3 :   num_entries_ = 0;
    6012           3 :   encoded_data_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    6013           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    6014           3 : }
    6015             : 
    6016           0 : RiceDeltaEncoding::~RiceDeltaEncoding() {
    6017             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.RiceDeltaEncoding)
    6018           0 :   SharedDtor();
    6019           0 : }
    6020             : 
    6021           0 : void RiceDeltaEncoding::SharedDtor() {
    6022           0 :   if (encoded_data_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    6023           0 :     delete encoded_data_;
    6024             :   }
    6025             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    6026             :   if (this != &default_instance()) {
    6027             :   #else
    6028           0 :   if (this != default_instance_) {
    6029             :   #endif
    6030             :   }
    6031           0 : }
    6032             : 
    6033           0 : void RiceDeltaEncoding::SetCachedSize(int size) const {
    6034             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    6035           0 :   _cached_size_ = size;
    6036             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    6037           0 : }
    6038           6 : const RiceDeltaEncoding& RiceDeltaEncoding::default_instance() {
    6039             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    6040             :   protobuf_AddDesc_safebrowsing_2eproto();
    6041             : #else
    6042           6 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    6043             : #endif
    6044           6 :   return *default_instance_;
    6045             : }
    6046             : 
    6047             : RiceDeltaEncoding* RiceDeltaEncoding::default_instance_ = NULL;
    6048             : 
    6049           0 : RiceDeltaEncoding* RiceDeltaEncoding::New() const {
    6050           0 :   return new RiceDeltaEncoding;
    6051             : }
    6052             : 
    6053           0 : void RiceDeltaEncoding::Clear() {
    6054             : #define OFFSET_OF_FIELD_(f) (reinterpret_cast<char*>(      \
    6055             :   &reinterpret_cast<RiceDeltaEncoding*>(16)->f) - \
    6056             :    reinterpret_cast<char*>(16))
    6057             : 
    6058             : #define ZR_(first, last) do {                              \
    6059             :     size_t f = OFFSET_OF_FIELD_(first);                    \
    6060             :     size_t n = OFFSET_OF_FIELD_(last) - f + sizeof(last);  \
    6061             :     ::memset(&first, 0, n);                                \
    6062             :   } while (0)
    6063             : 
    6064           0 :   if (_has_bits_[0 / 32] & 15) {
    6065           0 :     ZR_(first_value_, num_entries_);
    6066           0 :     if (has_encoded_data()) {
    6067           0 :       if (encoded_data_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    6068           0 :         encoded_data_->clear();
    6069             :       }
    6070             :     }
    6071             :   }
    6072             : 
    6073             : #undef OFFSET_OF_FIELD_
    6074             : #undef ZR_
    6075             : 
    6076           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    6077           0 :   mutable_unknown_fields()->clear();
    6078           0 : }
    6079             : 
    6080           0 : bool RiceDeltaEncoding::MergePartialFromCodedStream(
    6081             :     ::google::protobuf::io::CodedInputStream* input) {
    6082             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    6083             :   ::google::protobuf::uint32 tag;
    6084             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    6085           0 :       mutable_unknown_fields());
    6086             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    6087           0 :       &unknown_fields_string);
    6088             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.RiceDeltaEncoding)
    6089             :   for (;;) {
    6090             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    6091           0 :     tag = p.first;
    6092           0 :     if (!p.second) goto handle_unusual;
    6093           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    6094             :       // optional int64 first_value = 1;
    6095             :       case 1: {
    6096           0 :         if (tag == 8) {
    6097           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    6098             :                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
    6099             :                  input, &first_value_)));
    6100           0 :           set_has_first_value();
    6101             :         } else {
    6102           0 :           goto handle_unusual;
    6103             :         }
    6104           0 :         if (input->ExpectTag(16)) goto parse_rice_parameter;
    6105           0 :         break;
    6106             :       }
    6107             : 
    6108             :       // optional int32 rice_parameter = 2;
    6109             :       case 2: {
    6110           0 :         if (tag == 16) {
    6111             :          parse_rice_parameter:
    6112           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    6113             :                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
    6114             :                  input, &rice_parameter_)));
    6115           0 :           set_has_rice_parameter();
    6116             :         } else {
    6117           0 :           goto handle_unusual;
    6118             :         }
    6119           0 :         if (input->ExpectTag(24)) goto parse_num_entries;
    6120           0 :         break;
    6121             :       }
    6122             : 
    6123             :       // optional int32 num_entries = 3;
    6124             :       case 3: {
    6125           0 :         if (tag == 24) {
    6126             :          parse_num_entries:
    6127           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    6128             :                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
    6129             :                  input, &num_entries_)));
    6130           0 :           set_has_num_entries();
    6131             :         } else {
    6132           0 :           goto handle_unusual;
    6133             :         }
    6134           0 :         if (input->ExpectTag(34)) goto parse_encoded_data;
    6135           0 :         break;
    6136             :       }
    6137             : 
    6138             :       // optional bytes encoded_data = 4;
    6139             :       case 4: {
    6140           0 :         if (tag == 34) {
    6141             :          parse_encoded_data:
    6142           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
    6143             :                 input, this->mutable_encoded_data()));
    6144             :         } else {
    6145           0 :           goto handle_unusual;
    6146             :         }
    6147           0 :         if (input->ExpectAtEnd()) goto success;
    6148           0 :         break;
    6149             :       }
    6150             : 
    6151             :       default: {
    6152             :       handle_unusual:
    6153           0 :         if (tag == 0 ||
    6154           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    6155             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    6156           0 :           goto success;
    6157             :         }
    6158           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    6159             :             input, tag, &unknown_fields_stream));
    6160           0 :         break;
    6161             :       }
    6162             :     }
    6163           0 :   }
    6164             : success:
    6165             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.RiceDeltaEncoding)
    6166           0 :   return true;
    6167             : failure:
    6168             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.RiceDeltaEncoding)
    6169           0 :   return false;
    6170             : #undef DO_
    6171             : }
    6172             : 
    6173           0 : void RiceDeltaEncoding::SerializeWithCachedSizes(
    6174             :     ::google::protobuf::io::CodedOutputStream* output) const {
    6175             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.RiceDeltaEncoding)
    6176             :   // optional int64 first_value = 1;
    6177           0 :   if (has_first_value()) {
    6178           0 :     ::google::protobuf::internal::WireFormatLite::WriteInt64(1, this->first_value(), output);
    6179             :   }
    6180             : 
    6181             :   // optional int32 rice_parameter = 2;
    6182           0 :   if (has_rice_parameter()) {
    6183           0 :     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->rice_parameter(), output);
    6184             :   }
    6185             : 
    6186             :   // optional int32 num_entries = 3;
    6187           0 :   if (has_num_entries()) {
    6188           0 :     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->num_entries(), output);
    6189             :   }
    6190             : 
    6191             :   // optional bytes encoded_data = 4;
    6192           0 :   if (has_encoded_data()) {
    6193           0 :     ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
    6194           0 :       4, this->encoded_data(), output);
    6195             :   }
    6196             : 
    6197           0 :   output->WriteRaw(unknown_fields().data(),
    6198           0 :                    unknown_fields().size());
    6199             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.RiceDeltaEncoding)
    6200           0 : }
    6201             : 
    6202           0 : int RiceDeltaEncoding::ByteSize() const {
    6203           0 :   int total_size = 0;
    6204             : 
    6205           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    6206             :     // optional int64 first_value = 1;
    6207           0 :     if (has_first_value()) {
    6208           0 :       total_size += 1 +
    6209           0 :         ::google::protobuf::internal::WireFormatLite::Int64Size(
    6210             :           this->first_value());
    6211             :     }
    6212             : 
    6213             :     // optional int32 rice_parameter = 2;
    6214           0 :     if (has_rice_parameter()) {
    6215           0 :       total_size += 1 +
    6216           0 :         ::google::protobuf::internal::WireFormatLite::Int32Size(
    6217             :           this->rice_parameter());
    6218             :     }
    6219             : 
    6220             :     // optional int32 num_entries = 3;
    6221           0 :     if (has_num_entries()) {
    6222           0 :       total_size += 1 +
    6223           0 :         ::google::protobuf::internal::WireFormatLite::Int32Size(
    6224             :           this->num_entries());
    6225             :     }
    6226             : 
    6227             :     // optional bytes encoded_data = 4;
    6228           0 :     if (has_encoded_data()) {
    6229           0 :       total_size += 1 +
    6230           0 :         ::google::protobuf::internal::WireFormatLite::BytesSize(
    6231             :           this->encoded_data());
    6232             :     }
    6233             : 
    6234             :   }
    6235           0 :   total_size += unknown_fields().size();
    6236             : 
    6237             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    6238           0 :   _cached_size_ = total_size;
    6239             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    6240           0 :   return total_size;
    6241             : }
    6242             : 
    6243           0 : void RiceDeltaEncoding::CheckTypeAndMergeFrom(
    6244             :     const ::google::protobuf::MessageLite& from) {
    6245           0 :   MergeFrom(*::google::protobuf::down_cast<const RiceDeltaEncoding*>(&from));
    6246           0 : }
    6247             : 
    6248           0 : void RiceDeltaEncoding::MergeFrom(const RiceDeltaEncoding& from) {
    6249           0 :   GOOGLE_CHECK_NE(&from, this);
    6250           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    6251           0 :     if (from.has_first_value()) {
    6252           0 :       set_first_value(from.first_value());
    6253             :     }
    6254           0 :     if (from.has_rice_parameter()) {
    6255           0 :       set_rice_parameter(from.rice_parameter());
    6256             :     }
    6257           0 :     if (from.has_num_entries()) {
    6258           0 :       set_num_entries(from.num_entries());
    6259             :     }
    6260           0 :     if (from.has_encoded_data()) {
    6261           0 :       set_encoded_data(from.encoded_data());
    6262             :     }
    6263             :   }
    6264           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    6265           0 : }
    6266             : 
    6267           0 : void RiceDeltaEncoding::CopyFrom(const RiceDeltaEncoding& from) {
    6268           0 :   if (&from == this) return;
    6269           0 :   Clear();
    6270           0 :   MergeFrom(from);
    6271             : }
    6272             : 
    6273           0 : bool RiceDeltaEncoding::IsInitialized() const {
    6274             : 
    6275           0 :   return true;
    6276             : }
    6277             : 
    6278           0 : void RiceDeltaEncoding::Swap(RiceDeltaEncoding* other) {
    6279           0 :   if (other != this) {
    6280           0 :     std::swap(first_value_, other->first_value_);
    6281           0 :     std::swap(rice_parameter_, other->rice_parameter_);
    6282           0 :     std::swap(num_entries_, other->num_entries_);
    6283           0 :     std::swap(encoded_data_, other->encoded_data_);
    6284           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    6285           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    6286           0 :     std::swap(_cached_size_, other->_cached_size_);
    6287             :   }
    6288           0 : }
    6289             : 
    6290           0 : ::std::string RiceDeltaEncoding::GetTypeName() const {
    6291           0 :   return "mozilla.safebrowsing.RiceDeltaEncoding";
    6292             : }
    6293             : 
    6294             : 
    6295             : // ===================================================================
    6296             : 
    6297             : #ifndef _MSC_VER
    6298             : const int ThreatEntryMetadata_MetadataEntry::kKeyFieldNumber;
    6299             : const int ThreatEntryMetadata_MetadataEntry::kValueFieldNumber;
    6300             : #endif  // !_MSC_VER
    6301             : 
    6302           3 : ThreatEntryMetadata_MetadataEntry::ThreatEntryMetadata_MetadataEntry()
    6303           3 :   : ::google::protobuf::MessageLite() {
    6304           3 :   SharedCtor();
    6305             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry)
    6306           3 : }
    6307             : 
    6308           3 : void ThreatEntryMetadata_MetadataEntry::InitAsDefaultInstance() {
    6309           3 : }
    6310             : 
    6311           0 : ThreatEntryMetadata_MetadataEntry::ThreatEntryMetadata_MetadataEntry(const ThreatEntryMetadata_MetadataEntry& from)
    6312           0 :   : ::google::protobuf::MessageLite() {
    6313           0 :   SharedCtor();
    6314           0 :   MergeFrom(from);
    6315             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry)
    6316           0 : }
    6317             : 
    6318           3 : void ThreatEntryMetadata_MetadataEntry::SharedCtor() {
    6319           3 :   ::google::protobuf::internal::GetEmptyString();
    6320           3 :   _cached_size_ = 0;
    6321           3 :   key_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    6322           3 :   value_ = const_cast< ::std::string*>(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
    6323           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    6324           3 : }
    6325             : 
    6326           0 : ThreatEntryMetadata_MetadataEntry::~ThreatEntryMetadata_MetadataEntry() {
    6327             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry)
    6328           0 :   SharedDtor();
    6329           0 : }
    6330             : 
    6331           0 : void ThreatEntryMetadata_MetadataEntry::SharedDtor() {
    6332           0 :   if (key_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    6333           0 :     delete key_;
    6334             :   }
    6335           0 :   if (value_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    6336           0 :     delete value_;
    6337             :   }
    6338             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    6339             :   if (this != &default_instance()) {
    6340             :   #else
    6341           0 :   if (this != default_instance_) {
    6342             :   #endif
    6343             :   }
    6344           0 : }
    6345             : 
    6346           0 : void ThreatEntryMetadata_MetadataEntry::SetCachedSize(int size) const {
    6347             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    6348           0 :   _cached_size_ = size;
    6349             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    6350           0 : }
    6351           0 : const ThreatEntryMetadata_MetadataEntry& ThreatEntryMetadata_MetadataEntry::default_instance() {
    6352             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    6353             :   protobuf_AddDesc_safebrowsing_2eproto();
    6354             : #else
    6355           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    6356             : #endif
    6357           0 :   return *default_instance_;
    6358             : }
    6359             : 
    6360             : ThreatEntryMetadata_MetadataEntry* ThreatEntryMetadata_MetadataEntry::default_instance_ = NULL;
    6361             : 
    6362           0 : ThreatEntryMetadata_MetadataEntry* ThreatEntryMetadata_MetadataEntry::New() const {
    6363           0 :   return new ThreatEntryMetadata_MetadataEntry;
    6364             : }
    6365             : 
    6366           0 : void ThreatEntryMetadata_MetadataEntry::Clear() {
    6367           0 :   if (_has_bits_[0 / 32] & 3) {
    6368           0 :     if (has_key()) {
    6369           0 :       if (key_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    6370           0 :         key_->clear();
    6371             :       }
    6372             :     }
    6373           0 :     if (has_value()) {
    6374           0 :       if (value_ != &::google::protobuf::internal::GetEmptyStringAlreadyInited()) {
    6375           0 :         value_->clear();
    6376             :       }
    6377             :     }
    6378             :   }
    6379           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    6380           0 :   mutable_unknown_fields()->clear();
    6381           0 : }
    6382             : 
    6383           0 : bool ThreatEntryMetadata_MetadataEntry::MergePartialFromCodedStream(
    6384             :     ::google::protobuf::io::CodedInputStream* input) {
    6385             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    6386             :   ::google::protobuf::uint32 tag;
    6387             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    6388           0 :       mutable_unknown_fields());
    6389             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    6390           0 :       &unknown_fields_string);
    6391             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry)
    6392             :   for (;;) {
    6393             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    6394           0 :     tag = p.first;
    6395           0 :     if (!p.second) goto handle_unusual;
    6396           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    6397             :       // optional bytes key = 1;
    6398             :       case 1: {
    6399           0 :         if (tag == 10) {
    6400           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
    6401             :                 input, this->mutable_key()));
    6402             :         } else {
    6403           0 :           goto handle_unusual;
    6404             :         }
    6405           0 :         if (input->ExpectTag(18)) goto parse_value;
    6406           0 :         break;
    6407             :       }
    6408             : 
    6409             :       // optional bytes value = 2;
    6410             :       case 2: {
    6411           0 :         if (tag == 18) {
    6412             :          parse_value:
    6413           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
    6414             :                 input, this->mutable_value()));
    6415             :         } else {
    6416           0 :           goto handle_unusual;
    6417             :         }
    6418           0 :         if (input->ExpectAtEnd()) goto success;
    6419           0 :         break;
    6420             :       }
    6421             : 
    6422             :       default: {
    6423             :       handle_unusual:
    6424           0 :         if (tag == 0 ||
    6425           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    6426             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    6427           0 :           goto success;
    6428             :         }
    6429           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    6430             :             input, tag, &unknown_fields_stream));
    6431           0 :         break;
    6432             :       }
    6433             :     }
    6434           0 :   }
    6435             : success:
    6436             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry)
    6437           0 :   return true;
    6438             : failure:
    6439             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry)
    6440           0 :   return false;
    6441             : #undef DO_
    6442             : }
    6443             : 
    6444           0 : void ThreatEntryMetadata_MetadataEntry::SerializeWithCachedSizes(
    6445             :     ::google::protobuf::io::CodedOutputStream* output) const {
    6446             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry)
    6447             :   // optional bytes key = 1;
    6448           0 :   if (has_key()) {
    6449           0 :     ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
    6450           0 :       1, this->key(), output);
    6451             :   }
    6452             : 
    6453             :   // optional bytes value = 2;
    6454           0 :   if (has_value()) {
    6455           0 :     ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
    6456           0 :       2, this->value(), output);
    6457             :   }
    6458             : 
    6459           0 :   output->WriteRaw(unknown_fields().data(),
    6460           0 :                    unknown_fields().size());
    6461             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry)
    6462           0 : }
    6463             : 
    6464           0 : int ThreatEntryMetadata_MetadataEntry::ByteSize() const {
    6465           0 :   int total_size = 0;
    6466             : 
    6467           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    6468             :     // optional bytes key = 1;
    6469           0 :     if (has_key()) {
    6470           0 :       total_size += 1 +
    6471           0 :         ::google::protobuf::internal::WireFormatLite::BytesSize(
    6472             :           this->key());
    6473             :     }
    6474             : 
    6475             :     // optional bytes value = 2;
    6476           0 :     if (has_value()) {
    6477           0 :       total_size += 1 +
    6478           0 :         ::google::protobuf::internal::WireFormatLite::BytesSize(
    6479             :           this->value());
    6480             :     }
    6481             : 
    6482             :   }
    6483           0 :   total_size += unknown_fields().size();
    6484             : 
    6485             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    6486           0 :   _cached_size_ = total_size;
    6487             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    6488           0 :   return total_size;
    6489             : }
    6490             : 
    6491           0 : void ThreatEntryMetadata_MetadataEntry::CheckTypeAndMergeFrom(
    6492             :     const ::google::protobuf::MessageLite& from) {
    6493           0 :   MergeFrom(*::google::protobuf::down_cast<const ThreatEntryMetadata_MetadataEntry*>(&from));
    6494           0 : }
    6495             : 
    6496           0 : void ThreatEntryMetadata_MetadataEntry::MergeFrom(const ThreatEntryMetadata_MetadataEntry& from) {
    6497           0 :   GOOGLE_CHECK_NE(&from, this);
    6498           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    6499           0 :     if (from.has_key()) {
    6500           0 :       set_key(from.key());
    6501             :     }
    6502           0 :     if (from.has_value()) {
    6503           0 :       set_value(from.value());
    6504             :     }
    6505             :   }
    6506           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    6507           0 : }
    6508             : 
    6509           0 : void ThreatEntryMetadata_MetadataEntry::CopyFrom(const ThreatEntryMetadata_MetadataEntry& from) {
    6510           0 :   if (&from == this) return;
    6511           0 :   Clear();
    6512           0 :   MergeFrom(from);
    6513             : }
    6514             : 
    6515           0 : bool ThreatEntryMetadata_MetadataEntry::IsInitialized() const {
    6516             : 
    6517           0 :   return true;
    6518             : }
    6519             : 
    6520           0 : void ThreatEntryMetadata_MetadataEntry::Swap(ThreatEntryMetadata_MetadataEntry* other) {
    6521           0 :   if (other != this) {
    6522           0 :     std::swap(key_, other->key_);
    6523           0 :     std::swap(value_, other->value_);
    6524           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    6525           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    6526           0 :     std::swap(_cached_size_, other->_cached_size_);
    6527             :   }
    6528           0 : }
    6529             : 
    6530           0 : ::std::string ThreatEntryMetadata_MetadataEntry::GetTypeName() const {
    6531           0 :   return "mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry";
    6532             : }
    6533             : 
    6534             : 
    6535             : // -------------------------------------------------------------------
    6536             : 
    6537             : #ifndef _MSC_VER
    6538             : const int ThreatEntryMetadata::kEntriesFieldNumber;
    6539             : #endif  // !_MSC_VER
    6540             : 
    6541           3 : ThreatEntryMetadata::ThreatEntryMetadata()
    6542           3 :   : ::google::protobuf::MessageLite() {
    6543           3 :   SharedCtor();
    6544             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ThreatEntryMetadata)
    6545           3 : }
    6546             : 
    6547           3 : void ThreatEntryMetadata::InitAsDefaultInstance() {
    6548           3 : }
    6549             : 
    6550           0 : ThreatEntryMetadata::ThreatEntryMetadata(const ThreatEntryMetadata& from)
    6551           0 :   : ::google::protobuf::MessageLite() {
    6552           0 :   SharedCtor();
    6553           0 :   MergeFrom(from);
    6554             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ThreatEntryMetadata)
    6555           0 : }
    6556             : 
    6557           3 : void ThreatEntryMetadata::SharedCtor() {
    6558           3 :   _cached_size_ = 0;
    6559           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    6560           3 : }
    6561             : 
    6562           0 : ThreatEntryMetadata::~ThreatEntryMetadata() {
    6563             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ThreatEntryMetadata)
    6564           0 :   SharedDtor();
    6565           0 : }
    6566             : 
    6567           0 : void ThreatEntryMetadata::SharedDtor() {
    6568             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    6569             :   if (this != &default_instance()) {
    6570             :   #else
    6571           0 :   if (this != default_instance_) {
    6572             :   #endif
    6573             :   }
    6574           0 : }
    6575             : 
    6576           0 : void ThreatEntryMetadata::SetCachedSize(int size) const {
    6577             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    6578           0 :   _cached_size_ = size;
    6579             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    6580           0 : }
    6581           3 : const ThreatEntryMetadata& ThreatEntryMetadata::default_instance() {
    6582             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    6583             :   protobuf_AddDesc_safebrowsing_2eproto();
    6584             : #else
    6585           3 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    6586             : #endif
    6587           3 :   return *default_instance_;
    6588             : }
    6589             : 
    6590             : ThreatEntryMetadata* ThreatEntryMetadata::default_instance_ = NULL;
    6591             : 
    6592           0 : ThreatEntryMetadata* ThreatEntryMetadata::New() const {
    6593           0 :   return new ThreatEntryMetadata;
    6594             : }
    6595             : 
    6596           0 : void ThreatEntryMetadata::Clear() {
    6597           0 :   entries_.Clear();
    6598           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    6599           0 :   mutable_unknown_fields()->clear();
    6600           0 : }
    6601             : 
    6602           0 : bool ThreatEntryMetadata::MergePartialFromCodedStream(
    6603             :     ::google::protobuf::io::CodedInputStream* input) {
    6604             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    6605             :   ::google::protobuf::uint32 tag;
    6606             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    6607           0 :       mutable_unknown_fields());
    6608             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    6609           0 :       &unknown_fields_string);
    6610             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ThreatEntryMetadata)
    6611             :   for (;;) {
    6612             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    6613           0 :     tag = p.first;
    6614           0 :     if (!p.second) goto handle_unusual;
    6615           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    6616             :       // repeated .mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry entries = 1;
    6617             :       case 1: {
    6618           0 :         if (tag == 10) {
    6619             :          parse_entries:
    6620           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    6621             :                 input, add_entries()));
    6622             :         } else {
    6623           0 :           goto handle_unusual;
    6624             :         }
    6625           0 :         if (input->ExpectTag(10)) goto parse_entries;
    6626           0 :         if (input->ExpectAtEnd()) goto success;
    6627           0 :         break;
    6628             :       }
    6629             : 
    6630             :       default: {
    6631             :       handle_unusual:
    6632           0 :         if (tag == 0 ||
    6633           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    6634             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    6635           0 :           goto success;
    6636             :         }
    6637           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    6638             :             input, tag, &unknown_fields_stream));
    6639           0 :         break;
    6640             :       }
    6641             :     }
    6642           0 :   }
    6643             : success:
    6644             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ThreatEntryMetadata)
    6645           0 :   return true;
    6646             : failure:
    6647             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ThreatEntryMetadata)
    6648           0 :   return false;
    6649             : #undef DO_
    6650             : }
    6651             : 
    6652           0 : void ThreatEntryMetadata::SerializeWithCachedSizes(
    6653             :     ::google::protobuf::io::CodedOutputStream* output) const {
    6654             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ThreatEntryMetadata)
    6655             :   // repeated .mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry entries = 1;
    6656           0 :   for (int i = 0; i < this->entries_size(); i++) {
    6657           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    6658           0 :       1, this->entries(i), output);
    6659             :   }
    6660             : 
    6661           0 :   output->WriteRaw(unknown_fields().data(),
    6662           0 :                    unknown_fields().size());
    6663             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ThreatEntryMetadata)
    6664           0 : }
    6665             : 
    6666           0 : int ThreatEntryMetadata::ByteSize() const {
    6667           0 :   int total_size = 0;
    6668             : 
    6669             :   // repeated .mozilla.safebrowsing.ThreatEntryMetadata.MetadataEntry entries = 1;
    6670           0 :   total_size += 1 * this->entries_size();
    6671           0 :   for (int i = 0; i < this->entries_size(); i++) {
    6672           0 :     total_size +=
    6673           0 :       ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    6674             :         this->entries(i));
    6675             :   }
    6676             : 
    6677           0 :   total_size += unknown_fields().size();
    6678             : 
    6679             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    6680           0 :   _cached_size_ = total_size;
    6681             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    6682           0 :   return total_size;
    6683             : }
    6684             : 
    6685           0 : void ThreatEntryMetadata::CheckTypeAndMergeFrom(
    6686             :     const ::google::protobuf::MessageLite& from) {
    6687           0 :   MergeFrom(*::google::protobuf::down_cast<const ThreatEntryMetadata*>(&from));
    6688           0 : }
    6689             : 
    6690           0 : void ThreatEntryMetadata::MergeFrom(const ThreatEntryMetadata& from) {
    6691           0 :   GOOGLE_CHECK_NE(&from, this);
    6692           0 :   entries_.MergeFrom(from.entries_);
    6693           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    6694           0 : }
    6695             : 
    6696           0 : void ThreatEntryMetadata::CopyFrom(const ThreatEntryMetadata& from) {
    6697           0 :   if (&from == this) return;
    6698           0 :   Clear();
    6699           0 :   MergeFrom(from);
    6700             : }
    6701             : 
    6702           0 : bool ThreatEntryMetadata::IsInitialized() const {
    6703             : 
    6704           0 :   return true;
    6705             : }
    6706             : 
    6707           0 : void ThreatEntryMetadata::Swap(ThreatEntryMetadata* other) {
    6708           0 :   if (other != this) {
    6709           0 :     entries_.Swap(&other->entries_);
    6710           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    6711           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    6712           0 :     std::swap(_cached_size_, other->_cached_size_);
    6713             :   }
    6714           0 : }
    6715             : 
    6716           0 : ::std::string ThreatEntryMetadata::GetTypeName() const {
    6717           0 :   return "mozilla.safebrowsing.ThreatEntryMetadata";
    6718             : }
    6719             : 
    6720             : 
    6721             : // ===================================================================
    6722             : 
    6723             : #ifndef _MSC_VER
    6724             : const int ThreatListDescriptor::kThreatTypeFieldNumber;
    6725             : const int ThreatListDescriptor::kPlatformTypeFieldNumber;
    6726             : const int ThreatListDescriptor::kThreatEntryTypeFieldNumber;
    6727             : #endif  // !_MSC_VER
    6728             : 
    6729           3 : ThreatListDescriptor::ThreatListDescriptor()
    6730           3 :   : ::google::protobuf::MessageLite() {
    6731           3 :   SharedCtor();
    6732             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ThreatListDescriptor)
    6733           3 : }
    6734             : 
    6735           3 : void ThreatListDescriptor::InitAsDefaultInstance() {
    6736           3 : }
    6737             : 
    6738           0 : ThreatListDescriptor::ThreatListDescriptor(const ThreatListDescriptor& from)
    6739           0 :   : ::google::protobuf::MessageLite() {
    6740           0 :   SharedCtor();
    6741           0 :   MergeFrom(from);
    6742             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ThreatListDescriptor)
    6743           0 : }
    6744             : 
    6745           3 : void ThreatListDescriptor::SharedCtor() {
    6746           3 :   _cached_size_ = 0;
    6747           3 :   threat_type_ = 0;
    6748           3 :   platform_type_ = 0;
    6749           3 :   threat_entry_type_ = 0;
    6750           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    6751           3 : }
    6752             : 
    6753           0 : ThreatListDescriptor::~ThreatListDescriptor() {
    6754             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ThreatListDescriptor)
    6755           0 :   SharedDtor();
    6756           0 : }
    6757             : 
    6758           0 : void ThreatListDescriptor::SharedDtor() {
    6759             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    6760             :   if (this != &default_instance()) {
    6761             :   #else
    6762           0 :   if (this != default_instance_) {
    6763             :   #endif
    6764             :   }
    6765           0 : }
    6766             : 
    6767           0 : void ThreatListDescriptor::SetCachedSize(int size) const {
    6768             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    6769           0 :   _cached_size_ = size;
    6770             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    6771           0 : }
    6772           0 : const ThreatListDescriptor& ThreatListDescriptor::default_instance() {
    6773             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    6774             :   protobuf_AddDesc_safebrowsing_2eproto();
    6775             : #else
    6776           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    6777             : #endif
    6778           0 :   return *default_instance_;
    6779             : }
    6780             : 
    6781             : ThreatListDescriptor* ThreatListDescriptor::default_instance_ = NULL;
    6782             : 
    6783           0 : ThreatListDescriptor* ThreatListDescriptor::New() const {
    6784           0 :   return new ThreatListDescriptor;
    6785             : }
    6786             : 
    6787           0 : void ThreatListDescriptor::Clear() {
    6788             : #define OFFSET_OF_FIELD_(f) (reinterpret_cast<char*>(      \
    6789             :   &reinterpret_cast<ThreatListDescriptor*>(16)->f) - \
    6790             :    reinterpret_cast<char*>(16))
    6791             : 
    6792             : #define ZR_(first, last) do {                              \
    6793             :     size_t f = OFFSET_OF_FIELD_(first);                    \
    6794             :     size_t n = OFFSET_OF_FIELD_(last) - f + sizeof(last);  \
    6795             :     ::memset(&first, 0, n);                                \
    6796             :   } while (0)
    6797             : 
    6798           0 :   ZR_(threat_type_, threat_entry_type_);
    6799             : 
    6800             : #undef OFFSET_OF_FIELD_
    6801             : #undef ZR_
    6802             : 
    6803           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    6804           0 :   mutable_unknown_fields()->clear();
    6805           0 : }
    6806             : 
    6807           0 : bool ThreatListDescriptor::MergePartialFromCodedStream(
    6808             :     ::google::protobuf::io::CodedInputStream* input) {
    6809             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    6810             :   ::google::protobuf::uint32 tag;
    6811             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    6812           0 :       mutable_unknown_fields());
    6813             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    6814           0 :       &unknown_fields_string);
    6815             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ThreatListDescriptor)
    6816             :   for (;;) {
    6817             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    6818           0 :     tag = p.first;
    6819           0 :     if (!p.second) goto handle_unusual;
    6820           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    6821             :       // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    6822             :       case 1: {
    6823           0 :         if (tag == 8) {
    6824             :           int value;
    6825           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    6826             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    6827             :                  input, &value)));
    6828           0 :           if (::mozilla::safebrowsing::ThreatType_IsValid(value)) {
    6829           0 :             set_threat_type(static_cast< ::mozilla::safebrowsing::ThreatType >(value));
    6830             :           } else {
    6831           0 :             unknown_fields_stream.WriteVarint32(tag);
    6832           0 :             unknown_fields_stream.WriteVarint32(value);
    6833             :           }
    6834             :         } else {
    6835           0 :           goto handle_unusual;
    6836             :         }
    6837           0 :         if (input->ExpectTag(16)) goto parse_platform_type;
    6838           0 :         break;
    6839             :       }
    6840             : 
    6841             :       // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
    6842             :       case 2: {
    6843           0 :         if (tag == 16) {
    6844             :          parse_platform_type:
    6845             :           int value;
    6846           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    6847             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    6848             :                  input, &value)));
    6849           0 :           if (::mozilla::safebrowsing::PlatformType_IsValid(value)) {
    6850           0 :             set_platform_type(static_cast< ::mozilla::safebrowsing::PlatformType >(value));
    6851             :           } else {
    6852           0 :             unknown_fields_stream.WriteVarint32(tag);
    6853           0 :             unknown_fields_stream.WriteVarint32(value);
    6854             :           }
    6855             :         } else {
    6856           0 :           goto handle_unusual;
    6857             :         }
    6858           0 :         if (input->ExpectTag(24)) goto parse_threat_entry_type;
    6859           0 :         break;
    6860             :       }
    6861             : 
    6862             :       // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 3;
    6863             :       case 3: {
    6864           0 :         if (tag == 24) {
    6865             :          parse_threat_entry_type:
    6866             :           int value;
    6867           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    6868             :                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
    6869             :                  input, &value)));
    6870           0 :           if (::mozilla::safebrowsing::ThreatEntryType_IsValid(value)) {
    6871           0 :             set_threat_entry_type(static_cast< ::mozilla::safebrowsing::ThreatEntryType >(value));
    6872             :           } else {
    6873           0 :             unknown_fields_stream.WriteVarint32(tag);
    6874           0 :             unknown_fields_stream.WriteVarint32(value);
    6875             :           }
    6876             :         } else {
    6877           0 :           goto handle_unusual;
    6878             :         }
    6879           0 :         if (input->ExpectAtEnd()) goto success;
    6880           0 :         break;
    6881             :       }
    6882             : 
    6883             :       default: {
    6884             :       handle_unusual:
    6885           0 :         if (tag == 0 ||
    6886           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    6887             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    6888           0 :           goto success;
    6889             :         }
    6890           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    6891             :             input, tag, &unknown_fields_stream));
    6892           0 :         break;
    6893             :       }
    6894             :     }
    6895           0 :   }
    6896             : success:
    6897             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ThreatListDescriptor)
    6898           0 :   return true;
    6899             : failure:
    6900             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ThreatListDescriptor)
    6901           0 :   return false;
    6902             : #undef DO_
    6903             : }
    6904             : 
    6905           0 : void ThreatListDescriptor::SerializeWithCachedSizes(
    6906             :     ::google::protobuf::io::CodedOutputStream* output) const {
    6907             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ThreatListDescriptor)
    6908             :   // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    6909           0 :   if (has_threat_type()) {
    6910           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    6911           0 :       1, this->threat_type(), output);
    6912             :   }
    6913             : 
    6914             :   // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
    6915           0 :   if (has_platform_type()) {
    6916           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    6917           0 :       2, this->platform_type(), output);
    6918             :   }
    6919             : 
    6920             :   // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 3;
    6921           0 :   if (has_threat_entry_type()) {
    6922           0 :     ::google::protobuf::internal::WireFormatLite::WriteEnum(
    6923           0 :       3, this->threat_entry_type(), output);
    6924             :   }
    6925             : 
    6926           0 :   output->WriteRaw(unknown_fields().data(),
    6927           0 :                    unknown_fields().size());
    6928             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ThreatListDescriptor)
    6929           0 : }
    6930             : 
    6931           0 : int ThreatListDescriptor::ByteSize() const {
    6932           0 :   int total_size = 0;
    6933             : 
    6934           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    6935             :     // optional .mozilla.safebrowsing.ThreatType threat_type = 1;
    6936           0 :     if (has_threat_type()) {
    6937           0 :       total_size += 1 +
    6938           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->threat_type());
    6939             :     }
    6940             : 
    6941             :     // optional .mozilla.safebrowsing.PlatformType platform_type = 2;
    6942           0 :     if (has_platform_type()) {
    6943           0 :       total_size += 1 +
    6944           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->platform_type());
    6945             :     }
    6946             : 
    6947             :     // optional .mozilla.safebrowsing.ThreatEntryType threat_entry_type = 3;
    6948           0 :     if (has_threat_entry_type()) {
    6949           0 :       total_size += 1 +
    6950           0 :         ::google::protobuf::internal::WireFormatLite::EnumSize(this->threat_entry_type());
    6951             :     }
    6952             : 
    6953             :   }
    6954           0 :   total_size += unknown_fields().size();
    6955             : 
    6956             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    6957           0 :   _cached_size_ = total_size;
    6958             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    6959           0 :   return total_size;
    6960             : }
    6961             : 
    6962           0 : void ThreatListDescriptor::CheckTypeAndMergeFrom(
    6963             :     const ::google::protobuf::MessageLite& from) {
    6964           0 :   MergeFrom(*::google::protobuf::down_cast<const ThreatListDescriptor*>(&from));
    6965           0 : }
    6966             : 
    6967           0 : void ThreatListDescriptor::MergeFrom(const ThreatListDescriptor& from) {
    6968           0 :   GOOGLE_CHECK_NE(&from, this);
    6969           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    6970           0 :     if (from.has_threat_type()) {
    6971           0 :       set_threat_type(from.threat_type());
    6972             :     }
    6973           0 :     if (from.has_platform_type()) {
    6974           0 :       set_platform_type(from.platform_type());
    6975             :     }
    6976           0 :     if (from.has_threat_entry_type()) {
    6977           0 :       set_threat_entry_type(from.threat_entry_type());
    6978             :     }
    6979             :   }
    6980           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    6981           0 : }
    6982             : 
    6983           0 : void ThreatListDescriptor::CopyFrom(const ThreatListDescriptor& from) {
    6984           0 :   if (&from == this) return;
    6985           0 :   Clear();
    6986           0 :   MergeFrom(from);
    6987             : }
    6988             : 
    6989           0 : bool ThreatListDescriptor::IsInitialized() const {
    6990             : 
    6991           0 :   return true;
    6992             : }
    6993             : 
    6994           0 : void ThreatListDescriptor::Swap(ThreatListDescriptor* other) {
    6995           0 :   if (other != this) {
    6996           0 :     std::swap(threat_type_, other->threat_type_);
    6997           0 :     std::swap(platform_type_, other->platform_type_);
    6998           0 :     std::swap(threat_entry_type_, other->threat_entry_type_);
    6999           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    7000           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    7001           0 :     std::swap(_cached_size_, other->_cached_size_);
    7002             :   }
    7003           0 : }
    7004             : 
    7005           0 : ::std::string ThreatListDescriptor::GetTypeName() const {
    7006           0 :   return "mozilla.safebrowsing.ThreatListDescriptor";
    7007             : }
    7008             : 
    7009             : 
    7010             : // ===================================================================
    7011             : 
    7012             : #ifndef _MSC_VER
    7013             : const int ListThreatListsResponse::kThreatListsFieldNumber;
    7014             : #endif  // !_MSC_VER
    7015             : 
    7016           3 : ListThreatListsResponse::ListThreatListsResponse()
    7017           3 :   : ::google::protobuf::MessageLite() {
    7018           3 :   SharedCtor();
    7019             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.ListThreatListsResponse)
    7020           3 : }
    7021             : 
    7022           3 : void ListThreatListsResponse::InitAsDefaultInstance() {
    7023           3 : }
    7024             : 
    7025           0 : ListThreatListsResponse::ListThreatListsResponse(const ListThreatListsResponse& from)
    7026           0 :   : ::google::protobuf::MessageLite() {
    7027           0 :   SharedCtor();
    7028           0 :   MergeFrom(from);
    7029             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.ListThreatListsResponse)
    7030           0 : }
    7031             : 
    7032           3 : void ListThreatListsResponse::SharedCtor() {
    7033           3 :   _cached_size_ = 0;
    7034           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    7035           3 : }
    7036             : 
    7037           0 : ListThreatListsResponse::~ListThreatListsResponse() {
    7038             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.ListThreatListsResponse)
    7039           0 :   SharedDtor();
    7040           0 : }
    7041             : 
    7042           0 : void ListThreatListsResponse::SharedDtor() {
    7043             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    7044             :   if (this != &default_instance()) {
    7045             :   #else
    7046           0 :   if (this != default_instance_) {
    7047             :   #endif
    7048             :   }
    7049           0 : }
    7050             : 
    7051           0 : void ListThreatListsResponse::SetCachedSize(int size) const {
    7052             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    7053           0 :   _cached_size_ = size;
    7054             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    7055           0 : }
    7056           0 : const ListThreatListsResponse& ListThreatListsResponse::default_instance() {
    7057             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    7058             :   protobuf_AddDesc_safebrowsing_2eproto();
    7059             : #else
    7060           0 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    7061             : #endif
    7062           0 :   return *default_instance_;
    7063             : }
    7064             : 
    7065             : ListThreatListsResponse* ListThreatListsResponse::default_instance_ = NULL;
    7066             : 
    7067           0 : ListThreatListsResponse* ListThreatListsResponse::New() const {
    7068           0 :   return new ListThreatListsResponse;
    7069             : }
    7070             : 
    7071           0 : void ListThreatListsResponse::Clear() {
    7072           0 :   threat_lists_.Clear();
    7073           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    7074           0 :   mutable_unknown_fields()->clear();
    7075           0 : }
    7076             : 
    7077           0 : bool ListThreatListsResponse::MergePartialFromCodedStream(
    7078             :     ::google::protobuf::io::CodedInputStream* input) {
    7079             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    7080             :   ::google::protobuf::uint32 tag;
    7081             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    7082           0 :       mutable_unknown_fields());
    7083             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    7084           0 :       &unknown_fields_string);
    7085             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.ListThreatListsResponse)
    7086             :   for (;;) {
    7087             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    7088           0 :     tag = p.first;
    7089           0 :     if (!p.second) goto handle_unusual;
    7090           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    7091             :       // repeated .mozilla.safebrowsing.ThreatListDescriptor threat_lists = 1;
    7092             :       case 1: {
    7093           0 :         if (tag == 10) {
    7094             :          parse_threat_lists:
    7095           0 :           DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
    7096             :                 input, add_threat_lists()));
    7097             :         } else {
    7098           0 :           goto handle_unusual;
    7099             :         }
    7100           0 :         if (input->ExpectTag(10)) goto parse_threat_lists;
    7101           0 :         if (input->ExpectAtEnd()) goto success;
    7102           0 :         break;
    7103             :       }
    7104             : 
    7105             :       default: {
    7106             :       handle_unusual:
    7107           0 :         if (tag == 0 ||
    7108           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    7109             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    7110           0 :           goto success;
    7111             :         }
    7112           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    7113             :             input, tag, &unknown_fields_stream));
    7114           0 :         break;
    7115             :       }
    7116             :     }
    7117           0 :   }
    7118             : success:
    7119             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.ListThreatListsResponse)
    7120           0 :   return true;
    7121             : failure:
    7122             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.ListThreatListsResponse)
    7123           0 :   return false;
    7124             : #undef DO_
    7125             : }
    7126             : 
    7127           0 : void ListThreatListsResponse::SerializeWithCachedSizes(
    7128             :     ::google::protobuf::io::CodedOutputStream* output) const {
    7129             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.ListThreatListsResponse)
    7130             :   // repeated .mozilla.safebrowsing.ThreatListDescriptor threat_lists = 1;
    7131           0 :   for (int i = 0; i < this->threat_lists_size(); i++) {
    7132           0 :     ::google::protobuf::internal::WireFormatLite::WriteMessage(
    7133           0 :       1, this->threat_lists(i), output);
    7134             :   }
    7135             : 
    7136           0 :   output->WriteRaw(unknown_fields().data(),
    7137           0 :                    unknown_fields().size());
    7138             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.ListThreatListsResponse)
    7139           0 : }
    7140             : 
    7141           0 : int ListThreatListsResponse::ByteSize() const {
    7142           0 :   int total_size = 0;
    7143             : 
    7144             :   // repeated .mozilla.safebrowsing.ThreatListDescriptor threat_lists = 1;
    7145           0 :   total_size += 1 * this->threat_lists_size();
    7146           0 :   for (int i = 0; i < this->threat_lists_size(); i++) {
    7147           0 :     total_size +=
    7148           0 :       ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
    7149             :         this->threat_lists(i));
    7150             :   }
    7151             : 
    7152           0 :   total_size += unknown_fields().size();
    7153             : 
    7154             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    7155           0 :   _cached_size_ = total_size;
    7156             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    7157           0 :   return total_size;
    7158             : }
    7159             : 
    7160           0 : void ListThreatListsResponse::CheckTypeAndMergeFrom(
    7161             :     const ::google::protobuf::MessageLite& from) {
    7162           0 :   MergeFrom(*::google::protobuf::down_cast<const ListThreatListsResponse*>(&from));
    7163           0 : }
    7164             : 
    7165           0 : void ListThreatListsResponse::MergeFrom(const ListThreatListsResponse& from) {
    7166           0 :   GOOGLE_CHECK_NE(&from, this);
    7167           0 :   threat_lists_.MergeFrom(from.threat_lists_);
    7168           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    7169           0 : }
    7170             : 
    7171           0 : void ListThreatListsResponse::CopyFrom(const ListThreatListsResponse& from) {
    7172           0 :   if (&from == this) return;
    7173           0 :   Clear();
    7174           0 :   MergeFrom(from);
    7175             : }
    7176             : 
    7177           0 : bool ListThreatListsResponse::IsInitialized() const {
    7178             : 
    7179           0 :   return true;
    7180             : }
    7181             : 
    7182           0 : void ListThreatListsResponse::Swap(ListThreatListsResponse* other) {
    7183           0 :   if (other != this) {
    7184           0 :     threat_lists_.Swap(&other->threat_lists_);
    7185           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    7186           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    7187           0 :     std::swap(_cached_size_, other->_cached_size_);
    7188             :   }
    7189           0 : }
    7190             : 
    7191           0 : ::std::string ListThreatListsResponse::GetTypeName() const {
    7192           0 :   return "mozilla.safebrowsing.ListThreatListsResponse";
    7193             : }
    7194             : 
    7195             : 
    7196             : // ===================================================================
    7197             : 
    7198             : #ifndef _MSC_VER
    7199             : const int Duration::kSecondsFieldNumber;
    7200             : const int Duration::kNanosFieldNumber;
    7201             : #endif  // !_MSC_VER
    7202             : 
    7203           3 : Duration::Duration()
    7204           3 :   : ::google::protobuf::MessageLite() {
    7205           3 :   SharedCtor();
    7206             :   // @@protoc_insertion_point(constructor:mozilla.safebrowsing.Duration)
    7207           3 : }
    7208             : 
    7209           3 : void Duration::InitAsDefaultInstance() {
    7210           3 : }
    7211             : 
    7212           0 : Duration::Duration(const Duration& from)
    7213           0 :   : ::google::protobuf::MessageLite() {
    7214           0 :   SharedCtor();
    7215           0 :   MergeFrom(from);
    7216             :   // @@protoc_insertion_point(copy_constructor:mozilla.safebrowsing.Duration)
    7217           0 : }
    7218             : 
    7219           3 : void Duration::SharedCtor() {
    7220           3 :   _cached_size_ = 0;
    7221           3 :   seconds_ = GOOGLE_LONGLONG(0);
    7222           3 :   nanos_ = 0;
    7223           3 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    7224           3 : }
    7225             : 
    7226           0 : Duration::~Duration() {
    7227             :   // @@protoc_insertion_point(destructor:mozilla.safebrowsing.Duration)
    7228           0 :   SharedDtor();
    7229           0 : }
    7230             : 
    7231           0 : void Duration::SharedDtor() {
    7232             :   #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    7233             :   if (this != &default_instance()) {
    7234             :   #else
    7235           0 :   if (this != default_instance_) {
    7236             :   #endif
    7237             :   }
    7238           0 : }
    7239             : 
    7240           0 : void Duration::SetCachedSize(int size) const {
    7241             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    7242           0 :   _cached_size_ = size;
    7243             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    7244           0 : }
    7245          12 : const Duration& Duration::default_instance() {
    7246             : #ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
    7247             :   protobuf_AddDesc_safebrowsing_2eproto();
    7248             : #else
    7249          12 :   if (default_instance_ == NULL) protobuf_AddDesc_safebrowsing_2eproto();
    7250             : #endif
    7251          12 :   return *default_instance_;
    7252             : }
    7253             : 
    7254             : Duration* Duration::default_instance_ = NULL;
    7255             : 
    7256           0 : Duration* Duration::New() const {
    7257           0 :   return new Duration;
    7258             : }
    7259             : 
    7260           0 : void Duration::Clear() {
    7261             : #define OFFSET_OF_FIELD_(f) (reinterpret_cast<char*>(      \
    7262             :   &reinterpret_cast<Duration*>(16)->f) - \
    7263             :    reinterpret_cast<char*>(16))
    7264             : 
    7265             : #define ZR_(first, last) do {                              \
    7266             :     size_t f = OFFSET_OF_FIELD_(first);                    \
    7267             :     size_t n = OFFSET_OF_FIELD_(last) - f + sizeof(last);  \
    7268             :     ::memset(&first, 0, n);                                \
    7269             :   } while (0)
    7270             : 
    7271           0 :   ZR_(seconds_, nanos_);
    7272             : 
    7273             : #undef OFFSET_OF_FIELD_
    7274             : #undef ZR_
    7275             : 
    7276           0 :   ::memset(_has_bits_, 0, sizeof(_has_bits_));
    7277           0 :   mutable_unknown_fields()->clear();
    7278           0 : }
    7279             : 
    7280           0 : bool Duration::MergePartialFromCodedStream(
    7281             :     ::google::protobuf::io::CodedInputStream* input) {
    7282             : #define DO_(EXPRESSION) if (!(EXPRESSION)) goto failure
    7283             :   ::google::protobuf::uint32 tag;
    7284             :   ::google::protobuf::io::StringOutputStream unknown_fields_string(
    7285           0 :       mutable_unknown_fields());
    7286             :   ::google::protobuf::io::CodedOutputStream unknown_fields_stream(
    7287           0 :       &unknown_fields_string);
    7288             :   // @@protoc_insertion_point(parse_start:mozilla.safebrowsing.Duration)
    7289             :   for (;;) {
    7290             :     ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoff(127);
    7291           0 :     tag = p.first;
    7292           0 :     if (!p.second) goto handle_unusual;
    7293           0 :     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
    7294             :       // optional int64 seconds = 1;
    7295             :       case 1: {
    7296           0 :         if (tag == 8) {
    7297           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    7298             :                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
    7299             :                  input, &seconds_)));
    7300           0 :           set_has_seconds();
    7301             :         } else {
    7302           0 :           goto handle_unusual;
    7303             :         }
    7304           0 :         if (input->ExpectTag(16)) goto parse_nanos;
    7305           0 :         break;
    7306             :       }
    7307             : 
    7308             :       // optional int32 nanos = 2;
    7309             :       case 2: {
    7310           0 :         if (tag == 16) {
    7311             :          parse_nanos:
    7312           0 :           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
    7313             :                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
    7314             :                  input, &nanos_)));
    7315           0 :           set_has_nanos();
    7316             :         } else {
    7317           0 :           goto handle_unusual;
    7318             :         }
    7319           0 :         if (input->ExpectAtEnd()) goto success;
    7320           0 :         break;
    7321             :       }
    7322             : 
    7323             :       default: {
    7324             :       handle_unusual:
    7325           0 :         if (tag == 0 ||
    7326           0 :             ::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
    7327             :             ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
    7328           0 :           goto success;
    7329             :         }
    7330           0 :         DO_(::google::protobuf::internal::WireFormatLite::SkipField(
    7331             :             input, tag, &unknown_fields_stream));
    7332           0 :         break;
    7333             :       }
    7334             :     }
    7335           0 :   }
    7336             : success:
    7337             :   // @@protoc_insertion_point(parse_success:mozilla.safebrowsing.Duration)
    7338           0 :   return true;
    7339             : failure:
    7340             :   // @@protoc_insertion_point(parse_failure:mozilla.safebrowsing.Duration)
    7341           0 :   return false;
    7342             : #undef DO_
    7343             : }
    7344             : 
    7345           0 : void Duration::SerializeWithCachedSizes(
    7346             :     ::google::protobuf::io::CodedOutputStream* output) const {
    7347             :   // @@protoc_insertion_point(serialize_start:mozilla.safebrowsing.Duration)
    7348             :   // optional int64 seconds = 1;
    7349           0 :   if (has_seconds()) {
    7350           0 :     ::google::protobuf::internal::WireFormatLite::WriteInt64(1, this->seconds(), output);
    7351             :   }
    7352             : 
    7353             :   // optional int32 nanos = 2;
    7354           0 :   if (has_nanos()) {
    7355           0 :     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->nanos(), output);
    7356             :   }
    7357             : 
    7358           0 :   output->WriteRaw(unknown_fields().data(),
    7359           0 :                    unknown_fields().size());
    7360             :   // @@protoc_insertion_point(serialize_end:mozilla.safebrowsing.Duration)
    7361           0 : }
    7362             : 
    7363           0 : int Duration::ByteSize() const {
    7364           0 :   int total_size = 0;
    7365             : 
    7366           0 :   if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    7367             :     // optional int64 seconds = 1;
    7368           0 :     if (has_seconds()) {
    7369           0 :       total_size += 1 +
    7370           0 :         ::google::protobuf::internal::WireFormatLite::Int64Size(
    7371             :           this->seconds());
    7372             :     }
    7373             : 
    7374             :     // optional int32 nanos = 2;
    7375           0 :     if (has_nanos()) {
    7376           0 :       total_size += 1 +
    7377           0 :         ::google::protobuf::internal::WireFormatLite::Int32Size(
    7378             :           this->nanos());
    7379             :     }
    7380             : 
    7381             :   }
    7382           0 :   total_size += unknown_fields().size();
    7383             : 
    7384             :   GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
    7385           0 :   _cached_size_ = total_size;
    7386             :   GOOGLE_SAFE_CONCURRENT_WRITES_END();
    7387           0 :   return total_size;
    7388             : }
    7389             : 
    7390           0 : void Duration::CheckTypeAndMergeFrom(
    7391             :     const ::google::protobuf::MessageLite& from) {
    7392           0 :   MergeFrom(*::google::protobuf::down_cast<const Duration*>(&from));
    7393           0 : }
    7394             : 
    7395           0 : void Duration::MergeFrom(const Duration& from) {
    7396           0 :   GOOGLE_CHECK_NE(&from, this);
    7397           0 :   if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
    7398           0 :     if (from.has_seconds()) {
    7399           0 :       set_seconds(from.seconds());
    7400             :     }
    7401           0 :     if (from.has_nanos()) {
    7402           0 :       set_nanos(from.nanos());
    7403             :     }
    7404             :   }
    7405           0 :   mutable_unknown_fields()->append(from.unknown_fields());
    7406           0 : }
    7407             : 
    7408           0 : void Duration::CopyFrom(const Duration& from) {
    7409           0 :   if (&from == this) return;
    7410           0 :   Clear();
    7411           0 :   MergeFrom(from);
    7412             : }
    7413             : 
    7414           0 : bool Duration::IsInitialized() const {
    7415             : 
    7416           0 :   return true;
    7417             : }
    7418             : 
    7419           0 : void Duration::Swap(Duration* other) {
    7420           0 :   if (other != this) {
    7421           0 :     std::swap(seconds_, other->seconds_);
    7422           0 :     std::swap(nanos_, other->nanos_);
    7423           0 :     std::swap(_has_bits_[0], other->_has_bits_[0]);
    7424           0 :     _unknown_fields_.swap(other->_unknown_fields_);
    7425           0 :     std::swap(_cached_size_, other->_cached_size_);
    7426             :   }
    7427           0 : }
    7428             : 
    7429           0 : ::std::string Duration::GetTypeName() const {
    7430           0 :   return "mozilla.safebrowsing.Duration";
    7431             : }
    7432             : 
    7433             : 
    7434             : // @@protoc_insertion_point(namespace_scope)
    7435             : 
    7436             : }  // namespace safebrowsing
    7437           9 : }  // namespace mozilla
    7438             : 
    7439             : // @@protoc_insertion_point(global_scope)

Generated by: LCOV version 1.13