text: # -*- coding: utf-8 -*-
  # Generated by the protocol buffer compiler.  DO NOT EDIT!
  # source: google/storage/v2/storage.proto
  """Generated protocol buffer code."""
  from google.protobuf import descriptor as _descriptor
  from google.protobuf import descriptor_pool as _descriptor_pool
  from google.protobuf import message as _message
  from google.protobuf import reflection as _reflection
  from google.protobuf import symbol_database as _symbol_database
  # @@protoc_insertion_point(imports)
  
  _sym_db = _symbol_database.Default()
  
  
  from google.api import client_pb2 as google_dot_api_dot_client__pb2
  from google.api import field_behavior_pb2 as google_dot_api_dot_field__behavior__pb2
  from google.api import resource_pb2 as google_dot_api_dot_resource__pb2
  from google.iam.v1 import iam_policy_pb2 as google_dot_iam_dot_v1_dot_iam__policy__pb2
  from google.iam.v1 import policy_pb2 as google_dot_iam_dot_v1_dot_policy__pb2
  from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
  from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
  from google.type import date_pb2 as google_dot_type_dot_date__pb2
  
  
  DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fgoogle/storage/v2/storage.proto\x12\x11google.storage.v2\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1egoogle/iam/v1/iam_policy.proto\x1a\x1agoogle/iam/v1/policy.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x16google/type/date.proto\"\xd6\x01\n\x13\x44\x65leteBucketRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dstorage.googleapis.com/Bucket\x12$\n\x17if_metageneration_match\x18\x02 \x01(\x03H\x00\x88\x01\x01\x12(\n\x1bif_metageneration_not_match\x18\x03 \x01(\x03H\x01\x88\x01\x01\x42\x1a\n\x18_if_metageneration_matchB\x1e\n\x1c_if_metageneration_not_match\"\x95\x02\n\x10GetBucketRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dstorage.googleapis.com/Bucket\x12$\n\x17if_metageneration_match\x18\x02 \x01(\x03H\x00\x88\x01\x01\x12(\n\x1bif_metageneration_not_match\x18\x03 \x01(\x03H\x01\x88\x01\x01\x12\x32\n\tread_mask\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskH\x02\x88\x01\x01\x42\x1a\n\x18_if_metageneration_matchB\x1e\n\x1c_if_metageneration_not_matchB\x0c\n\n_read_mask\"\xe1\x01\n\x13\x43reateBucketRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12.\n\x06\x62ucket\x18\x02 \x01(\x0b\x32\x19.google.storage.v2.BucketB\x03\xe0\x41\x02\x12\x16\n\tbucket_id\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x0epredefined_acl\x18\x06 \x01(\t\x12%\n\x1dpredefined_default_object_acl\x18\x07 \x01(\t\"\xd2\x01\n\x12ListBucketsRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06prefix\x18\x04 \x01(\t\x12\x32\n\tread_mask\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskH\x00\x88\x01\x01\x42\x0c\n\n_read_mask\"Z\n\x13ListBucketsResponse\x12*\n\x07\x62uckets\x18\x01 \x03(\x0b\x32\x19.google.storage.v2.Bucket\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"z\n LockBucketRetentionPolicyRequest\x12\x35\n\x06\x62ucket\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dstorage.googleapis.com/Bucket\x12\x1f\n\x17if_metageneration_match\x18\x02 \x01(\x03\"\xbc\x02\n\x13UpdateBucketRequest\x12)\n\x06\x62ucket\x18\x01 \x01(\x0b\x32\x19.google.storage.v2.Bucket\x12$\n\x17if_metageneration_match\x18\x02 \x01(\x03H\x00\x88\x01\x01\x12(\n\x1bif_metageneration_not_match\x18\x03 \x01(\x03H\x01\x88\x01\x01\x12\x16\n\x0epredefined_acl\x18\x08 \x01(\t\x12%\n\x1dpredefined_default_object_acl\x18\t \x01(\t\x12/\n\x0bupdate_mask\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x1a\n\x18_if_metageneration_matchB\x1e\n\x1c_if_metageneration_not_match\"V\n\x19\x44\x65leteNotificationRequest\x12\x39\n\x04name\x18\x01 \x01(\tB+\xe0\x41\x02\xfa\x41%\n#storage.googleapis.com/Notification\"M\n\x16GetNotificationRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\n\x1dstorage.googleapis.com/Bucket\"\x8e\x01\n\x19\x43reateNotificationRequest\x12\x35\n\x06parent\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\x12\x1dstorage.googleapis.com/Bucket\x12:\n\x0cnotification\x18\x02 \x01(\x0b\x32\x1f.google.storage.v2.NotificationB\x03\xe0\x41\x02\"x\n\x18ListNotificationsRequest\x12\x35\n\x06parent\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\x12\x1dstorage.googleapis.com/Bucket\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"l\n\x19ListNotificationsResponse\x12\x36\n\rnotifications\x18\x01 \x03(\x0b\x32\x1f.google.storage.v2.Notification\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xb7\x05\n\x14\x43omposeObjectRequest\x12\x33\n\x0b\x64\x65stination\x18\x01 \x01(\x0b\x32\x19.google.storage.v2.ObjectB\x03\xe0\x41\x02\x12L\n\x0esource_objects\x18\x02 \x03(\x0b\x32\x34.google.storage.v2.ComposeObjectRequest.SourceObject\x12\"\n\x1a\x64\x65stination_predefined_acl\x18\t \x01(\t\x12 \n\x13if_generation_match\x18\x04 \x01(\x03H\x00\x88\x01\x01\x12$\n\x17if_metageneration_match\x18\x05 \x01(\x03H\x01\x88\x01\x01\x12\x37\n\x07kms_key\x18\x06 \x01(\tB&\xfa\x41#\n!cloudkms.googleapis.com/CryptoKey\x12R\n\x1c\x63ommon_object_request_params\x18\x07 \x01(\x0b\x32,.google.storage.v2.CommonObjectRequestParams\x1a\xee\x01\n\x0cSourceObject\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\ngeneration\x18\x02 \x01(\x03\x12\x66\n\x14object_preconditions\x18\x03 \x01(\x0b\x32H.google.storage.v2.ComposeObjectRequest.SourceObject.ObjectPreconditions\x1aO\n\x13ObjectPreconditions\x12 \n\x13if_generation_match\x18\x01 \x01(\x03H\x00\x88\x01\x01\x42\x16\n\x14_if_generation_matchB\x16\n\x14_if_generation_matchB\x1a\n\x18_if_metageneration_match\"\xc2\x03\n\x13\x44\x65leteObjectRequest\x12\x13\n\x06\x62ucket\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x13\n\x06object\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\tupload_id\x18\x03 \x01(\t\x12\x12\n\ngeneration\x18\x04 \x01(\x03\x12 \n\x13if_generation_match\x18\x05 \x01(\x03H\x00\x88\x01\x01\x12$\n\x17if_generation_not_match\x18\x06 \x01(\x03H\x01\x88\x01\x01\x12$\n\x17if_metageneration_match\x18\x07 \x01(\x03H\x02\x88\x01\x01\x12(\n\x1bif_metageneration_not_match\x18\x08 \x01(\x03H\x03\x88\x01\x01\x12R\n\x1c\x63ommon_object_request_params\x18\n \x01(\x0b\x32,.google.storage.v2.CommonObjectRequestParamsB\x16\n\x14_if_generation_matchB\x1a\n\x18_if_generation_not_matchB\x1a\n\x18_if_metageneration_matchB\x1e\n\x1c_if_metageneration_not_match\"\x8e\x04\n\x11ReadObjectRequest\x12\x0e\n\x06\x62ucket\x18\x01 \x01(\t\x12\x0e\n\x06object\x18\x02 \x01(\t\x12\x12\n\ngeneration\x18\x03 \x01(\x03\x12\x13\n\x0bread_offset\x18\x04 \x01(\x03\x12\x12\n\nread_limit\x18\x05 \x01(\x03\x12 \n\x13if_generation_match\x18\x06 \x01(\x03H\x00\x88\x01\x01\x12$\n\x17if_generation_not_match\x18\x07 \x01(\x03H\x01\x88\x01\x01\x12$\n\x17if_metageneration_match\x18\x08 \x01(\x03H\x02\x88\x01\x01\x12(\n\x1bif_metageneration_not_match\x18\t \x01(\x03H\x03\x88\x01\x01\x12R\n\x1c\x63ommon_object_request_params\x18\n \x01(\x0b\x32,.google.storage.v2.CommonObjectRequestParams\x12\x32\n\tread_mask\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.FieldMaskH\x04\x88\x01\x01\x42\x16\n\x14_if_generation_matchB\x1a\n\x18_if_generation_not_matchB\x1a\n\x18_if_metageneration_matchB\x1e\n\x1c_if_metageneration_not_matchB\x0c\n\n_read_mask\"\xee\x03\n\x10GetObjectRequest\x12\x13\n\x06\x62ucket\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x13\n\x06object\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\ngeneration\x18\x03 \x01(\x03\x12 \n\x13if_generation_match\x18\x04 \x01(\x03H\x00\x88\x01\x01\x12$\n\x17if_generation_not_match\x18\x05 \x01(\x03H\x01\x88\x01\x01\x12$\n\x17if_metageneration_match\x18\x06 \x01(\x03H\x02\x88\x01\x01\x12(\n\x1bif_metageneration_not_match\x18\x07 \x01(\x03H\x03\x88\x01\x01\x12R\n\x1c\x63ommon_object_request_params\x18\x08 \x01(\x0b\x32,.google.storage.v2.CommonObjectRequestParams\x12\x32\n\tread_mask\x18\n \x01(\x0b\x32\x1a.google.protobuf.FieldMaskH\x04\x88\x01\x01\x42\x16\n\x14_if_generation_matchB\x1a\n\x18_if_generation_not_matchB\x1a\n\x18_if_metageneration_matchB\x1e\n\x1c_if_metageneration_not_matchB\x0c\n\n_read_mask\"\xf5\x01\n\x12ReadObjectResponse\x12<\n\x10\x63hecksummed_data\x18\x01 \x01(\x0b\x32\".google.storage.v2.ChecksummedData\x12<\n\x10object_checksums\x18\x02 \x01(\x0b\x32\".google.storage.v2.ObjectChecksums\x12\x36\n\rcontent_range\x18\x03 \x01(\x0b\x32\x1f.google.storage.v2.ContentRange\x12+\n\x08metadata\x18\x04 \x01(\x0b\x32\x19.google.storage.v2.Object\"\xde\x02\n\x0fWriteObjectSpec\x12+\n\x08resource\x18\x01 \x01(\x0b\x32\x19.google.storage.v2.Object\x12\x16\n\x0epredefined_acl\x18\x07 \x01(\t\x12 \n\x13if_generation_match\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12$\n\x17if_generation_not_match\x18\x04 \x01(\x03H\x01\x88\x01\x01\x12$\n\x17if_metageneration_match\x18\x05 \x01(\x03H\x02\x88\x01\x01\x12(\n\x1bif_metageneration_not_match\x18\x06 \x01(\x03H\x03\x88\x01\x01\x42\x16\n\x14_if_generation_matchB\x1a\n\x18_if_generation_not_matchB\x1a\n\x18_if_metageneration_matchB\x1e\n\x1c_if_metageneration_not_match\"\x86\x03\n\x12WriteObjectRequest\x12\x13\n\tupload_id\x18\x01 \x01(\tH\x00\x12?\n\x11write_object_spec\x18\x02 \x01(\x0b\x32\".google.storage.v2.WriteObjectSpecH\x00\x12\x19\n\x0cwrite_offset\x18\x03 \x01(\x03\x42\x03\xe0\x41\x02\x12>\n\x10\x63hecksummed_data\x18\x04 \x01(\x0b\x32\".google.storage.v2.ChecksummedDataH\x01\x12<\n\x10object_checksums\x18\x06 \x01(\x0b\x32\".google.storage.v2.ObjectChecksums\x12\x14\n\x0c\x66inish_write\x18\x07 \x01(\x08\x12R\n\x1c\x63ommon_object_request_params\x18\x08 \x01(\x0b\x32,.google.storage.v2.CommonObjectRequestParamsB\x0f\n\rfirst_messageB\x06\n\x04\x64\x61ta\"n\n\x13WriteObjectResponse\x12\x18\n\x0epersisted_size\x18\x01 \x01(\x03H\x00\x12-\n\x08resource\x18\x02 \x01(\x0b\x32\x19.google.storage.v2.ObjectH\x00\x42\x0e\n\x0cwrite_status\"\xc5\x02\n\x12ListObjectsRequest\x12\x35\n\x06parent\x18\x01 \x01(\tB%\xe0\x41\x02\xfa\x41\x1f\x12\x1dstorage.googleapis.com/Bucket\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x11\n\tdelimiter\x18\x04 \x01(\t\x12\"\n\x1ainclude_trailing_delimiter\x18\x05 \x01(\x08\x12\x0e\n\x06prefix\x18\x06 \x01(\t\x12\x10\n\x08versions\x18\x07 \x01(\x08\x12\x32\n\tread_mask\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskH\x00\x88\x01\x01\x12\x1b\n\x13lexicographic_start\x18\n \x01(\t\x12\x19\n\x11lexicographic_end\x18\x0b \x01(\tB\x0c\n\n_read_mask\"\x85\x01\n\x17QueryWriteStatusRequest\x12\x16\n\tupload_id\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x1c\x63ommon_object_request_params\x18\x02 \x01(\x0b\x32,.google.storage.v2.CommonObjectRequestParams\"s\n\x18QueryWriteStatusResponse\x12\x18\n\x0epersisted_size\x18\x01 \x01(\x03H\x00\x12-\n\x08resource\x18\x02 \x01(\x0b\x32\x19.google.storage.v2.ObjectH\x00\x42\x0e\n\x0cwrite_status\"\xc2\t\n\x14RewriteObjectRequest\x12\x1d\n\x10\x64\x65stination_name\x18\x18 \x01(\tB\x03\xe0\x41\x05\x12\x41\n\x12\x64\x65stination_bucket\x18\x19 \x01(\tB%\xe0\x41\x05\xfa\x41\x1f\n\x1dstorage.googleapis.com/Bucket\x12\x43\n\x13\x64\x65stination_kms_key\x18\x1b \x01(\tB&\xfa\x41#\n!cloudkms.googleapis.com/CryptoKey\x12.\n\x0b\x64\x65stination\x18\x01 \x01(\x0b\x32\x19.google.storage.v2.Object\x12\x1a\n\rsource_bucket\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rsource_object\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x11source_generation\x18\x04 \x01(\x03\x12\x15\n\rrewrite_token\x18\x05 \x01(\t\x12\"\n\x1a\x64\x65stination_predefined_acl\x18\x1c \x01(\t\x12 \n\x13if_generation_match\x18\x07 \x01(\x03H\x00\x88\x01\x01\x12$\n\x17if_generation_not_match\x18\x08 \x01(\x03H\x01\x88\x01\x01\x12$\n\x17if_metageneration_match\x18\t \x01(\x03H\x02\x88\x01\x01\x12(\n\x1bif_metageneration_not_match\x18\n \x01(\x03H\x03\x88\x01\x01\x12\'\n\x1aif_source_generation_match\x18\x0b \x01(\x03H\x04\x88\x01\x01\x12+\n\x1eif_source_generation_not_match\x18\x0c \x01(\x03H\x05\x88\x01\x01\x12+\n\x1eif_source_metageneration_match\x18\r \x01(\x03H\x06\x88\x01\x01\x12/\n\"if_source_metageneration_not_match\x18\x0e \x01(\x03H\x07\x88\x01\x01\x12$\n\x1cmax_bytes_rewritten_per_call\x18\x0f \x01(\x03\x12(\n copy_source_encryption_algorithm\x18\x10 \x01(\t\x12(\n copy_source_encryption_key_bytes\x18\x15 \x01(\x0c\x12/\n\'copy_source_encryption_key_sha256_bytes\x18\x16 \x01(\x0c\x12R\n\x1c\x63ommon_object_request_params\x18\x13 \x01(\x0b\x32,.google.storage.v2.CommonObjectRequestParamsB\x16\n\x14_if_generation_matchB\x1a\n\x18_if_generation_not_matchB\x1a\n\x18_if_metageneration_matchB\x1e\n\x1c_if_metageneration_not_matchB\x1d\n\x1b_if_source_generation_matchB!\n\x1f_if_source_generation_not_matchB!\n\x1f_if_source_metageneration_matchB%\n#_if_source_metageneration_not_match\"\x97\x01\n\x0fRewriteResponse\x12\x1d\n\x15total_bytes_rewritten\x18\x01 \x01(\x03\x12\x13\n\x0bobject_size\x18\x02 \x01(\x03\x12\x0c\n\x04\x64one\x18\x03 \x01(\x08\x12\x15\n\rrewrite_token\x18\x04 \x01(\t\x12+\n\x08resource\x18\x05 \x01(\x0b\x32\x19.google.storage.v2.Object\"\xaf\x01\n\x1aStartResumableWriteRequest\x12=\n\x11write_object_spec\x18\x01 \x01(\x0b\x32\".google.storage.v2.WriteObjectSpec\x12R\n\x1c\x63ommon_object_request_params\x18\x03 \x01(\x0b\x32,.google.storage.v2.CommonObjectRequestParams\"0\n\x1bStartResumableWriteResponse\x12\x11\n\tupload_id\x18\x01 \x01(\t\"\xe5\x03\n\x13UpdateObjectRequest\x12)\n\x06object\x18\x01 \x01(\x0b\x32\x19.google.storage.v2.Object\x12 \n\x13if_generation_match\x18\x02 \x01(\x03H\x00\x88\x01\x01\x12$\n\x17if_generation_not_match\x18\x03 \x01(\x03H\x01\x88\x01\x01\x12$\n\x17if_metageneration_match\x18\x04 \x01(\x03H\x02\x88\x01\x01\x12(\n\x1bif_metageneration_not_match\x18\x05 \x01(\x03H\x03\x88\x01\x01\x12\x16\n\x0epredefined_acl\x18\n \x01(\t\x12/\n\x0bupdate_mask\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12R\n\x1c\x63ommon_object_request_params\x18\x08 \x01(\x0b\x32,.google.storage.v2.CommonObjectRequestParamsB\x16\n\x14_if_generation_matchB\x1a\n\x18_if_generation_not_matchB\x1a\n\x18_if_metageneration_matchB\x1e\n\x1c_if_metageneration_not_match\"`\n\x18GetServiceAccountRequest\x12\x44\n\x07project\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\"\x80\x01\n\x14\x43reateHmacKeyRequest\x12\x44\n\x07project\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\"\n\x15service_account_email\x18\x02 \x01(\tB\x03\xe0\x41\x02\"g\n\x15\x43reateHmacKeyResponse\x12\x34\n\x08metadata\x18\x01 \x01(\x0b\x32\".google.storage.v2.HmacKeyMetadata\x12\x18\n\x10secret_key_bytes\x18\x03 \x01(\x0c\"t\n\x14\x44\x65leteHmacKeyRequest\x12\x16\n\taccess_id\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\x07project\x18\x02 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\"q\n\x11GetHmacKeyRequest\x12\x16\n\taccess_id\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\x07project\x18\x02 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\"\xd0\x01\n\x13ListHmacKeysRequest\x12\x44\n\x07project\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\"\n\x15service_account_email\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1e\n\x11show_deleted_keys\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\"f\n\x14ListHmacKeysResponse\x12\x35\n\thmac_keys\x18\x01 \x03(\x0b\x32\".google.storage.v2.HmacKeyMetadata\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x82\x01\n\x14UpdateHmacKeyRequest\x12\x39\n\x08hmac_key\x18\x01 \x01(\x0b\x32\".google.storage.v2.HmacKeyMetadataB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"|\n\x19\x43ommonObjectRequestParams\x12\x1c\n\x14\x65ncryption_algorithm\x18\x01 \x01(\t\x12\x1c\n\x14\x65ncryption_key_bytes\x18\x04 \x01(\x0c\x12#\n\x1b\x65ncryption_key_sha256_bytes\x18\x05 \x01(\x0c\"\xca\x05\n\x10ServiceConstants\"\xb5\x05\n\x06Values\x12\x16\n\x12VALUES_UNSPECIFIED\x10\x00\x12\x1b\n\x14MAX_READ_CHUNK_BYTES\x10\x80\x80\x80\x01\x12\x1c\n\x15MAX_WRITE_CHUNK_BYTES\x10\x80\x80\x80\x01\x12\x19\n\x12MAX_OBJECT_SIZE_MB\x10\x80\x80\xc0\x02\x12)\n$MAX_CUSTOM_METADATA_FIELD_NAME_BYTES\x10\x80\x08\x12*\n%MAX_CUSTOM_METADATA_FIELD_VALUE_BYTES\x10\x80 \x12)\n$MAX_CUSTOM_METADATA_TOTAL_SIZE_BYTES\x10\x80@\x12*\n$MAX_BUCKET_METADATA_TOTAL_SIZE_BYTES\x10\x80\xa0\x01\x12\'\n#MAX_NOTIFICATION_CONFIGS_PER_BUCKET\x10\x64\x12\"\n\x1eMAX_LIFECYCLE_RULES_PER_BUCKET\x10\x64\x12&\n\"MAX_NOTIFICATION_CUSTOM_ATTRIBUTES\x10\x05\x12\x31\n,MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_KEY_LENGTH\x10\x80\x02\x12\x33\n.MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_VALUE_LENGTH\x10\x80\x08\x12\x1c\n\x18MAX_LABELS_ENTRIES_COUNT\x10@\x12\x1f\n\x1bMAX_LABELS_KEY_VALUE_LENGTH\x10?\x12\x1f\n\x1aMAX_LABELS_KEY_VALUE_BYTES\x10\x80\x01\x12.\n)MAX_OBJECT_IDS_PER_DELETE_OBJECTS_REQUEST\x10\xe8\x07\x12\x1e\n\x1aSPLIT_TOKEN_MAX_VALID_DAYS\x10\x0e\x1a\x02\x10\x01\"\xa3\x16\n\x06\x42ucket\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x16\n\tbucket_id\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12\x44\n\x07project\x18\x03 \x01(\tB3\xe0\x41\x05\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x1b\n\x0emetageneration\x18\x04 \x01(\x03\x42\x03\xe0\x41\x03\x12\x15\n\x08location\x18\x05 \x01(\tB\x03\xe0\x41\x05\x12\x1a\n\rlocation_type\x18\x06 \x01(\tB\x03\xe0\x41\x03\x12\x15\n\rstorage_class\x18\x07 \x01(\t\x12\x0b\n\x03rpo\x18\x1b \x01(\t\x12\x33\n\x03\x61\x63l\x18\x08 \x03(\x0b\x32&.google.storage.v2.BucketAccessControl\x12\x42\n\x12\x64\x65\x66\x61ult_object_acl\x18\t \x03(\x0b\x32&.google.storage.v2.ObjectAccessControl\x12\x36\n\tlifecycle\x18\n \x01(\x0b\x32#.google.storage.v2.Bucket.Lifecycle\x12\x34\n\x0b\x63reate_time\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12,\n\x04\x63ors\x18\x0c \x03(\x0b\x32\x1e.google.storage.v2.Bucket.Cors\x12\x34\n\x0bupdate_time\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12 \n\x18\x64\x65\x66\x61ult_event_based_hold\x18\x0e \x01(\x08\x12\x35\n\x06labels\x18\x0f \x03(\x0b\x32%.google.storage.v2.Bucket.LabelsEntry\x12\x32\n\x07website\x18\x10 \x01(\x0b\x32!.google.storage.v2.Bucket.Website\x12\x38\n\nversioning\x18\x11 \x01(\x0b\x32$.google.storage.v2.Bucket.Versioning\x12\x32\n\x07logging\x18\x12 \x01(\x0b\x32!.google.storage.v2.Bucket.Logging\x12,\n\x05owner\x18\x13 \x01(\x0b\x32\x18.google.storage.v2.OwnerB\x03\xe0\x41\x03\x12\x38\n\nencryption\x18\x14 \x01(\x0b\x32$.google.storage.v2.Bucket.Encryption\x12\x32\n\x07\x62illing\x18\x15 \x01(\x0b\x32!.google.storage.v2.Bucket.Billing\x12\x43\n\x10retention_policy\x18\x16 \x01(\x0b\x32).google.storage.v2.Bucket.RetentionPolicy\x12\x37\n\niam_config\x18\x17 \x01(\x0b\x32#.google.storage.v2.Bucket.IamConfig\x12\x15\n\rsatisfies_pzs\x18\x19 \x01(\x08\x12\x36\n\tautoclass\x18\x1c \x01(\x0b\x32#.google.storage.v2.Bucket.Autoclass\x1a!\n\x07\x42illing\x12\x16\n\x0erequester_pays\x18\x01 \x01(\x08\x1aX\n\x04\x43ors\x12\x0e\n\x06origin\x18\x01 \x03(\t\x12\x0e\n\x06method\x18\x02 \x03(\t\x12\x17\n\x0fresponse_header\x18\x03 \x03(\t\x12\x17\n\x0fmax_age_seconds\x18\x04 \x01(\x05\x1aM\n\nEncryption\x12?\n\x0f\x64\x65\x66\x61ult_kms_key\x18\x01 \x01(\tB&\xfa\x41#\n!cloudkms.googleapis.com/CryptoKey\x1a\xec\x01\n\tIamConfig\x12\x61\n\x1buniform_bucket_level_access\x18\x01 \x01(\x0b\x32<.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess\x12 \n\x18public_access_prevention\x18\x03 \x01(\t\x1aZ\n\x18UniformBucketLevelAccess\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12-\n\tlock_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\xf3\x05\n\tLifecycle\x12\x36\n\x04rule\x18\x01 \x03(\x0b\x32(.google.storage.v2.Bucket.Lifecycle.Rule\x1a\xad\x05\n\x04Rule\x12?\n\x06\x61\x63tion\x18\x01 \x01(\x0b\x32/.google.storage.v2.Bucket.Lifecycle.Rule.Action\x12\x45\n\tcondition\x18\x02 \x01(\x0b\x32\x32.google.storage.v2.Bucket.Lifecycle.Rule.Condition\x1a-\n\x06\x41\x63tion\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x15\n\rstorage_class\x18\x02 \x01(\t\x1a\xed\x03\n\tCondition\x12\x15\n\x08\x61ge_days\x18\x01 \x01(\x05H\x00\x88\x01\x01\x12)\n\x0e\x63reated_before\x18\x02 \x01(\x0b\x32\x11.google.type.Date\x12\x14\n\x07is_live\x18\x03 \x01(\x08H\x01\x88\x01\x01\x12\x1f\n\x12num_newer_versions\x18\x04 \x01(\x05H\x02\x88\x01\x01\x12\x1d\n\x15matches_storage_class\x18\x05 \x03(\t\x12#\n\x16\x64\x61ys_since_custom_time\x18\x07 \x01(\x05H\x03\x88\x01\x01\x12-\n\x12\x63ustom_time_before\x18\x08 \x01(\x0b\x32\x11.google.type.Date\x12\'\n\x1a\x64\x61ys_since_noncurrent_time\x18\t \x01(\x05H\x04\x88\x01\x01\x12\x31\n\x16noncurrent_time_before\x18\n \x01(\x0b\x32\x11.google.type.Date\x12\x16\n\x0ematches_prefix\x18\x0b \x03(\t\x12\x16\n\x0ematches_suffix\x18\x0c \x03(\tB\x0b\n\t_age_daysB\n\n\x08_is_liveB\x15\n\x13_num_newer_versionsB\x19\n\x17_days_since_custom_timeB\x1d\n\x1b_days_since_noncurrent_time\x1a\x38\n\x07Logging\x12\x12\n\nlog_bucket\x18\x01 \x01(\t\x12\x19\n\x11log_object_prefix\x18\x02 \x01(\t\x1ar\n\x0fRetentionPolicy\x12\x32\n\x0e\x65\x66\x66\x65\x63tive_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x11\n\tis_locked\x18\x02 \x01(\x08\x12\x18\n\x10retention_period\x18\x03 \x01(\x03\x1a\x1d\n\nVersioning\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x1a;\n\x07Website\x12\x18\n\x10main_page_suffix\x18\x01 \x01(\t\x12\x16\n\x0enot_found_page\x18\x02 \x01(\t\x1aR\n\tAutoclass\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x34\n\x0btoggle_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:G\xea\x41\x44\n\x1dstorage.googleapis.com/Bucket\x12#projects/{project}/buckets/{bucket}\"\xa7\x01\n\x13\x42ucketAccessControl\x12\x0c\n\x04role\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\t\x12\x0e\n\x06\x65ntity\x18\x03 \x01(\t\x12\x11\n\tentity_id\x18\x04 \x01(\t\x12\r\n\x05\x65mail\x18\x05 \x01(\t\x12\x0e\n\x06\x64omain\x18\x06 \x01(\t\x12\x34\n\x0cproject_team\x18\x07 \x01(\x0b\x32\x1e.google.storage.v2.ProjectTeam\"B\n\x0f\x43hecksummedData\x12\x0f\n\x07\x63ontent\x18\x01 \x01(\x0c\x12\x13\n\x06\x63rc32c\x18\x02 \x01(\x07H\x00\x88\x01\x01\x42\t\n\x07_crc32c\"C\n\x0fObjectChecksums\x12\x13\n\x06\x63rc32c\x18\x01 \x01(\x07H\x00\x88\x01\x01\x12\x10\n\x08md5_hash\x18\x02 \x01(\x0c\x42\t\n\x07_crc32c\"\x83\x02\n\x0fHmacKeyMetadata\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\taccess_id\x18\x02 \x01(\t\x12\x41\n\x07project\x18\x03 \x01(\tB0\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x1d\n\x15service_account_email\x18\x04 \x01(\t\x12\r\n\x05state\x18\x05 \x01(\t\x12/\n\x0b\x63reate_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x8f\x03\n\x0cNotification\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\x05topic\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x0b\x65vent_types\x18\x03 \x03(\tB\x03\xe0\x41\x01\x12U\n\x11\x63ustom_attributes\x18\x04 \x03(\x0b\x32\x35.google.storage.v2.Notification.CustomAttributesEntryB\x03\xe0\x41\x01\x12\x1f\n\x12object_name_prefix\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0epayload_format\x18\x06 \x01(\tB\x03\xe0\x41\x02\x1a\x37\n\x15\x43ustomAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:p\xea\x41m\n#storage.googleapis.com/Notification\x12\x46projects/{project}/buckets/{bucket}/notificationConfigs/{notification}\"L\n\x12\x43ustomerEncryption\x12\x1c\n\x14\x65ncryption_algorithm\x18\x01 \x01(\t\x12\x18\n\x10key_sha256_bytes\x18\x03 \x01(\x0c\"\xf4\x08\n\x06Object\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x35\n\x06\x62ucket\x18\x02 \x01(\tB%\xe0\x41\x05\xfa\x41\x1f\n\x1dstorage.googleapis.com/Bucket\x12\x17\n\ngeneration\x18\x03 \x01(\x03\x42\x03\xe0\x41\x05\x12\x1b\n\x0emetageneration\x18\x04 \x01(\x03\x42\x03\xe0\x41\x03\x12\x15\n\rstorage_class\x18\x05 \x01(\t\x12\x11\n\x04size\x18\x06 \x01(\x03\x42\x03\xe0\x41\x03\x12\x18\n\x10\x63ontent_encoding\x18\x07 \x01(\t\x12\x1b\n\x13\x63ontent_disposition\x18\x08 \x01(\t\x12\x15\n\rcache_control\x18\t \x01(\t\x12\x33\n\x03\x61\x63l\x18\n \x03(\x0b\x32&.google.storage.v2.ObjectAccessControl\x12\x18\n\x10\x63ontent_language\x18\x0b \x01(\t\x12\x34\n\x0b\x64\x65lete_time\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x14\n\x0c\x63ontent_type\x18\r \x01(\t\x12\x34\n\x0b\x63reate_time\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x1c\n\x0f\x63omponent_count\x18\x0f \x01(\x05\x42\x03\xe0\x41\x03\x12:\n\tchecksums\x18\x10 \x01(\x0b\x32\".google.storage.v2.ObjectChecksumsB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x37\n\x07kms_key\x18\x12 \x01(\tB&\xfa\x41#\n!cloudkms.googleapis.com/CryptoKey\x12\x42\n\x19update_storage_class_time\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x16\n\x0etemporary_hold\x18\x14 \x01(\x08\x12\x39\n\x15retention_expire_time\x18\x15 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x39\n\x08metadata\x18\x16 \x03(\x0b\x32\'.google.storage.v2.Object.MetadataEntry\x12\x1d\n\x10\x65vent_based_hold\x18\x17 \x01(\x08H\x00\x88\x01\x01\x12,\n\x05owner\x18\x18 \x01(\x0b\x32\x18.google.storage.v2.OwnerB\x03\xe0\x41\x03\x12\x42\n\x13\x63ustomer_encryption\x18\x19 \x01(\x0b\x32%.google.storage.v2.CustomerEncryption\x12/\n\x0b\x63ustom_time\x18\x1a \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x13\n\x11_event_based_hold\"\xa7\x01\n\x13ObjectAccessControl\x12\x0c\n\x04role\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\t\x12\x0e\n\x06\x65ntity\x18\x03 \x01(\t\x12\x11\n\tentity_id\x18\x04 \x01(\t\x12\r\n\x05\x65mail\x18\x05 \x01(\t\x12\x0e\n\x06\x64omain\x18\x06 \x01(\t\x12\x34\n\x0cproject_team\x18\x07 \x01(\x0b\x32\x1e.google.storage.v2.ProjectTeam\"l\n\x13ListObjectsResponse\x12*\n\x07objects\x18\x01 \x03(\x0b\x32\x19.google.storage.v2.Object\x12\x10\n\x08prefixes\x18\x02 \x03(\t\x12\x17\n\x0fnext_page_token\x18\x03 \x01(\t\"3\n\x0bProjectTeam\x12\x16\n\x0eproject_number\x18\x01 \x01(\t\x12\x0c\n\x04team\x18\x02 \x01(\t\"\'\n\x0eServiceAccount\x12\x15\n\remail_address\x18\x01 \x01(\t\"*\n\x05Owner\x12\x0e\n\x06\x65ntity\x18\x01 \x01(\t\x12\x11\n\tentity_id\x18\x02 \x01(\t\"C\n\x0c\x43ontentRange\x12\r\n\x05start\x18\x01 \x01(\x03\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x03\x12\x17\n\x0f\x63omplete_length\x18\x03 \x01(\x03\x32\xb0\x1b\n\x07Storage\x12W\n\x0c\x44\x65leteBucket\x12&.google.storage.v2.DeleteBucketRequest\x1a\x16.google.protobuf.Empty\"\x07\xda\x41\x04name\x12T\n\tGetBucket\x12#.google.storage.v2.GetBucketRequest\x1a\x19.google.storage.v2.Bucket\"\x07\xda\x41\x04name\x12m\n\x0c\x43reateBucket\x12&.google.storage.v2.CreateBucketRequest\x1a\x19.google.storage.v2.Bucket\"\x1a\xda\x41\x17parent,bucket,bucket_id\x12g\n\x0bListBuckets\x12%.google.storage.v2.ListBucketsRequest\x1a&.google.storage.v2.ListBucketsResponse\"\t\xda\x41\x06parent\x12v\n\x19LockBucketRetentionPolicy\x12\x33.google.storage.v2.LockBucketRetentionPolicyRequest\x1a\x19.google.storage.v2.Bucket\"\t\xda\x41\x06\x62ucket\x12V\n\x0cGetIamPolicy\x12\".google.iam.v1.GetIamPolicyRequest\x1a\x15.google.iam.v1.Policy\"\x0b\xda\x41\x08resource\x12]\n\x0cSetIamPolicy\x12\".google.iam.v1.SetIamPolicyRequest\x1a\x15.google.iam.v1.Policy\"\x12\xda\x41\x0fresource,policy\x12\x82\x01\n\x12TestIamPermissions\x12(.google.iam.v1.TestIamPermissionsRequest\x1a).google.iam.v1.TestIamPermissionsResponse\"\x17\xda\x41\x14resource,permissions\x12h\n\x0cUpdateBucket\x12&.google.storage.v2.UpdateBucketRequest\x1a\x19.google.storage.v2.Bucket\"\x15\xda\x41\x12\x62ucket,update_mask\x12\x63\n\x12\x44\x65leteNotification\x12,.google.storage.v2.DeleteNotificationRequest\x1a\x16.google.protobuf.Empty\"\x07\xda\x41\x04name\x12\x66\n\x0fGetNotification\x12).google.storage.v2.GetNotificationRequest\x1a\x1f.google.storage.v2.Notification\"\x07\xda\x41\x04name\x12{\n\x12\x43reateNotification\x12,.google.storage.v2.CreateNotificationRequest\x1a\x1f.google.storage.v2.Notification\"\x16\xda\x41\x13parent,notification\x12y\n\x11ListNotifications\x12+.google.storage.v2.ListNotificationsRequest\x1a,.google.storage.v2.ListNotificationsResponse\"\t\xda\x41\x06parent\x12U\n\rComposeObject\x12\'.google.storage.v2.ComposeObjectRequest\x1a\x19.google.storage.v2.Object\"\x00\x12{\n\x0c\x44\x65leteObject\x12&.google.storage.v2.DeleteObjectRequest\x1a\x16.google.protobuf.Empty\"+\xda\x41\rbucket,object\xda\x41\x18\x62ucket,object,generation\x12x\n\tGetObject\x12#.google.storage.v2.GetObjectRequest\x1a\x19.google.storage.v2.Object\"+\xda\x41\rbucket,object\xda\x41\x18\x62ucket,object,generation\x12\x88\x01\n\nReadObject\x12$.google.storage.v2.ReadObjectRequest\x1a%.google.storage.v2.ReadObjectResponse\"+\xda\x41\rbucket,object\xda\x41\x18\x62ucket,object,generation0\x01\x12h\n\x0cUpdateObject\x12&.google.storage.v2.UpdateObjectRequest\x1a\x19.google.storage.v2.Object\"\x15\xda\x41\x12object,update_mask\x12`\n\x0bWriteObject\x12%.google.storage.v2.WriteObjectRequest\x1a&.google.storage.v2.WriteObjectResponse\"\x00(\x01\x12g\n\x0bListObjects\x12%.google.storage.v2.ListObjectsRequest\x1a&.google.storage.v2.ListObjectsResponse\"\t\xda\x41\x06parent\x12^\n\rRewriteObject\x12\'.google.storage.v2.RewriteObjectRequest\x1a\".google.storage.v2.RewriteResponse\"\x00\x12v\n\x13StartResumableWrite\x12-.google.storage.v2.StartResumableWriteRequest\x1a..google.storage.v2.StartResumableWriteResponse\"\x00\x12y\n\x10QueryWriteStatus\x12*.google.storage.v2.QueryWriteStatusRequest\x1a+.google.storage.v2.QueryWriteStatusResponse\"\x0c\xda\x41\tupload_id\x12o\n\x11GetServiceAccount\x12+.google.storage.v2.GetServiceAccountRequest\x1a!.google.storage.v2.ServiceAccount\"\n\xda\x41\x07project\x12\x84\x01\n\rCreateHmacKey\x12\'.google.storage.v2.CreateHmacKeyRequest\x1a(.google.storage.v2.CreateHmacKeyResponse\" \xda\x41\x1dproject,service_account_email\x12\x66\n\rDeleteHmacKey\x12\'.google.storage.v2.DeleteHmacKeyRequest\x1a\x16.google.protobuf.Empty\"\x14\xda\x41\x11\x61\x63\x63\x65ss_id,project\x12l\n\nGetHmacKey\x12$.google.storage.v2.GetHmacKeyRequest\x1a\".google.storage.v2.HmacKeyMetadata\"\x14\xda\x41\x11\x61\x63\x63\x65ss_id,project\x12k\n\x0cListHmacKeys\x12&.google.storage.v2.ListHmacKeysRequest\x1a\'.google.storage.v2.ListHmacKeysResponse\"\n\xda\x41\x07project\x12u\n\rUpdateHmacKey\x12\'.google.storage.v2.UpdateHmacKeyRequest\x1a\".google.storage.v2.HmacKeyMetadata\"\x17\xda\x41\x14hmac_key,update_mask\x1a\xa7\x02\xca\x41\x16storage.googleapis.com\xd2\x41\x8a\x02https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-platform.read-only,https://www.googleapis.com/auth/devstorage.full_control,https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/devstorage.read_writeB\xdc\x01\n\x15\x63om.google.storage.v2B\x0cStorageProtoP\x01Z8google.golang.org/genproto/googleapis/storage/v2;storage\xea\x41x\n!cloudkms.googleapis.com/CryptoKey\x12Sprojects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}b\x06proto3')
  
  
  
  _DELETEBUCKETREQUEST = DESCRIPTOR.message_types_by_name['DeleteBucketRequest']
  _GETBUCKETREQUEST = DESCRIPTOR.message_types_by_name['GetBucketRequest']
  _CREATEBUCKETREQUEST = DESCRIPTOR.message_types_by_name['CreateBucketRequest']
  _LISTBUCKETSREQUEST = DESCRIPTOR.message_types_by_name['ListBucketsRequest']
  _LISTBUCKETSRESPONSE = DESCRIPTOR.message_types_by_name['ListBucketsResponse']
  _LOCKBUCKETRETENTIONPOLICYREQUEST = DESCRIPTOR.message_types_by_name['LockBucketRetentionPolicyRequest']
  _UPDATEBUCKETREQUEST = DESCRIPTOR.message_types_by_name['UpdateBucketRequest']
  _DELETENOTIFICATIONREQUEST = DESCRIPTOR.message_types_by_name['DeleteNotificationRequest']
  _GETNOTIFICATIONREQUEST = DESCRIPTOR.message_types_by_name['GetNotificationRequest']
  _CREATENOTIFICATIONREQUEST = DESCRIPTOR.message_types_by_name['CreateNotificationRequest']
  _LISTNOTIFICATIONSREQUEST = DESCRIPTOR.message_types_by_name['ListNotificationsRequest']
  _LISTNOTIFICATIONSRESPONSE = DESCRIPTOR.message_types_by_name['ListNotificationsResponse']
  _COMPOSEOBJECTREQUEST = DESCRIPTOR.message_types_by_name['ComposeObjectRequest']
  _COMPOSEOBJECTREQUEST_SOURCEOBJECT = _COMPOSEOBJECTREQUEST.nested_types_by_name['SourceObject']
  _COMPOSEOBJECTREQUEST_SOURCEOBJECT_OBJECTPRECONDITIONS = _COMPOSEOBJECTREQUEST_SOURCEOBJECT.nested_types_by_name['ObjectPreconditions']
  _DELETEOBJECTREQUEST = DESCRIPTOR.message_types_by_name['DeleteObjectRequest']
  _READOBJECTREQUEST = DESCRIPTOR.message_types_by_name['ReadObjectRequest']
  _GETOBJECTREQUEST = DESCRIPTOR.message_types_by_name['GetObjectRequest']
  _READOBJECTRESPONSE = DESCRIPTOR.message_types_by_name['ReadObjectResponse']
  _WRITEOBJECTSPEC = DESCRIPTOR.message_types_by_name['WriteObjectSpec']
  _WRITEOBJECTREQUEST = DESCRIPTOR.message_types_by_name['WriteObjectRequest']
  _WRITEOBJECTRESPONSE = DESCRIPTOR.message_types_by_name['WriteObjectResponse']
  _LISTOBJECTSREQUEST = DESCRIPTOR.message_types_by_name['ListObjectsRequest']
  _QUERYWRITESTATUSREQUEST = DESCRIPTOR.message_types_by_name['QueryWriteStatusRequest']
  _QUERYWRITESTATUSRESPONSE = DESCRIPTOR.message_types_by_name['QueryWriteStatusResponse']
  _REWRITEOBJECTREQUEST = DESCRIPTOR.message_types_by_name['RewriteObjectRequest']
  _REWRITERESPONSE = DESCRIPTOR.message_types_by_name['RewriteResponse']
  _STARTRESUMABLEWRITEREQUEST = DESCRIPTOR.message_types_by_name['StartResumableWriteRequest']
  _STARTRESUMABLEWRITERESPONSE = DESCRIPTOR.message_types_by_name['StartResumableWriteResponse']
  _UPDATEOBJECTREQUEST = DESCRIPTOR.message_types_by_name['UpdateObjectRequest']
  _GETSERVICEACCOUNTREQUEST = DESCRIPTOR.message_types_by_name['GetServiceAccountRequest']
  _CREATEHMACKEYREQUEST = DESCRIPTOR.message_types_by_name['CreateHmacKeyRequest']
  _CREATEHMACKEYRESPONSE = DESCRIPTOR.message_types_by_name['CreateHmacKeyResponse']
  _DELETEHMACKEYREQUEST = DESCRIPTOR.message_types_by_name['DeleteHmacKeyRequest']
  _GETHMACKEYREQUEST = DESCRIPTOR.message_types_by_name['GetHmacKeyRequest']
  _LISTHMACKEYSREQUEST = DESCRIPTOR.message_types_by_name['ListHmacKeysRequest']
  _LISTHMACKEYSRESPONSE = DESCRIPTOR.message_types_by_name['ListHmacKeysResponse']
  _UPDATEHMACKEYREQUEST = DESCRIPTOR.message_types_by_name['UpdateHmacKeyRequest']
  _COMMONOBJECTREQUESTPARAMS = DESCRIPTOR.message_types_by_name['CommonObjectRequestParams']
  _SERVICECONSTANTS = DESCRIPTOR.message_types_by_name['ServiceConstants']
  _BUCKET = DESCRIPTOR.message_types_by_name['Bucket']
  _BUCKET_BILLING = _BUCKET.nested_types_by_name['Billing']
  _BUCKET_CORS = _BUCKET.nested_types_by_name['Cors']
  _BUCKET_ENCRYPTION = _BUCKET.nested_types_by_name['Encryption']
  _BUCKET_IAMCONFIG = _BUCKET.nested_types_by_name['IamConfig']
  _BUCKET_IAMCONFIG_UNIFORMBUCKETLEVELACCESS = _BUCKET_IAMCONFIG.nested_types_by_name['UniformBucketLevelAccess']
  _BUCKET_LIFECYCLE = _BUCKET.nested_types_by_name['Lifecycle']
  _BUCKET_LIFECYCLE_RULE = _BUCKET_LIFECYCLE.nested_types_by_name['Rule']
  _BUCKET_LIFECYCLE_RULE_ACTION = _BUCKET_LIFECYCLE_RULE.nested_types_by_name['Action']
  _BUCKET_LIFECYCLE_RULE_CONDITION = _BUCKET_LIFECYCLE_RULE.nested_types_by_name['Condition']
  _BUCKET_LOGGING = _BUCKET.nested_types_by_name['Logging']
  _BUCKET_RETENTIONPOLICY = _BUCKET.nested_types_by_name['RetentionPolicy']
  _BUCKET_VERSIONING = _BUCKET.nested_types_by_name['Versioning']
  _BUCKET_WEBSITE = _BUCKET.nested_types_by_name['Website']
  _BUCKET_AUTOCLASS = _BUCKET.nested_types_by_name['Autoclass']
  _BUCKET_LABELSENTRY = _BUCKET.nested_types_by_name['LabelsEntry']
  _BUCKETACCESSCONTROL = DESCRIPTOR.message_types_by_name['BucketAccessControl']
  _CHECKSUMMEDDATA = DESCRIPTOR.message_types_by_name['ChecksummedData']
  _OBJECTCHECKSUMS = DESCRIPTOR.message_types_by_name['ObjectChecksums']
  _HMACKEYMETADATA = DESCRIPTOR.message_types_by_name['HmacKeyMetadata']
  _NOTIFICATION = DESCRIPTOR.message_types_by_name['Notification']
  _NOTIFICATION_CUSTOMATTRIBUTESENTRY = _NOTIFICATION.nested_types_by_name['CustomAttributesEntry']
  _CUSTOMERENCRYPTION = DESCRIPTOR.message_types_by_name['CustomerEncryption']
  _OBJECT = DESCRIPTOR.message_types_by_name['Object']
  _OBJECT_METADATAENTRY = _OBJECT.nested_types_by_name['MetadataEntry']
  _OBJECTACCESSCONTROL = DESCRIPTOR.message_types_by_name['ObjectAccessControl']
  _LISTOBJECTSRESPONSE = DESCRIPTOR.message_types_by_name['ListObjectsResponse']
  _PROJECTTEAM = DESCRIPTOR.message_types_by_name['ProjectTeam']
  _SERVICEACCOUNT = DESCRIPTOR.message_types_by_name['ServiceAccount']
  _OWNER = DESCRIPTOR.message_types_by_name['Owner']
  _CONTENTRANGE = DESCRIPTOR.message_types_by_name['ContentRange']
  _SERVICECONSTANTS_VALUES = _SERVICECONSTANTS.enum_types_by_name['Values']
  DeleteBucketRequest = _reflection.GeneratedProtocolMessageType('DeleteBucketRequest', (_message.Message,), {
    'DESCRIPTOR' : _DELETEBUCKETREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.DeleteBucketRequest)
    })
  _sym_db.RegisterMessage(DeleteBucketRequest)
  
  GetBucketRequest = _reflection.GeneratedProtocolMessageType('GetBucketRequest', (_message.Message,), {
    'DESCRIPTOR' : _GETBUCKETREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.GetBucketRequest)
    })
  _sym_db.RegisterMessage(GetBucketRequest)
  
  CreateBucketRequest = _reflection.GeneratedProtocolMessageType('CreateBucketRequest', (_message.Message,), {
    'DESCRIPTOR' : _CREATEBUCKETREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.CreateBucketRequest)
    })
  _sym_db.RegisterMessage(CreateBucketRequest)
  
  ListBucketsRequest = _reflection.GeneratedProtocolMessageType('ListBucketsRequest', (_message.Message,), {
    'DESCRIPTOR' : _LISTBUCKETSREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ListBucketsRequest)
    })
  _sym_db.RegisterMessage(ListBucketsRequest)
  
  ListBucketsResponse = _reflection.GeneratedProtocolMessageType('ListBucketsResponse', (_message.Message,), {
    'DESCRIPTOR' : _LISTBUCKETSRESPONSE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ListBucketsResponse)
    })
  _sym_db.RegisterMessage(ListBucketsResponse)
  
  LockBucketRetentionPolicyRequest = _reflection.GeneratedProtocolMessageType('LockBucketRetentionPolicyRequest', (_message.Message,), {
    'DESCRIPTOR' : _LOCKBUCKETRETENTIONPOLICYREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.LockBucketRetentionPolicyRequest)
    })
  _sym_db.RegisterMessage(LockBucketRetentionPolicyRequest)
  
  UpdateBucketRequest = _reflection.GeneratedProtocolMessageType('UpdateBucketRequest', (_message.Message,), {
    'DESCRIPTOR' : _UPDATEBUCKETREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.UpdateBucketRequest)
    })
  _sym_db.RegisterMessage(UpdateBucketRequest)
  
  DeleteNotificationRequest = _reflection.GeneratedProtocolMessageType('DeleteNotificationRequest', (_message.Message,), {
    'DESCRIPTOR' : _DELETENOTIFICATIONREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.DeleteNotificationRequest)
    })
  _sym_db.RegisterMessage(DeleteNotificationRequest)
  
  GetNotificationRequest = _reflection.GeneratedProtocolMessageType('GetNotificationRequest', (_message.Message,), {
    'DESCRIPTOR' : _GETNOTIFICATIONREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.GetNotificationRequest)
    })
  _sym_db.RegisterMessage(GetNotificationRequest)
  
  CreateNotificationRequest = _reflection.GeneratedProtocolMessageType('CreateNotificationRequest', (_message.Message,), {
    'DESCRIPTOR' : _CREATENOTIFICATIONREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.CreateNotificationRequest)
    })
  _sym_db.RegisterMessage(CreateNotificationRequest)
  
  ListNotificationsRequest = _reflection.GeneratedProtocolMessageType('ListNotificationsRequest', (_message.Message,), {
    'DESCRIPTOR' : _LISTNOTIFICATIONSREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ListNotificationsRequest)
    })
  _sym_db.RegisterMessage(ListNotificationsRequest)
  
  ListNotificationsResponse = _reflection.GeneratedProtocolMessageType('ListNotificationsResponse', (_message.Message,), {
    'DESCRIPTOR' : _LISTNOTIFICATIONSRESPONSE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ListNotificationsResponse)
    })
  _sym_db.RegisterMessage(ListNotificationsResponse)
  
  ComposeObjectRequest = _reflection.GeneratedProtocolMessageType('ComposeObjectRequest', (_message.Message,), {
  
    'SourceObject' : _reflection.GeneratedProtocolMessageType('SourceObject', (_message.Message,), {
  
      'ObjectPreconditions' : _reflection.GeneratedProtocolMessageType('ObjectPreconditions', (_message.Message,), {
        'DESCRIPTOR' : _COMPOSEOBJECTREQUEST_SOURCEOBJECT_OBJECTPRECONDITIONS,
        '__module__' : 'google.storage.v2.storage_pb2'
        # @@protoc_insertion_point(class_scope:google.storage.v2.ComposeObjectRequest.SourceObject.ObjectPreconditions)
        })
      ,
      'DESCRIPTOR' : _COMPOSEOBJECTREQUEST_SOURCEOBJECT,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.ComposeObjectRequest.SourceObject)
      })
    ,
    'DESCRIPTOR' : _COMPOSEOBJECTREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ComposeObjectRequest)
    })
  _sym_db.RegisterMessage(ComposeObjectRequest)
  _sym_db.RegisterMessage(ComposeObjectRequest.SourceObject)
  _sym_db.RegisterMessage(ComposeObjectRequest.SourceObject.ObjectPreconditions)
  
  DeleteObjectRequest = _reflection.GeneratedProtocolMessageType('DeleteObjectRequest', (_message.Message,), {
    'DESCRIPTOR' : _DELETEOBJECTREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.DeleteObjectRequest)
    })
  _sym_db.RegisterMessage(DeleteObjectRequest)
  
  ReadObjectRequest = _reflection.GeneratedProtocolMessageType('ReadObjectRequest', (_message.Message,), {
    'DESCRIPTOR' : _READOBJECTREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ReadObjectRequest)
    })
  _sym_db.RegisterMessage(ReadObjectRequest)
  
  GetObjectRequest = _reflection.GeneratedProtocolMessageType('GetObjectRequest', (_message.Message,), {
    'DESCRIPTOR' : _GETOBJECTREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.GetObjectRequest)
    })
  _sym_db.RegisterMessage(GetObjectRequest)
  
  ReadObjectResponse = _reflection.GeneratedProtocolMessageType('ReadObjectResponse', (_message.Message,), {
    'DESCRIPTOR' : _READOBJECTRESPONSE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ReadObjectResponse)
    })
  _sym_db.RegisterMessage(ReadObjectResponse)
  
  WriteObjectSpec = _reflection.GeneratedProtocolMessageType('WriteObjectSpec', (_message.Message,), {
    'DESCRIPTOR' : _WRITEOBJECTSPEC,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.WriteObjectSpec)
    })
  _sym_db.RegisterMessage(WriteObjectSpec)
  
  WriteObjectRequest = _reflection.GeneratedProtocolMessageType('WriteObjectRequest', (_message.Message,), {
    'DESCRIPTOR' : _WRITEOBJECTREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.WriteObjectRequest)
    })
  _sym_db.RegisterMessage(WriteObjectRequest)
  
  WriteObjectResponse = _reflection.GeneratedProtocolMessageType('WriteObjectResponse', (_message.Message,), {
    'DESCRIPTOR' : _WRITEOBJECTRESPONSE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.WriteObjectResponse)
    })
  _sym_db.RegisterMessage(WriteObjectResponse)
  
  ListObjectsRequest = _reflection.GeneratedProtocolMessageType('ListObjectsRequest', (_message.Message,), {
    'DESCRIPTOR' : _LISTOBJECTSREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ListObjectsRequest)
    })
  _sym_db.RegisterMessage(ListObjectsRequest)
  
  QueryWriteStatusRequest = _reflection.GeneratedProtocolMessageType('QueryWriteStatusRequest', (_message.Message,), {
    'DESCRIPTOR' : _QUERYWRITESTATUSREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.QueryWriteStatusRequest)
    })
  _sym_db.RegisterMessage(QueryWriteStatusRequest)
  
  QueryWriteStatusResponse = _reflection.GeneratedProtocolMessageType('QueryWriteStatusResponse', (_message.Message,), {
    'DESCRIPTOR' : _QUERYWRITESTATUSRESPONSE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.QueryWriteStatusResponse)
    })
  _sym_db.RegisterMessage(QueryWriteStatusResponse)
  
  RewriteObjectRequest = _reflection.GeneratedProtocolMessageType('RewriteObjectRequest', (_message.Message,), {
    'DESCRIPTOR' : _REWRITEOBJECTREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.RewriteObjectRequest)
    })
  _sym_db.RegisterMessage(RewriteObjectRequest)
  
  RewriteResponse = _reflection.GeneratedProtocolMessageType('RewriteResponse', (_message.Message,), {
    'DESCRIPTOR' : _REWRITERESPONSE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.RewriteResponse)
    })
  _sym_db.RegisterMessage(RewriteResponse)
  
  StartResumableWriteRequest = _reflection.GeneratedProtocolMessageType('StartResumableWriteRequest', (_message.Message,), {
    'DESCRIPTOR' : _STARTRESUMABLEWRITEREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.StartResumableWriteRequest)
    })
  _sym_db.RegisterMessage(StartResumableWriteRequest)
  
  StartResumableWriteResponse = _reflection.GeneratedProtocolMessageType('StartResumableWriteResponse', (_message.Message,), {
    'DESCRIPTOR' : _STARTRESUMABLEWRITERESPONSE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.StartResumableWriteResponse)
    })
  _sym_db.RegisterMessage(StartResumableWriteResponse)
  
  UpdateObjectRequest = _reflection.GeneratedProtocolMessageType('UpdateObjectRequest', (_message.Message,), {
    'DESCRIPTOR' : _UPDATEOBJECTREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.UpdateObjectRequest)
    })
  _sym_db.RegisterMessage(UpdateObjectRequest)
  
  GetServiceAccountRequest = _reflection.GeneratedProtocolMessageType('GetServiceAccountRequest', (_message.Message,), {
    'DESCRIPTOR' : _GETSERVICEACCOUNTREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.GetServiceAccountRequest)
    })
  _sym_db.RegisterMessage(GetServiceAccountRequest)
  
  CreateHmacKeyRequest = _reflection.GeneratedProtocolMessageType('CreateHmacKeyRequest', (_message.Message,), {
    'DESCRIPTOR' : _CREATEHMACKEYREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.CreateHmacKeyRequest)
    })
  _sym_db.RegisterMessage(CreateHmacKeyRequest)
  
  CreateHmacKeyResponse = _reflection.GeneratedProtocolMessageType('CreateHmacKeyResponse', (_message.Message,), {
    'DESCRIPTOR' : _CREATEHMACKEYRESPONSE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.CreateHmacKeyResponse)
    })
  _sym_db.RegisterMessage(CreateHmacKeyResponse)
  
  DeleteHmacKeyRequest = _reflection.GeneratedProtocolMessageType('DeleteHmacKeyRequest', (_message.Message,), {
    'DESCRIPTOR' : _DELETEHMACKEYREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.DeleteHmacKeyRequest)
    })
  _sym_db.RegisterMessage(DeleteHmacKeyRequest)
  
  GetHmacKeyRequest = _reflection.GeneratedProtocolMessageType('GetHmacKeyRequest', (_message.Message,), {
    'DESCRIPTOR' : _GETHMACKEYREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.GetHmacKeyRequest)
    })
  _sym_db.RegisterMessage(GetHmacKeyRequest)
  
  ListHmacKeysRequest = _reflection.GeneratedProtocolMessageType('ListHmacKeysRequest', (_message.Message,), {
    'DESCRIPTOR' : _LISTHMACKEYSREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ListHmacKeysRequest)
    })
  _sym_db.RegisterMessage(ListHmacKeysRequest)
  
  ListHmacKeysResponse = _reflection.GeneratedProtocolMessageType('ListHmacKeysResponse', (_message.Message,), {
    'DESCRIPTOR' : _LISTHMACKEYSRESPONSE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ListHmacKeysResponse)
    })
  _sym_db.RegisterMessage(ListHmacKeysResponse)
  
  UpdateHmacKeyRequest = _reflection.GeneratedProtocolMessageType('UpdateHmacKeyRequest', (_message.Message,), {
    'DESCRIPTOR' : _UPDATEHMACKEYREQUEST,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.UpdateHmacKeyRequest)
    })
  _sym_db.RegisterMessage(UpdateHmacKeyRequest)
  
  CommonObjectRequestParams = _reflection.GeneratedProtocolMessageType('CommonObjectRequestParams', (_message.Message,), {
    'DESCRIPTOR' : _COMMONOBJECTREQUESTPARAMS,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.CommonObjectRequestParams)
    })
  _sym_db.RegisterMessage(CommonObjectRequestParams)
  
  ServiceConstants = _reflection.GeneratedProtocolMessageType('ServiceConstants', (_message.Message,), {
    'DESCRIPTOR' : _SERVICECONSTANTS,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ServiceConstants)
    })
  _sym_db.RegisterMessage(ServiceConstants)
  
  Bucket = _reflection.GeneratedProtocolMessageType('Bucket', (_message.Message,), {
  
    'Billing' : _reflection.GeneratedProtocolMessageType('Billing', (_message.Message,), {
      'DESCRIPTOR' : _BUCKET_BILLING,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Billing)
      })
    ,
  
    'Cors' : _reflection.GeneratedProtocolMessageType('Cors', (_message.Message,), {
      'DESCRIPTOR' : _BUCKET_CORS,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Cors)
      })
    ,
  
    'Encryption' : _reflection.GeneratedProtocolMessageType('Encryption', (_message.Message,), {
      'DESCRIPTOR' : _BUCKET_ENCRYPTION,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Encryption)
      })
    ,
  
    'IamConfig' : _reflection.GeneratedProtocolMessageType('IamConfig', (_message.Message,), {
  
      'UniformBucketLevelAccess' : _reflection.GeneratedProtocolMessageType('UniformBucketLevelAccess', (_message.Message,), {
        'DESCRIPTOR' : _BUCKET_IAMCONFIG_UNIFORMBUCKETLEVELACCESS,
        '__module__' : 'google.storage.v2.storage_pb2'
        # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess)
        })
      ,
      'DESCRIPTOR' : _BUCKET_IAMCONFIG,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.IamConfig)
      })
    ,
  
    'Lifecycle' : _reflection.GeneratedProtocolMessageType('Lifecycle', (_message.Message,), {
  
      'Rule' : _reflection.GeneratedProtocolMessageType('Rule', (_message.Message,), {
  
        'Action' : _reflection.GeneratedProtocolMessageType('Action', (_message.Message,), {
          'DESCRIPTOR' : _BUCKET_LIFECYCLE_RULE_ACTION,
          '__module__' : 'google.storage.v2.storage_pb2'
          # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle.Rule.Action)
          })
        ,
  
        'Condition' : _reflection.GeneratedProtocolMessageType('Condition', (_message.Message,), {
          'DESCRIPTOR' : _BUCKET_LIFECYCLE_RULE_CONDITION,
          '__module__' : 'google.storage.v2.storage_pb2'
          # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle.Rule.Condition)
          })
        ,
        'DESCRIPTOR' : _BUCKET_LIFECYCLE_RULE,
        '__module__' : 'google.storage.v2.storage_pb2'
        # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle.Rule)
        })
      ,
      'DESCRIPTOR' : _BUCKET_LIFECYCLE,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle)
      })
    ,
  
    'Logging' : _reflection.GeneratedProtocolMessageType('Logging', (_message.Message,), {
      'DESCRIPTOR' : _BUCKET_LOGGING,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Logging)
      })
    ,
  
    'RetentionPolicy' : _reflection.GeneratedProtocolMessageType('RetentionPolicy', (_message.Message,), {
      'DESCRIPTOR' : _BUCKET_RETENTIONPOLICY,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.RetentionPolicy)
      })
    ,
  
    'Versioning' : _reflection.GeneratedProtocolMessageType('Versioning', (_message.Message,), {
      'DESCRIPTOR' : _BUCKET_VERSIONING,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Versioning)
      })
    ,
  
    'Website' : _reflection.GeneratedProtocolMessageType('Website', (_message.Message,), {
      'DESCRIPTOR' : _BUCKET_WEBSITE,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Website)
      })
    ,
  
    'Autoclass' : _reflection.GeneratedProtocolMessageType('Autoclass', (_message.Message,), {
      'DESCRIPTOR' : _BUCKET_AUTOCLASS,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Autoclass)
      })
    ,
  
    'LabelsEntry' : _reflection.GeneratedProtocolMessageType('LabelsEntry', (_message.Message,), {
      'DESCRIPTOR' : _BUCKET_LABELSENTRY,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.LabelsEntry)
      })
    ,
    'DESCRIPTOR' : _BUCKET,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.Bucket)
    })
  _sym_db.RegisterMessage(Bucket)
  _sym_db.RegisterMessage(Bucket.Billing)
  _sym_db.RegisterMessage(Bucket.Cors)
  _sym_db.RegisterMessage(Bucket.Encryption)
  _sym_db.RegisterMessage(Bucket.IamConfig)
  _sym_db.RegisterMessage(Bucket.IamConfig.UniformBucketLevelAccess)
  _sym_db.RegisterMessage(Bucket.Lifecycle)
  _sym_db.RegisterMessage(Bucket.Lifecycle.Rule)
  _sym_db.RegisterMessage(Bucket.Lifecycle.Rule.Action)
  _sym_db.RegisterMessage(Bucket.Lifecycle.Rule.Condition)
  _sym_db.RegisterMessage(Bucket.Logging)
  _sym_db.RegisterMessage(Bucket.RetentionPolicy)
  _sym_db.RegisterMessage(Bucket.Versioning)
  _sym_db.RegisterMessage(Bucket.Website)
  _sym_db.RegisterMessage(Bucket.Autoclass)
  _sym_db.RegisterMessage(Bucket.LabelsEntry)
  
  BucketAccessControl = _reflection.GeneratedProtocolMessageType('BucketAccessControl', (_message.Message,), {
    'DESCRIPTOR' : _BUCKETACCESSCONTROL,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.BucketAccessControl)
    })
  _sym_db.RegisterMessage(BucketAccessControl)
  
  ChecksummedData = _reflection.GeneratedProtocolMessageType('ChecksummedData', (_message.Message,), {
    'DESCRIPTOR' : _CHECKSUMMEDDATA,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ChecksummedData)
    })
  _sym_db.RegisterMessage(ChecksummedData)
  
  ObjectChecksums = _reflection.GeneratedProtocolMessageType('ObjectChecksums', (_message.Message,), {
    'DESCRIPTOR' : _OBJECTCHECKSUMS,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ObjectChecksums)
    })
  _sym_db.RegisterMessage(ObjectChecksums)
  
  HmacKeyMetadata = _reflection.GeneratedProtocolMessageType('HmacKeyMetadata', (_message.Message,), {
    'DESCRIPTOR' : _HMACKEYMETADATA,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.HmacKeyMetadata)
    })
  _sym_db.RegisterMessage(HmacKeyMetadata)
  
  Notification = _reflection.GeneratedProtocolMessageType('Notification', (_message.Message,), {
  
    'CustomAttributesEntry' : _reflection.GeneratedProtocolMessageType('CustomAttributesEntry', (_message.Message,), {
      'DESCRIPTOR' : _NOTIFICATION_CUSTOMATTRIBUTESENTRY,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Notification.CustomAttributesEntry)
      })
    ,
    'DESCRIPTOR' : _NOTIFICATION,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.Notification)
    })
  _sym_db.RegisterMessage(Notification)
  _sym_db.RegisterMessage(Notification.CustomAttributesEntry)
  
  CustomerEncryption = _reflection.GeneratedProtocolMessageType('CustomerEncryption', (_message.Message,), {
    'DESCRIPTOR' : _CUSTOMERENCRYPTION,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.CustomerEncryption)
    })
  _sym_db.RegisterMessage(CustomerEncryption)
  
  Object = _reflection.GeneratedProtocolMessageType('Object', (_message.Message,), {
  
    'MetadataEntry' : _reflection.GeneratedProtocolMessageType('MetadataEntry', (_message.Message,), {
      'DESCRIPTOR' : _OBJECT_METADATAENTRY,
      '__module__' : 'google.storage.v2.storage_pb2'
      # @@protoc_insertion_point(class_scope:google.storage.v2.Object.MetadataEntry)
      })
    ,
    'DESCRIPTOR' : _OBJECT,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.Object)
    })
  _sym_db.RegisterMessage(Object)
  _sym_db.RegisterMessage(Object.MetadataEntry)
  
  ObjectAccessControl = _reflection.GeneratedProtocolMessageType('ObjectAccessControl', (_message.Message,), {
    'DESCRIPTOR' : _OBJECTACCESSCONTROL,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ObjectAccessControl)
    })
  _sym_db.RegisterMessage(ObjectAccessControl)
  
  ListObjectsResponse = _reflection.GeneratedProtocolMessageType('ListObjectsResponse', (_message.Message,), {
    'DESCRIPTOR' : _LISTOBJECTSRESPONSE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ListObjectsResponse)
    })
  _sym_db.RegisterMessage(ListObjectsResponse)
  
  ProjectTeam = _reflection.GeneratedProtocolMessageType('ProjectTeam', (_message.Message,), {
    'DESCRIPTOR' : _PROJECTTEAM,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ProjectTeam)
    })
  _sym_db.RegisterMessage(ProjectTeam)
  
  ServiceAccount = _reflection.GeneratedProtocolMessageType('ServiceAccount', (_message.Message,), {
    'DESCRIPTOR' : _SERVICEACCOUNT,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ServiceAccount)
    })
  _sym_db.RegisterMessage(ServiceAccount)
  
  Owner = _reflection.GeneratedProtocolMessageType('Owner', (_message.Message,), {
    'DESCRIPTOR' : _OWNER,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.Owner)
    })
  _sym_db.RegisterMessage(Owner)
  
  ContentRange = _reflection.GeneratedProtocolMessageType('ContentRange', (_message.Message,), {
    'DESCRIPTOR' : _CONTENTRANGE,
    '__module__' : 'google.storage.v2.storage_pb2'
    # @@protoc_insertion_point(class_scope:google.storage.v2.ContentRange)
    })
  _sym_db.RegisterMessage(ContentRange)
  
  _STORAGE = DESCRIPTOR.services_by_name['Storage']
  if _descriptor._USE_C_DESCRIPTORS == False:
  
    DESCRIPTOR._options = None
    DESCRIPTOR._serialized_options = b'\n\025com.google.storage.v2B\014StorageProtoP\001Z8google.golang.org/genproto/googleapis/storage/v2;storage\352Ax\n!cloudkms.googleapis.com/CryptoKey\022Sprojects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}'
    _DELETEBUCKETREQUEST.fields_by_name['name']._options = None
    _DELETEBUCKETREQUEST.fields_by_name['name']._serialized_options = b'\340A\002\372A\037\n\035storage.googleapis.com/Bucket'
    _GETBUCKETREQUEST.fields_by_name['name']._options = None
    _GETBUCKETREQUEST.fields_by_name['name']._serialized_options = b'\340A\002\372A\037\n\035storage.googleapis.com/Bucket'
    _CREATEBUCKETREQUEST.fields_by_name['parent']._options = None
    _CREATEBUCKETREQUEST.fields_by_name['parent']._serialized_options = b'\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project'
    _CREATEBUCKETREQUEST.fields_by_name['bucket']._options = None
    _CREATEBUCKETREQUEST.fields_by_name['bucket']._serialized_options = b'\340A\002'
    _CREATEBUCKETREQUEST.fields_by_name['bucket_id']._options = None
    _CREATEBUCKETREQUEST.fields_by_name['bucket_id']._serialized_options = b'\340A\002'
    _LISTBUCKETSREQUEST.fields_by_name['parent']._options = None
    _LISTBUCKETSREQUEST.fields_by_name['parent']._serialized_options = b'\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project'
    _LOCKBUCKETRETENTIONPOLICYREQUEST.fields_by_name['bucket']._options = None
    _LOCKBUCKETRETENTIONPOLICYREQUEST.fields_by_name['bucket']._serialized_options = b'\340A\002\372A\037\n\035storage.googleapis.com/Bucket'
    _DELETENOTIFICATIONREQUEST.fields_by_name['name']._options = None
    _DELETENOTIFICATIONREQUEST.fields_by_name['name']._serialized_options = b'\340A\002\372A%\n#storage.googleapis.com/Notification'
    _GETNOTIFICATIONREQUEST.fields_by_name['name']._options = None
    _GETNOTIFICATIONREQUEST.fields_by_name['name']._serialized_options = b'\340A\002\372A\037\n\035storage.googleapis.com/Bucket'
    _CREATENOTIFICATIONREQUEST.fields_by_name['parent']._options = None
    _CREATENOTIFICATIONREQUEST.fields_by_name['parent']._serialized_options = b'\340A\002\372A\037\022\035storage.googleapis.com/Bucket'
    _CREATENOTIFICATIONREQUEST.fields_by_name['notification']._options = None
    _CREATENOTIFICATIONREQUEST.fields_by_name['notification']._serialized_options = b'\340A\002'
    _LISTNOTIFICATIONSREQUEST.fields_by_name['parent']._options = None
    _LISTNOTIFICATIONSREQUEST.fields_by_name['parent']._serialized_options = b'\340A\002\372A\037\022\035storage.googleapis.com/Bucket'
    _COMPOSEOBJECTREQUEST_SOURCEOBJECT.fields_by_name['name']._options = None
    _COMPOSEOBJECTREQUEST_SOURCEOBJECT.fields_by_name['name']._serialized_options = b'\340A\002'
    _COMPOSEOBJECTREQUEST.fields_by_name['destination']._options = None
    _COMPOSEOBJECTREQUEST.fields_by_name['destination']._serialized_options = b'\340A\002'
    _COMPOSEOBJECTREQUEST.fields_by_name['kms_key']._options = None
    _COMPOSEOBJECTREQUEST.fields_by_name['kms_key']._serialized_options = b'\372A#\n!cloudkms.googleapis.com/CryptoKey'
    _DELETEOBJECTREQUEST.fields_by_name['bucket']._options = None
    _DELETEOBJECTREQUEST.fields_by_name['bucket']._serialized_options = b'\340A\002'
    _DELETEOBJECTREQUEST.fields_by_name['object']._options = None
    _DELETEOBJECTREQUEST.fields_by_name['object']._serialized_options = b'\340A\002'
    _GETOBJECTREQUEST.fields_by_name['bucket']._options = None
    _GETOBJECTREQUEST.fields_by_name['bucket']._serialized_options = b'\340A\002'
    _GETOBJECTREQUEST.fields_by_name['object']._options = None
    _GETOBJECTREQUEST.fields_by_name['object']._serialized_options = b'\340A\002'
    _WRITEOBJECTREQUEST.fields_by_name['write_offset']._options = None
    _WRITEOBJECTREQUEST.fields_by_name['write_offset']._serialized_options = b'\340A\002'
    _LISTOBJECTSREQUEST.fields_by_name['parent']._options = None
    _LISTOBJECTSREQUEST.fields_by_name['parent']._serialized_options = b'\340A\002\372A\037\022\035storage.googleapis.com/Bucket'
    _QUERYWRITESTATUSREQUEST.fields_by_name['upload_id']._options = None
    _QUERYWRITESTATUSREQUEST.fields_by_name['upload_id']._serialized_options = b'\340A\002'
    _REWRITEOBJECTREQUEST.fields_by_name['destination_name']._options = None
    _REWRITEOBJECTREQUEST.fields_by_name['destination_name']._serialized_options = b'\340A\005'
    _REWRITEOBJECTREQUEST.fields_by_name['destination_bucket']._options = None
    _REWRITEOBJECTREQUEST.fields_by_name['destination_bucket']._serialized_options = b'\340A\005\372A\037\n\035storage.googleapis.com/Bucket'
    _REWRITEOBJECTREQUEST.fields_by_name['destination_kms_key']._options = None
    _REWRITEOBJECTREQUEST.fields_by_name['destination_kms_key']._serialized_options = b'\372A#\n!cloudkms.googleapis.com/CryptoKey'
    _REWRITEOBJECTREQUEST.fields_by_name['source_bucket']._options = None
    _REWRITEOBJECTREQUEST.fields_by_name['source_bucket']._serialized_options = b'\340A\002'
    _REWRITEOBJECTREQUEST.fields_by_name['source_object']._options = None
    _REWRITEOBJECTREQUEST.fields_by_name['source_object']._serialized_options = b'\340A\002'
    _GETSERVICEACCOUNTREQUEST.fields_by_name['project']._options = None
    _GETSERVICEACCOUNTREQUEST.fields_by_name['project']._serialized_options = b'\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project'
    _CREATEHMACKEYREQUEST.fields_by_name['project']._options = None
    _CREATEHMACKEYREQUEST.fields_by_name['project']._serialized_options = b'\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project'
    _CREATEHMACKEYREQUEST.fields_by_name['service_account_email']._options = None
    _CREATEHMACKEYREQUEST.fields_by_name['service_account_email']._serialized_options = b'\340A\002'
    _DELETEHMACKEYREQUEST.fields_by_name['access_id']._options = None
    _DELETEHMACKEYREQUEST.fields_by_name['access_id']._serialized_options = b'\340A\002'
    _DELETEHMACKEYREQUEST.fields_by_name['project']._options = None
    _DELETEHMACKEYREQUEST.fields_by_name['project']._serialized_options = b'\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project'
    _GETHMACKEYREQUEST.fields_by_name['access_id']._options = None
    _GETHMACKEYREQUEST.fields_by_name['access_id']._serialized_options = b'\340A\002'
    _GETHMACKEYREQUEST.fields_by_name['project']._options = None
    _GETHMACKEYREQUEST.fields_by_name['project']._serialized_options = b'\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project'
    _LISTHMACKEYSREQUEST.fields_by_name['project']._options = None
    _LISTHMACKEYSREQUEST.fields_by_name['project']._serialized_options = b'\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project'
    _LISTHMACKEYSREQUEST.fields_by_name['page_size']._options = None
    _LISTHMACKEYSREQUEST.fields_by_name['page_size']._serialized_options = b'\340A\001'
    _LISTHMACKEYSREQUEST.fields_by_name['page_token']._options = None
    _LISTHMACKEYSREQUEST.fields_by_name['page_token']._serialized_options = b'\340A\001'
    _LISTHMACKEYSREQUEST.fields_by_name['service_account_email']._options = None
    _LISTHMACKEYSREQUEST.fields_by_name['service_account_email']._serialized_options = b'\340A\001'
    _LISTHMACKEYSREQUEST.fields_by_name['show_deleted_keys']._options = None
    _LISTHMACKEYSREQUEST.fields_by_name['show_deleted_keys']._serialized_options = b'\340A\001'
    _UPDATEHMACKEYREQUEST.fields_by_name['hmac_key']._options = None
    _UPDATEHMACKEYREQUEST.fields_by_name['hmac_key']._serialized_options = b'\340A\002'
    _SERVICECONSTANTS_VALUES._options = None
    _SERVICECONSTANTS_VALUES._serialized_options = b'\020\001'
    _BUCKET_ENCRYPTION.fields_by_name['default_kms_key']._options = None
    _BUCKET_ENCRYPTION.fields_by_name['default_kms_key']._serialized_options = b'\372A#\n!cloudkms.googleapis.com/CryptoKey'
    _BUCKET_AUTOCLASS.fields_by_name['toggle_time']._options = None
    _BUCKET_AUTOCLASS.fields_by_name['toggle_time']._serialized_options = b'\340A\003'
    _BUCKET_LABELSENTRY._options = None
    _BUCKET_LABELSENTRY._serialized_options = b'8\001'
    _BUCKET.fields_by_name['name']._options = None
    _BUCKET.fields_by_name['name']._serialized_options = b'\340A\005'
    _BUCKET.fields_by_name['bucket_id']._options = None
    _BUCKET.fields_by_name['bucket_id']._serialized_options = b'\340A\003'
    _BUCKET.fields_by_name['project']._options = None
    _BUCKET.fields_by_name['project']._serialized_options = b'\340A\005\372A-\n+cloudresourcemanager.googleapis.com/Project'
    _BUCKET.fields_by_name['metageneration']._options = None
    _BUCKET.fields_by_name['metageneration']._serialized_options = b'\340A\003'
    _BUCKET.fields_by_name['location']._options = None
    _BUCKET.fields_by_name['location']._serialized_options = b'\340A\005'
    _BUCKET.fields_by_name['location_type']._options = None
    _BUCKET.fields_by_name['location_type']._serialized_options = b'\340A\003'
    _BUCKET.fields_by_name['create_time']._options = None
    _BUCKET.fields_by_name['create_time']._serialized_options = b'\340A\003'
    _BUCKET.fields_by_name['update_time']._options = None
    _BUCKET.fields_by_name['update_time']._serialized_options = b'\340A\003'
    _BUCKET.fields_by_name['owner']._options = None
    _BUCKET.fields_by_name['owner']._serialized_options = b'\340A\003'
    _BUCKET._options = None
    _BUCKET._serialized_options = b'\352AD\n\035storage.googleapis.com/Bucket\022#projects/{project}/buckets/{bucket}'
    _HMACKEYMETADATA.fields_by_name['project']._options = None
    _HMACKEYMETADATA.fields_by_name['project']._serialized_options = b'\372A-\n+cloudresourcemanager.googleapis.com/Project'
    _NOTIFICATION_CUSTOMATTRIBUTESENTRY._options = None
    _NOTIFICATION_CUSTOMATTRIBUTESENTRY._serialized_options = b'8\001'
    _NOTIFICATION.fields_by_name['name']._options = None
    _NOTIFICATION.fields_by_name['name']._serialized_options = b'\340A\002'
    _NOTIFICATION.fields_by_name['topic']._options = None
    _NOTIFICATION.fields_by_name['topic']._serialized_options = b'\340A\002'
    _NOTIFICATION.fields_by_name['event_types']._options = None
    _NOTIFICATION.fields_by_name['event_types']._serialized_options = b'\340A\001'
    _NOTIFICATION.fields_by_name['custom_attributes']._options = None
    _NOTIFICATION.fields_by_name['custom_attributes']._serialized_options = b'\340A\001'
    _NOTIFICATION.fields_by_name['object_name_prefix']._options = None
    _NOTIFICATION.fields_by_name['object_name_prefix']._serialized_options = b'\340A\001'
    _NOTIFICATION.fields_by_name['payload_format']._options = None
    _NOTIFICATION.fields_by_name['payload_format']._serialized_options = b'\340A\002'
    _NOTIFICATION._options = None
    _NOTIFICATION._serialized_options = b'\352Am\n#storage.googleapis.com/Notification\022Fprojects/{project}/buckets/{bucket}/notificationConfigs/{notification}'
    _OBJECT_METADATAENTRY._options = None
    _OBJECT_METADATAENTRY._serialized_options = b'8\001'
    _OBJECT.fields_by_name['name']._options = None
    _OBJECT.fields_by_name['name']._serialized_options = b'\340A\005'
    _OBJECT.fields_by_name['bucket']._options = None
    _OBJECT.fields_by_name['bucket']._serialized_options = b'\340A\005\372A\037\n\035storage.googleapis.com/Bucket'
    _OBJECT.fields_by_name['generation']._options = None
    _OBJECT.fields_by_name['generation']._serialized_options = b'\340A\005'
    _OBJECT.fields_by_name['metageneration']._options = None
    _OBJECT.fields_by_name['metageneration']._serialized_options = b'\340A\003'
    _OBJECT.fields_by_name['size']._options = None
    _OBJECT.fields_by_name['size']._serialized_options = b'\340A\003'
    _OBJECT.fields_by_name['delete_time']._options = None
    _OBJECT.fields_by_name['delete_time']._serialized_options = b'\340A\003'
    _OBJECT.fields_by_name['create_time']._options = None
    _OBJECT.fields_by_name['create_time']._serialized_options = b'\340A\003'
    _OBJECT.fields_by_name['component_count']._options = None
    _OBJECT.fields_by_name['component_count']._serialized_options = b'\340A\003'
    _OBJECT.fields_by_name['checksums']._options = None
    _OBJECT.fields_by_name['checksums']._serialized_options = b'\340A\003'
    _OBJECT.fields_by_name['update_time']._options = None
    _OBJECT.fields_by_name['update_time']._serialized_options = b'\340A\003'
    _OBJECT.fields_by_name['kms_key']._options = None
    _OBJECT.fields_by_name['kms_key']._serialized_options = b'\372A#\n!cloudkms.googleapis.com/CryptoKey'
    _OBJECT.fields_by_name['update_storage_class_time']._options = None
    _OBJECT.fields_by_name['update_storage_class_time']._serialized_options = b'\340A\003'
    _OBJECT.fields_by_name['owner']._options = None
    _OBJECT.fields_by_name['owner']._serialized_options = b'\340A\003'
    _STORAGE._options = None
    _STORAGE._serialized_options = b'\312A\026storage.googleapis.com\322A\212\002https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-platform.read-only,https://www.googleapis.com/auth/devstorage.full_control,https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/devstorage.read_write'
    _STORAGE.methods_by_name['DeleteBucket']._options = None
    _STORAGE.methods_by_name['DeleteBucket']._serialized_options = b'\332A\004name'
    _STORAGE.methods_by_name['GetBucket']._options = None
    _STORAGE.methods_by_name['GetBucket']._serialized_options = b'\332A\004name'
    _STORAGE.methods_by_name['CreateBucket']._options = None
    _STORAGE.methods_by_name['CreateBucket']._serialized_options = b'\332A\027parent,bucket,bucket_id'
    _STORAGE.methods_by_name['ListBuckets']._options = None
    _STORAGE.methods_by_name['ListBuckets']._serialized_options = b'\332A\006parent'
    _STORAGE.methods_by_name['LockBucketRetentionPolicy']._options = None
    _STORAGE.methods_by_name['LockBucketRetentionPolicy']._serialized_options = b'\332A\006bucket'
    _STORAGE.methods_by_name['GetIamPolicy']._options = None
    _STORAGE.methods_by_name['GetIamPolicy']._serialized_options = b'\332A\010resource'
    _STORAGE.methods_by_name['SetIamPolicy']._options = None
    _STORAGE.methods_by_name['SetIamPolicy']._serialized_options = b'\332A\017resource,policy'
    _STORAGE.methods_by_name['TestIamPermissions']._options = None
    _STORAGE.methods_by_name['TestIamPermissions']._serialized_options = b'\332A\024resource,permissions'
    _STORAGE.methods_by_name['UpdateBucket']._options = None
    _STORAGE.methods_by_name['UpdateBucket']._serialized_options = b'\332A\022bucket,update_mask'
    _STORAGE.methods_by_name['DeleteNotification']._options = None
    _STORAGE.methods_by_name['DeleteNotification']._serialized_options = b'\332A\004name'
    _STORAGE.methods_by_name['GetNotification']._options = None
    _STORAGE.methods_by_name['GetNotification']._serialized_options = b'\332A\004name'
    _STORAGE.methods_by_name['CreateNotification']._options = None
    _STORAGE.methods_by_name['CreateNotification']._serialized_options = b'\332A\023parent,notification'
    _STORAGE.methods_by_name['ListNotifications']._options = None
    _STORAGE.methods_by_name['ListNotifications']._serialized_options = b'\332A\006parent'
    _STORAGE.methods_by_name['DeleteObject']._options = None
    _STORAGE.methods_by_name['DeleteObject']._serialized_options = b'\332A\rbucket,object\332A\030bucket,object,generation'
    _STORAGE.methods_by_name['GetObject']._options = None
    _STORAGE.methods_by_name['GetObject']._serialized_options = b'\332A\rbucket,object\332A\030bucket,object,generation'
    _STORAGE.methods_by_name['ReadObject']._options = None
    _STORAGE.methods_by_name['ReadObject']._serialized_options = b'\332A\rbucket,object\332A\030bucket,object,generation'
    _STORAGE.methods_by_name['UpdateObject']._options = None
    _STORAGE.methods_by_name['UpdateObject']._serialized_options = b'\332A\022object,update_mask'
    _STORAGE.methods_by_name['ListObjects']._options = None
    _STORAGE.methods_by_name['ListObjects']._serialized_options = b'\332A\006parent'
    _STORAGE.methods_by_name['QueryWriteStatus']._options = None
    _STORAGE.methods_by_name['QueryWriteStatus']._serialized_options = b'\332A\tupload_id'
    _STORAGE.methods_by_name['GetServiceAccount']._options = None
    _STORAGE.methods_by_name['GetServiceAccount']._serialized_options = b'\332A\007project'
    _STORAGE.methods_by_name['CreateHmacKey']._options = None
    _STORAGE.methods_by_name['CreateHmacKey']._serialized_options = b'\332A\035project,service_account_email'
    _STORAGE.methods_by_name['DeleteHmacKey']._options = None
    _STORAGE.methods_by_name['DeleteHmacKey']._serialized_options = b'\332A\021access_id,project'
    _STORAGE.methods_by_name['GetHmacKey']._options = None
    _STORAGE.methods_by_name['GetHmacKey']._serialized_options = b'\332A\021access_id,project'
    _STORAGE.methods_by_name['ListHmacKeys']._options = None
    _STORAGE.methods_by_name['ListHmacKeys']._serialized_options = b'\332A\007project'
    _STORAGE.methods_by_name['UpdateHmacKey']._options = None
    _STORAGE.methods_by_name['UpdateHmacKey']._serialized_options = b'\332A\024hmac_key,update_mask'
    _DELETEBUCKETREQUEST._serialized_start=320
    _DELETEBUCKETREQUEST._serialized_end=534
    _GETBUCKETREQUEST._serialized_start=537
    _GETBUCKETREQUEST._serialized_end=814
    _CREATEBUCKETREQUEST._serialized_start=817
    _CREATEBUCKETREQUEST._serialized_end=1042
    _LISTBUCKETSREQUEST._serialized_start=1045
    _LISTBUCKETSREQUEST._serialized_end=1255
    _LISTBUCKETSRESPONSE._serialized_start=1257
    _LISTBUCKETSRESPONSE._serialized_end=1347
    _LOCKBUCKETRETENTIONPOLICYREQUEST._serialized_start=1349
    _LOCKBUCKETRETENTIONPOLICYREQUEST._serialized_end=1471
    _UPDATEBUCKETREQUEST._serialized_start=1474
    _UPDATEBUCKETREQUEST._serialized_end=1790
    _DELETENOTIFICATIONREQUEST._serialized_start=1792
    _DELETENOTIFICATIONREQUEST._serialized_end=1878
    _GETNOTIFICATIONREQUEST._serialized_start=1880
    _GETNOTIFICATIONREQUEST._serialized_end=1957
    _CREATENOTIFICATIONREQUEST._serialized_start=1960
    _CREATENOTIFICATIONREQUEST._serialized_end=2102
    _LISTNOTIFICATIONSREQUEST._serialized_start=2104
    _LISTNOTIFICATIONSREQUEST._serialized_end=2224
    _LISTNOTIFICATIONSRESPONSE._serialized_start=2226
    _LISTNOTIFICATIONSRESPONSE._serialized_end=2334
    _COMPOSEOBJECTREQUEST._serialized_start=2337
    _COMPOSEOBJECTREQUEST._serialized_end=3032
    _COMPOSEOBJECTREQUEST_SOURCEOBJECT._serialized_start=2742
    _COMPOSEOBJECTREQUEST_SOURCEOBJECT._serialized_end=2980
    _COMPOSEOBJECTREQUEST_SOURCEOBJECT_OBJECTPRECONDITIONS._serialized_start=2901
    _COMPOSEOBJECTREQUEST_SOURCEOBJECT_OBJECTPRECONDITIONS._serialized_end=2980
    _DELETEOBJECTREQUEST._serialized_start=3035
    _DELETEOBJECTREQUEST._serialized_end=3485
    _READOBJECTREQUEST._serialized_start=3488
    _READOBJECTREQUEST._serialized_end=4014
    _GETOBJECTREQUEST._serialized_start=4017
    _GETOBJECTREQUEST._serialized_end=4511
    _READOBJECTRESPONSE._serialized_start=4514
    _READOBJECTRESPONSE._serialized_end=4759
    _WRITEOBJECTSPEC._serialized_start=4762
    _WRITEOBJECTSPEC._serialized_end=5112
    _WRITEOBJECTREQUEST._serialized_start=5115
    _WRITEOBJECTREQUEST._serialized_end=5505
    _WRITEOBJECTRESPONSE._serialized_start=5507
    _WRITEOBJECTRESPONSE._serialized_end=5617
    _LISTOBJECTSREQUEST._serialized_start=5620
    _LISTOBJECTSREQUEST._serialized_end=5945
    _QUERYWRITESTATUSREQUEST._serialized_start=5948
    _QUERYWRITESTATUSREQUEST._serialized_end=6081
    _QUERYWRITESTATUSRESPONSE._serialized_start=6083
    _QUERYWRITESTATUSRESPONSE._serialized_end=6198
    _REWRITEOBJECTREQUEST._serialized_start=6201
    _REWRITEOBJECTREQUEST._serialized_end=7419
    _REWRITERESPONSE._serialized_start=7422
    _REWRITERESPONSE._serialized_end=7573
    _STARTRESUMABLEWRITEREQUEST._serialized_start=7576
    _STARTRESUMABLEWRITEREQUEST._serialized_end=7751
    _STARTRESUMABLEWRITERESPONSE._serialized_start=7753
    _STARTRESUMABLEWRITERESPONSE._serialized_end=7801
    _UPDATEOBJECTREQUEST._serialized_start=7804
    _UPDATEOBJECTREQUEST._serialized_end=8289
    _GETSERVICEACCOUNTREQUEST._serialized_start=8291
    _GETSERVICEACCOUNTREQUEST._serialized_end=8387
    _CREATEHMACKEYREQUEST._serialized_start=8390
    _CREATEHMACKEYREQUEST._serialized_end=8518
    _CREATEHMACKEYRESPONSE._serialized_start=8520
    _CREATEHMACKEYRESPONSE._serialized_end=8623
    _DELETEHMACKEYREQUEST._serialized_start=8625
    _DELETEHMACKEYREQUEST._serialized_end=8741
    _GETHMACKEYREQUEST._serialized_start=8743
    _GETHMACKEYREQUEST._serialized_end=8856
    _LISTHMACKEYSREQUEST._serialized_start=8859
    _LISTHMACKEYSREQUEST._serialized_end=9067
    _LISTHMACKEYSRESPONSE._serialized_start=9069
    _LISTHMACKEYSRESPONSE._serialized_end=9171
    _UPDATEHMACKEYREQUEST._serialized_start=9174
    _UPDATEHMACKEYREQUEST._serialized_end=9304
    _COMMONOBJECTREQUESTPARAMS._serialized_start=9306
    _COMMONOBJECTREQUESTPARAMS._serialized_end=9430
    _SERVICECONSTANTS._serialized_start=9433
    _SERVICECONSTANTS._serialized_end=10147
    _SERVICECONSTANTS_VALUES._serialized_start=9454
    _SERVICECONSTANTS_VALUES._serialized_end=10147
    _BUCKET._serialized_start=10150
    _BUCKET._serialized_end=13001
    _BUCKET_BILLING._serialized_start=11332
    _BUCKET_BILLING._serialized_end=11365
    _BUCKET_CORS._serialized_start=11367
    _BUCKET_CORS._serialized_end=11455
    _BUCKET_ENCRYPTION._serialized_start=11457
    _BUCKET_ENCRYPTION._serialized_end=11534
    _BUCKET_IAMCONFIG._serialized_start=11537
    _BUCKET_IAMCONFIG._serialized_end=11773
    _BUCKET_IAMCONFIG_UNIFORMBUCKETLEVELACCESS._serialized_start=11683
    _BUCKET_IAMCONFIG_UNIFORMBUCKETLEVELACCESS._serialized_end=11773
    _BUCKET_LIFECYCLE._serialized_start=11776
    _BUCKET_LIFECYCLE._serialized_end=12531
    _BUCKET_LIFECYCLE_RULE._serialized_start=11846
    _BUCKET_LIFECYCLE_RULE._serialized_end=12531
    _BUCKET_LIFECYCLE_RULE_ACTION._serialized_start=11990
    _BUCKET_LIFECYCLE_RULE_ACTION._serialized_end=12035
    _BUCKET_LIFECYCLE_RULE_CONDITION._serialized_start=12038
    _BUCKET_LIFECYCLE_RULE_CONDITION._serialized_end=12531
    _BUCKET_LOGGING._serialized_start=12533
    _BUCKET_LOGGING._serialized_end=12589
    _BUCKET_RETENTIONPOLICY._serialized_start=12591
    _BUCKET_RETENTIONPOLICY._serialized_end=12705
    _BUCKET_VERSIONING._serialized_start=12707
    _BUCKET_VERSIONING._serialized_end=12736
    _BUCKET_WEBSITE._serialized_start=12738
    _BUCKET_WEBSITE._serialized_end=12797
    _BUCKET_AUTOCLASS._serialized_start=12799
    _BUCKET_AUTOCLASS._serialized_end=12881
    _BUCKET_LABELSENTRY._serialized_start=12883
    _BUCKET_LABELSENTRY._serialized_end=12928
    _BUCKETACCESSCONTROL._serialized_start=13004
    _BUCKETACCESSCONTROL._serialized_end=13171
    _CHECKSUMMEDDATA._serialized_start=13173
    _CHECKSUMMEDDATA._serialized_end=13239
    _OBJECTCHECKSUMS._serialized_start=13241
    _OBJECTCHECKSUMS._serialized_end=13308
    _HMACKEYMETADATA._serialized_start=13311
    _HMACKEYMETADATA._serialized_end=13570
    _NOTIFICATION._serialized_start=13573
    _NOTIFICATION._serialized_end=13972
    _NOTIFICATION_CUSTOMATTRIBUTESENTRY._serialized_start=13803
    _NOTIFICATION_CUSTOMATTRIBUTESENTRY._serialized_end=13858
    _CUSTOMERENCRYPTION._serialized_start=13974
    _CUSTOMERENCRYPTION._serialized_end=14050
    _OBJECT._serialized_start=14053
    _OBJECT._serialized_end=15193
    _OBJECT_METADATAENTRY._serialized_start=15125
    _OBJECT_METADATAENTRY._serialized_end=15172
    _OBJECTACCESSCONTROL._serialized_start=15196
    _OBJECTACCESSCONTROL._serialized_end=15363
    _LISTOBJECTSRESPONSE._serialized_start=15365
    _LISTOBJECTSRESPONSE._serialized_end=15473
    _PROJECTTEAM._serialized_start=15475
    _PROJECTTEAM._serialized_end=15526
    _SERVICEACCOUNT._serialized_start=15528
    _SERVICEACCOUNT._serialized_end=15567
    _OWNER._serialized_start=15569
    _OWNER._serialized_end=15611
    _CONTENTRANGE._serialized_start=15613
    _CONTENTRANGE._serialized_end=15680
    _STORAGE._serialized_start=15683
    _STORAGE._serialized_end=19187
  # @@protoc_insertion_point(module_scope)
  