From 6b7d9516179cd47f4714cfeb0103ad1dede756c4 Mon Sep 17 00:00:00 2001
From: Michael Darakananda <pongad@google.com>
Date: Tue, 15 Aug 2017 10:32:06 +1000
Subject: [PATCH] regenerated from updated googleapis (#36)

googleapis: 4ebe3838acbb2bf92c25becb39c960f98fb365d1
protobuf: v3.3.2
---
 googleapis/api/serviceconfig/auth.pb.go       |   70 +-
 .../v1/service_controller.pb.go               |  167 +-
 .../v1alpha1/embedded_assistant.pb.go         |    2 +-
 googleapis/bigtable/v2/bigtable.pb.go         |  146 +-
 googleapis/bigtable/v2/data.pb.go             |  181 +-
 googleapis/container/v1/cluster_service.pb.go | 1832 +++++++++++++----
 googleapis/datastore/v1/datastore.pb.go       |  327 ++-
 googleapis/datastore/v1/query.pb.go           |    2 +-
 googleapis/datastore/v1beta3/datastore.pb.go  |  329 ++-
 googleapis/datastore/v1beta3/query.pb.go      |    2 +-
 .../devtools/cloudbuild/v1/cloudbuild.pb.go   |  423 ++--
 .../clouddebugger/v2/controller.pb.go         |  145 +-
 .../devtools/clouddebugger/v2/data.pb.go      |  194 +-
 .../devtools/clouddebugger/v2/debugger.pb.go  |  122 +-
 .../devtools/cloudprofiler/v2/profiler.pb.go  |   81 +-
 googleapis/privacy/dlp/v2beta1/dlp.pb.go      |  730 +++++--
 googleapis/privacy/dlp/v2beta1/storage.pb.go  |  229 ++-
 googleapis/pubsub/v1/pubsub.pb.go             |  486 +++--
 18 files changed, 3910 insertions(+), 1558 deletions(-)

diff --git a/googleapis/api/serviceconfig/auth.pb.go b/googleapis/api/serviceconfig/auth.pb.go
index e424320d..ac8de7dd 100644
--- a/googleapis/api/serviceconfig/auth.pb.go
+++ b/googleapis/api/serviceconfig/auth.pb.go
@@ -215,6 +215,9 @@ type AuthProvider struct {
 	//     audiences: bookstore_android.apps.googleusercontent.com,
 	//                bookstore_web.apps.googleusercontent.com
 	Audiences string `protobuf:"bytes,4,opt,name=audiences" json:"audiences,omitempty"`
+	// Redirect URL if JWT token is required but no present or is expired.
+	// Implement authorizationUrl of securityDefinitions in OpenAPI spec.
+	AuthorizationUrl string `protobuf:"bytes,5,opt,name=authorization_url,json=authorizationUrl" json:"authorization_url,omitempty"`
 }
 
 func (m *AuthProvider) Reset()                    { *m = AuthProvider{} }
@@ -250,6 +253,13 @@ func (m *AuthProvider) GetAudiences() string {
 	return ""
 }
 
+func (m *AuthProvider) GetAuthorizationUrl() string {
+	if m != nil {
+		return m.AuthorizationUrl
+	}
+	return ""
+}
+
 // OAuth scopes are a way to define data and permissions on data. For example,
 // there are scopes defined for "Read-only access to Google Calendar" and
 // "Access to Cloud Platform". Users can consent to a scope for an application,
@@ -349,33 +359,35 @@ func init() {
 func init() { proto.RegisterFile("google/api/auth.proto", fileDescriptor0) }
 
 var fileDescriptor0 = []byte{
-	// 437 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x52, 0xcd, 0x6e, 0xd3, 0x40,
-	0x10, 0x96, 0x9d, 0xa6, 0x8d, 0x27, 0x55, 0x0a, 0x2b, 0x51, 0x99, 0x52, 0x20, 0xf2, 0x29, 0x5c,
-	0x1c, 0xa9, 0x45, 0x08, 0x09, 0x09, 0xd4, 0x22, 0x84, 0x7a, 0x22, 0x32, 0x42, 0x48, 0x5c, 0xac,
-	0x65, 0x3d, 0x38, 0x4b, 0xdd, 0x1d, 0xb3, 0x3f, 0xcd, 0x8d, 0x87, 0xe1, 0xc9, 0x78, 0x94, 0xca,
-	0x6b, 0x37, 0x71, 0xd2, 0xe3, 0x7c, 0x3f, 0x33, 0xf3, 0xcd, 0x2e, 0x3c, 0x29, 0x89, 0xca, 0x0a,
-	0xe7, 0xbc, 0x96, 0x73, 0xee, 0xec, 0x32, 0xad, 0x35, 0x59, 0x62, 0xd0, 0xc2, 0x29, 0xaf, 0xe5,
-	0xc9, 0x69, 0x5f, 0xa2, 0x14, 0x59, 0x6e, 0x25, 0x29, 0xd3, 0x2a, 0x93, 0xbf, 0x30, 0xb9, 0x70,
-	0x76, 0x89, 0xca, 0x4a, 0xe1, 0x09, 0xf6, 0x1a, 0x86, 0xda, 0x55, 0x68, 0xe2, 0xc1, 0x74, 0x30,
-	0x1b, 0x9f, 0xbd, 0x48, 0x37, 0xbd, 0xd2, 0x6d, 0x69, 0xe6, 0x2a, 0xcc, 0x5a, 0x31, 0x7b, 0x03,
-	0x51, 0xad, 0xe9, 0x56, 0x16, 0xa8, 0x4d, 0xbc, 0xe7, 0x9d, 0xf1, 0xae, 0x73, 0xd1, 0x09, 0xb2,
-	0x8d, 0x34, 0xf9, 0x1f, 0x00, 0x7b, 0xd8, 0x95, 0x9d, 0xc0, 0xc8, 0x60, 0x85, 0xc2, 0x92, 0x8e,
-	0x83, 0x69, 0x30, 0x8b, 0xb2, 0x75, 0xcd, 0xce, 0x61, 0x48, 0x4d, 0xd6, 0x38, 0x9c, 0x06, 0xb3,
-	0xf1, 0xd9, 0xf3, 0xfe, 0x98, 0x2f, 0x4d, 0xaf, 0x0c, 0xff, 0x38, 0xa9, 0xf1, 0x06, 0x95, 0x35,
-	0x59, 0xab, 0x65, 0x6f, 0x21, 0xe6, 0x55, 0x45, 0xab, 0x7c, 0x25, 0xed, 0x92, 0x9c, 0xcd, 0x85,
-	0xc6, 0xa2, 0x19, 0xca, 0xab, 0x78, 0x38, 0x0d, 0x66, 0xa3, 0xec, 0xd8, 0xf3, 0xdf, 0x5b, 0xfa,
-	0xe3, 0x9a, 0x65, 0x1f, 0xe0, 0x50, 0xf7, 0x1a, 0xc6, 0x07, 0x3e, 0xdc, 0xb3, 0xdd, 0x70, 0xbd,
-	0xa1, 0xd9, 0x96, 0x21, 0x21, 0x38, 0xec, 0xa7, 0x67, 0x13, 0x08, 0x65, 0xd1, 0xa5, 0x0a, 0x65,
-	0xc1, 0x8e, 0x61, 0x5f, 0x1a, 0xe3, 0x50, 0xfb, 0x40, 0x51, 0xd6, 0x55, 0xec, 0x29, 0x8c, 0x7e,
-	0xaf, 0xae, 0x4d, 0xee, 0xb4, 0x8c, 0x07, 0x9e, 0x39, 0x68, 0xea, 0x6f, 0x5a, 0xb2, 0x53, 0x88,
-	0xb8, 0x2b, 0x24, 0x2a, 0x81, 0xcd, 0xb5, 0x1b, 0x6e, 0x03, 0x24, 0xef, 0xe1, 0xf1, 0x83, 0x3b,
-	0xb0, 0x57, 0xf0, 0x48, 0x70, 0x45, 0x4a, 0x0a, 0x5e, 0xe5, 0x46, 0x50, 0x8d, 0xa6, 0xdb, 0xe1,
-	0x68, 0x8d, 0x7f, 0xf5, 0x70, 0xb2, 0x80, 0xa3, 0x1d, 0x3b, 0x7b, 0x09, 0xe3, 0xfb, 0x37, 0xcb,
-	0xd7, 0xcb, 0xc3, 0x3d, 0x74, 0x55, 0x6c, 0x6f, 0x14, 0xee, 0x6c, 0x74, 0x79, 0x0d, 0x13, 0x41,
-	0x37, 0xbd, 0x93, 0x5d, 0x46, 0xdd, 0x49, 0x2c, 0x2d, 0x82, 0x1f, 0x9f, 0x3a, 0xa2, 0xa4, 0x8a,
-	0xab, 0x32, 0x25, 0x5d, 0xce, 0x4b, 0x54, 0xfe, 0x83, 0xce, 0x5b, 0x8a, 0xd7, 0xd2, 0xf8, 0x1f,
-	0x6c, 0x50, 0xdf, 0x4a, 0x81, 0x82, 0xd4, 0x2f, 0x59, 0xbe, 0xdb, 0xaa, 0xfe, 0x85, 0x7b, 0x9f,
-	0x2f, 0x16, 0x57, 0x3f, 0xf7, 0xbd, 0xf1, 0xfc, 0x2e, 0x00, 0x00, 0xff, 0xff, 0xb9, 0x6d, 0xc6,
-	0x5e, 0x1c, 0x03, 0x00, 0x00,
+	// 465 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x52, 0x5f, 0x6b, 0x13, 0x4f,
+	0x14, 0x65, 0x93, 0xa6, 0xcd, 0xde, 0x94, 0xb4, 0x1d, 0xf8, 0x95, 0xfd, 0xd5, 0xaa, 0x21, 0x4f,
+	0x11, 0x61, 0x03, 0xad, 0x88, 0x20, 0x28, 0xad, 0x88, 0xf4, 0xc9, 0x30, 0x52, 0x04, 0x5f, 0x96,
+	0x71, 0x76, 0xdc, 0x8c, 0x9d, 0xce, 0x5d, 0xe7, 0x4f, 0x03, 0x3e, 0xf8, 0x49, 0x7c, 0xf2, 0x93,
+	0xf9, 0x51, 0x64, 0x67, 0xb7, 0xc9, 0x6e, 0xfa, 0x78, 0xef, 0x39, 0xe7, 0xde, 0x7b, 0xce, 0x0c,
+	0xfc, 0x57, 0x20, 0x16, 0x4a, 0xcc, 0x59, 0x29, 0xe7, 0xcc, 0xbb, 0x65, 0x5a, 0x1a, 0x74, 0x48,
+	0xa0, 0x6e, 0xa7, 0xac, 0x94, 0x27, 0xa7, 0x6d, 0x8a, 0xd6, 0xe8, 0x98, 0x93, 0xa8, 0x6d, 0xcd,
+	0x9c, 0xfe, 0x82, 0xf1, 0x85, 0x77, 0x4b, 0xa1, 0x9d, 0xe4, 0x01, 0x20, 0x2f, 0x60, 0x60, 0xbc,
+	0x12, 0x36, 0xe9, 0x4f, 0xfa, 0xb3, 0xd1, 0xd9, 0x93, 0x74, 0x33, 0x2b, 0xed, 0x52, 0xa9, 0x57,
+	0x82, 0xd6, 0x64, 0xf2, 0x12, 0xe2, 0xd2, 0xe0, 0x9d, 0xcc, 0x85, 0xb1, 0xc9, 0x4e, 0x50, 0x26,
+	0xdb, 0xca, 0x45, 0x43, 0xa0, 0x1b, 0xea, 0xf4, 0x6f, 0x04, 0xe4, 0xe1, 0x54, 0x72, 0x02, 0x43,
+	0x2b, 0x94, 0xe0, 0x0e, 0x4d, 0x12, 0x4d, 0xa2, 0x59, 0x4c, 0xd7, 0x35, 0x39, 0x87, 0x01, 0x56,
+	0x5e, 0x93, 0xde, 0x24, 0x9a, 0x8d, 0xce, 0x1e, 0xb7, 0xd7, 0x7c, 0xac, 0x66, 0x51, 0xf1, 0xc3,
+	0x4b, 0x23, 0x6e, 0x85, 0x76, 0x96, 0xd6, 0x5c, 0xf2, 0x0a, 0x12, 0xa6, 0x14, 0xae, 0xb2, 0x95,
+	0x74, 0x4b, 0xf4, 0x2e, 0xe3, 0x46, 0xe4, 0xd5, 0x52, 0xa6, 0x92, 0xc1, 0x24, 0x9a, 0x0d, 0xe9,
+	0x71, 0xc0, 0x3f, 0xd7, 0xf0, 0xbb, 0x35, 0x4a, 0xde, 0xc2, 0xbe, 0x69, 0x0d, 0x4c, 0xf6, 0x82,
+	0xb9, 0x47, 0xdb, 0xe6, 0x5a, 0x4b, 0x69, 0x47, 0x30, 0xfd, 0x1d, 0xc1, 0x7e, 0xdb, 0x3e, 0x19,
+	0x43, 0x4f, 0xe6, 0x8d, 0xad, 0x9e, 0xcc, 0xc9, 0x31, 0xec, 0x4a, 0x6b, 0xbd, 0x30, 0xc1, 0x51,
+	0x4c, 0x9b, 0x8a, 0xfc, 0x0f, 0xc3, 0xef, 0xab, 0x1b, 0x9b, 0x79, 0x23, 0x93, 0x7e, 0x40, 0xf6,
+	0xaa, 0xfa, 0xda, 0x48, 0x72, 0x0a, 0x31, 0xf3, 0xb9, 0x14, 0x9a, 0x8b, 0x2a, 0xee, 0x0a, 0xdb,
+	0x34, 0xc8, 0x73, 0x38, 0xaa, 0x4c, 0xa3, 0x91, 0x3f, 0x43, 0xa4, 0x99, 0x37, 0xb5, 0xcb, 0x98,
+	0x1e, 0x76, 0x80, 0x6b, 0xa3, 0xa6, 0x6f, 0xe0, 0xe8, 0x41, 0x6a, 0xe4, 0x19, 0x1c, 0x72, 0xa6,
+	0x51, 0x4b, 0xce, 0x54, 0x66, 0x39, 0x96, 0xc2, 0x36, 0x07, 0x1f, 0xac, 0xfb, 0x9f, 0x42, 0x7b,
+	0xba, 0x80, 0x83, 0x2d, 0x39, 0x79, 0x0a, 0xa3, 0xfb, 0x17, 0xce, 0xd6, 0x4e, 0xe1, 0xbe, 0x75,
+	0x95, 0x77, 0xcf, 0xef, 0x6d, 0x9d, 0x7f, 0x79, 0x03, 0x63, 0x8e, 0xb7, 0xad, 0x80, 0x2f, 0xe3,
+	0x26, 0x3f, 0x87, 0x8b, 0xe8, 0xcb, 0xfb, 0x06, 0x28, 0x50, 0x31, 0x5d, 0xa4, 0x68, 0x8a, 0x79,
+	0x21, 0x74, 0xf8, 0xce, 0xf3, 0x1a, 0x62, 0xa5, 0xb4, 0xe1, 0xbf, 0x5b, 0x61, 0xee, 0x24, 0x17,
+	0x1c, 0xf5, 0x37, 0x59, 0xbc, 0xee, 0x54, 0x7f, 0x7a, 0x3b, 0x1f, 0x2e, 0x16, 0x57, 0x5f, 0x77,
+	0x83, 0xf0, 0xfc, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe5, 0xa3, 0x9d, 0xc6, 0x4a, 0x03, 0x00,
+	0x00,
 }
diff --git a/googleapis/api/servicecontrol/v1/service_controller.pb.go b/googleapis/api/servicecontrol/v1/service_controller.pb.go
index c5c6ea7f..3f3abc7c 100644
--- a/googleapis/api/servicecontrol/v1/service_controller.pb.go
+++ b/googleapis/api/servicecontrol/v1/service_controller.pb.go
@@ -75,6 +75,8 @@ type CheckResponse struct {
 	CheckErrors []*CheckError `protobuf:"bytes,2,rep,name=check_errors,json=checkErrors" json:"check_errors,omitempty"`
 	// The actual config id used to process the request.
 	ServiceConfigId string `protobuf:"bytes,5,opt,name=service_config_id,json=serviceConfigId" json:"service_config_id,omitempty"`
+	// Feedback data returned from the server during processing a Check request.
+	CheckInfo *CheckResponse_CheckInfo `protobuf:"bytes,6,opt,name=check_info,json=checkInfo" json:"check_info,omitempty"`
 }
 
 func (m *CheckResponse) Reset()                    { *m = CheckResponse{} }
@@ -103,6 +105,49 @@ func (m *CheckResponse) GetServiceConfigId() string {
 	return ""
 }
 
+func (m *CheckResponse) GetCheckInfo() *CheckResponse_CheckInfo {
+	if m != nil {
+		return m.CheckInfo
+	}
+	return nil
+}
+
+type CheckResponse_CheckInfo struct {
+	// Consumer info of this check.
+	ConsumerInfo *CheckResponse_ConsumerInfo `protobuf:"bytes,2,opt,name=consumer_info,json=consumerInfo" json:"consumer_info,omitempty"`
+}
+
+func (m *CheckResponse_CheckInfo) Reset()                    { *m = CheckResponse_CheckInfo{} }
+func (m *CheckResponse_CheckInfo) String() string            { return proto.CompactTextString(m) }
+func (*CheckResponse_CheckInfo) ProtoMessage()               {}
+func (*CheckResponse_CheckInfo) Descriptor() ([]byte, []int) { return fileDescriptor5, []int{1, 0} }
+
+func (m *CheckResponse_CheckInfo) GetConsumerInfo() *CheckResponse_ConsumerInfo {
+	if m != nil {
+		return m.ConsumerInfo
+	}
+	return nil
+}
+
+// `ConsumerInfo` provides information about the consumer project.
+type CheckResponse_ConsumerInfo struct {
+	// The Google cloud project number, e.g. 1234567890. A value of 0 indicates
+	// no project number is found.
+	ProjectNumber int64 `protobuf:"varint,1,opt,name=project_number,json=projectNumber" json:"project_number,omitempty"`
+}
+
+func (m *CheckResponse_ConsumerInfo) Reset()                    { *m = CheckResponse_ConsumerInfo{} }
+func (m *CheckResponse_ConsumerInfo) String() string            { return proto.CompactTextString(m) }
+func (*CheckResponse_ConsumerInfo) ProtoMessage()               {}
+func (*CheckResponse_ConsumerInfo) Descriptor() ([]byte, []int) { return fileDescriptor5, []int{1, 1} }
+
+func (m *CheckResponse_ConsumerInfo) GetProjectNumber() int64 {
+	if m != nil {
+		return m.ProjectNumber
+	}
+	return 0
+}
+
 // Request message for the Report method.
 type ReportRequest struct {
 	// The service name as specified in its service configuration. For example,
@@ -168,8 +213,9 @@ type ReportResponse struct {
 	//    `Operations` in the request succeeded. Each
 	//    `Operation` that failed processing has a corresponding item
 	//    in this list.
-	// 3. A failed RPC status indicates a complete failure where none of the
-	//    `Operations` in the request succeeded.
+	// 3. A failed RPC status indicates a general non-deterministic failure.
+	//    When this happens, it's impossible to know which of the
+	//    'Operations' in the request succeeded or failed.
 	ReportErrors []*ReportResponse_ReportError `protobuf:"bytes,1,rep,name=report_errors,json=reportErrors" json:"report_errors,omitempty"`
 	// The actual config id used to process the request.
 	ServiceConfigId string `protobuf:"bytes,2,opt,name=service_config_id,json=serviceConfigId" json:"service_config_id,omitempty"`
@@ -224,6 +270,8 @@ func (m *ReportResponse_ReportError) GetStatus() *google_rpc.Status {
 func init() {
 	proto.RegisterType((*CheckRequest)(nil), "google.api.servicecontrol.v1.CheckRequest")
 	proto.RegisterType((*CheckResponse)(nil), "google.api.servicecontrol.v1.CheckResponse")
+	proto.RegisterType((*CheckResponse_CheckInfo)(nil), "google.api.servicecontrol.v1.CheckResponse.CheckInfo")
+	proto.RegisterType((*CheckResponse_ConsumerInfo)(nil), "google.api.servicecontrol.v1.CheckResponse.ConsumerInfo")
 	proto.RegisterType((*ReportRequest)(nil), "google.api.servicecontrol.v1.ReportRequest")
 	proto.RegisterType((*ReportResponse)(nil), "google.api.servicecontrol.v1.ReportResponse")
 	proto.RegisterType((*ReportResponse_ReportError)(nil), "google.api.servicecontrol.v1.ReportResponse.ReportError")
@@ -245,21 +293,25 @@ type ServiceControllerClient interface {
 	// operation is executed.
 	//
 	// If feasible, the client should cache the check results and reuse them for
-	// up to 60s. In case of server errors, the client may rely on the cached
+	// 60 seconds. In case of server errors, the client can rely on the cached
 	// results for longer time.
 	//
+	// NOTE: the `CheckRequest` has the size limit of 64KB.
+	//
 	// This method requires the `servicemanagement.services.check` permission
 	// on the specified service. For more information, see
 	// [Google Cloud IAM](https://cloud.google.com/iam).
 	Check(ctx context.Context, in *CheckRequest, opts ...grpc.CallOption) (*CheckResponse, error)
-	// Reports operations to Google Service Control. It should be called
-	// after the operation is completed.
+	// Reports operation results to Google Service Control, such as logs and
+	// metrics. It should be called after an operation is completed.
 	//
-	// If feasible, the client should aggregate reporting data for up to 5s to
-	// reduce API traffic. Limiting aggregation to 5s is to reduce data loss
-	// during client crashes. Clients should carefully choose the aggregation
-	// window to avoid data loss risk more than 0.01% for business and
-	// compliance reasons.
+	// If feasible, the client should aggregate reporting data for up to 5
+	// seconds to reduce API traffic. Limiting aggregation to 5 seconds is to
+	// reduce data loss during client crashes. Clients should carefully choose
+	// the aggregation time window to avoid data loss risk more than 0.01%
+	// for business and compliance reasons.
+	//
+	// NOTE: the `ReportRequest` has the size limit of 1MB.
 	//
 	// This method requires the `servicemanagement.services.report` permission
 	// on the specified service. For more information, see
@@ -301,21 +353,25 @@ type ServiceControllerServer interface {
 	// operation is executed.
 	//
 	// If feasible, the client should cache the check results and reuse them for
-	// up to 60s. In case of server errors, the client may rely on the cached
+	// 60 seconds. In case of server errors, the client can rely on the cached
 	// results for longer time.
 	//
+	// NOTE: the `CheckRequest` has the size limit of 64KB.
+	//
 	// This method requires the `servicemanagement.services.check` permission
 	// on the specified service. For more information, see
 	// [Google Cloud IAM](https://cloud.google.com/iam).
 	Check(context.Context, *CheckRequest) (*CheckResponse, error)
-	// Reports operations to Google Service Control. It should be called
-	// after the operation is completed.
+	// Reports operation results to Google Service Control, such as logs and
+	// metrics. It should be called after an operation is completed.
+	//
+	// If feasible, the client should aggregate reporting data for up to 5
+	// seconds to reduce API traffic. Limiting aggregation to 5 seconds is to
+	// reduce data loss during client crashes. Clients should carefully choose
+	// the aggregation time window to avoid data loss risk more than 0.01%
+	// for business and compliance reasons.
 	//
-	// If feasible, the client should aggregate reporting data for up to 5s to
-	// reduce API traffic. Limiting aggregation to 5s is to reduce data loss
-	// during client crashes. Clients should carefully choose the aggregation
-	// window to avoid data loss risk more than 0.01% for business and
-	// compliance reasons.
+	// NOTE: the `ReportRequest` has the size limit of 1MB.
 	//
 	// This method requires the `servicemanagement.services.report` permission
 	// on the specified service. For more information, see
@@ -385,39 +441,44 @@ func init() {
 }
 
 var fileDescriptor5 = []byte{
-	// 537 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x94, 0xcf, 0x6e, 0xd3, 0x40,
-	0x10, 0xc6, 0xb5, 0xee, 0x1f, 0xa9, 0xe3, 0x04, 0xd4, 0x3d, 0x40, 0x64, 0xf5, 0x90, 0xfa, 0x40,
-	0x23, 0x37, 0xd8, 0x6a, 0x10, 0x12, 0x0a, 0x27, 0x1a, 0x55, 0x55, 0x41, 0x82, 0xca, 0xb9, 0x21,
-	0x50, 0xb4, 0x38, 0x8b, 0xb1, 0x48, 0xbc, 0xcb, 0xae, 0x9b, 0x0b, 0xe2, 0xc2, 0x03, 0x70, 0x28,
-	0x6f, 0x80, 0x90, 0x38, 0xf0, 0x04, 0x3c, 0x07, 0xaf, 0xc0, 0x43, 0xc0, 0x0d, 0x79, 0x77, 0xed,
-	0x3a, 0xc2, 0x58, 0xee, 0x2d, 0x9e, 0x9d, 0xf9, 0xe6, 0xb7, 0xdf, 0x4c, 0x16, 0xee, 0xc7, 0x8c,
-	0xc5, 0x0b, 0x1a, 0x10, 0x9e, 0x04, 0x92, 0x8a, 0x55, 0x12, 0xd1, 0x88, 0xa5, 0x99, 0x60, 0x8b,
-	0x60, 0x75, 0x54, 0x44, 0x66, 0x26, 0xb4, 0xa0, 0xc2, 0xe7, 0x82, 0x65, 0x0c, 0xef, 0xe9, 0x32,
-	0x9f, 0xf0, 0xc4, 0x5f, 0x2f, 0xf3, 0x57, 0x47, 0xce, 0x5e, 0x45, 0x94, 0xa4, 0x29, 0xcb, 0x48,
-	0x96, 0xb0, 0x54, 0xea, 0x5a, 0xc7, 0x6f, 0x6c, 0x19, 0xbd, 0xa1, 0xd1, 0xdb, 0x19, 0x15, 0x82,
-	0x99, 0x5e, 0xce, 0xb0, 0x31, 0x9f, 0x71, 0x2a, 0x94, 0xbc, 0xc9, 0xbe, 0x6d, 0xb2, 0x05, 0x8f,
-	0x02, 0x99, 0x91, 0xec, 0xc2, 0xb4, 0x75, 0xbf, 0x22, 0xe8, 0x4c, 0x72, 0xf1, 0x90, 0xbe, 0xbb,
-	0xa0, 0x32, 0xc3, 0xfb, 0xd0, 0x29, 0xee, 0x97, 0x92, 0x25, 0xed, 0xa1, 0x3e, 0x1a, 0xec, 0x84,
-	0xb6, 0x89, 0x3d, 0x25, 0x4b, 0x8a, 0x4f, 0x60, 0xa7, 0xd4, 0xef, 0x59, 0x7d, 0x34, 0xb0, 0x47,
-	0x07, 0x7e, 0xd3, 0xd5, 0xfd, 0x67, 0x45, 0x7a, 0x78, 0x55, 0x89, 0x3d, 0xd8, 0xad, 0x38, 0xf9,
-	0x3a, 0x89, 0x67, 0xc9, 0xbc, 0xb7, 0xa9, 0xda, 0xdd, 0x34, 0x07, 0x13, 0x15, 0x3f, 0x9b, 0xbb,
-	0xdf, 0x11, 0x74, 0x0d, 0xa6, 0xe4, 0x2c, 0x95, 0x34, 0xe7, 0x2c, 0xa5, 0xf2, 0x42, 0xc3, 0x59,
-	0xc6, 0xce, 0xe6, 0xf8, 0x09, 0x74, 0x2a, 0xbe, 0xc9, 0x9e, 0xd5, 0xdf, 0x18, 0xd8, 0xa3, 0x41,
-	0x33, 0xaa, 0xea, 0x72, 0x92, 0x17, 0x84, 0x76, 0x54, 0xfe, 0x96, 0xf5, 0xb4, 0x5b, 0xf5, 0xb4,
-	0xdf, 0x10, 0x74, 0x43, 0xca, 0x99, 0xc8, 0xae, 0xe1, 0xea, 0x29, 0x40, 0x09, 0x5f, 0xb0, 0xb6,
-	0xb6, 0xb5, 0x52, 0x5a, 0x4f, 0xba, 0x51, 0x4f, 0xfa, 0x07, 0xc1, 0x8d, 0x82, 0xd4, 0x18, 0xfb,
-	0x12, 0xba, 0x42, 0x45, 0x0a, 0xdb, 0x90, 0x42, 0x79, 0xd0, 0x8c, 0xb2, 0x2e, 0x62, 0x3e, 0xb5,
-	0x8d, 0x1d, 0x71, 0xf5, 0xf1, 0x1f, 0x3a, 0xab, 0x96, 0xce, 0x79, 0x01, 0x76, 0x45, 0xa8, 0xcd,
-	0xc8, 0x3d, 0xd8, 0xd6, 0xeb, 0x6d, 0xf6, 0x12, 0x17, 0xd4, 0x82, 0x47, 0xfe, 0x54, 0x9d, 0x84,
-	0x26, 0x63, 0xf4, 0xc3, 0x82, 0xdd, 0x69, 0xd9, 0xd1, 0xfc, 0x93, 0xf1, 0x27, 0x04, 0x5b, 0x6a,
-	0x07, 0xb0, 0xd7, 0x62, 0x51, 0xcc, 0x7c, 0x9d, 0xc3, 0x56, 0xb9, 0xda, 0x1c, 0x77, 0xf8, 0xf1,
-	0xe7, 0xaf, 0xcf, 0xd6, 0x1d, 0x77, 0xbf, 0xf2, 0x98, 0xc8, 0xe0, 0x7d, 0x75, 0x41, 0x3e, 0x8c,
-	0xd5, 0xee, 0x8d, 0x91, 0x87, 0x2f, 0x11, 0x6c, 0x6b, 0x17, 0xf0, 0x61, 0xbb, 0x19, 0x68, 0xa4,
-	0xe1, 0x75, 0x06, 0xe6, 0xde, 0x55, 0x4c, 0x07, 0xae, 0xdb, 0xc4, 0xa4, 0x07, 0x39, 0x46, 0xde,
-	0xf1, 0x25, 0x82, 0x7e, 0xc4, 0x96, 0x8d, 0x2d, 0x8e, 0x6f, 0xfd, 0xe3, 0xee, 0x79, 0xfe, 0xe6,
-	0x9c, 0xa3, 0xe7, 0x8f, 0x4d, 0x5d, 0xcc, 0x16, 0x24, 0x8d, 0x7d, 0x26, 0xe2, 0x20, 0xa6, 0xa9,
-	0x7a, 0x91, 0x02, 0x7d, 0x44, 0x78, 0x22, 0xeb, 0xdf, 0xb6, 0x87, 0xeb, 0x91, 0xdf, 0x08, 0x7d,
-	0xb1, 0x36, 0x4f, 0x1f, 0x4d, 0x27, 0xaf, 0xb6, 0x95, 0xc0, 0xbd, 0xbf, 0x01, 0x00, 0x00, 0xff,
-	0xff, 0x6c, 0x58, 0x92, 0x07, 0xbe, 0x05, 0x00, 0x00,
+	// 619 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x54, 0xc1, 0x6e, 0xd3, 0x4c,
+	0x10, 0xd6, 0x3a, 0x6d, 0xa4, 0x4c, 0x9c, 0xfe, 0xea, 0x1e, 0x7e, 0x22, 0xab, 0x87, 0xd4, 0x12,
+	0x34, 0x4a, 0x8b, 0xad, 0x16, 0x55, 0x42, 0xe1, 0x44, 0xa3, 0xaa, 0x0a, 0x48, 0xa5, 0x72, 0x38,
+	0x21, 0xaa, 0xc8, 0xdd, 0x6c, 0x8c, 0x4b, 0xb2, 0x6b, 0xd6, 0x4e, 0x2e, 0x88, 0x0b, 0x0f, 0xc0,
+	0xa1, 0xbc, 0x01, 0xaa, 0xc4, 0x33, 0xf0, 0x1c, 0xbc, 0x02, 0x0f, 0x01, 0x37, 0x94, 0xdd, 0xb5,
+	0xeb, 0x08, 0x63, 0x92, 0x9b, 0xf7, 0xdb, 0x99, 0xf9, 0xbe, 0x9d, 0xf9, 0x3c, 0x70, 0x1c, 0x70,
+	0x1e, 0x4c, 0xa8, 0xeb, 0x47, 0xa1, 0x1b, 0x53, 0x31, 0x0f, 0x09, 0x25, 0x9c, 0x25, 0x82, 0x4f,
+	0xdc, 0xf9, 0x61, 0x8a, 0x0c, 0x35, 0x34, 0xa1, 0xc2, 0x89, 0x04, 0x4f, 0x38, 0xde, 0x51, 0x69,
+	0x8e, 0x1f, 0x85, 0xce, 0x72, 0x9a, 0x33, 0x3f, 0xb4, 0x76, 0x72, 0x45, 0x7d, 0xc6, 0x78, 0xe2,
+	0x27, 0x21, 0x67, 0xb1, 0xca, 0xb5, 0x9c, 0x52, 0x4a, 0xf2, 0x86, 0x92, 0xb7, 0x43, 0x2a, 0x04,
+	0xd7, 0x5c, 0xd6, 0x41, 0x69, 0x3c, 0x8f, 0xa8, 0x90, 0xe5, 0x75, 0xf4, 0x3d, 0x1d, 0x2d, 0x22,
+	0xe2, 0xc6, 0x89, 0x9f, 0xcc, 0x34, 0xad, 0x7d, 0x8b, 0xc0, 0xec, 0x2d, 0x8a, 0x7b, 0xf4, 0xdd,
+	0x8c, 0xc6, 0x09, 0xde, 0x05, 0x33, 0x7d, 0x1f, 0xf3, 0xa7, 0xb4, 0x89, 0x5a, 0xa8, 0x5d, 0xf3,
+	0xea, 0x1a, 0x3b, 0xf7, 0xa7, 0x14, 0x9f, 0x42, 0x2d, 0xab, 0xdf, 0x34, 0x5a, 0xa8, 0x5d, 0x3f,
+	0xda, 0x73, 0xca, 0x9e, 0xee, 0xbc, 0x48, 0xc3, 0xbd, 0xbb, 0x4c, 0xdc, 0x81, 0xed, 0x5c, 0x27,
+	0xc7, 0x61, 0x30, 0x0c, 0x47, 0xcd, 0x0d, 0x49, 0xf7, 0x9f, 0xbe, 0xe8, 0x49, 0xbc, 0x3f, 0xb2,
+	0x6f, 0x2b, 0xd0, 0xd0, 0x32, 0xe3, 0x88, 0xb3, 0x98, 0x2e, 0x74, 0x66, 0xa5, 0x16, 0x89, 0x5a,
+	0x67, 0x86, 0xf5, 0x47, 0xf8, 0x39, 0x98, 0xb9, 0xbe, 0xc5, 0x4d, 0xa3, 0x55, 0x69, 0xd7, 0x8f,
+	0xda, 0xe5, 0x52, 0x25, 0xcb, 0xe9, 0x22, 0xc1, 0xab, 0x93, 0xec, 0x3b, 0x2e, 0x56, 0xbb, 0x59,
+	0xa8, 0x16, 0xbf, 0x04, 0x50, 0xc4, 0x21, 0x1b, 0xf3, 0x66, 0x55, 0x76, 0xe8, 0x78, 0x05, 0xda,
+	0xf4, 0x71, 0xea, 0xd4, 0x67, 0x63, 0xee, 0xd5, 0x48, 0xfa, 0x69, 0x5d, 0x43, 0x2d, 0xc3, 0xf1,
+	0x25, 0x34, 0x08, 0x67, 0xf1, 0x6c, 0x4a, 0x85, 0x62, 0x51, 0x73, 0x78, 0xbc, 0x16, 0x8b, 0x2e,
+	0x20, 0x89, 0x4c, 0x92, 0x3b, 0x59, 0xc7, 0x60, 0xe6, 0x6f, 0xf1, 0x7d, 0xd8, 0x8a, 0x04, 0xbf,
+	0xa6, 0x24, 0x19, 0xb2, 0xd9, 0xf4, 0x8a, 0x0a, 0xd9, 0xef, 0x8a, 0xd7, 0xd0, 0xe8, 0xb9, 0x04,
+	0xed, 0xaf, 0x08, 0x1a, 0x1e, 0x8d, 0xb8, 0x48, 0xd6, 0xb0, 0xd3, 0x19, 0x40, 0x36, 0xb5, 0x74,
+	0x48, 0x2b, 0xfb, 0x29, 0x97, 0x5a, 0x3c, 0xa2, 0x4a, 0xb1, 0xa1, 0x7e, 0x21, 0xd8, 0x4a, 0x95,
+	0x6a, 0x47, 0x5d, 0x42, 0x43, 0x48, 0x24, 0xf5, 0x0b, 0x92, 0x52, 0xfe, 0xd1, 0xd2, 0xe5, 0x22,
+	0xfa, 0xa8, 0xfc, 0x63, 0x8a, 0xbb, 0xc3, 0x5f, 0xd4, 0x19, 0x85, 0xea, 0xac, 0xd7, 0x50, 0xcf,
+	0x15, 0x5a, 0xc5, 0xeb, 0x1d, 0xa8, 0xaa, 0xff, 0x5a, 0x1b, 0x01, 0xa7, 0xaa, 0x45, 0x44, 0x9c,
+	0x81, 0xbc, 0xf1, 0x74, 0xc4, 0xd1, 0x37, 0x03, 0xb6, 0x07, 0x19, 0xa3, 0x5e, 0x61, 0xf8, 0x13,
+	0x82, 0x4d, 0xe9, 0x0f, 0xdc, 0x59, 0xc9, 0x44, 0x72, 0xbe, 0xd6, 0xfe, 0x1a, 0x86, 0xb3, 0x0f,
+	0x3e, 0x7e, 0xff, 0xf1, 0xd9, 0x78, 0x60, 0xef, 0xe6, 0xb6, 0x68, 0xec, 0xbe, 0xcf, 0x1b, 0xe4,
+	0x43, 0x57, 0x1a, 0xbe, 0x8b, 0x3a, 0xf8, 0x06, 0x41, 0x55, 0x75, 0x01, 0xef, 0xaf, 0x36, 0x03,
+	0x25, 0xe9, 0x60, 0x9d, 0x81, 0xd9, 0x0f, 0xa5, 0xa6, 0x3d, 0xdb, 0x2e, 0xd3, 0xa4, 0x06, 0xd9,
+	0x45, 0x9d, 0x93, 0x1b, 0x04, 0x2d, 0xc2, 0xa7, 0xa5, 0x14, 0x27, 0xff, 0xff, 0xd1, 0xdd, 0x8b,
+	0xc5, 0xb2, 0xbd, 0x40, 0xaf, 0x9e, 0xe9, 0xbc, 0x80, 0x4f, 0x7c, 0x16, 0x38, 0x5c, 0x04, 0x6e,
+	0x40, 0x99, 0x5c, 0xc5, 0xae, 0xba, 0xf2, 0xa3, 0x30, 0x2e, 0x5e, 0xea, 0x4f, 0x96, 0x91, 0x9f,
+	0x08, 0x7d, 0x31, 0x36, 0xce, 0x9e, 0x0e, 0x7a, 0x57, 0x55, 0x59, 0xe0, 0xd1, 0xef, 0x00, 0x00,
+	0x00, 0xff, 0xff, 0x5e, 0x28, 0x7b, 0xe6, 0xb7, 0x06, 0x00, 0x00,
 }
diff --git a/googleapis/assistant/embedded/v1alpha1/embedded_assistant.pb.go b/googleapis/assistant/embedded/v1alpha1/embedded_assistant.pb.go
index 414e8cbc..f3917faf 100644
--- a/googleapis/assistant/embedded/v1alpha1/embedded_assistant.pb.go
+++ b/googleapis/assistant/embedded/v1alpha1/embedded_assistant.pb.go
@@ -215,7 +215,7 @@ func (m *ConverseConfig) GetConverseState() *ConverseState {
 
 // Specifies how to process the `audio_in` data that will be provided in
 // subsequent requests. For recommended settings, see the Google Assistant SDK
-// [best practices](https://developers.google.com/assistant/best-practices).
+// [best practices](https://developers.google.com/assistant/sdk/develop/grpc/best-practices/audio).
 type AudioInConfig struct {
 	// *Required* Encoding of audio data sent in all `audio_in` messages.
 	Encoding AudioInConfig_Encoding `protobuf:"varint,1,opt,name=encoding,enum=google.assistant.embedded.v1alpha1.AudioInConfig_Encoding" json:"encoding,omitempty"`
diff --git a/googleapis/bigtable/v2/bigtable.pb.go b/googleapis/bigtable/v2/bigtable.pb.go
index 0b861f68..fcdc0faa 100644
--- a/googleapis/bigtable/v2/bigtable.pb.go
+++ b/googleapis/bigtable/v2/bigtable.pb.go
@@ -1091,76 +1091,78 @@ var _Bigtable_serviceDesc = grpc.ServiceDesc{
 func init() { proto.RegisterFile("google/bigtable/v2/bigtable.proto", fileDescriptor0) }
 
 var fileDescriptor0 = []byte{
-	// 1135 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x4f, 0x6f, 0x1b, 0x45,
-	0x14, 0x67, 0xec, 0xda, 0xf1, 0xbe, 0x24, 0x4d, 0x32, 0x84, 0xc6, 0x35, 0x09, 0xb8, 0x4b, 0x0b,
-	0x8e, 0x4b, 0xd7, 0x55, 0x50, 0x0f, 0x75, 0x95, 0x02, 0x0e, 0x49, 0x83, 0xc0, 0x55, 0x35, 0x96,
-	0x40, 0x42, 0x48, 0xd6, 0x78, 0x3d, 0x76, 0x96, 0xec, 0xbf, 0xee, 0x8c, 0x63, 0x5c, 0xc4, 0x85,
-	0x03, 0x1f, 0x00, 0xce, 0x88, 0x13, 0x82, 0x0b, 0x1c, 0xb9, 0x72, 0xe0, 0x23, 0x70, 0xe0, 0x0b,
-	0xf4, 0x13, 0xf0, 0x09, 0xd0, 0xcc, 0xce, 0xda, 0x4e, 0x62, 0xb7, 0x9b, 0xaa, 0xb7, 0x9d, 0xf7,
-	0xde, 0xef, 0xcd, 0xef, 0xfd, 0x1d, 0x1b, 0xae, 0xf5, 0x83, 0xa0, 0xef, 0xb2, 0x5a, 0xc7, 0xe9,
-	0x0b, 0xda, 0x71, 0x59, 0xed, 0x64, 0x67, 0xfc, 0x6d, 0x85, 0x51, 0x20, 0x02, 0x8c, 0x63, 0x13,
-	0x6b, 0x2c, 0x3e, 0xd9, 0x29, 0x6d, 0x6a, 0x18, 0x0d, 0x9d, 0x1a, 0xf5, 0xfd, 0x40, 0x50, 0xe1,
-	0x04, 0x3e, 0x8f, 0x11, 0xa5, 0xad, 0x19, 0x4e, 0xbb, 0x54, 0x50, 0xad, 0x7e, 0x43, 0xab, 0xd5,
-	0xa9, 0x33, 0xe8, 0xd5, 0x86, 0x11, 0x0d, 0x43, 0x16, 0x25, 0xf0, 0x0d, 0xad, 0x8f, 0x42, 0xbb,
-	0xc6, 0x05, 0x15, 0x03, 0xad, 0x30, 0xff, 0x44, 0xb0, 0x42, 0x18, 0xed, 0x92, 0x60, 0xc8, 0x09,
-	0x7b, 0x3c, 0x60, 0x5c, 0xe0, 0x2d, 0x00, 0x75, 0x47, 0xdb, 0xa7, 0x1e, 0x2b, 0xa2, 0x32, 0xaa,
-	0x18, 0xc4, 0x50, 0x92, 0x87, 0xd4, 0x63, 0xd8, 0x82, 0x4b, 0x51, 0x30, 0xe4, 0xc5, 0x4c, 0x19,
-	0x55, 0x16, 0x77, 0x4a, 0xd6, 0xf9, 0x58, 0x2c, 0x12, 0x0c, 0x5b, 0x4c, 0x10, 0x65, 0x87, 0xef,
-	0x40, 0xbe, 0xe7, 0xb8, 0x82, 0x45, 0xc5, 0xac, 0x42, 0x6c, 0xcd, 0x41, 0x1c, 0x28, 0x23, 0xa2,
-	0x8d, 0x25, 0x0b, 0x09, 0x6f, 0xbb, 0x8e, 0xe7, 0x88, 0xe2, 0xa5, 0x32, 0xaa, 0x64, 0x89, 0x21,
-	0x25, 0x9f, 0x4a, 0x81, 0xf9, 0x5f, 0x16, 0x56, 0x27, 0xc4, 0x79, 0x18, 0xf8, 0x9c, 0xe1, 0x03,
-	0xc8, 0xdb, 0x47, 0x03, 0xff, 0x98, 0x17, 0x51, 0x39, 0x5b, 0x59, 0xdc, 0xb1, 0x66, 0x5e, 0x75,
-	0x06, 0x65, 0xed, 0x31, 0xd7, 0xdd, 0x93, 0x30, 0xa2, 0xd1, 0xb8, 0x06, 0xeb, 0x2e, 0xe5, 0xa2,
-	0xcd, 0x6d, 0xea, 0xfb, 0xac, 0xdb, 0x8e, 0x82, 0x61, 0xfb, 0x98, 0x8d, 0x54, 0xc8, 0x4b, 0x64,
-	0x4d, 0xea, 0x5a, 0xb1, 0x8a, 0x04, 0xc3, 0x4f, 0xd8, 0xa8, 0xf4, 0x34, 0x03, 0xc6, 0xd8, 0x0d,
-	0xde, 0x80, 0x85, 0x04, 0x81, 0x14, 0x22, 0x1f, 0x29, 0x33, 0xbc, 0x0b, 0x8b, 0x3d, 0xea, 0x39,
-	0xee, 0x28, 0x4e, 0x6d, 0x9c, 0xc1, 0xcd, 0x84, 0x64, 0x52, 0x3c, 0xab, 0x25, 0x22, 0xc7, 0xef,
-	0x7f, 0x46, 0xdd, 0x01, 0x23, 0x10, 0x03, 0x54, 0xe6, 0xef, 0x82, 0xf1, 0x78, 0x40, 0x5d, 0xa7,
-	0xe7, 0x8c, 0x93, 0xf9, 0xfa, 0x39, 0x70, 0x63, 0x24, 0x18, 0x8f, 0xb1, 0x13, 0x6b, 0xbc, 0x0d,
-	0xab, 0xc2, 0xf1, 0x18, 0x17, 0xd4, 0x0b, 0xdb, 0x9e, 0x63, 0x47, 0x01, 0xd7, 0x39, 0x5d, 0x19,
-	0xcb, 0x9b, 0x4a, 0x8c, 0xaf, 0x40, 0xde, 0xa5, 0x1d, 0xe6, 0xf2, 0x62, 0xae, 0x9c, 0xad, 0x18,
-	0x44, 0x9f, 0xf0, 0x3a, 0xe4, 0x4e, 0xa4, 0xdb, 0x62, 0x5e, 0xc5, 0x14, 0x1f, 0x64, 0x99, 0xd4,
-	0x47, 0x9b, 0x3b, 0x4f, 0x58, 0x71, 0xa1, 0x8c, 0x2a, 0x39, 0x62, 0x28, 0x49, 0xcb, 0x79, 0x22,
-	0xd5, 0x46, 0xc4, 0x38, 0x13, 0x32, 0x85, 0xc5, 0x42, 0x19, 0x55, 0x0a, 0x87, 0xaf, 0x90, 0x82,
-	0x12, 0x91, 0x60, 0x88, 0xdf, 0x04, 0xb0, 0x03, 0xcf, 0x73, 0x62, 0xbd, 0xa1, 0xf5, 0x46, 0x2c,
-	0x23, 0xc1, 0xb0, 0xb1, 0xa4, 0xba, 0xa0, 0x1d, 0xf7, 0xac, 0x79, 0x07, 0xd6, 0x5b, 0xd4, 0x0b,
-	0x5d, 0x16, 0xa7, 0x3d, 0x65, 0xc7, 0x9a, 0x2d, 0x78, 0xed, 0x0c, 0x4c, 0xf7, 0xcb, 0xdc, 0x42,
-	0x5d, 0x83, 0xa5, 0xa0, 0xd7, 0x93, 0xbc, 0x3b, 0x32, 0x9d, 0xaa, 0x52, 0x59, 0xb2, 0x18, 0xcb,
-	0x54, 0x86, 0xcd, 0xef, 0x11, 0xac, 0x36, 0x07, 0x82, 0x0a, 0xe9, 0x35, 0xe5, 0xe8, 0x4c, 0xdd,
-	0x97, 0x39, 0x75, 0x5f, 0x1d, 0x0c, 0x6f, 0xa0, 0x27, 0xbe, 0x98, 0x55, 0xbd, 0xbb, 0x39, 0xab,
-	0x77, 0x9b, 0xda, 0x88, 0x4c, 0xcc, 0xcd, 0x57, 0x61, 0x6d, 0x8a, 0x47, 0x1c, 0x99, 0xf9, 0x2f,
-	0x9a, 0x92, 0xa6, 0x9d, 0xec, 0x7d, 0x58, 0x60, 0xbe, 0x88, 0x1c, 0x15, 0xb0, 0xe4, 0x70, 0x73,
-	0x2e, 0x87, 0x69, 0xb7, 0xd6, 0xbe, 0x2f, 0xa2, 0x11, 0x49, 0xb0, 0xa5, 0x2f, 0x21, 0xa7, 0x24,
-	0xf3, 0xd3, 0x7b, 0x2a, 0xdc, 0xcc, 0xc5, 0xc2, 0xfd, 0x15, 0x01, 0x9e, 0xa6, 0x30, 0x1e, 0xfd,
-	0x31, 0xf7, 0x78, 0xf6, 0xdf, 0x7d, 0x1e, 0x77, 0x3d, 0xfd, 0x67, 0xc8, 0x7f, 0x9c, 0x90, 0x5f,
-	0x87, 0x9c, 0xe3, 0x77, 0xd9, 0xd7, 0x8a, 0x7a, 0x96, 0xc4, 0x07, 0x5c, 0x85, 0x7c, 0xdc, 0x8b,
-	0x7a, 0x78, 0x71, 0x72, 0x4b, 0x14, 0xda, 0x56, 0x4b, 0x69, 0x88, 0xb6, 0x30, 0x7f, 0xcb, 0x40,
-	0x71, 0xef, 0x88, 0xd9, 0xc7, 0x1f, 0xfa, 0xdd, 0x97, 0xd6, 0x29, 0x87, 0xb0, 0x1a, 0x46, 0xac,
-	0xeb, 0xd8, 0x54, 0xb0, 0xb6, 0xde, 0xab, 0xf9, 0x34, 0x7b, 0x75, 0x65, 0x0c, 0x8b, 0x05, 0x78,
-	0x0f, 0x2e, 0x8b, 0x68, 0xc0, 0xda, 0x93, 0x4a, 0x5c, 0x4a, 0x51, 0x89, 0x65, 0x89, 0x49, 0x4e,
-	0x1c, 0xef, 0xc3, 0x4a, 0x8f, 0xba, 0x7c, 0xda, 0x4b, 0x2e, 0x85, 0x97, 0xcb, 0x0a, 0x34, 0x76,
-	0x63, 0x1e, 0xc2, 0xd5, 0x19, 0x99, 0xd2, 0xa5, 0xbd, 0x09, 0x6b, 0x93, 0x90, 0x3d, 0x2a, 0xec,
-	0x23, 0xd6, 0x55, 0x19, 0x2b, 0x90, 0x49, 0x2e, 0x9a, 0xb1, 0xdc, 0xfc, 0x01, 0xc1, 0x55, 0xb9,
-	0xe1, 0x9b, 0x41, 0xd7, 0xe9, 0x8d, 0x3e, 0x8f, 0x9c, 0x97, 0x92, 0xf5, 0x5d, 0xc8, 0x45, 0x03,
-	0x97, 0x25, 0xb3, 0xf9, 0xce, 0xbc, 0x77, 0x65, 0xfa, 0xd6, 0x81, 0xcb, 0x48, 0x8c, 0x32, 0x1f,
-	0x40, 0x69, 0x16, 0x27, 0x1d, 0xdf, 0x36, 0x64, 0xe5, 0xf6, 0x43, 0xaa, 0x8a, 0x1b, 0x73, 0xaa,
-	0x48, 0xa4, 0xcd, 0xce, 0xef, 0x05, 0x28, 0x34, 0xb4, 0x02, 0xff, 0x84, 0xa0, 0x90, 0x3c, 0x66,
-	0xf8, 0xad, 0x67, 0x3f, 0x75, 0x2a, 0xfc, 0xd2, 0xf5, 0x34, 0xef, 0xa1, 0xf9, 0xd1, 0x77, 0xff,
-	0x3c, 0xfd, 0x31, 0x73, 0xdf, 0xbc, 0x2b, 0x7f, 0x64, 0x7c, 0x33, 0xc9, 0xd7, 0x6e, 0x18, 0x05,
-	0x5f, 0x31, 0x5b, 0xf0, 0x5a, 0xb5, 0xe6, 0xf8, 0x5c, 0x50, 0xdf, 0x66, 0xf2, 0x5b, 0x59, 0xf0,
-	0x5a, 0xf5, 0xdb, 0x7a, 0xa4, 0x5d, 0xd5, 0x51, 0xf5, 0x36, 0xc2, 0x7f, 0x20, 0x58, 0x3e, 0xb5,
-	0x77, 0x71, 0x65, 0xd6, 0xfd, 0xb3, 0x36, 0x7a, 0x69, 0x3b, 0x85, 0xa5, 0xa6, 0x7b, 0xa0, 0xe8,
-	0x7e, 0x80, 0xef, 0x5f, 0x98, 0x2e, 0x9f, 0xf6, 0x77, 0x1b, 0xe1, 0x9f, 0x11, 0x18, 0xe3, 0xf6,
-	0xc3, 0xd7, 0x9f, 0xb9, 0x40, 0x12, 0xa2, 0x37, 0x9e, 0x63, 0xa5, 0x49, 0xee, 0x2b, 0x92, 0xef,
-	0x9b, 0xf5, 0x0b, 0x93, 0xf4, 0x12, 0x5f, 0x75, 0x54, 0xc5, 0xbf, 0x20, 0x80, 0xc9, 0x0e, 0xc3,
-	0x37, 0x52, 0xed, 0xe7, 0xd2, 0xdb, 0xe9, 0x56, 0x61, 0x92, 0x49, 0xf3, 0xde, 0x8b, 0x93, 0xd4,
-	0xa5, 0xff, 0x0b, 0xc1, 0xda, 0xb9, 0x81, 0xc6, 0x33, 0x57, 0xf2, 0xbc, 0x0d, 0x59, 0xba, 0x95,
-	0xd2, 0x5a, 0x93, 0x6f, 0x2a, 0xf2, 0x0f, 0xcc, 0xc6, 0x85, 0xc9, 0xdb, 0x67, 0x7d, 0xca, 0x4c,
-	0xff, 0x8d, 0x00, 0x9f, 0x9f, 0x59, 0x7c, 0x2b, 0xcd, 0xe4, 0x4f, 0x62, 0xb0, 0xd2, 0x9a, 0xeb,
-	0x20, 0x1e, 0xaa, 0x20, 0x0e, 0xcd, 0xbd, 0x17, 0x1a, 0xbd, 0xd3, 0x4e, 0xeb, 0xa8, 0xda, 0x60,
-	0x70, 0xc5, 0x0e, 0xbc, 0x19, 0x24, 0x1a, 0xcb, 0xc9, 0x1a, 0x79, 0x24, 0x7f, 0x38, 0x3e, 0x42,
-	0x5f, 0xd4, 0xb5, 0x51, 0x3f, 0x70, 0xa9, 0xdf, 0xb7, 0x82, 0xa8, 0x5f, 0xeb, 0x33, 0x5f, 0xfd,
-	0xac, 0xac, 0xc5, 0x2a, 0x1a, 0x3a, 0x7c, 0xfa, 0x0f, 0xc8, 0xbd, 0xe4, 0xbb, 0x93, 0x57, 0x66,
-	0xef, 0xfd, 0x1f, 0x00, 0x00, 0xff, 0xff, 0x38, 0x8d, 0xf4, 0x91, 0xfb, 0x0c, 0x00, 0x00,
+	// 1154 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xdd, 0x6e, 0x1b, 0x45,
+	0x14, 0x66, 0xec, 0xd8, 0xf1, 0x9e, 0x24, 0x4d, 0x32, 0x84, 0x66, 0x6b, 0x12, 0x70, 0x97, 0x16,
+	0x1c, 0x97, 0xae, 0x2b, 0xa3, 0x5e, 0xd4, 0x55, 0x0a, 0xd8, 0xe4, 0x07, 0x81, 0xab, 0x6a, 0x2c,
+	0x15, 0x09, 0x21, 0x59, 0xe3, 0xf5, 0xd8, 0x59, 0xb2, 0x7f, 0xdd, 0x9d, 0x8d, 0x71, 0x11, 0x12,
+	0xe2, 0x82, 0x07, 0x80, 0x6b, 0xc4, 0x15, 0x02, 0x21, 0xc1, 0x25, 0xb7, 0x5c, 0xf0, 0x08, 0x5c,
+	0xf0, 0x02, 0x7d, 0x02, 0x9e, 0xa0, 0xda, 0xd9, 0x59, 0xdb, 0x49, 0xec, 0x76, 0x53, 0xf5, 0x6e,
+	0xe7, 0x9c, 0xf3, 0x9d, 0xf9, 0xce, 0xef, 0xd8, 0x70, 0x75, 0xe0, 0xba, 0x03, 0x8b, 0x55, 0xbb,
+	0xe6, 0x80, 0xd3, 0xae, 0xc5, 0xaa, 0x27, 0xb5, 0xf1, 0xb7, 0xee, 0xf9, 0x2e, 0x77, 0x31, 0x8e,
+	0x4d, 0xf4, 0xb1, 0xf8, 0xa4, 0x56, 0xdc, 0x92, 0x30, 0xea, 0x99, 0x55, 0xea, 0x38, 0x2e, 0xa7,
+	0xdc, 0x74, 0x9d, 0x20, 0x46, 0x14, 0xb7, 0x67, 0x38, 0xed, 0x51, 0x4e, 0xa5, 0xfa, 0x0d, 0xa9,
+	0x16, 0xa7, 0x6e, 0xd8, 0xaf, 0x0e, 0x7d, 0xea, 0x79, 0xcc, 0x4f, 0xe0, 0x9b, 0x52, 0xef, 0x7b,
+	0x46, 0x35, 0xe0, 0x94, 0x87, 0x52, 0xa1, 0xfd, 0x85, 0x60, 0x95, 0x30, 0xda, 0x23, 0xee, 0x30,
+	0x20, 0xec, 0x51, 0xc8, 0x02, 0x8e, 0xb7, 0x01, 0xc4, 0x1d, 0x1d, 0x87, 0xda, 0x4c, 0x45, 0x25,
+	0x54, 0x56, 0x88, 0x22, 0x24, 0xf7, 0xa9, 0xcd, 0xb0, 0x0e, 0x0b, 0xbe, 0x3b, 0x0c, 0xd4, 0x4c,
+	0x09, 0x95, 0x97, 0x6a, 0x45, 0xfd, 0x7c, 0x2c, 0x3a, 0x71, 0x87, 0x6d, 0xc6, 0x89, 0xb0, 0xc3,
+	0xb7, 0x21, 0xdf, 0x37, 0x2d, 0xce, 0x7c, 0x35, 0x2b, 0x10, 0xdb, 0x73, 0x10, 0xfb, 0xc2, 0x88,
+	0x48, 0xe3, 0x88, 0x45, 0x04, 0xef, 0x58, 0xa6, 0x6d, 0x72, 0x75, 0xa1, 0x84, 0xca, 0x59, 0xa2,
+	0x44, 0x92, 0x4f, 0x23, 0x81, 0xf6, 0x7f, 0x16, 0xd6, 0x26, 0xc4, 0x03, 0xcf, 0x75, 0x02, 0x86,
+	0xf7, 0x21, 0x6f, 0x1c, 0x85, 0xce, 0x71, 0xa0, 0xa2, 0x52, 0xb6, 0xbc, 0x54, 0xd3, 0x67, 0x5e,
+	0x75, 0x06, 0xa5, 0x37, 0x99, 0x65, 0x35, 0x23, 0x18, 0x91, 0x68, 0x5c, 0x85, 0x0d, 0x8b, 0x06,
+	0xbc, 0x13, 0x18, 0xd4, 0x71, 0x58, 0xaf, 0xe3, 0xbb, 0xc3, 0xce, 0x31, 0x1b, 0x89, 0x90, 0x97,
+	0xc9, 0x7a, 0xa4, 0x6b, 0xc7, 0x2a, 0xe2, 0x0e, 0x3f, 0x61, 0xa3, 0xe2, 0x93, 0x0c, 0x28, 0x63,
+	0x37, 0x78, 0x13, 0x16, 0x13, 0x04, 0x12, 0x88, 0xbc, 0x2f, 0xcc, 0xf0, 0x2e, 0x2c, 0xf5, 0xa9,
+	0x6d, 0x5a, 0xa3, 0x38, 0xb5, 0x71, 0x06, 0xb7, 0x12, 0x92, 0x49, 0xf1, 0xf4, 0x36, 0xf7, 0x4d,
+	0x67, 0xf0, 0x90, 0x5a, 0x21, 0x23, 0x10, 0x03, 0x44, 0xe6, 0xef, 0x80, 0xf2, 0x28, 0xa4, 0x96,
+	0xd9, 0x37, 0xc7, 0xc9, 0x7c, 0xfd, 0x1c, 0xb8, 0x31, 0xe2, 0x2c, 0x88, 0xb1, 0x13, 0x6b, 0xbc,
+	0x03, 0x6b, 0xdc, 0xb4, 0x59, 0xc0, 0xa9, 0xed, 0x75, 0x6c, 0xd3, 0xf0, 0xdd, 0x40, 0xe6, 0x74,
+	0x75, 0x2c, 0x6f, 0x09, 0x31, 0xbe, 0x0c, 0x79, 0x8b, 0x76, 0x99, 0x15, 0xa8, 0xb9, 0x52, 0xb6,
+	0xac, 0x10, 0x79, 0xc2, 0x1b, 0x90, 0x3b, 0x89, 0xdc, 0xaa, 0x79, 0x11, 0x53, 0x7c, 0x88, 0xca,
+	0x24, 0x3e, 0x3a, 0x81, 0xf9, 0x98, 0xa9, 0x8b, 0x25, 0x54, 0xce, 0x11, 0x45, 0x48, 0xda, 0xe6,
+	0xe3, 0x48, 0xad, 0xf8, 0x2c, 0x60, 0x3c, 0x4a, 0xa1, 0x5a, 0x28, 0xa1, 0x72, 0xe1, 0xf0, 0x15,
+	0x52, 0x10, 0x22, 0xe2, 0x0e, 0xf1, 0x9b, 0x00, 0x86, 0x6b, 0xdb, 0x66, 0xac, 0x57, 0xa4, 0x5e,
+	0x89, 0x65, 0xc4, 0x1d, 0x36, 0x96, 0x45, 0x17, 0x74, 0xe2, 0x9e, 0xd5, 0x6e, 0xc3, 0x46, 0x9b,
+	0xda, 0x9e, 0xc5, 0xe2, 0xb4, 0xa7, 0xec, 0x58, 0xad, 0x0d, 0xaf, 0x9d, 0x81, 0xc9, 0x7e, 0x99,
+	0x5b, 0xa8, 0xab, 0xb0, 0xec, 0xf6, 0xfb, 0x11, 0xef, 0x6e, 0x94, 0x4e, 0x51, 0xa9, 0x2c, 0x59,
+	0x8a, 0x65, 0x22, 0xc3, 0xda, 0xf7, 0x08, 0xd6, 0x5a, 0x21, 0xa7, 0x3c, 0xf2, 0x9a, 0x72, 0x74,
+	0xa6, 0xee, 0xcb, 0x9c, 0xba, 0xaf, 0x0e, 0x8a, 0x1d, 0xca, 0x89, 0x57, 0xb3, 0xa2, 0x77, 0xb7,
+	0x66, 0xf5, 0x6e, 0x4b, 0x1a, 0x91, 0x89, 0xb9, 0xf6, 0x2a, 0xac, 0x4f, 0xf1, 0x88, 0x23, 0xd3,
+	0xfe, 0x43, 0x53, 0xd2, 0xb4, 0x93, 0xbd, 0x07, 0x8b, 0xcc, 0xe1, 0xbe, 0x29, 0x02, 0x8e, 0x38,
+	0xdc, 0x98, 0xcb, 0x61, 0xda, 0xad, 0xbe, 0xe7, 0x70, 0x7f, 0x44, 0x12, 0x6c, 0xf1, 0x0b, 0xc8,
+	0x09, 0xc9, 0xfc, 0xf4, 0x9e, 0x0a, 0x37, 0x73, 0xb1, 0x70, 0x7f, 0x45, 0x80, 0xa7, 0x29, 0x8c,
+	0x47, 0x7f, 0xcc, 0x3d, 0x9e, 0xfd, 0x77, 0x9f, 0xc7, 0x5d, 0x4e, 0xff, 0x19, 0xf2, 0x1f, 0x27,
+	0xe4, 0x37, 0x20, 0x67, 0x3a, 0x3d, 0xf6, 0x95, 0xa0, 0x9e, 0x25, 0xf1, 0x01, 0x57, 0x20, 0x1f,
+	0xf7, 0xa2, 0x1c, 0x5e, 0x9c, 0xdc, 0xe2, 0x7b, 0x86, 0xde, 0x16, 0x1a, 0x22, 0x2d, 0xb4, 0xdf,
+	0x32, 0xa0, 0x36, 0x8f, 0x98, 0x71, 0xfc, 0xa1, 0xd3, 0x7b, 0x69, 0x9d, 0x72, 0x08, 0x6b, 0x9e,
+	0xcf, 0x7a, 0xa6, 0x41, 0x39, 0xeb, 0xc8, 0xbd, 0x9a, 0x4f, 0xb3, 0x57, 0x57, 0xc7, 0xb0, 0x58,
+	0x80, 0x9b, 0x70, 0x89, 0xfb, 0x21, 0xeb, 0x4c, 0x2a, 0xb1, 0x90, 0xa2, 0x12, 0x2b, 0x11, 0x26,
+	0x39, 0x05, 0x78, 0x0f, 0x56, 0xfb, 0xd4, 0x0a, 0xa6, 0xbd, 0xe4, 0x52, 0x78, 0xb9, 0x24, 0x40,
+	0x63, 0x37, 0xda, 0x21, 0x5c, 0x99, 0x91, 0x29, 0x59, 0xda, 0x1b, 0xb0, 0x3e, 0x09, 0xd9, 0xa6,
+	0xdc, 0x38, 0x62, 0x3d, 0x91, 0xb1, 0x02, 0x99, 0xe4, 0xa2, 0x15, 0xcb, 0xb5, 0x1f, 0x10, 0x5c,
+	0x89, 0x36, 0x7c, 0xcb, 0xed, 0x99, 0xfd, 0xd1, 0x67, 0xbe, 0xf9, 0x52, 0xb2, 0xbe, 0x0b, 0x39,
+	0x3f, 0xb4, 0x58, 0x32, 0x9b, 0xef, 0xcc, 0x7b, 0x57, 0xa6, 0x6f, 0x0d, 0x2d, 0x46, 0x62, 0x94,
+	0x76, 0x00, 0xc5, 0x59, 0x9c, 0x64, 0x7c, 0x3b, 0x90, 0x8d, 0xb6, 0x1f, 0x12, 0x55, 0xdc, 0x9c,
+	0x53, 0x45, 0x12, 0xd9, 0xd4, 0xfe, 0x28, 0x40, 0xa1, 0x21, 0x15, 0xf8, 0x27, 0x04, 0x85, 0xe4,
+	0x31, 0xc3, 0x6f, 0x3d, 0xfb, 0xa9, 0x13, 0xe1, 0x17, 0xaf, 0xa5, 0x79, 0x0f, 0xb5, 0x8f, 0xbe,
+	0xfb, 0xf7, 0xc9, 0x8f, 0x99, 0x7b, 0xda, 0x9d, 0xe8, 0x47, 0xc6, 0xd7, 0x93, 0x7c, 0xed, 0x7a,
+	0xbe, 0xfb, 0x25, 0x33, 0x78, 0x50, 0xad, 0x54, 0x4d, 0x27, 0xe0, 0xd4, 0x31, 0x58, 0xf4, 0x2d,
+	0x2c, 0x82, 0x6a, 0xe5, 0x9b, 0xba, 0x2f, 0x5d, 0xd5, 0x51, 0xe5, 0x16, 0xc2, 0x7f, 0x22, 0x58,
+	0x39, 0xb5, 0x77, 0x71, 0x79, 0xd6, 0xfd, 0xb3, 0x36, 0x7a, 0x71, 0x27, 0x85, 0xa5, 0xa4, 0xbb,
+	0x2f, 0xe8, 0x7e, 0x80, 0xef, 0x5d, 0x98, 0x6e, 0x30, 0xed, 0xef, 0x16, 0xc2, 0x3f, 0x23, 0x50,
+	0xc6, 0xed, 0x87, 0xaf, 0x3d, 0x73, 0x81, 0x24, 0x44, 0xaf, 0x3f, 0xc7, 0x4a, 0x92, 0xdc, 0x13,
+	0x24, 0xdf, 0xd7, 0xea, 0x17, 0x26, 0x69, 0x27, 0xbe, 0xea, 0xa8, 0x82, 0x7f, 0x41, 0x00, 0x93,
+	0x1d, 0x86, 0xaf, 0xa7, 0xda, 0xcf, 0xc5, 0xb7, 0xd3, 0xad, 0xc2, 0x24, 0x93, 0xda, 0xdd, 0x17,
+	0x27, 0x29, 0x4b, 0xff, 0x37, 0x82, 0xf5, 0x73, 0x03, 0x8d, 0x67, 0xae, 0xe4, 0x79, 0x1b, 0xb2,
+	0x78, 0x33, 0xa5, 0xb5, 0x24, 0xdf, 0x12, 0xe4, 0x0f, 0xb4, 0xc6, 0x85, 0xc9, 0x1b, 0x67, 0x7d,
+	0x46, 0x99, 0xfe, 0x07, 0x01, 0x3e, 0x3f, 0xb3, 0xf8, 0x66, 0x9a, 0xc9, 0x9f, 0xc4, 0xa0, 0xa7,
+	0x35, 0x97, 0x41, 0xdc, 0x17, 0x41, 0x1c, 0x6a, 0xcd, 0x17, 0x1a, 0xbd, 0xd3, 0x4e, 0xeb, 0xa8,
+	0xd2, 0xf8, 0x16, 0xc1, 0x65, 0xc3, 0xb5, 0x67, 0xb0, 0x68, 0xac, 0x24, 0x7b, 0xe4, 0x41, 0xf4,
+	0xcb, 0xf1, 0x01, 0xfa, 0xbc, 0x2e, 0x8d, 0x06, 0xae, 0x45, 0x9d, 0x81, 0xee, 0xfa, 0x83, 0xea,
+	0x80, 0x39, 0xe2, 0x77, 0x65, 0x35, 0x56, 0x51, 0xcf, 0x0c, 0xa6, 0xff, 0x81, 0xdc, 0x4d, 0xbe,
+	0x7f, 0xcf, 0xa8, 0x07, 0x31, 0xb8, 0x69, 0xb9, 0x61, 0x4f, 0x4f, 0x5c, 0xeb, 0x0f, 0x6b, 0xdd,
+	0xbc, 0xf0, 0xf0, 0xde, 0xd3, 0x00, 0x00, 0x00, 0xff, 0xff, 0x74, 0x6b, 0x7a, 0xa3, 0x17, 0x0d,
+	0x00, 0x00,
 }
diff --git a/googleapis/bigtable/v2/data.pb.go b/googleapis/bigtable/v2/data.pb.go
index a256a3a5..cf96dc22 100644
--- a/googleapis/bigtable/v2/data.pb.go
+++ b/googleapis/bigtable/v2/data.pb.go
@@ -2024,94 +2024,95 @@ func init() {
 func init() { proto.RegisterFile("google/bigtable/v2/data.proto", fileDescriptor1) }
 
 var fileDescriptor1 = []byte{
-	// 1412 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xdb, 0x6e, 0xdb, 0x46,
-	0x13, 0x16, 0x2d, 0xeb, 0x34, 0x94, 0x25, 0x65, 0xe3, 0x38, 0x8a, 0xfe, 0xf8, 0x8f, 0xc1, 0x14,
-	0xa9, 0xe2, 0xb6, 0x72, 0xab, 0x04, 0xe9, 0x21, 0x45, 0x11, 0xcb, 0x69, 0xaa, 0x36, 0xe7, 0x8d,
-	0x91, 0x02, 0x01, 0x0a, 0x76, 0x2d, 0xad, 0x54, 0xc2, 0x4b, 0x2e, 0x4b, 0x52, 0x56, 0xf4, 0x22,
-	0xbd, 0x6f, 0x5f, 0xa3, 0x77, 0x7d, 0x89, 0xf6, 0x31, 0xfa, 0x00, 0xbd, 0x28, 0xf6, 0xc0, 0x93,
-	0xa2, 0xd8, 0x46, 0x91, 0x3b, 0x72, 0xe6, 0xfb, 0xbe, 0x99, 0x9d, 0x9d, 0x1d, 0x2e, 0x61, 0x7b,
-	0xca, 0xf9, 0x94, 0xd1, 0xbd, 0x23, 0x67, 0x1a, 0x91, 0x23, 0x46, 0xf7, 0x4e, 0xfa, 0x7b, 0x63,
-	0x12, 0x91, 0x9e, 0x1f, 0xf0, 0x88, 0x23, 0xa4, 0xdc, 0xbd, 0xd8, 0xdd, 0x3b, 0xe9, 0x5b, 0x4f,
-	0xa1, 0x88, 0xf9, 0x1c, 0xb5, 0xa0, 0x78, 0x4c, 0x17, 0x6d, 0x63, 0xc7, 0xe8, 0xd6, 0xb1, 0x78,
-	0x44, 0x77, 0xa0, 0x3a, 0x21, 0xae, 0xc3, 0x1c, 0x1a, 0xb6, 0xd7, 0x76, 0x8a, 0x5d, 0xb3, 0xdf,
-	0xe9, 0xbd, 0xc9, 0xef, 0x3d, 0x10, 0x98, 0x05, 0x4e, 0xb0, 0x16, 0x86, 0xb2, 0xb2, 0x21, 0x04,
-	0xeb, 0x1e, 0x71, 0xa9, 0x14, 0xad, 0x61, 0xf9, 0x8c, 0x6e, 0x43, 0x65, 0xc4, 0xd9, 0xcc, 0xf5,
-	0x4e, 0x15, 0x3d, 0x90, 0x10, 0x1c, 0x43, 0xad, 0x97, 0x50, 0x56, 0x26, 0x74, 0x15, 0x6a, 0x3f,
-	0xcf, 0x08, 0x73, 0x26, 0x0e, 0x0d, 0x74, 0xb6, 0xa9, 0x01, 0xf5, 0xa0, 0x34, 0xa2, 0x8c, 0xc5,
-	0xda, 0xed, 0x95, 0xda, 0x94, 0x31, 0xac, 0x60, 0x96, 0x0d, 0xeb, 0xe2, 0x15, 0xdd, 0x84, 0x56,
-	0xe4, 0xb8, 0x34, 0x8c, 0x88, 0xeb, 0xdb, 0xae, 0x33, 0x0a, 0x78, 0x28, 0xc5, 0x8b, 0xb8, 0x99,
-	0xd8, 0x1f, 0x4b, 0x33, 0xda, 0x84, 0xd2, 0x09, 0x61, 0x33, 0xda, 0x5e, 0x93, 0xc1, 0xd5, 0x0b,
-	0xda, 0x82, 0x32, 0x23, 0x47, 0x94, 0x85, 0xed, 0xe2, 0x4e, 0xb1, 0x5b, 0xc3, 0xfa, 0xcd, 0xfa,
-	0xc3, 0x80, 0x2a, 0xe6, 0x73, 0x4c, 0xbc, 0x29, 0x45, 0xbb, 0xd0, 0x0a, 0x23, 0x12, 0x44, 0xf6,
-	0x31, 0x5d, 0xd8, 0x23, 0xc6, 0x43, 0x3a, 0x56, 0x4b, 0x18, 0x16, 0x70, 0x43, 0x7a, 0x1e, 0xd2,
-	0xc5, 0x81, 0xb4, 0xa3, 0x1b, 0xd0, 0x48, 0xb1, 0xdc, 0xa7, 0x9e, 0x8a, 0x37, 0x2c, 0xe0, 0x7a,
-	0x8c, 0x7c, 0xea, 0x53, 0x0f, 0x59, 0x50, 0xa7, 0xde, 0x38, 0x45, 0x15, 0x25, 0xca, 0xc0, 0x40,
-	0xbd, 0x71, 0x8c, 0xb9, 0x01, 0x8d, 0x18, 0xa3, 0xa3, 0xae, 0x6b, 0x54, 0x5d, 0xa1, 0x54, 0xcc,
-	0x81, 0x09, 0xb5, 0x24, 0xe6, 0xa0, 0x06, 0x15, 0x4d, 0xb2, 0x7e, 0x84, 0x32, 0xe6, 0xf3, 0x17,
-	0x34, 0x42, 0x57, 0xa0, 0x1a, 0xf0, 0xb9, 0x30, 0x8a, 0xfa, 0x14, 0xbb, 0x75, 0x5c, 0x09, 0xf8,
-	0xfc, 0x21, 0x5d, 0x84, 0xe8, 0x2e, 0x80, 0x70, 0x05, 0x62, 0xa5, 0x71, 0xfd, 0xaf, 0xae, 0xaa,
-	0x7f, 0x5c, 0x0e, 0x5c, 0x0b, 0xf4, 0x53, 0x68, 0xfd, 0xb6, 0x06, 0xa6, 0xde, 0x73, 0x59, 0xa9,
-	0x6b, 0x60, 0xca, 0x7e, 0x5a, 0xd8, 0x99, 0x06, 0x02, 0x65, 0x7a, 0x22, 0xda, 0xe8, 0x0e, 0x6c,
-	0xa9, 0x54, 0x93, 0xbd, 0x8f, 0x97, 0x16, 0x97, 0x69, 0x53, 0xfa, 0x9f, 0xc7, 0x6e, 0x5d, 0xd6,
-	0x3e, 0x6c, 0x2e, 0xf3, 0x32, 0x65, 0x2b, 0x60, 0x94, 0x67, 0xc9, 0xf2, 0xf5, 0x61, 0x53, 0x54,
-	0xe2, 0x8d, 0x48, 0x71, 0x11, 0x11, 0xf5, 0xc6, 0xcb, 0x71, 0x7a, 0x80, 0xf2, 0x1c, 0x19, 0xa5,
-	0xa4, 0x19, 0xad, 0x2c, 0x43, 0xc4, 0x18, 0x5c, 0x80, 0xe6, 0x52, 0x5e, 0x83, 0x26, 0x6c, 0xe4,
-	0x24, 0xac, 0xd7, 0xd0, 0x38, 0x8c, 0x9b, 0x51, 0x95, 0xe9, 0x76, 0x5c, 0x85, 0xb7, 0x34, 0xaf,
-	0x5a, 0xeb, 0xe1, 0x52, 0x07, 0x7f, 0xac, 0xd6, 0xf3, 0x06, 0x67, 0x4d, 0x72, 0x44, 0xde, 0x4b,
-	0x0c, 0xeb, 0x2f, 0x03, 0xe0, 0xa5, 0xe8, 0x73, 0x15, 0xb6, 0x07, 0xaa, 0x4c, 0xb6, 0xec, 0xfd,
-	0xe5, 0x4e, 0x56, 0x3d, 0x2e, 0xe1, 0xba, 0x18, 0x49, 0xdf, 0x2b, 0x7c, 0xae, 0x9b, 0x1b, 0x29,
-	0x5a, 0x16, 0x7b, 0x17, 0x44, 0x71, 0xf2, 0xca, 0x71, 0x4f, 0x8b, 0x2e, 0xce, 0xea, 0xea, 0xbe,
-	0xce, 0xa8, 0x66, 0xfb, 0x3a, 0xd1, 0x1c, 0x6c, 0x80, 0x99, 0x89, 0x2f, 0xda, 0x3c, 0xa1, 0x59,
-	0xff, 0x98, 0x50, 0xc3, 0x7c, 0xfe, 0xc0, 0x61, 0x11, 0x0d, 0xd0, 0x5d, 0x28, 0x8d, 0x7e, 0x22,
-	0x8e, 0x27, 0x17, 0x63, 0xf6, 0xaf, 0xbf, 0xa5, 0x7f, 0x15, 0xba, 0x77, 0x20, 0xa0, 0xc3, 0x02,
-	0x56, 0x1c, 0xf4, 0x1d, 0x80, 0xe3, 0x45, 0x34, 0x60, 0x94, 0x9c, 0xa8, 0xf1, 0x60, 0xf6, 0xbb,
-	0xa7, 0x2b, 0x7c, 0x9b, 0xe0, 0x87, 0x05, 0x9c, 0x61, 0xa3, 0x6f, 0xa0, 0x36, 0xe2, 0xde, 0xd8,
-	0x89, 0x1c, 0xae, 0x9a, 0xd3, 0xec, 0xbf, 0x7f, 0x46, 0x32, 0x31, 0x7c, 0x58, 0xc0, 0x29, 0x17,
-	0x6d, 0xc2, 0x7a, 0xe8, 0x78, 0xc7, 0xed, 0xd6, 0x8e, 0xd1, 0xad, 0x0e, 0x0b, 0x58, 0xbe, 0xa1,
-	0x2e, 0x34, 0x7d, 0x12, 0x86, 0x36, 0x61, 0xcc, 0x9e, 0x48, 0x7e, 0xfb, 0x82, 0x06, 0x6c, 0x08,
-	0xc7, 0x3e, 0x63, 0xba, 0x22, 0xbb, 0xd0, 0x3a, 0x62, 0x7c, 0x74, 0x9c, 0x85, 0x22, 0x0d, 0x6d,
-	0x48, 0x4f, 0x8a, 0xfd, 0x04, 0x36, 0xf5, 0x74, 0xb0, 0x03, 0x3a, 0xa5, 0xaf, 0x63, 0xfc, 0xba,
-	0xde, 0xeb, 0x0b, 0x6a, 0x56, 0x60, 0xe1, 0xd3, 0x94, 0x0f, 0x41, 0x18, 0xed, 0x90, 0xb8, 0x3e,
-	0xa3, 0x31, 0xbe, 0xb1, 0x63, 0x74, 0x8d, 0x61, 0x01, 0x37, 0x03, 0x3e, 0x7f, 0x21, 0x3d, 0x1a,
-	0xfd, 0x39, 0xb4, 0x33, 0x63, 0x21, 0x1f, 0x44, 0x9c, 0xad, 0xda, 0xb0, 0x80, 0x2f, 0xa5, 0x53,
-	0x22, 0x1b, 0xe8, 0x00, 0xb6, 0xd5, 0xc7, 0x24, 0x73, 0x26, 0x73, 0xfc, 0xb2, 0x4e, 0xb2, 0xa3,
-	0x60, 0xc9, 0xf1, 0xcc, 0x8a, 0x3c, 0x87, 0x8b, 0x5a, 0x44, 0x8e, 0xb9, 0x98, 0x5a, 0x91, 0xfb,
-	0x73, 0xed, 0x94, 0x0f, 0x99, 0x40, 0x8b, 0x02, 0x8c, 0xd2, 0x57, 0x2d, 0xf9, 0x0a, 0xb6, 0xd2,
-	0x83, 0x98, 0x53, 0xad, 0x4a, 0x55, 0x6b, 0x95, 0x6a, 0x7e, 0x0c, 0x88, 0x61, 0x17, 0xe5, 0x2c,
-	0x5a, 0xbb, 0x07, 0x48, 0x9d, 0x8d, 0xdc, 0x42, 0x6b, 0xf1, 0x39, 0x95, 0xbe, 0xec, 0xf2, 0x9e,
-	0x24, 0xf8, 0x6c, 0x1e, 0x4d, 0x99, 0xc7, 0xff, 0x57, 0xe5, 0x91, 0xce, 0x84, 0x54, 0x2f, 0x13,
-	0xff, 0x2b, 0xf8, 0x9f, 0xfc, 0xcc, 0xda, 0xbe, 0x28, 0x36, 0x9f, 0xdb, 0x7c, 0x32, 0x09, 0x69,
-	0x14, 0x0b, 0xc3, 0x8e, 0xd1, 0x2d, 0x0d, 0x0b, 0xf8, 0xb2, 0x04, 0x3d, 0xa3, 0x01, 0xe6, 0xf3,
-	0xa7, 0x12, 0xa1, 0xf9, 0x5f, 0x42, 0x27, 0xcf, 0x67, 0x8e, 0xeb, 0x24, 0x74, 0x53, 0xd3, 0xb7,
-	0x32, 0xf4, 0x47, 0x02, 0xa0, 0xd9, 0x03, 0xd8, 0x4e, 0xd9, 0x7a, 0xdb, 0x72, 0x02, 0x75, 0x2d,
-	0x70, 0x25, 0x16, 0x50, 0x9b, 0x95, 0xd5, 0xf8, 0x0c, 0x2e, 0x87, 0x51, 0xe0, 0xf8, 0x7a, 0xc6,
-	0x44, 0x01, 0xf1, 0xc2, 0x09, 0x0f, 0x5c, 0x1a, 0xb4, 0x37, 0xf4, 0x21, 0xb8, 0x24, 0x01, 0xb2,
-	0x12, 0x87, 0xa9, 0x5b, 0x30, 0x89, 0xef, 0xb3, 0x85, 0x2d, 0x2f, 0x02, 0x39, 0xe6, 0xc5, 0xb8,
-	0x53, 0x25, 0xe0, 0x91, 0xf0, 0x67, 0x98, 0x9d, 0x7b, 0x50, 0x92, 0x83, 0x05, 0x7d, 0x0a, 0x15,
-	0x95, 0xa9, 0xfa, 0xd6, 0x9a, 0xfd, 0xed, 0x53, 0x27, 0x00, 0x8e, 0xd1, 0x9d, 0xaf, 0x01, 0xd2,
-	0xc1, 0xf2, 0xdf, 0x65, 0xfe, 0x34, 0xa0, 0x96, 0x4c, 0x15, 0x34, 0x84, 0x96, 0x1f, 0xd0, 0xb1,
-	0x33, 0x22, 0x51, 0xd2, 0x1a, 0x6a, 0x4a, 0x9e, 0xa1, 0xd7, 0x4c, 0x68, 0x49, 0x5b, 0x98, 0x51,
-	0x30, 0x4b, 0x44, 0xd6, 0xce, 0x23, 0x02, 0x82, 0xa1, 0xf9, 0xf7, 0xa0, 0x3e, 0x21, 0x2c, 0x4c,
-	0x04, 0x8a, 0xe7, 0x11, 0x30, 0x25, 0x45, 0xbd, 0x0c, 0xaa, 0x50, 0x56, 0x5c, 0xeb, 0xef, 0x12,
-	0x54, 0x1f, 0xcf, 0x22, 0x22, 0x97, 0xb8, 0x0f, 0x55, 0xd1, 0x9e, 0xa2, 0x1d, 0xf4, 0xd2, 0xde,
-	0x5b, 0x25, 0x1a, 0xe3, 0x7b, 0x2f, 0x68, 0x24, 0x6e, 0x8f, 0xc3, 0x02, 0xae, 0x84, 0xea, 0x11,
-	0xfd, 0x00, 0x68, 0x4c, 0x19, 0x15, 0x25, 0x0a, 0xb8, 0xab, 0xdb, 0x4e, 0x2f, 0xf1, 0xa3, 0x53,
-	0xc5, 0xee, 0x4b, 0xda, 0x83, 0x80, 0xbb, 0xaa, 0x0d, 0xc5, 0x89, 0x1a, 0x2f, 0xd9, 0x96, 0xe5,
-	0xd5, 0xa8, 0xd3, 0x05, 0x38, 0xaf, 0xbc, 0xba, 0x9c, 0xe7, 0xe5, 0xf5, 0x85, 0xfd, 0x10, 0x9a,
-	0x59, 0xf9, 0x80, 0xcf, 0xe5, 0xec, 0x36, 0xfb, 0xbb, 0xe7, 0xd4, 0xc6, 0x7c, 0x2e, 0x3e, 0x21,
-	0xe3, 0xac, 0xa1, 0xf3, 0x8b, 0x01, 0x15, 0x5d, 0xaa, 0xb3, 0x2f, 0x76, 0x37, 0xa1, 0xb5, 0x3c,
-	0xa7, 0xf5, 0x4d, 0xbb, 0xb9, 0x34, 0x98, 0x57, 0x5e, 0xda, 0x8b, 0x67, 0x5c, 0xda, 0xd7, 0x33,
-	0x97, 0xf6, 0xce, 0xaf, 0x06, 0xb4, 0x96, 0xcb, 0xfe, 0x4e, 0x33, 0xdc, 0x07, 0x10, 0x99, 0xa8,
-	0x79, 0xaa, 0xb7, 0xe9, 0x1c, 0x03, 0x1d, 0xd7, 0x04, 0x4b, 0x3e, 0x76, 0x6e, 0x65, 0x53, 0xd4,
-	0xdb, 0x74, 0x56, 0x8a, 0x9d, 0x26, 0x6c, 0xe4, 0xf6, 0x64, 0x00, 0x50, 0x75, 0xf5, 0x6e, 0x59,
-	0xbf, 0x1b, 0x70, 0x11, 0x53, 0x32, 0x7e, 0xcc, 0xc7, 0xce, 0x64, 0xf1, 0x7d, 0xe0, 0x44, 0x14,
-	0xcf, 0x18, 0x7d, 0xa7, 0x0b, 0xbf, 0x0e, 0x75, 0xe2, 0xfb, 0xc9, 0x2d, 0x2b, 0xb9, 0x5e, 0x9b,
-	0xca, 0x2a, 0xa7, 0x25, 0xfa, 0x00, 0x5a, 0x8e, 0x37, 0x0a, 0xa8, 0x4b, 0xbd, 0xc8, 0x26, 0x2e,
-	0x9f, 0x79, 0x91, 0xdc, 0x9f, 0xa2, 0xf8, 0xf4, 0x27, 0x9e, 0x7d, 0xe9, 0x18, 0x94, 0x61, 0x3d,
-	0x98, 0x31, 0x3a, 0x20, 0xb0, 0x35, 0xe2, 0xee, 0x8a, 0x1a, 0x0e, 0x6a, 0xf7, 0x49, 0x44, 0x9e,
-	0x89, 0xff, 0xdc, 0x67, 0xc6, 0xab, 0x2f, 0x34, 0x60, 0xca, 0x19, 0xf1, 0xa6, 0x3d, 0x1e, 0x4c,
-	0xf7, 0xa6, 0xd4, 0x93, 0x7f, 0xc1, 0x7b, 0xca, 0x45, 0x7c, 0x27, 0xcc, 0xfe, 0x27, 0xdf, 0x8d,
-	0x9f, 0x8f, 0xca, 0x12, 0x76, 0xeb, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xd8, 0xbb, 0x74, 0x4d,
-	0x4d, 0x0f, 0x00, 0x00,
+	// 1430 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xdd, 0x6e, 0x1b, 0x45,
+	0x14, 0xf6, 0xc6, 0x89, 0x7f, 0xce, 0x3a, 0xb6, 0x3b, 0x4d, 0x53, 0xd7, 0x34, 0x34, 0xda, 0xa2,
+	0xe2, 0x06, 0x70, 0xc0, 0xad, 0xca, 0x4f, 0x11, 0x6a, 0x9c, 0xd2, 0x1a, 0xfa, 0x3f, 0x8d, 0x8a,
+	0x54, 0x09, 0x2d, 0x13, 0x7b, 0x6c, 0x56, 0x99, 0xdd, 0x59, 0x76, 0xd7, 0x71, 0x2d, 0xf1, 0x1c,
+	0xdc, 0xc3, 0x25, 0xaf, 0xc0, 0x1d, 0x2f, 0x01, 0x8f, 0xc1, 0x03, 0x70, 0x81, 0xe6, 0x67, 0xff,
+	0x5c, 0x37, 0x89, 0x50, 0xef, 0x76, 0xcf, 0xf9, 0xbe, 0xef, 0x9c, 0x39, 0x73, 0xe6, 0xec, 0x2c,
+	0x6c, 0x4d, 0x38, 0x9f, 0x30, 0xba, 0x7b, 0xe8, 0x4c, 0x22, 0x72, 0xc8, 0xe8, 0xee, 0x71, 0x6f,
+	0x77, 0x44, 0x22, 0xd2, 0xf5, 0x03, 0x1e, 0x71, 0x84, 0x94, 0xbb, 0x1b, 0xbb, 0xbb, 0xc7, 0x3d,
+	0xeb, 0x09, 0x14, 0x31, 0x9f, 0xa1, 0x26, 0x14, 0x8f, 0xe8, 0xbc, 0x65, 0x6c, 0x1b, 0x9d, 0x1a,
+	0x16, 0x8f, 0xe8, 0x16, 0x54, 0xc6, 0xc4, 0x75, 0x98, 0x43, 0xc3, 0xd6, 0xca, 0x76, 0xb1, 0x63,
+	0xf6, 0xda, 0xdd, 0xd7, 0xf9, 0xdd, 0x7b, 0x02, 0x33, 0xc7, 0x09, 0xd6, 0xc2, 0x50, 0x52, 0x36,
+	0x84, 0x60, 0xd5, 0x23, 0x2e, 0x95, 0xa2, 0x55, 0x2c, 0x9f, 0xd1, 0x4d, 0x28, 0x0f, 0x39, 0x9b,
+	0xba, 0xde, 0x89, 0xa2, 0xfb, 0x12, 0x82, 0x63, 0xa8, 0xf5, 0x02, 0x4a, 0xca, 0x84, 0x2e, 0x43,
+	0xf5, 0xa7, 0x29, 0x61, 0xce, 0xd8, 0xa1, 0x81, 0xce, 0x36, 0x35, 0xa0, 0x2e, 0xac, 0x0d, 0x29,
+	0x63, 0xb1, 0x76, 0x6b, 0xa9, 0x36, 0x65, 0x0c, 0x2b, 0x98, 0x65, 0xc3, 0xaa, 0x78, 0x45, 0xd7,
+	0xa1, 0x19, 0x39, 0x2e, 0x0d, 0x23, 0xe2, 0xfa, 0xb6, 0xeb, 0x0c, 0x03, 0x1e, 0x4a, 0xf1, 0x22,
+	0x6e, 0x24, 0xf6, 0x47, 0xd2, 0x8c, 0x36, 0x60, 0xed, 0x98, 0xb0, 0x29, 0x6d, 0xad, 0xc8, 0xe0,
+	0xea, 0x05, 0x6d, 0x42, 0x89, 0x91, 0x43, 0xca, 0xc2, 0x56, 0x71, 0xbb, 0xd8, 0xa9, 0x62, 0xfd,
+	0x66, 0xfd, 0x69, 0x40, 0x05, 0xf3, 0x19, 0x26, 0xde, 0x84, 0xa2, 0x1d, 0x68, 0x86, 0x11, 0x09,
+	0x22, 0xfb, 0x88, 0xce, 0xed, 0x21, 0xe3, 0x21, 0x1d, 0xa9, 0x25, 0x0c, 0x0a, 0xb8, 0x2e, 0x3d,
+	0x0f, 0xe8, 0x7c, 0x5f, 0xda, 0xd1, 0x35, 0xa8, 0xa7, 0x58, 0xee, 0x53, 0x4f, 0xc5, 0x1b, 0x14,
+	0x70, 0x2d, 0x46, 0x3e, 0xf1, 0xa9, 0x87, 0x2c, 0xa8, 0x51, 0x6f, 0x94, 0xa2, 0x8a, 0x12, 0x65,
+	0x60, 0xa0, 0xde, 0x28, 0xc6, 0x5c, 0x83, 0x7a, 0x8c, 0xd1, 0x51, 0x57, 0x35, 0xaa, 0xa6, 0x50,
+	0x2a, 0x66, 0xdf, 0x84, 0x6a, 0x12, 0xb3, 0x5f, 0x85, 0xb2, 0x26, 0x59, 0x3f, 0x40, 0x09, 0xf3,
+	0xd9, 0x73, 0x1a, 0xa1, 0x4b, 0x50, 0x09, 0xf8, 0x4c, 0x18, 0x45, 0x7d, 0x8a, 0x9d, 0x1a, 0x2e,
+	0x07, 0x7c, 0xf6, 0x80, 0xce, 0x43, 0x74, 0x1b, 0x40, 0xb8, 0x02, 0xb1, 0xd2, 0xb8, 0xfe, 0x97,
+	0x97, 0xd5, 0x3f, 0x2e, 0x07, 0xae, 0x06, 0xfa, 0x29, 0xb4, 0x7e, 0x5b, 0x01, 0x53, 0xef, 0xb9,
+	0xac, 0xd4, 0x15, 0x30, 0x65, 0x3f, 0xcd, 0xed, 0x4c, 0x03, 0x81, 0x32, 0x3d, 0x16, 0x6d, 0x74,
+	0x0b, 0x36, 0x55, 0xaa, 0xc9, 0xde, 0xc7, 0x4b, 0x8b, 0xcb, 0xb4, 0x21, 0xfd, 0xcf, 0x62, 0xb7,
+	0x2e, 0x6b, 0x0f, 0x36, 0x16, 0x79, 0x99, 0xb2, 0x15, 0x30, 0xca, 0xb3, 0x64, 0xf9, 0x7a, 0xb0,
+	0x21, 0x2a, 0xf1, 0x5a, 0xa4, 0xb8, 0x88, 0x88, 0x7a, 0xa3, 0xc5, 0x38, 0x5d, 0x40, 0x79, 0x8e,
+	0x8c, 0xb2, 0xa6, 0x19, 0xcd, 0x2c, 0x43, 0xc4, 0xe8, 0x9f, 0x83, 0xc6, 0x42, 0x5e, 0xfd, 0x06,
+	0xac, 0xe7, 0x24, 0xac, 0x57, 0x50, 0x3f, 0x88, 0x9b, 0x51, 0x95, 0xe9, 0x66, 0x5c, 0x85, 0x37,
+	0x34, 0xaf, 0x5a, 0xeb, 0xc1, 0x42, 0x07, 0x7f, 0xac, 0xd6, 0xf3, 0x1a, 0x67, 0x45, 0x72, 0x44,
+	0xde, 0x0b, 0x0c, 0xeb, 0x6f, 0x03, 0xe0, 0x85, 0xe8, 0x73, 0x15, 0xb6, 0x0b, 0xaa, 0x4c, 0xb6,
+	0xec, 0xfd, 0xc5, 0x4e, 0x56, 0x3d, 0x2e, 0xe1, 0xba, 0x18, 0x49, 0xdf, 0x2b, 0x7c, 0xae, 0x9b,
+	0xeb, 0x29, 0x5a, 0x16, 0x7b, 0x07, 0x44, 0x71, 0xf2, 0xca, 0x71, 0x4f, 0x8b, 0x2e, 0xce, 0xea,
+	0xea, 0xbe, 0xce, 0xa8, 0x66, 0xfb, 0x3a, 0xd1, 0xec, 0xaf, 0x83, 0x99, 0x89, 0x2f, 0xda, 0x3c,
+	0xa1, 0x59, 0xff, 0x9a, 0x50, 0xc5, 0x7c, 0x76, 0xcf, 0x61, 0x11, 0x0d, 0xd0, 0x6d, 0x58, 0x1b,
+	0xfe, 0x48, 0x1c, 0x4f, 0x2e, 0xc6, 0xec, 0x5d, 0x7d, 0x43, 0xff, 0x2a, 0x74, 0x77, 0x5f, 0x40,
+	0x07, 0x05, 0xac, 0x38, 0xe8, 0x5b, 0x00, 0xc7, 0x8b, 0x68, 0xc0, 0x28, 0x39, 0x56, 0xe3, 0xc1,
+	0xec, 0x75, 0x4e, 0x56, 0xf8, 0x26, 0xc1, 0x0f, 0x0a, 0x38, 0xc3, 0x46, 0xf7, 0xa1, 0x3a, 0xe4,
+	0xde, 0xc8, 0x89, 0x1c, 0xae, 0x9a, 0xd3, 0xec, 0xbd, 0x7f, 0x4a, 0x32, 0x31, 0x7c, 0x50, 0xc0,
+	0x29, 0x17, 0x6d, 0xc0, 0x6a, 0xe8, 0x78, 0x47, 0xad, 0xe6, 0xb6, 0xd1, 0xa9, 0x0c, 0x0a, 0x58,
+	0xbe, 0xa1, 0x0e, 0x34, 0x7c, 0x12, 0x86, 0x36, 0x61, 0xcc, 0x1e, 0x4b, 0x7e, 0xeb, 0x9c, 0x06,
+	0xac, 0x0b, 0xc7, 0x1e, 0x63, 0xba, 0x22, 0x3b, 0xd0, 0x3c, 0x64, 0x7c, 0x78, 0x94, 0x85, 0x22,
+	0x0d, 0xad, 0x4b, 0x4f, 0x8a, 0xfd, 0x04, 0x36, 0xf4, 0x74, 0xb0, 0x03, 0x3a, 0xa1, 0xaf, 0x62,
+	0xfc, 0xaa, 0xde, 0xeb, 0x73, 0x6a, 0x56, 0x60, 0xe1, 0xd3, 0x94, 0x0f, 0x41, 0x18, 0xed, 0x90,
+	0xb8, 0x3e, 0xa3, 0x31, 0xbe, 0xbe, 0x6d, 0x74, 0x8c, 0x41, 0x01, 0x37, 0x02, 0x3e, 0x7b, 0x2e,
+	0x3d, 0x1a, 0xfd, 0x39, 0xb4, 0x32, 0x63, 0x21, 0x1f, 0x44, 0x9c, 0xad, 0xea, 0xa0, 0x80, 0x2f,
+	0xa4, 0x53, 0x22, 0x1b, 0x68, 0x1f, 0xb6, 0xd4, 0xc7, 0x24, 0x73, 0x26, 0x73, 0xfc, 0x92, 0x4e,
+	0xb2, 0xad, 0x60, 0xc9, 0xf1, 0xcc, 0x8a, 0x3c, 0x83, 0xf3, 0x5a, 0x44, 0x8e, 0xb9, 0x98, 0x5a,
+	0x96, 0xfb, 0x73, 0xe5, 0x84, 0x0f, 0x99, 0x40, 0x8b, 0x02, 0x0c, 0xd3, 0x57, 0x2d, 0xf9, 0x12,
+	0x36, 0xd3, 0x83, 0x98, 0x53, 0xad, 0x48, 0x55, 0x6b, 0x99, 0x6a, 0x7e, 0x0c, 0x88, 0x61, 0x17,
+	0xe5, 0x2c, 0x5a, 0xbb, 0x0b, 0x48, 0x9d, 0x8d, 0xdc, 0x42, 0xab, 0xf1, 0x39, 0x95, 0xbe, 0xec,
+	0xf2, 0x1e, 0x27, 0xf8, 0x6c, 0x1e, 0x0d, 0x99, 0xc7, 0xbb, 0xcb, 0xf2, 0x48, 0x67, 0x42, 0xaa,
+	0x97, 0x89, 0xff, 0x15, 0xbc, 0x23, 0x3f, 0xb3, 0xb6, 0x2f, 0x8a, 0xcd, 0x67, 0x36, 0x1f, 0x8f,
+	0x43, 0x1a, 0xc5, 0xc2, 0xb0, 0x6d, 0x74, 0xd6, 0x06, 0x05, 0x7c, 0x51, 0x82, 0x9e, 0xd2, 0x00,
+	0xf3, 0xd9, 0x13, 0x89, 0xd0, 0xfc, 0x2f, 0xa1, 0x9d, 0xe7, 0x33, 0xc7, 0x75, 0x12, 0xba, 0xa9,
+	0xe9, 0x9b, 0x19, 0xfa, 0x43, 0x01, 0xd0, 0xec, 0x3e, 0x6c, 0xa5, 0x6c, 0xbd, 0x6d, 0x39, 0x81,
+	0x9a, 0x16, 0xb8, 0x14, 0x0b, 0xa8, 0xcd, 0xca, 0x6a, 0x7c, 0x06, 0x17, 0xc3, 0x28, 0x70, 0x7c,
+	0x3d, 0x63, 0xa2, 0x80, 0x78, 0xe1, 0x98, 0x07, 0x2e, 0x0d, 0x5a, 0xeb, 0xfa, 0x10, 0x5c, 0x90,
+	0x00, 0x59, 0x89, 0x83, 0xd4, 0x2d, 0x98, 0xc4, 0xf7, 0xd9, 0xdc, 0x96, 0x17, 0x81, 0x1c, 0xf3,
+	0x7c, 0xdc, 0xa9, 0x12, 0xf0, 0x50, 0xf8, 0x33, 0xcc, 0xf6, 0x1d, 0x58, 0x93, 0x83, 0x05, 0x7d,
+	0x0a, 0x65, 0x95, 0xa9, 0xfa, 0xd6, 0x9a, 0xbd, 0xad, 0x13, 0x27, 0x00, 0x8e, 0xd1, 0xed, 0xaf,
+	0x01, 0xd2, 0xc1, 0xf2, 0xff, 0x65, 0xfe, 0x32, 0xa0, 0x9a, 0x4c, 0x15, 0x34, 0x80, 0xa6, 0x1f,
+	0xd0, 0x91, 0x33, 0x24, 0x51, 0xd2, 0x1a, 0x6a, 0x4a, 0x9e, 0xa2, 0xd7, 0x48, 0x68, 0x49, 0x5b,
+	0x98, 0x51, 0x30, 0x4d, 0x44, 0x56, 0xce, 0x22, 0x02, 0x82, 0xa1, 0xf9, 0x77, 0xa0, 0x36, 0x26,
+	0x2c, 0x4c, 0x04, 0x8a, 0x67, 0x11, 0x30, 0x25, 0x45, 0xbd, 0xf4, 0x2b, 0x50, 0x52, 0x5c, 0xeb,
+	0x9f, 0x35, 0xa8, 0x3c, 0x9a, 0x46, 0x44, 0x2e, 0x71, 0x0f, 0x2a, 0xa2, 0x3d, 0x45, 0x3b, 0xe8,
+	0xa5, 0xbd, 0xb7, 0x4c, 0x34, 0xc6, 0x77, 0x9f, 0xd3, 0x48, 0xdc, 0x1e, 0x07, 0x05, 0x5c, 0x0e,
+	0xd5, 0x23, 0xfa, 0x1e, 0xd0, 0x88, 0x32, 0x2a, 0x4a, 0x14, 0x70, 0x57, 0xb7, 0x9d, 0x5e, 0xe2,
+	0x47, 0x27, 0x8a, 0xdd, 0x95, 0xb4, 0x7b, 0x01, 0x77, 0x55, 0x1b, 0x8a, 0x13, 0x35, 0x5a, 0xb0,
+	0x2d, 0xca, 0xab, 0x51, 0xa7, 0x0b, 0x70, 0x56, 0x79, 0x75, 0x39, 0xcf, 0xcb, 0xeb, 0x0b, 0xfb,
+	0x01, 0x34, 0xb2, 0xf2, 0x01, 0x9f, 0xc9, 0xd9, 0x6d, 0xf6, 0x76, 0xce, 0xa8, 0x8d, 0xf9, 0x4c,
+	0x7c, 0x42, 0x46, 0x59, 0x43, 0xfb, 0x17, 0x03, 0xca, 0xba, 0x54, 0xa7, 0x5f, 0xec, 0xae, 0x43,
+	0x73, 0x71, 0x4e, 0xeb, 0x9b, 0x76, 0x63, 0x61, 0x30, 0x2f, 0xbd, 0xb4, 0x17, 0x4f, 0xb9, 0xb4,
+	0xaf, 0x66, 0x2e, 0xed, 0xed, 0x5f, 0x0d, 0x68, 0x2e, 0x96, 0xfd, 0xad, 0x66, 0xb8, 0x07, 0x20,
+	0x32, 0x51, 0xf3, 0x54, 0x6f, 0xd3, 0x19, 0x06, 0x3a, 0xae, 0x0a, 0x96, 0x7c, 0x6c, 0xdf, 0xc8,
+	0xa6, 0xa8, 0xb7, 0xe9, 0xb4, 0x14, 0xdb, 0x0d, 0x58, 0xcf, 0xed, 0x49, 0x1f, 0xa0, 0xe2, 0xea,
+	0xdd, 0xb2, 0xfe, 0x30, 0xe0, 0x3c, 0xa6, 0x64, 0xf4, 0x88, 0x8f, 0x9c, 0xf1, 0xfc, 0xbb, 0xc0,
+	0x89, 0x28, 0x9e, 0x32, 0xfa, 0x56, 0x17, 0x7e, 0x15, 0x6a, 0xc4, 0xf7, 0x93, 0x5b, 0x56, 0x72,
+	0xbd, 0x36, 0x95, 0x55, 0x4e, 0x4b, 0xf4, 0x01, 0x34, 0x1d, 0x6f, 0x18, 0x50, 0x97, 0x7a, 0x91,
+	0x4d, 0x5c, 0x3e, 0xf5, 0x22, 0xb9, 0x3f, 0x45, 0xf1, 0xe9, 0x4f, 0x3c, 0x7b, 0xd2, 0xd1, 0x2f,
+	0xc1, 0x6a, 0x30, 0x65, 0xb4, 0xff, 0x33, 0x6c, 0x0e, 0xb9, 0xbb, 0xa4, 0x86, 0xfd, 0xea, 0x5d,
+	0x12, 0x91, 0xa7, 0xe2, 0x3f, 0xf7, 0xa9, 0xf1, 0xf2, 0x0b, 0x0d, 0x98, 0x70, 0x46, 0xbc, 0x49,
+	0x97, 0x07, 0x93, 0xdd, 0x09, 0xf5, 0xe4, 0x5f, 0xf0, 0xae, 0x72, 0x11, 0xdf, 0x09, 0xb3, 0xff,
+	0xc9, 0xb7, 0xe3, 0xe7, 0xdf, 0x57, 0x5a, 0xf7, 0x15, 0x79, 0x9f, 0xf1, 0xe9, 0xa8, 0xdb, 0x8f,
+	0x63, 0xbc, 0xe8, 0x1d, 0x96, 0xa4, 0xc2, 0x8d, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x32, 0x40,
+	0x30, 0x5e, 0x68, 0x0f, 0x00, 0x00,
 }
diff --git a/googleapis/container/v1/cluster_service.pb.go b/googleapis/container/v1/cluster_service.pb.go
index 44b1d560..813f16e9 100644
--- a/googleapis/container/v1/cluster_service.pb.go
+++ b/googleapis/container/v1/cluster_service.pb.go
@@ -10,16 +10,26 @@ It is generated from these files:
 It has these top-level messages:
 	NodeConfig
 	MasterAuth
+	ClientCertificateConfig
 	AddonsConfig
 	HttpLoadBalancing
 	HorizontalPodAutoscaling
 	LegacyAbac
+	NetworkPolicy
+	IPAllocationPolicy
 	Cluster
 	ClusterUpdate
 	Operation
 	CreateClusterRequest
 	GetClusterRequest
 	UpdateClusterRequest
+	UpdateNodePoolRequest
+	SetNodePoolAutoscalingRequest
+	SetLoggingServiceRequest
+	SetMonitoringServiceRequest
+	SetAddonsConfigRequest
+	SetLocationsRequest
+	UpdateMasterRequest
 	SetMasterAuthRequest
 	DeleteClusterRequest
 	ListClustersRequest
@@ -38,6 +48,7 @@ It has these top-level messages:
 	NodeManagement
 	AutoUpgradeOptions
 	SetNodePoolManagementRequest
+	SetNodePoolSizeRequest
 	RollbackNodePoolUpgradeRequest
 	ListNodePoolsResponse
 	NodePoolAutoscaling
@@ -45,6 +56,7 @@ It has these top-level messages:
 	SetLegacyAbacRequest
 	StartIPRotationRequest
 	CompleteIPRotationRequest
+	SetNetworkPolicyRequest
 */
 package container
 
@@ -70,6 +82,30 @@ var _ = math.Inf
 // proto package needs to be updated.
 const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
 
+// Allowed Network Policy providers.
+type NetworkPolicy_Provider int32
+
+const (
+	// Not set
+	NetworkPolicy_UNKNOWN NetworkPolicy_Provider = 0
+	// Tigera (Calico Felix).
+	NetworkPolicy_CALICO NetworkPolicy_Provider = 1
+)
+
+var NetworkPolicy_Provider_name = map[int32]string{
+	0: "UNKNOWN",
+	1: "CALICO",
+}
+var NetworkPolicy_Provider_value = map[string]int32{
+	"UNKNOWN": 0,
+	"CALICO":  1,
+}
+
+func (x NetworkPolicy_Provider) String() string {
+	return proto.EnumName(NetworkPolicy_Provider_name, int32(x))
+}
+func (NetworkPolicy_Provider) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{7, 0} }
+
 // The current status of the cluster.
 type Cluster_Status int32
 
@@ -112,7 +148,7 @@ var Cluster_Status_value = map[string]int32{
 func (x Cluster_Status) String() string {
 	return proto.EnumName(Cluster_Status_name, int32(x))
 }
-func (Cluster_Status) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{6, 0} }
+func (Cluster_Status) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{9, 0} }
 
 // Current status of the operation.
 type Operation_Status int32
@@ -148,7 +184,7 @@ var Operation_Status_value = map[string]int32{
 func (x Operation_Status) String() string {
 	return proto.EnumName(Operation_Status_name, int32(x))
 }
-func (Operation_Status) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{8, 0} }
+func (Operation_Status) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{11, 0} }
 
 // Operation type.
 type Operation_Type int32
@@ -182,6 +218,10 @@ const (
 	Operation_SET_LABELS Operation_Type = 12
 	// Set/generate master auth materials
 	Operation_SET_MASTER_AUTH Operation_Type = 13
+	// Set node pool size.
+	Operation_SET_NODE_POOL_SIZE Operation_Type = 14
+	// Updates network policy for a cluster.
+	Operation_SET_NETWORK_POLICY Operation_Type = 15
 )
 
 var Operation_Type_name = map[int32]string{
@@ -199,6 +239,8 @@ var Operation_Type_name = map[int32]string{
 	11: "AUTO_UPGRADE_NODES",
 	12: "SET_LABELS",
 	13: "SET_MASTER_AUTH",
+	14: "SET_NODE_POOL_SIZE",
+	15: "SET_NETWORK_POLICY",
 }
 var Operation_Type_value = map[string]int32{
 	"TYPE_UNSPECIFIED":         0,
@@ -215,12 +257,14 @@ var Operation_Type_value = map[string]int32{
 	"AUTO_UPGRADE_NODES":       11,
 	"SET_LABELS":               12,
 	"SET_MASTER_AUTH":          13,
+	"SET_NODE_POOL_SIZE":       14,
+	"SET_NETWORK_POLICY":       15,
 }
 
 func (x Operation_Type) String() string {
 	return proto.EnumName(Operation_Type_name, int32(x))
 }
-func (Operation_Type) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{8, 1} }
+func (Operation_Type) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{11, 1} }
 
 // operation type - what type of key rotation are we performing
 type SetMasterAuthRequest_Action int32
@@ -249,7 +293,7 @@ func (x SetMasterAuthRequest_Action) String() string {
 	return proto.EnumName(SetMasterAuthRequest_Action_name, int32(x))
 }
 func (SetMasterAuthRequest_Action) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor0, []int{12, 0}
+	return fileDescriptor0, []int{22, 0}
 }
 
 // The current status of the node pool instance.
@@ -301,7 +345,7 @@ var NodePool_Status_value = map[string]int32{
 func (x NodePool_Status) String() string {
 	return proto.EnumName(NodePool_Status_name, int32(x))
 }
-func (NodePool_Status) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{26, 0} }
+func (NodePool_Status) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{36, 0} }
 
 // Parameters that describe the nodes in a cluster.
 type NodeConfig struct {
@@ -467,6 +511,9 @@ type MasterAuth struct {
 	// strong password.  If a password is provided for cluster creation, username
 	// must be non-empty.
 	Password string `protobuf:"bytes,2,opt,name=password" json:"password,omitempty"`
+	// Configuration for client certificate authentication on the cluster.  If no
+	// configuration is specified, a client certificate is issued.
+	ClientCertificateConfig *ClientCertificateConfig `protobuf:"bytes,3,opt,name=client_certificate_config,json=clientCertificateConfig" json:"client_certificate_config,omitempty"`
 	// [Output only] Base64-encoded public certificate that is the root of
 	// trust for the cluster.
 	ClusterCaCertificate string `protobuf:"bytes,100,opt,name=cluster_ca_certificate,json=clusterCaCertificate" json:"cluster_ca_certificate,omitempty"`
@@ -497,6 +544,13 @@ func (m *MasterAuth) GetPassword() string {
 	return ""
 }
 
+func (m *MasterAuth) GetClientCertificateConfig() *ClientCertificateConfig {
+	if m != nil {
+		return m.ClientCertificateConfig
+	}
+	return nil
+}
+
 func (m *MasterAuth) GetClusterCaCertificate() string {
 	if m != nil {
 		return m.ClusterCaCertificate
@@ -518,6 +572,24 @@ func (m *MasterAuth) GetClientKey() string {
 	return ""
 }
 
+// Configuration for client certificates on the cluster.
+type ClientCertificateConfig struct {
+	// Issue a client certificate.
+	IssueClientCertificate bool `protobuf:"varint,1,opt,name=issue_client_certificate,json=issueClientCertificate" json:"issue_client_certificate,omitempty"`
+}
+
+func (m *ClientCertificateConfig) Reset()                    { *m = ClientCertificateConfig{} }
+func (m *ClientCertificateConfig) String() string            { return proto.CompactTextString(m) }
+func (*ClientCertificateConfig) ProtoMessage()               {}
+func (*ClientCertificateConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
+
+func (m *ClientCertificateConfig) GetIssueClientCertificate() bool {
+	if m != nil {
+		return m.IssueClientCertificate
+	}
+	return false
+}
+
 // Configuration for the addons that can be automatically spun up in the
 // cluster, enabling additional functionality.
 type AddonsConfig struct {
@@ -533,7 +605,7 @@ type AddonsConfig struct {
 func (m *AddonsConfig) Reset()                    { *m = AddonsConfig{} }
 func (m *AddonsConfig) String() string            { return proto.CompactTextString(m) }
 func (*AddonsConfig) ProtoMessage()               {}
-func (*AddonsConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
+func (*AddonsConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
 
 func (m *AddonsConfig) GetHttpLoadBalancing() *HttpLoadBalancing {
 	if m != nil {
@@ -561,7 +633,7 @@ type HttpLoadBalancing struct {
 func (m *HttpLoadBalancing) Reset()                    { *m = HttpLoadBalancing{} }
 func (m *HttpLoadBalancing) String() string            { return proto.CompactTextString(m) }
 func (*HttpLoadBalancing) ProtoMessage()               {}
-func (*HttpLoadBalancing) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
+func (*HttpLoadBalancing) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
 
 func (m *HttpLoadBalancing) GetDisabled() bool {
 	if m != nil {
@@ -583,7 +655,7 @@ type HorizontalPodAutoscaling struct {
 func (m *HorizontalPodAutoscaling) Reset()                    { *m = HorizontalPodAutoscaling{} }
 func (m *HorizontalPodAutoscaling) String() string            { return proto.CompactTextString(m) }
 func (*HorizontalPodAutoscaling) ProtoMessage()               {}
-func (*HorizontalPodAutoscaling) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
+func (*HorizontalPodAutoscaling) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
 
 func (m *HorizontalPodAutoscaling) GetDisabled() bool {
 	if m != nil {
@@ -605,7 +677,7 @@ type LegacyAbac struct {
 func (m *LegacyAbac) Reset()                    { *m = LegacyAbac{} }
 func (m *LegacyAbac) String() string            { return proto.CompactTextString(m) }
 func (*LegacyAbac) ProtoMessage()               {}
-func (*LegacyAbac) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
+func (*LegacyAbac) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
 
 func (m *LegacyAbac) GetEnabled() bool {
 	if m != nil {
@@ -614,6 +686,139 @@ func (m *LegacyAbac) GetEnabled() bool {
 	return false
 }
 
+// Configuration options for the NetworkPolicy feature.
+// https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
+type NetworkPolicy struct {
+	// The selected network policy provider.
+	Provider NetworkPolicy_Provider `protobuf:"varint,1,opt,name=provider,enum=google.container.v1.NetworkPolicy_Provider" json:"provider,omitempty"`
+	// Whether network policy is enabled on the cluster.
+	Enabled bool `protobuf:"varint,2,opt,name=enabled" json:"enabled,omitempty"`
+}
+
+func (m *NetworkPolicy) Reset()                    { *m = NetworkPolicy{} }
+func (m *NetworkPolicy) String() string            { return proto.CompactTextString(m) }
+func (*NetworkPolicy) ProtoMessage()               {}
+func (*NetworkPolicy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
+
+func (m *NetworkPolicy) GetProvider() NetworkPolicy_Provider {
+	if m != nil {
+		return m.Provider
+	}
+	return NetworkPolicy_UNKNOWN
+}
+
+func (m *NetworkPolicy) GetEnabled() bool {
+	if m != nil {
+		return m.Enabled
+	}
+	return false
+}
+
+// Configuration for controlling how IPs are allocated in the cluster.
+type IPAllocationPolicy struct {
+	// Whether alias IPs will be used for pod IPs in the cluster.
+	UseIpAliases bool `protobuf:"varint,1,opt,name=use_ip_aliases,json=useIpAliases" json:"use_ip_aliases,omitempty"`
+	// Whether a new subnetwork will be created automatically for the cluster.
+	//
+	// This field is only applicable when `use_ip_aliases` is true.
+	CreateSubnetwork bool `protobuf:"varint,2,opt,name=create_subnetwork,json=createSubnetwork" json:"create_subnetwork,omitempty"`
+	// A custom subnetwork name to be used if `create_subnetwork` is true.  If
+	// this field is empty, then an automatic name will chosen for the new
+	// subnetwork.
+	SubnetworkName string `protobuf:"bytes,3,opt,name=subnetwork_name,json=subnetworkName" json:"subnetwork_name,omitempty"`
+	// The IP address range for the cluster pod IPs. If this field is set, then
+	// `cluster.cluster_ipv4_cidr` must be left blank.
+	//
+	// This field is only applicable when `use_ip_aliases` is true.
+	//
+	// Set to blank to have a range will be chosen with the default size.
+	//
+	// Set to /netmask (e.g. `/14`) to have a range be chosen with a specific
+	// netmask.
+	//
+	// Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+	// notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+	// `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+	// to use.
+	ClusterIpv4Cidr string `protobuf:"bytes,4,opt,name=cluster_ipv4_cidr,json=clusterIpv4Cidr" json:"cluster_ipv4_cidr,omitempty"`
+	// The IP address range of the instance IPs in this cluster.
+	//
+	// This is applicable only if `create_subnetwork` is true.
+	//
+	// Set to blank to have a range will be chosen with the default size.
+	//
+	// Set to /netmask (e.g. `/14`) to have a range be chosen with a specific
+	// netmask.
+	//
+	// Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+	// notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+	// `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+	// to use.
+	NodeIpv4Cidr string `protobuf:"bytes,5,opt,name=node_ipv4_cidr,json=nodeIpv4Cidr" json:"node_ipv4_cidr,omitempty"`
+	// The IP address range of the services IPs in this cluster. If blank, a range
+	// will be automatically chosen with the default size.
+	//
+	// This field is only applicable when `use_ip_aliases` is true.
+	//
+	// Set to blank to have a range will be chosen with the default size.
+	//
+	// Set to /netmask (e.g. `/14`) to have a range be chosen with a specific
+	// netmask.
+	//
+	// Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+	// notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+	// `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+	// to use.
+	ServicesIpv4Cidr string `protobuf:"bytes,6,opt,name=services_ipv4_cidr,json=servicesIpv4Cidr" json:"services_ipv4_cidr,omitempty"`
+}
+
+func (m *IPAllocationPolicy) Reset()                    { *m = IPAllocationPolicy{} }
+func (m *IPAllocationPolicy) String() string            { return proto.CompactTextString(m) }
+func (*IPAllocationPolicy) ProtoMessage()               {}
+func (*IPAllocationPolicy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
+
+func (m *IPAllocationPolicy) GetUseIpAliases() bool {
+	if m != nil {
+		return m.UseIpAliases
+	}
+	return false
+}
+
+func (m *IPAllocationPolicy) GetCreateSubnetwork() bool {
+	if m != nil {
+		return m.CreateSubnetwork
+	}
+	return false
+}
+
+func (m *IPAllocationPolicy) GetSubnetworkName() string {
+	if m != nil {
+		return m.SubnetworkName
+	}
+	return ""
+}
+
+func (m *IPAllocationPolicy) GetClusterIpv4Cidr() string {
+	if m != nil {
+		return m.ClusterIpv4Cidr
+	}
+	return ""
+}
+
+func (m *IPAllocationPolicy) GetNodeIpv4Cidr() string {
+	if m != nil {
+		return m.NodeIpv4Cidr
+	}
+	return ""
+}
+
+func (m *IPAllocationPolicy) GetServicesIpv4Cidr() string {
+	if m != nil {
+		return m.ServicesIpv4Cidr
+	}
+	return ""
+}
+
 // A Google Container Engine cluster.
 type Cluster struct {
 	// The name of this cluster. The name must be unique within this project
@@ -699,6 +904,10 @@ type Cluster struct {
 	LabelFingerprint string `protobuf:"bytes,16,opt,name=label_fingerprint,json=labelFingerprint" json:"label_fingerprint,omitempty"`
 	// Configuration for the legacy ABAC authorization mode.
 	LegacyAbac *LegacyAbac `protobuf:"bytes,18,opt,name=legacy_abac,json=legacyAbac" json:"legacy_abac,omitempty"`
+	// Configuration options for the NetworkPolicy feature.
+	NetworkPolicy *NetworkPolicy `protobuf:"bytes,19,opt,name=network_policy,json=networkPolicy" json:"network_policy,omitempty"`
+	// Configuration for cluster IP allocation.
+	IpAllocationPolicy *IPAllocationPolicy `protobuf:"bytes,20,opt,name=ip_allocation_policy,json=ipAllocationPolicy" json:"ip_allocation_policy,omitempty"`
 	// [Output only] Server-defined URL for the resource.
 	SelfLink string `protobuf:"bytes,100,opt,name=self_link,json=selfLink" json:"self_link,omitempty"`
 	// [Output only] The name of the Google Compute Engine
@@ -755,7 +964,7 @@ type Cluster struct {
 func (m *Cluster) Reset()                    { *m = Cluster{} }
 func (m *Cluster) String() string            { return proto.CompactTextString(m) }
 func (*Cluster) ProtoMessage()               {}
-func (*Cluster) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
+func (*Cluster) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
 
 func (m *Cluster) GetName() string {
 	if m != nil {
@@ -876,6 +1085,20 @@ func (m *Cluster) GetLegacyAbac() *LegacyAbac {
 	return nil
 }
 
+func (m *Cluster) GetNetworkPolicy() *NetworkPolicy {
+	if m != nil {
+		return m.NetworkPolicy
+	}
+	return nil
+}
+
+func (m *Cluster) GetIpAllocationPolicy() *IPAllocationPolicy {
+	if m != nil {
+		return m.IpAllocationPolicy
+	}
+	return nil
+}
+
 func (m *Cluster) GetSelfLink() string {
 	if m != nil {
 		return m.SelfLink
@@ -1020,7 +1243,7 @@ type ClusterUpdate struct {
 func (m *ClusterUpdate) Reset()                    { *m = ClusterUpdate{} }
 func (m *ClusterUpdate) String() string            { return proto.CompactTextString(m) }
 func (*ClusterUpdate) ProtoMessage()               {}
-func (*ClusterUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
+func (*ClusterUpdate) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
 
 func (m *ClusterUpdate) GetDesiredNodeVersion() string {
 	if m != nil {
@@ -1104,7 +1327,7 @@ type Operation struct {
 func (m *Operation) Reset()                    { *m = Operation{} }
 func (m *Operation) String() string            { return proto.CompactTextString(m) }
 func (*Operation) ProtoMessage()               {}
-func (*Operation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
+func (*Operation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
 
 func (m *Operation) GetName() string {
 	if m != nil {
@@ -1179,7 +1402,7 @@ type CreateClusterRequest struct {
 func (m *CreateClusterRequest) Reset()                    { *m = CreateClusterRequest{} }
 func (m *CreateClusterRequest) String() string            { return proto.CompactTextString(m) }
 func (*CreateClusterRequest) ProtoMessage()               {}
-func (*CreateClusterRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
+func (*CreateClusterRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
 
 func (m *CreateClusterRequest) GetProjectId() string {
 	if m != nil {
@@ -1218,7 +1441,7 @@ type GetClusterRequest struct {
 func (m *GetClusterRequest) Reset()                    { *m = GetClusterRequest{} }
 func (m *GetClusterRequest) String() string            { return proto.CompactTextString(m) }
 func (*GetClusterRequest) ProtoMessage()               {}
-func (*GetClusterRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
+func (*GetClusterRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
 
 func (m *GetClusterRequest) GetProjectId() string {
 	if m != nil {
@@ -1259,7 +1482,7 @@ type UpdateClusterRequest struct {
 func (m *UpdateClusterRequest) Reset()                    { *m = UpdateClusterRequest{} }
 func (m *UpdateClusterRequest) String() string            { return proto.CompactTextString(m) }
 func (*UpdateClusterRequest) ProtoMessage()               {}
-func (*UpdateClusterRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
+func (*UpdateClusterRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
 
 func (m *UpdateClusterRequest) GetProjectId() string {
 	if m != nil {
@@ -1289,8 +1512,8 @@ func (m *UpdateClusterRequest) GetUpdate() *ClusterUpdate {
 	return nil
 }
 
-// SetMasterAuthRequest updates the admin password of a cluster.
-type SetMasterAuthRequest struct {
+// UpdateNodePoolRequests update a node pool's image and/or version.
+type UpdateNodePoolRequest struct {
 	// The Google Developers Console [project ID or project
 	// number](https://support.google.com/cloud/answer/6158840).
 	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
@@ -1300,54 +1523,65 @@ type SetMasterAuthRequest struct {
 	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
 	// The name of the cluster to upgrade.
 	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
-	// The exact form of action to be taken on the master auth
-	Action SetMasterAuthRequest_Action `protobuf:"varint,4,opt,name=action,enum=google.container.v1.SetMasterAuthRequest_Action" json:"action,omitempty"`
-	// A description of the update.
-	Update *MasterAuth `protobuf:"bytes,5,opt,name=update" json:"update,omitempty"`
+	// The name of the node pool to upgrade.
+	NodePoolId string `protobuf:"bytes,4,opt,name=node_pool_id,json=nodePoolId" json:"node_pool_id,omitempty"`
+	// The Kubernetes version to change the nodes to (typically an
+	// upgrade). Use `-` to upgrade to the latest version supported by
+	// the server.
+	NodeVersion string `protobuf:"bytes,5,opt,name=node_version,json=nodeVersion" json:"node_version,omitempty"`
+	// The desired image type for the node pool.
+	ImageType string `protobuf:"bytes,6,opt,name=image_type,json=imageType" json:"image_type,omitempty"`
 }
 
-func (m *SetMasterAuthRequest) Reset()                    { *m = SetMasterAuthRequest{} }
-func (m *SetMasterAuthRequest) String() string            { return proto.CompactTextString(m) }
-func (*SetMasterAuthRequest) ProtoMessage()               {}
-func (*SetMasterAuthRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
+func (m *UpdateNodePoolRequest) Reset()                    { *m = UpdateNodePoolRequest{} }
+func (m *UpdateNodePoolRequest) String() string            { return proto.CompactTextString(m) }
+func (*UpdateNodePoolRequest) ProtoMessage()               {}
+func (*UpdateNodePoolRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
 
-func (m *SetMasterAuthRequest) GetProjectId() string {
+func (m *UpdateNodePoolRequest) GetProjectId() string {
 	if m != nil {
 		return m.ProjectId
 	}
 	return ""
 }
 
-func (m *SetMasterAuthRequest) GetZone() string {
+func (m *UpdateNodePoolRequest) GetZone() string {
 	if m != nil {
 		return m.Zone
 	}
 	return ""
 }
 
-func (m *SetMasterAuthRequest) GetClusterId() string {
+func (m *UpdateNodePoolRequest) GetClusterId() string {
 	if m != nil {
 		return m.ClusterId
 	}
 	return ""
 }
 
-func (m *SetMasterAuthRequest) GetAction() SetMasterAuthRequest_Action {
+func (m *UpdateNodePoolRequest) GetNodePoolId() string {
 	if m != nil {
-		return m.Action
+		return m.NodePoolId
 	}
-	return SetMasterAuthRequest_UNKNOWN
+	return ""
 }
 
-func (m *SetMasterAuthRequest) GetUpdate() *MasterAuth {
+func (m *UpdateNodePoolRequest) GetNodeVersion() string {
 	if m != nil {
-		return m.Update
+		return m.NodeVersion
 	}
-	return nil
+	return ""
 }
 
-// DeleteClusterRequest deletes a cluster.
-type DeleteClusterRequest struct {
+func (m *UpdateNodePoolRequest) GetImageType() string {
+	if m != nil {
+		return m.ImageType
+	}
+	return ""
+}
+
+// SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.
+type SetNodePoolAutoscalingRequest struct {
 	// The Google Developers Console [project ID or project
 	// number](https://support.google.com/cloud/answer/6158840).
 	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
@@ -1355,97 +1589,108 @@ type DeleteClusterRequest struct {
 	// [zone](/compute/docs/zones#available) in which the cluster
 	// resides.
 	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
-	// The name of the cluster to delete.
+	// The name of the cluster to upgrade.
 	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
+	// The name of the node pool to upgrade.
+	NodePoolId string `protobuf:"bytes,4,opt,name=node_pool_id,json=nodePoolId" json:"node_pool_id,omitempty"`
+	// Autoscaling configuration for the node pool.
+	Autoscaling *NodePoolAutoscaling `protobuf:"bytes,5,opt,name=autoscaling" json:"autoscaling,omitempty"`
 }
 
-func (m *DeleteClusterRequest) Reset()                    { *m = DeleteClusterRequest{} }
-func (m *DeleteClusterRequest) String() string            { return proto.CompactTextString(m) }
-func (*DeleteClusterRequest) ProtoMessage()               {}
-func (*DeleteClusterRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
+func (m *SetNodePoolAutoscalingRequest) Reset()                    { *m = SetNodePoolAutoscalingRequest{} }
+func (m *SetNodePoolAutoscalingRequest) String() string            { return proto.CompactTextString(m) }
+func (*SetNodePoolAutoscalingRequest) ProtoMessage()               {}
+func (*SetNodePoolAutoscalingRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
 
-func (m *DeleteClusterRequest) GetProjectId() string {
+func (m *SetNodePoolAutoscalingRequest) GetProjectId() string {
 	if m != nil {
 		return m.ProjectId
 	}
 	return ""
 }
 
-func (m *DeleteClusterRequest) GetZone() string {
+func (m *SetNodePoolAutoscalingRequest) GetZone() string {
 	if m != nil {
 		return m.Zone
 	}
 	return ""
 }
 
-func (m *DeleteClusterRequest) GetClusterId() string {
+func (m *SetNodePoolAutoscalingRequest) GetClusterId() string {
 	if m != nil {
 		return m.ClusterId
 	}
 	return ""
 }
 
-// ListClustersRequest lists clusters.
-type ListClustersRequest struct {
+func (m *SetNodePoolAutoscalingRequest) GetNodePoolId() string {
+	if m != nil {
+		return m.NodePoolId
+	}
+	return ""
+}
+
+func (m *SetNodePoolAutoscalingRequest) GetAutoscaling() *NodePoolAutoscaling {
+	if m != nil {
+		return m.Autoscaling
+	}
+	return nil
+}
+
+// SetLoggingServiceRequest sets the logging service of a cluster.
+type SetLoggingServiceRequest struct {
 	// The Google Developers Console [project ID or project
 	// number](https://support.google.com/cloud/answer/6158840).
 	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
 	// The name of the Google Compute Engine
 	// [zone](/compute/docs/zones#available) in which the cluster
-	// resides, or "-" for all zones.
+	// resides.
 	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+	// The name of the cluster to upgrade.
+	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
+	// The logging service the cluster should use to write metrics.
+	// Currently available options:
+	//
+	// * "logging.googleapis.com" - the Google Cloud Logging service
+	// * "none" - no metrics will be exported from the cluster
+	LoggingService string `protobuf:"bytes,4,opt,name=logging_service,json=loggingService" json:"logging_service,omitempty"`
 }
 
-func (m *ListClustersRequest) Reset()                    { *m = ListClustersRequest{} }
-func (m *ListClustersRequest) String() string            { return proto.CompactTextString(m) }
-func (*ListClustersRequest) ProtoMessage()               {}
-func (*ListClustersRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
+func (m *SetLoggingServiceRequest) Reset()                    { *m = SetLoggingServiceRequest{} }
+func (m *SetLoggingServiceRequest) String() string            { return proto.CompactTextString(m) }
+func (*SetLoggingServiceRequest) ProtoMessage()               {}
+func (*SetLoggingServiceRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
 
-func (m *ListClustersRequest) GetProjectId() string {
+func (m *SetLoggingServiceRequest) GetProjectId() string {
 	if m != nil {
 		return m.ProjectId
 	}
 	return ""
 }
 
-func (m *ListClustersRequest) GetZone() string {
+func (m *SetLoggingServiceRequest) GetZone() string {
 	if m != nil {
 		return m.Zone
 	}
 	return ""
 }
 
-// ListClustersResponse is the result of ListClustersRequest.
-type ListClustersResponse struct {
-	// A list of clusters in the project in the specified zone, or
-	// across all ones.
-	Clusters []*Cluster `protobuf:"bytes,1,rep,name=clusters" json:"clusters,omitempty"`
-	// If any zones are listed here, the list of clusters returned
-	// may be missing those zones.
-	MissingZones []string `protobuf:"bytes,2,rep,name=missing_zones,json=missingZones" json:"missing_zones,omitempty"`
-}
-
-func (m *ListClustersResponse) Reset()                    { *m = ListClustersResponse{} }
-func (m *ListClustersResponse) String() string            { return proto.CompactTextString(m) }
-func (*ListClustersResponse) ProtoMessage()               {}
-func (*ListClustersResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
-
-func (m *ListClustersResponse) GetClusters() []*Cluster {
+func (m *SetLoggingServiceRequest) GetClusterId() string {
 	if m != nil {
-		return m.Clusters
+		return m.ClusterId
 	}
-	return nil
+	return ""
 }
 
-func (m *ListClustersResponse) GetMissingZones() []string {
+func (m *SetLoggingServiceRequest) GetLoggingService() string {
 	if m != nil {
-		return m.MissingZones
+		return m.LoggingService
 	}
-	return nil
+	return ""
 }
 
-// GetOperationRequest gets a single operation.
-type GetOperationRequest struct {
+// SetMonitoringServiceRequest sets the monitoring service of a cluster.
+type SetMonitoringServiceRequest struct {
 	// The Google Developers Console [project ID or project
 	// number](https://support.google.com/cloud/answer/6158840).
 	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
@@ -1453,116 +1698,476 @@ type GetOperationRequest struct {
 	// [zone](/compute/docs/zones#available) in which the cluster
 	// resides.
 	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
-	// The server-assigned `name` of the operation.
-	OperationId string `protobuf:"bytes,3,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"`
+	// The name of the cluster to upgrade.
+	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
+	// The monitoring service the cluster should use to write metrics.
+	// Currently available options:
+	//
+	// * "monitoring.googleapis.com" - the Google Cloud Monitoring service
+	// * "none" - no metrics will be exported from the cluster
+	MonitoringService string `protobuf:"bytes,4,opt,name=monitoring_service,json=monitoringService" json:"monitoring_service,omitempty"`
 }
 
-func (m *GetOperationRequest) Reset()                    { *m = GetOperationRequest{} }
-func (m *GetOperationRequest) String() string            { return proto.CompactTextString(m) }
-func (*GetOperationRequest) ProtoMessage()               {}
-func (*GetOperationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
+func (m *SetMonitoringServiceRequest) Reset()                    { *m = SetMonitoringServiceRequest{} }
+func (m *SetMonitoringServiceRequest) String() string            { return proto.CompactTextString(m) }
+func (*SetMonitoringServiceRequest) ProtoMessage()               {}
+func (*SetMonitoringServiceRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
 
-func (m *GetOperationRequest) GetProjectId() string {
+func (m *SetMonitoringServiceRequest) GetProjectId() string {
 	if m != nil {
 		return m.ProjectId
 	}
 	return ""
 }
 
-func (m *GetOperationRequest) GetZone() string {
+func (m *SetMonitoringServiceRequest) GetZone() string {
 	if m != nil {
 		return m.Zone
 	}
 	return ""
 }
 
-func (m *GetOperationRequest) GetOperationId() string {
-	if m != nil {
-		return m.OperationId
-	}
-	return ""
-}
-
-// ListOperationsRequest lists operations.
-type ListOperationsRequest struct {
-	// The Google Developers Console [project ID or project
-	// number](https://support.google.com/cloud/answer/6158840).
-	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
-	// The name of the Google Compute Engine [zone](/compute/docs/zones#available)
-	// to return operations for, or `-` for all zones.
-	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
-}
-
-func (m *ListOperationsRequest) Reset()                    { *m = ListOperationsRequest{} }
-func (m *ListOperationsRequest) String() string            { return proto.CompactTextString(m) }
-func (*ListOperationsRequest) ProtoMessage()               {}
-func (*ListOperationsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
-
-func (m *ListOperationsRequest) GetProjectId() string {
+func (m *SetMonitoringServiceRequest) GetClusterId() string {
 	if m != nil {
-		return m.ProjectId
+		return m.ClusterId
 	}
 	return ""
 }
 
-func (m *ListOperationsRequest) GetZone() string {
+func (m *SetMonitoringServiceRequest) GetMonitoringService() string {
 	if m != nil {
-		return m.Zone
+		return m.MonitoringService
 	}
 	return ""
 }
 
-// CancelOperationRequest cancels a single operation.
-type CancelOperationRequest struct {
+// SetAddonsConfigRequest sets the addons associated with the cluster.
+type SetAddonsConfigRequest struct {
 	// The Google Developers Console [project ID or project
 	// number](https://support.google.com/cloud/answer/6158840).
 	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
 	// The name of the Google Compute Engine
-	// [zone](/compute/docs/zones#available) in which the operation resides.
+	// [zone](/compute/docs/zones#available) in which the cluster
+	// resides.
 	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
-	// The server-assigned `name` of the operation.
-	OperationId string `protobuf:"bytes,3,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"`
+	// The name of the cluster to upgrade.
+	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
+	// The desired configurations for the various addons available to run in the
+	// cluster.
+	AddonsConfig *AddonsConfig `protobuf:"bytes,4,opt,name=addons_config,json=addonsConfig" json:"addons_config,omitempty"`
 }
 
-func (m *CancelOperationRequest) Reset()                    { *m = CancelOperationRequest{} }
-func (m *CancelOperationRequest) String() string            { return proto.CompactTextString(m) }
-func (*CancelOperationRequest) ProtoMessage()               {}
-func (*CancelOperationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
+func (m *SetAddonsConfigRequest) Reset()                    { *m = SetAddonsConfigRequest{} }
+func (m *SetAddonsConfigRequest) String() string            { return proto.CompactTextString(m) }
+func (*SetAddonsConfigRequest) ProtoMessage()               {}
+func (*SetAddonsConfigRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
 
-func (m *CancelOperationRequest) GetProjectId() string {
+func (m *SetAddonsConfigRequest) GetProjectId() string {
 	if m != nil {
 		return m.ProjectId
 	}
 	return ""
 }
 
-func (m *CancelOperationRequest) GetZone() string {
+func (m *SetAddonsConfigRequest) GetZone() string {
 	if m != nil {
 		return m.Zone
 	}
 	return ""
 }
 
-func (m *CancelOperationRequest) GetOperationId() string {
+func (m *SetAddonsConfigRequest) GetClusterId() string {
 	if m != nil {
-		return m.OperationId
+		return m.ClusterId
 	}
 	return ""
 }
 
-// ListOperationsResponse is the result of ListOperationsRequest.
-type ListOperationsResponse struct {
-	// A list of operations in the project in the specified zone.
-	Operations []*Operation `protobuf:"bytes,1,rep,name=operations" json:"operations,omitempty"`
-	// If any zones are listed here, the list of operations returned
-	// may be missing the operations from those zones.
-	MissingZones []string `protobuf:"bytes,2,rep,name=missing_zones,json=missingZones" json:"missing_zones,omitempty"`
-}
+func (m *SetAddonsConfigRequest) GetAddonsConfig() *AddonsConfig {
+	if m != nil {
+		return m.AddonsConfig
+	}
+	return nil
+}
+
+// SetLocationsRequest sets the locations of the cluster.
+type SetLocationsRequest struct {
+	// The Google Developers Console [project ID or project
+	// number](https://support.google.com/cloud/answer/6158840).
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// The name of the Google Compute Engine
+	// [zone](/compute/docs/zones#available) in which the cluster
+	// resides.
+	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+	// The name of the cluster to upgrade.
+	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
+	// The desired list of Google Compute Engine
+	// [locations](/compute/docs/zones#available) in which the cluster's nodes
+	// should be located. Changing the locations a cluster is in will result
+	// in nodes being either created or removed from the cluster, depending on
+	// whether locations are being added or removed.
+	//
+	// This list must always include the cluster's primary zone.
+	Locations []string `protobuf:"bytes,4,rep,name=locations" json:"locations,omitempty"`
+}
+
+func (m *SetLocationsRequest) Reset()                    { *m = SetLocationsRequest{} }
+func (m *SetLocationsRequest) String() string            { return proto.CompactTextString(m) }
+func (*SetLocationsRequest) ProtoMessage()               {}
+func (*SetLocationsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
+
+func (m *SetLocationsRequest) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *SetLocationsRequest) GetZone() string {
+	if m != nil {
+		return m.Zone
+	}
+	return ""
+}
+
+func (m *SetLocationsRequest) GetClusterId() string {
+	if m != nil {
+		return m.ClusterId
+	}
+	return ""
+}
+
+func (m *SetLocationsRequest) GetLocations() []string {
+	if m != nil {
+		return m.Locations
+	}
+	return nil
+}
+
+// UpdateMasterRequest updates the master of the cluster.
+type UpdateMasterRequest struct {
+	// The Google Developers Console [project ID or project
+	// number](https://support.google.com/cloud/answer/6158840).
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// The name of the Google Compute Engine
+	// [zone](/compute/docs/zones#available) in which the cluster
+	// resides.
+	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+	// The name of the cluster to upgrade.
+	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
+	// The Kubernetes version to change the master to. The only valid value is the
+	// latest supported version. Use "-" to have the server automatically select
+	// the latest version.
+	MasterVersion string `protobuf:"bytes,4,opt,name=master_version,json=masterVersion" json:"master_version,omitempty"`
+}
+
+func (m *UpdateMasterRequest) Reset()                    { *m = UpdateMasterRequest{} }
+func (m *UpdateMasterRequest) String() string            { return proto.CompactTextString(m) }
+func (*UpdateMasterRequest) ProtoMessage()               {}
+func (*UpdateMasterRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
+
+func (m *UpdateMasterRequest) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *UpdateMasterRequest) GetZone() string {
+	if m != nil {
+		return m.Zone
+	}
+	return ""
+}
+
+func (m *UpdateMasterRequest) GetClusterId() string {
+	if m != nil {
+		return m.ClusterId
+	}
+	return ""
+}
+
+func (m *UpdateMasterRequest) GetMasterVersion() string {
+	if m != nil {
+		return m.MasterVersion
+	}
+	return ""
+}
+
+// SetMasterAuthRequest updates the admin password of a cluster.
+type SetMasterAuthRequest struct {
+	// The Google Developers Console [project ID or project
+	// number](https://support.google.com/cloud/answer/6158840).
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// The name of the Google Compute Engine
+	// [zone](/compute/docs/zones#available) in which the cluster
+	// resides.
+	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+	// The name of the cluster to upgrade.
+	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
+	// The exact form of action to be taken on the master auth
+	Action SetMasterAuthRequest_Action `protobuf:"varint,4,opt,name=action,enum=google.container.v1.SetMasterAuthRequest_Action" json:"action,omitempty"`
+	// A description of the update.
+	Update *MasterAuth `protobuf:"bytes,5,opt,name=update" json:"update,omitempty"`
+}
+
+func (m *SetMasterAuthRequest) Reset()                    { *m = SetMasterAuthRequest{} }
+func (m *SetMasterAuthRequest) String() string            { return proto.CompactTextString(m) }
+func (*SetMasterAuthRequest) ProtoMessage()               {}
+func (*SetMasterAuthRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
+
+func (m *SetMasterAuthRequest) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *SetMasterAuthRequest) GetZone() string {
+	if m != nil {
+		return m.Zone
+	}
+	return ""
+}
+
+func (m *SetMasterAuthRequest) GetClusterId() string {
+	if m != nil {
+		return m.ClusterId
+	}
+	return ""
+}
+
+func (m *SetMasterAuthRequest) GetAction() SetMasterAuthRequest_Action {
+	if m != nil {
+		return m.Action
+	}
+	return SetMasterAuthRequest_UNKNOWN
+}
+
+func (m *SetMasterAuthRequest) GetUpdate() *MasterAuth {
+	if m != nil {
+		return m.Update
+	}
+	return nil
+}
+
+// DeleteClusterRequest deletes a cluster.
+type DeleteClusterRequest struct {
+	// The Google Developers Console [project ID or project
+	// number](https://support.google.com/cloud/answer/6158840).
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// The name of the Google Compute Engine
+	// [zone](/compute/docs/zones#available) in which the cluster
+	// resides.
+	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+	// The name of the cluster to delete.
+	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
+}
+
+func (m *DeleteClusterRequest) Reset()                    { *m = DeleteClusterRequest{} }
+func (m *DeleteClusterRequest) String() string            { return proto.CompactTextString(m) }
+func (*DeleteClusterRequest) ProtoMessage()               {}
+func (*DeleteClusterRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
+
+func (m *DeleteClusterRequest) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *DeleteClusterRequest) GetZone() string {
+	if m != nil {
+		return m.Zone
+	}
+	return ""
+}
+
+func (m *DeleteClusterRequest) GetClusterId() string {
+	if m != nil {
+		return m.ClusterId
+	}
+	return ""
+}
+
+// ListClustersRequest lists clusters.
+type ListClustersRequest struct {
+	// The Google Developers Console [project ID or project
+	// number](https://support.google.com/cloud/answer/6158840).
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// The name of the Google Compute Engine
+	// [zone](/compute/docs/zones#available) in which the cluster
+	// resides, or "-" for all zones.
+	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+}
+
+func (m *ListClustersRequest) Reset()                    { *m = ListClustersRequest{} }
+func (m *ListClustersRequest) String() string            { return proto.CompactTextString(m) }
+func (*ListClustersRequest) ProtoMessage()               {}
+func (*ListClustersRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} }
+
+func (m *ListClustersRequest) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *ListClustersRequest) GetZone() string {
+	if m != nil {
+		return m.Zone
+	}
+	return ""
+}
+
+// ListClustersResponse is the result of ListClustersRequest.
+type ListClustersResponse struct {
+	// A list of clusters in the project in the specified zone, or
+	// across all ones.
+	Clusters []*Cluster `protobuf:"bytes,1,rep,name=clusters" json:"clusters,omitempty"`
+	// If any zones are listed here, the list of clusters returned
+	// may be missing those zones.
+	MissingZones []string `protobuf:"bytes,2,rep,name=missing_zones,json=missingZones" json:"missing_zones,omitempty"`
+}
+
+func (m *ListClustersResponse) Reset()                    { *m = ListClustersResponse{} }
+func (m *ListClustersResponse) String() string            { return proto.CompactTextString(m) }
+func (*ListClustersResponse) ProtoMessage()               {}
+func (*ListClustersResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} }
+
+func (m *ListClustersResponse) GetClusters() []*Cluster {
+	if m != nil {
+		return m.Clusters
+	}
+	return nil
+}
+
+func (m *ListClustersResponse) GetMissingZones() []string {
+	if m != nil {
+		return m.MissingZones
+	}
+	return nil
+}
+
+// GetOperationRequest gets a single operation.
+type GetOperationRequest struct {
+	// The Google Developers Console [project ID or project
+	// number](https://support.google.com/cloud/answer/6158840).
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// The name of the Google Compute Engine
+	// [zone](/compute/docs/zones#available) in which the cluster
+	// resides.
+	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+	// The server-assigned `name` of the operation.
+	OperationId string `protobuf:"bytes,3,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"`
+}
+
+func (m *GetOperationRequest) Reset()                    { *m = GetOperationRequest{} }
+func (m *GetOperationRequest) String() string            { return proto.CompactTextString(m) }
+func (*GetOperationRequest) ProtoMessage()               {}
+func (*GetOperationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} }
+
+func (m *GetOperationRequest) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *GetOperationRequest) GetZone() string {
+	if m != nil {
+		return m.Zone
+	}
+	return ""
+}
+
+func (m *GetOperationRequest) GetOperationId() string {
+	if m != nil {
+		return m.OperationId
+	}
+	return ""
+}
+
+// ListOperationsRequest lists operations.
+type ListOperationsRequest struct {
+	// The Google Developers Console [project ID or project
+	// number](https://support.google.com/cloud/answer/6158840).
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// The name of the Google Compute Engine [zone](/compute/docs/zones#available)
+	// to return operations for, or `-` for all zones.
+	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+}
+
+func (m *ListOperationsRequest) Reset()                    { *m = ListOperationsRequest{} }
+func (m *ListOperationsRequest) String() string            { return proto.CompactTextString(m) }
+func (*ListOperationsRequest) ProtoMessage()               {}
+func (*ListOperationsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{27} }
+
+func (m *ListOperationsRequest) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *ListOperationsRequest) GetZone() string {
+	if m != nil {
+		return m.Zone
+	}
+	return ""
+}
+
+// CancelOperationRequest cancels a single operation.
+type CancelOperationRequest struct {
+	// The Google Developers Console [project ID or project
+	// number](https://support.google.com/cloud/answer/6158840).
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// The name of the Google Compute Engine
+	// [zone](/compute/docs/zones#available) in which the operation resides.
+	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+	// The server-assigned `name` of the operation.
+	OperationId string `protobuf:"bytes,3,opt,name=operation_id,json=operationId" json:"operation_id,omitempty"`
+}
+
+func (m *CancelOperationRequest) Reset()                    { *m = CancelOperationRequest{} }
+func (m *CancelOperationRequest) String() string            { return proto.CompactTextString(m) }
+func (*CancelOperationRequest) ProtoMessage()               {}
+func (*CancelOperationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{28} }
+
+func (m *CancelOperationRequest) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *CancelOperationRequest) GetZone() string {
+	if m != nil {
+		return m.Zone
+	}
+	return ""
+}
+
+func (m *CancelOperationRequest) GetOperationId() string {
+	if m != nil {
+		return m.OperationId
+	}
+	return ""
+}
+
+// ListOperationsResponse is the result of ListOperationsRequest.
+type ListOperationsResponse struct {
+	// A list of operations in the project in the specified zone.
+	Operations []*Operation `protobuf:"bytes,1,rep,name=operations" json:"operations,omitempty"`
+	// If any zones are listed here, the list of operations returned
+	// may be missing the operations from those zones.
+	MissingZones []string `protobuf:"bytes,2,rep,name=missing_zones,json=missingZones" json:"missing_zones,omitempty"`
+}
 
 func (m *ListOperationsResponse) Reset()                    { *m = ListOperationsResponse{} }
 func (m *ListOperationsResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListOperationsResponse) ProtoMessage()               {}
-func (*ListOperationsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
+func (*ListOperationsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{29} }
 
 func (m *ListOperationsResponse) GetOperations() []*Operation {
 	if m != nil {
@@ -1591,7 +2196,7 @@ type GetServerConfigRequest struct {
 func (m *GetServerConfigRequest) Reset()                    { *m = GetServerConfigRequest{} }
 func (m *GetServerConfigRequest) String() string            { return proto.CompactTextString(m) }
 func (*GetServerConfigRequest) ProtoMessage()               {}
-func (*GetServerConfigRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
+func (*GetServerConfigRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{30} }
 
 func (m *GetServerConfigRequest) GetProjectId() string {
 	if m != nil {
@@ -1624,7 +2229,7 @@ type ServerConfig struct {
 func (m *ServerConfig) Reset()                    { *m = ServerConfig{} }
 func (m *ServerConfig) String() string            { return proto.CompactTextString(m) }
 func (*ServerConfig) ProtoMessage()               {}
-func (*ServerConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
+func (*ServerConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{31} }
 
 func (m *ServerConfig) GetDefaultClusterVersion() string {
 	if m != nil {
@@ -1679,7 +2284,7 @@ type CreateNodePoolRequest struct {
 func (m *CreateNodePoolRequest) Reset()                    { *m = CreateNodePoolRequest{} }
 func (m *CreateNodePoolRequest) String() string            { return proto.CompactTextString(m) }
 func (*CreateNodePoolRequest) ProtoMessage()               {}
-func (*CreateNodePoolRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
+func (*CreateNodePoolRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{32} }
 
 func (m *CreateNodePoolRequest) GetProjectId() string {
 	if m != nil {
@@ -1727,7 +2332,7 @@ type DeleteNodePoolRequest struct {
 func (m *DeleteNodePoolRequest) Reset()                    { *m = DeleteNodePoolRequest{} }
 func (m *DeleteNodePoolRequest) String() string            { return proto.CompactTextString(m) }
 func (*DeleteNodePoolRequest) ProtoMessage()               {}
-func (*DeleteNodePoolRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
+func (*DeleteNodePoolRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{33} }
 
 func (m *DeleteNodePoolRequest) GetProjectId() string {
 	if m != nil {
@@ -1773,7 +2378,7 @@ type ListNodePoolsRequest struct {
 func (m *ListNodePoolsRequest) Reset()                    { *m = ListNodePoolsRequest{} }
 func (m *ListNodePoolsRequest) String() string            { return proto.CompactTextString(m) }
 func (*ListNodePoolsRequest) ProtoMessage()               {}
-func (*ListNodePoolsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} }
+func (*ListNodePoolsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{34} }
 
 func (m *ListNodePoolsRequest) GetProjectId() string {
 	if m != nil {
@@ -1814,7 +2419,7 @@ type GetNodePoolRequest struct {
 func (m *GetNodePoolRequest) Reset()                    { *m = GetNodePoolRequest{} }
 func (m *GetNodePoolRequest) String() string            { return proto.CompactTextString(m) }
 func (*GetNodePoolRequest) ProtoMessage()               {}
-func (*GetNodePoolRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} }
+func (*GetNodePoolRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{35} }
 
 func (m *GetNodePoolRequest) GetProjectId() string {
 	if m != nil {
@@ -1883,7 +2488,7 @@ type NodePool struct {
 func (m *NodePool) Reset()                    { *m = NodePool{} }
 func (m *NodePool) String() string            { return proto.CompactTextString(m) }
 func (*NodePool) ProtoMessage()               {}
-func (*NodePool) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} }
+func (*NodePool) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{36} }
 
 func (m *NodePool) GetName() string {
 	if m != nil {
@@ -1974,7 +2579,7 @@ type NodeManagement struct {
 func (m *NodeManagement) Reset()                    { *m = NodeManagement{} }
 func (m *NodeManagement) String() string            { return proto.CompactTextString(m) }
 func (*NodeManagement) ProtoMessage()               {}
-func (*NodeManagement) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{27} }
+func (*NodeManagement) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{37} }
 
 func (m *NodeManagement) GetAutoUpgrade() bool {
 	if m != nil {
@@ -2012,25 +2617,83 @@ type AutoUpgradeOptions struct {
 func (m *AutoUpgradeOptions) Reset()                    { *m = AutoUpgradeOptions{} }
 func (m *AutoUpgradeOptions) String() string            { return proto.CompactTextString(m) }
 func (*AutoUpgradeOptions) ProtoMessage()               {}
-func (*AutoUpgradeOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{28} }
+func (*AutoUpgradeOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{38} }
 
 func (m *AutoUpgradeOptions) GetAutoUpgradeStartTime() string {
 	if m != nil {
-		return m.AutoUpgradeStartTime
+		return m.AutoUpgradeStartTime
+	}
+	return ""
+}
+
+func (m *AutoUpgradeOptions) GetDescription() string {
+	if m != nil {
+		return m.Description
+	}
+	return ""
+}
+
+// SetNodePoolManagementRequest sets the node management properties of a node
+// pool.
+type SetNodePoolManagementRequest struct {
+	// The Google Developers Console [project ID or project
+	// number](https://support.google.com/cloud/answer/6158840).
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// The name of the Google Compute Engine
+	// [zone](/compute/docs/zones#available) in which the cluster
+	// resides.
+	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+	// The name of the cluster to update.
+	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
+	// The name of the node pool to update.
+	NodePoolId string `protobuf:"bytes,4,opt,name=node_pool_id,json=nodePoolId" json:"node_pool_id,omitempty"`
+	// NodeManagement configuration for the node pool.
+	Management *NodeManagement `protobuf:"bytes,5,opt,name=management" json:"management,omitempty"`
+}
+
+func (m *SetNodePoolManagementRequest) Reset()                    { *m = SetNodePoolManagementRequest{} }
+func (m *SetNodePoolManagementRequest) String() string            { return proto.CompactTextString(m) }
+func (*SetNodePoolManagementRequest) ProtoMessage()               {}
+func (*SetNodePoolManagementRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{39} }
+
+func (m *SetNodePoolManagementRequest) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *SetNodePoolManagementRequest) GetZone() string {
+	if m != nil {
+		return m.Zone
+	}
+	return ""
+}
+
+func (m *SetNodePoolManagementRequest) GetClusterId() string {
+	if m != nil {
+		return m.ClusterId
+	}
+	return ""
+}
+
+func (m *SetNodePoolManagementRequest) GetNodePoolId() string {
+	if m != nil {
+		return m.NodePoolId
 	}
 	return ""
 }
 
-func (m *AutoUpgradeOptions) GetDescription() string {
+func (m *SetNodePoolManagementRequest) GetManagement() *NodeManagement {
 	if m != nil {
-		return m.Description
+		return m.Management
 	}
-	return ""
+	return nil
 }
 
-// SetNodePoolManagementRequest sets the node management properties of a node
+// SetNodePoolSizeRequest sets the size a node
 // pool.
-type SetNodePoolManagementRequest struct {
+type SetNodePoolSizeRequest struct {
 	// The Google Developers Console [project ID or project
 	// number](https://support.google.com/cloud/answer/6158840).
 	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
@@ -2042,48 +2705,48 @@ type SetNodePoolManagementRequest struct {
 	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
 	// The name of the node pool to update.
 	NodePoolId string `protobuf:"bytes,4,opt,name=node_pool_id,json=nodePoolId" json:"node_pool_id,omitempty"`
-	// NodeManagement configuration for the node pool.
-	Management *NodeManagement `protobuf:"bytes,5,opt,name=management" json:"management,omitempty"`
+	// The desired node count for the pool.
+	NodeCount int32 `protobuf:"varint,5,opt,name=node_count,json=nodeCount" json:"node_count,omitempty"`
 }
 
-func (m *SetNodePoolManagementRequest) Reset()                    { *m = SetNodePoolManagementRequest{} }
-func (m *SetNodePoolManagementRequest) String() string            { return proto.CompactTextString(m) }
-func (*SetNodePoolManagementRequest) ProtoMessage()               {}
-func (*SetNodePoolManagementRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{29} }
+func (m *SetNodePoolSizeRequest) Reset()                    { *m = SetNodePoolSizeRequest{} }
+func (m *SetNodePoolSizeRequest) String() string            { return proto.CompactTextString(m) }
+func (*SetNodePoolSizeRequest) ProtoMessage()               {}
+func (*SetNodePoolSizeRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{40} }
 
-func (m *SetNodePoolManagementRequest) GetProjectId() string {
+func (m *SetNodePoolSizeRequest) GetProjectId() string {
 	if m != nil {
 		return m.ProjectId
 	}
 	return ""
 }
 
-func (m *SetNodePoolManagementRequest) GetZone() string {
+func (m *SetNodePoolSizeRequest) GetZone() string {
 	if m != nil {
 		return m.Zone
 	}
 	return ""
 }
 
-func (m *SetNodePoolManagementRequest) GetClusterId() string {
+func (m *SetNodePoolSizeRequest) GetClusterId() string {
 	if m != nil {
 		return m.ClusterId
 	}
 	return ""
 }
 
-func (m *SetNodePoolManagementRequest) GetNodePoolId() string {
+func (m *SetNodePoolSizeRequest) GetNodePoolId() string {
 	if m != nil {
 		return m.NodePoolId
 	}
 	return ""
 }
 
-func (m *SetNodePoolManagementRequest) GetManagement() *NodeManagement {
+func (m *SetNodePoolSizeRequest) GetNodeCount() int32 {
 	if m != nil {
-		return m.Management
+		return m.NodeCount
 	}
-	return nil
+	return 0
 }
 
 // RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
@@ -2106,7 +2769,7 @@ type RollbackNodePoolUpgradeRequest struct {
 func (m *RollbackNodePoolUpgradeRequest) Reset()                    { *m = RollbackNodePoolUpgradeRequest{} }
 func (m *RollbackNodePoolUpgradeRequest) String() string            { return proto.CompactTextString(m) }
 func (*RollbackNodePoolUpgradeRequest) ProtoMessage()               {}
-func (*RollbackNodePoolUpgradeRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{30} }
+func (*RollbackNodePoolUpgradeRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{41} }
 
 func (m *RollbackNodePoolUpgradeRequest) GetProjectId() string {
 	if m != nil {
@@ -2145,7 +2808,7 @@ type ListNodePoolsResponse struct {
 func (m *ListNodePoolsResponse) Reset()                    { *m = ListNodePoolsResponse{} }
 func (m *ListNodePoolsResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListNodePoolsResponse) ProtoMessage()               {}
-func (*ListNodePoolsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{31} }
+func (*ListNodePoolsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{42} }
 
 func (m *ListNodePoolsResponse) GetNodePools() []*NodePool {
 	if m != nil {
@@ -2170,7 +2833,7 @@ type NodePoolAutoscaling struct {
 func (m *NodePoolAutoscaling) Reset()                    { *m = NodePoolAutoscaling{} }
 func (m *NodePoolAutoscaling) String() string            { return proto.CompactTextString(m) }
 func (*NodePoolAutoscaling) ProtoMessage()               {}
-func (*NodePoolAutoscaling) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{32} }
+func (*NodePoolAutoscaling) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{43} }
 
 func (m *NodePoolAutoscaling) GetEnabled() bool {
 	if m != nil {
@@ -2220,7 +2883,7 @@ type SetLabelsRequest struct {
 func (m *SetLabelsRequest) Reset()                    { *m = SetLabelsRequest{} }
 func (m *SetLabelsRequest) String() string            { return proto.CompactTextString(m) }
 func (*SetLabelsRequest) ProtoMessage()               {}
-func (*SetLabelsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{33} }
+func (*SetLabelsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{44} }
 
 func (m *SetLabelsRequest) GetProjectId() string {
 	if m != nil {
@@ -2276,7 +2939,7 @@ type SetLegacyAbacRequest struct {
 func (m *SetLegacyAbacRequest) Reset()                    { *m = SetLegacyAbacRequest{} }
 func (m *SetLegacyAbacRequest) String() string            { return proto.CompactTextString(m) }
 func (*SetLegacyAbacRequest) ProtoMessage()               {}
-func (*SetLegacyAbacRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{34} }
+func (*SetLegacyAbacRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{45} }
 
 func (m *SetLegacyAbacRequest) GetProjectId() string {
 	if m != nil {
@@ -2323,7 +2986,7 @@ type StartIPRotationRequest struct {
 func (m *StartIPRotationRequest) Reset()                    { *m = StartIPRotationRequest{} }
 func (m *StartIPRotationRequest) String() string            { return proto.CompactTextString(m) }
 func (*StartIPRotationRequest) ProtoMessage()               {}
-func (*StartIPRotationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{35} }
+func (*StartIPRotationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{46} }
 
 func (m *StartIPRotationRequest) GetProjectId() string {
 	if m != nil {
@@ -2362,7 +3025,7 @@ type CompleteIPRotationRequest struct {
 func (m *CompleteIPRotationRequest) Reset()                    { *m = CompleteIPRotationRequest{} }
 func (m *CompleteIPRotationRequest) String() string            { return proto.CompactTextString(m) }
 func (*CompleteIPRotationRequest) ProtoMessage()               {}
-func (*CompleteIPRotationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{36} }
+func (*CompleteIPRotationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{47} }
 
 func (m *CompleteIPRotationRequest) GetProjectId() string {
 	if m != nil {
@@ -2385,19 +3048,77 @@ func (m *CompleteIPRotationRequest) GetClusterId() string {
 	return ""
 }
 
+// SetNetworkPolicyRequest enables/disables network policy for a cluster.
+type SetNetworkPolicyRequest struct {
+	// The Google Developers Console [project ID or project
+	// number](https://developers.google.com/console/help/new/#projectnumber).
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// The name of the Google Compute Engine
+	// [zone](/compute/docs/zones#available) in which the cluster
+	// resides.
+	Zone string `protobuf:"bytes,2,opt,name=zone" json:"zone,omitempty"`
+	// The name of the cluster.
+	ClusterId string `protobuf:"bytes,3,opt,name=cluster_id,json=clusterId" json:"cluster_id,omitempty"`
+	// Configuration options for the NetworkPolicy feature.
+	NetworkPolicy *NetworkPolicy `protobuf:"bytes,4,opt,name=network_policy,json=networkPolicy" json:"network_policy,omitempty"`
+}
+
+func (m *SetNetworkPolicyRequest) Reset()                    { *m = SetNetworkPolicyRequest{} }
+func (m *SetNetworkPolicyRequest) String() string            { return proto.CompactTextString(m) }
+func (*SetNetworkPolicyRequest) ProtoMessage()               {}
+func (*SetNetworkPolicyRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{48} }
+
+func (m *SetNetworkPolicyRequest) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *SetNetworkPolicyRequest) GetZone() string {
+	if m != nil {
+		return m.Zone
+	}
+	return ""
+}
+
+func (m *SetNetworkPolicyRequest) GetClusterId() string {
+	if m != nil {
+		return m.ClusterId
+	}
+	return ""
+}
+
+func (m *SetNetworkPolicyRequest) GetNetworkPolicy() *NetworkPolicy {
+	if m != nil {
+		return m.NetworkPolicy
+	}
+	return nil
+}
+
 func init() {
 	proto.RegisterType((*NodeConfig)(nil), "google.container.v1.NodeConfig")
 	proto.RegisterType((*MasterAuth)(nil), "google.container.v1.MasterAuth")
+	proto.RegisterType((*ClientCertificateConfig)(nil), "google.container.v1.ClientCertificateConfig")
 	proto.RegisterType((*AddonsConfig)(nil), "google.container.v1.AddonsConfig")
 	proto.RegisterType((*HttpLoadBalancing)(nil), "google.container.v1.HttpLoadBalancing")
 	proto.RegisterType((*HorizontalPodAutoscaling)(nil), "google.container.v1.HorizontalPodAutoscaling")
 	proto.RegisterType((*LegacyAbac)(nil), "google.container.v1.LegacyAbac")
+	proto.RegisterType((*NetworkPolicy)(nil), "google.container.v1.NetworkPolicy")
+	proto.RegisterType((*IPAllocationPolicy)(nil), "google.container.v1.IPAllocationPolicy")
 	proto.RegisterType((*Cluster)(nil), "google.container.v1.Cluster")
 	proto.RegisterType((*ClusterUpdate)(nil), "google.container.v1.ClusterUpdate")
 	proto.RegisterType((*Operation)(nil), "google.container.v1.Operation")
 	proto.RegisterType((*CreateClusterRequest)(nil), "google.container.v1.CreateClusterRequest")
 	proto.RegisterType((*GetClusterRequest)(nil), "google.container.v1.GetClusterRequest")
 	proto.RegisterType((*UpdateClusterRequest)(nil), "google.container.v1.UpdateClusterRequest")
+	proto.RegisterType((*UpdateNodePoolRequest)(nil), "google.container.v1.UpdateNodePoolRequest")
+	proto.RegisterType((*SetNodePoolAutoscalingRequest)(nil), "google.container.v1.SetNodePoolAutoscalingRequest")
+	proto.RegisterType((*SetLoggingServiceRequest)(nil), "google.container.v1.SetLoggingServiceRequest")
+	proto.RegisterType((*SetMonitoringServiceRequest)(nil), "google.container.v1.SetMonitoringServiceRequest")
+	proto.RegisterType((*SetAddonsConfigRequest)(nil), "google.container.v1.SetAddonsConfigRequest")
+	proto.RegisterType((*SetLocationsRequest)(nil), "google.container.v1.SetLocationsRequest")
+	proto.RegisterType((*UpdateMasterRequest)(nil), "google.container.v1.UpdateMasterRequest")
 	proto.RegisterType((*SetMasterAuthRequest)(nil), "google.container.v1.SetMasterAuthRequest")
 	proto.RegisterType((*DeleteClusterRequest)(nil), "google.container.v1.DeleteClusterRequest")
 	proto.RegisterType((*ListClustersRequest)(nil), "google.container.v1.ListClustersRequest")
@@ -2416,6 +3137,7 @@ func init() {
 	proto.RegisterType((*NodeManagement)(nil), "google.container.v1.NodeManagement")
 	proto.RegisterType((*AutoUpgradeOptions)(nil), "google.container.v1.AutoUpgradeOptions")
 	proto.RegisterType((*SetNodePoolManagementRequest)(nil), "google.container.v1.SetNodePoolManagementRequest")
+	proto.RegisterType((*SetNodePoolSizeRequest)(nil), "google.container.v1.SetNodePoolSizeRequest")
 	proto.RegisterType((*RollbackNodePoolUpgradeRequest)(nil), "google.container.v1.RollbackNodePoolUpgradeRequest")
 	proto.RegisterType((*ListNodePoolsResponse)(nil), "google.container.v1.ListNodePoolsResponse")
 	proto.RegisterType((*NodePoolAutoscaling)(nil), "google.container.v1.NodePoolAutoscaling")
@@ -2423,6 +3145,8 @@ func init() {
 	proto.RegisterType((*SetLegacyAbacRequest)(nil), "google.container.v1.SetLegacyAbacRequest")
 	proto.RegisterType((*StartIPRotationRequest)(nil), "google.container.v1.StartIPRotationRequest")
 	proto.RegisterType((*CompleteIPRotationRequest)(nil), "google.container.v1.CompleteIPRotationRequest")
+	proto.RegisterType((*SetNetworkPolicyRequest)(nil), "google.container.v1.SetNetworkPolicyRequest")
+	proto.RegisterEnum("google.container.v1.NetworkPolicy_Provider", NetworkPolicy_Provider_name, NetworkPolicy_Provider_value)
 	proto.RegisterEnum("google.container.v1.Cluster_Status", Cluster_Status_name, Cluster_Status_value)
 	proto.RegisterEnum("google.container.v1.Operation_Status", Operation_Status_name, Operation_Status_value)
 	proto.RegisterEnum("google.container.v1.Operation_Type", Operation_Type_name, Operation_Type_value)
@@ -2462,6 +3186,20 @@ type ClusterManagerClient interface {
 	CreateCluster(ctx context.Context, in *CreateClusterRequest, opts ...grpc.CallOption) (*Operation, error)
 	// Updates the settings of a specific cluster.
 	UpdateCluster(ctx context.Context, in *UpdateClusterRequest, opts ...grpc.CallOption) (*Operation, error)
+	// Updates the version and/or image type of a specific node pool.
+	UpdateNodePool(ctx context.Context, in *UpdateNodePoolRequest, opts ...grpc.CallOption) (*Operation, error)
+	// Sets the autoscaling settings of a specific node pool.
+	SetNodePoolAutoscaling(ctx context.Context, in *SetNodePoolAutoscalingRequest, opts ...grpc.CallOption) (*Operation, error)
+	// Sets the logging service of a specific cluster.
+	SetLoggingService(ctx context.Context, in *SetLoggingServiceRequest, opts ...grpc.CallOption) (*Operation, error)
+	// Sets the monitoring service of a specific cluster.
+	SetMonitoringService(ctx context.Context, in *SetMonitoringServiceRequest, opts ...grpc.CallOption) (*Operation, error)
+	// Sets the addons of a specific cluster.
+	SetAddonsConfig(ctx context.Context, in *SetAddonsConfigRequest, opts ...grpc.CallOption) (*Operation, error)
+	// Sets the locations of a specific cluster.
+	SetLocations(ctx context.Context, in *SetLocationsRequest, opts ...grpc.CallOption) (*Operation, error)
+	// Updates the master of a specific cluster.
+	UpdateMaster(ctx context.Context, in *UpdateMasterRequest, opts ...grpc.CallOption) (*Operation, error)
 	// Used to set master auth materials. Currently supports :-
 	// Changing the admin password of a specific cluster.
 	// This can be either via password generation or explicitly set the password.
@@ -2505,6 +3243,10 @@ type ClusterManagerClient interface {
 	StartIPRotation(ctx context.Context, in *StartIPRotationRequest, opts ...grpc.CallOption) (*Operation, error)
 	// Completes master IP rotation.
 	CompleteIPRotation(ctx context.Context, in *CompleteIPRotationRequest, opts ...grpc.CallOption) (*Operation, error)
+	// Sets the size of a specific node pool.
+	SetNodePoolSize(ctx context.Context, in *SetNodePoolSizeRequest, opts ...grpc.CallOption) (*Operation, error)
+	// Enables/Disables Network Policy for a cluster.
+	SetNetworkPolicy(ctx context.Context, in *SetNetworkPolicyRequest, opts ...grpc.CallOption) (*Operation, error)
 }
 
 type clusterManagerClient struct {
@@ -2551,6 +3293,69 @@ func (c *clusterManagerClient) UpdateCluster(ctx context.Context, in *UpdateClus
 	return out, nil
 }
 
+func (c *clusterManagerClient) UpdateNodePool(ctx context.Context, in *UpdateNodePoolRequest, opts ...grpc.CallOption) (*Operation, error) {
+	out := new(Operation)
+	err := grpc.Invoke(ctx, "/google.container.v1.ClusterManager/UpdateNodePool", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *clusterManagerClient) SetNodePoolAutoscaling(ctx context.Context, in *SetNodePoolAutoscalingRequest, opts ...grpc.CallOption) (*Operation, error) {
+	out := new(Operation)
+	err := grpc.Invoke(ctx, "/google.container.v1.ClusterManager/SetNodePoolAutoscaling", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *clusterManagerClient) SetLoggingService(ctx context.Context, in *SetLoggingServiceRequest, opts ...grpc.CallOption) (*Operation, error) {
+	out := new(Operation)
+	err := grpc.Invoke(ctx, "/google.container.v1.ClusterManager/SetLoggingService", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *clusterManagerClient) SetMonitoringService(ctx context.Context, in *SetMonitoringServiceRequest, opts ...grpc.CallOption) (*Operation, error) {
+	out := new(Operation)
+	err := grpc.Invoke(ctx, "/google.container.v1.ClusterManager/SetMonitoringService", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *clusterManagerClient) SetAddonsConfig(ctx context.Context, in *SetAddonsConfigRequest, opts ...grpc.CallOption) (*Operation, error) {
+	out := new(Operation)
+	err := grpc.Invoke(ctx, "/google.container.v1.ClusterManager/SetAddonsConfig", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *clusterManagerClient) SetLocations(ctx context.Context, in *SetLocationsRequest, opts ...grpc.CallOption) (*Operation, error) {
+	out := new(Operation)
+	err := grpc.Invoke(ctx, "/google.container.v1.ClusterManager/SetLocations", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *clusterManagerClient) UpdateMaster(ctx context.Context, in *UpdateMasterRequest, opts ...grpc.CallOption) (*Operation, error) {
+	out := new(Operation)
+	err := grpc.Invoke(ctx, "/google.container.v1.ClusterManager/UpdateMaster", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 func (c *clusterManagerClient) SetMasterAuth(ctx context.Context, in *SetMasterAuthRequest, opts ...grpc.CallOption) (*Operation, error) {
 	out := new(Operation)
 	err := grpc.Invoke(ctx, "/google.container.v1.ClusterManager/SetMasterAuth", in, out, c.cc, opts...)
@@ -2695,6 +3500,24 @@ func (c *clusterManagerClient) CompleteIPRotation(ctx context.Context, in *Compl
 	return out, nil
 }
 
+func (c *clusterManagerClient) SetNodePoolSize(ctx context.Context, in *SetNodePoolSizeRequest, opts ...grpc.CallOption) (*Operation, error) {
+	out := new(Operation)
+	err := grpc.Invoke(ctx, "/google.container.v1.ClusterManager/SetNodePoolSize", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *clusterManagerClient) SetNetworkPolicy(ctx context.Context, in *SetNetworkPolicyRequest, opts ...grpc.CallOption) (*Operation, error) {
+	out := new(Operation)
+	err := grpc.Invoke(ctx, "/google.container.v1.ClusterManager/SetNetworkPolicy", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 // Server API for ClusterManager service
 
 type ClusterManagerServer interface {
@@ -2719,6 +3542,20 @@ type ClusterManagerServer interface {
 	CreateCluster(context.Context, *CreateClusterRequest) (*Operation, error)
 	// Updates the settings of a specific cluster.
 	UpdateCluster(context.Context, *UpdateClusterRequest) (*Operation, error)
+	// Updates the version and/or image type of a specific node pool.
+	UpdateNodePool(context.Context, *UpdateNodePoolRequest) (*Operation, error)
+	// Sets the autoscaling settings of a specific node pool.
+	SetNodePoolAutoscaling(context.Context, *SetNodePoolAutoscalingRequest) (*Operation, error)
+	// Sets the logging service of a specific cluster.
+	SetLoggingService(context.Context, *SetLoggingServiceRequest) (*Operation, error)
+	// Sets the monitoring service of a specific cluster.
+	SetMonitoringService(context.Context, *SetMonitoringServiceRequest) (*Operation, error)
+	// Sets the addons of a specific cluster.
+	SetAddonsConfig(context.Context, *SetAddonsConfigRequest) (*Operation, error)
+	// Sets the locations of a specific cluster.
+	SetLocations(context.Context, *SetLocationsRequest) (*Operation, error)
+	// Updates the master of a specific cluster.
+	UpdateMaster(context.Context, *UpdateMasterRequest) (*Operation, error)
 	// Used to set master auth materials. Currently supports :-
 	// Changing the admin password of a specific cluster.
 	// This can be either via password generation or explicitly set the password.
@@ -2762,6 +3599,10 @@ type ClusterManagerServer interface {
 	StartIPRotation(context.Context, *StartIPRotationRequest) (*Operation, error)
 	// Completes master IP rotation.
 	CompleteIPRotation(context.Context, *CompleteIPRotationRequest) (*Operation, error)
+	// Sets the size of a specific node pool.
+	SetNodePoolSize(context.Context, *SetNodePoolSizeRequest) (*Operation, error)
+	// Enables/Disables Network Policy for a cluster.
+	SetNetworkPolicy(context.Context, *SetNetworkPolicyRequest) (*Operation, error)
 }
 
 func RegisterClusterManagerServer(s *grpc.Server, srv ClusterManagerServer) {
@@ -2840,6 +3681,132 @@ func _ClusterManager_UpdateCluster_Handler(srv interface{}, ctx context.Context,
 	return interceptor(ctx, in, info, handler)
 }
 
+func _ClusterManager_UpdateNodePool_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(UpdateNodePoolRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ClusterManagerServer).UpdateNodePool(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.container.v1.ClusterManager/UpdateNodePool",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ClusterManagerServer).UpdateNodePool(ctx, req.(*UpdateNodePoolRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _ClusterManager_SetNodePoolAutoscaling_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(SetNodePoolAutoscalingRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ClusterManagerServer).SetNodePoolAutoscaling(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.container.v1.ClusterManager/SetNodePoolAutoscaling",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ClusterManagerServer).SetNodePoolAutoscaling(ctx, req.(*SetNodePoolAutoscalingRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _ClusterManager_SetLoggingService_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(SetLoggingServiceRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ClusterManagerServer).SetLoggingService(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.container.v1.ClusterManager/SetLoggingService",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ClusterManagerServer).SetLoggingService(ctx, req.(*SetLoggingServiceRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _ClusterManager_SetMonitoringService_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(SetMonitoringServiceRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ClusterManagerServer).SetMonitoringService(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.container.v1.ClusterManager/SetMonitoringService",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ClusterManagerServer).SetMonitoringService(ctx, req.(*SetMonitoringServiceRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _ClusterManager_SetAddonsConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(SetAddonsConfigRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ClusterManagerServer).SetAddonsConfig(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.container.v1.ClusterManager/SetAddonsConfig",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ClusterManagerServer).SetAddonsConfig(ctx, req.(*SetAddonsConfigRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _ClusterManager_SetLocations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(SetLocationsRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ClusterManagerServer).SetLocations(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.container.v1.ClusterManager/SetLocations",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ClusterManagerServer).SetLocations(ctx, req.(*SetLocationsRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _ClusterManager_UpdateMaster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(UpdateMasterRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ClusterManagerServer).UpdateMaster(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.container.v1.ClusterManager/UpdateMaster",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ClusterManagerServer).UpdateMaster(ctx, req.(*UpdateMasterRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 func _ClusterManager_SetMasterAuth_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 	in := new(SetMasterAuthRequest)
 	if err := dec(in); err != nil {
@@ -3128,6 +4095,42 @@ func _ClusterManager_CompleteIPRotation_Handler(srv interface{}, ctx context.Con
 	return interceptor(ctx, in, info, handler)
 }
 
+func _ClusterManager_SetNodePoolSize_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(SetNodePoolSizeRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ClusterManagerServer).SetNodePoolSize(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.container.v1.ClusterManager/SetNodePoolSize",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ClusterManagerServer).SetNodePoolSize(ctx, req.(*SetNodePoolSizeRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _ClusterManager_SetNetworkPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(SetNetworkPolicyRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ClusterManagerServer).SetNetworkPolicy(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.container.v1.ClusterManager/SetNetworkPolicy",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ClusterManagerServer).SetNetworkPolicy(ctx, req.(*SetNetworkPolicyRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 var _ClusterManager_serviceDesc = grpc.ServiceDesc{
 	ServiceName: "google.container.v1.ClusterManager",
 	HandlerType: (*ClusterManagerServer)(nil),
@@ -3148,6 +4151,34 @@ var _ClusterManager_serviceDesc = grpc.ServiceDesc{
 			MethodName: "UpdateCluster",
 			Handler:    _ClusterManager_UpdateCluster_Handler,
 		},
+		{
+			MethodName: "UpdateNodePool",
+			Handler:    _ClusterManager_UpdateNodePool_Handler,
+		},
+		{
+			MethodName: "SetNodePoolAutoscaling",
+			Handler:    _ClusterManager_SetNodePoolAutoscaling_Handler,
+		},
+		{
+			MethodName: "SetLoggingService",
+			Handler:    _ClusterManager_SetLoggingService_Handler,
+		},
+		{
+			MethodName: "SetMonitoringService",
+			Handler:    _ClusterManager_SetMonitoringService_Handler,
+		},
+		{
+			MethodName: "SetAddonsConfig",
+			Handler:    _ClusterManager_SetAddonsConfig_Handler,
+		},
+		{
+			MethodName: "SetLocations",
+			Handler:    _ClusterManager_SetLocations_Handler,
+		},
+		{
+			MethodName: "UpdateMaster",
+			Handler:    _ClusterManager_UpdateMaster_Handler,
+		},
 		{
 			MethodName: "SetMasterAuth",
 			Handler:    _ClusterManager_SetMasterAuth_Handler,
@@ -3212,6 +4243,14 @@ var _ClusterManager_serviceDesc = grpc.ServiceDesc{
 			MethodName: "CompleteIPRotation",
 			Handler:    _ClusterManager_CompleteIPRotation_Handler,
 		},
+		{
+			MethodName: "SetNodePoolSize",
+			Handler:    _ClusterManager_SetNodePoolSize_Handler,
+		},
+		{
+			MethodName: "SetNetworkPolicy",
+			Handler:    _ClusterManager_SetNetworkPolicy_Handler,
+		},
 	},
 	Streams:  []grpc.StreamDesc{},
 	Metadata: "google/container/v1/cluster_service.proto",
@@ -3220,212 +4259,255 @@ var _ClusterManager_serviceDesc = grpc.ServiceDesc{
 func init() { proto.RegisterFile("google/container/v1/cluster_service.proto", fileDescriptor0) }
 
 var fileDescriptor0 = []byte{
-	// 3298 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0xdb, 0x6f, 0x1b, 0xd7,
-	0xd1, 0xff, 0x56, 0xa2, 0x2e, 0x1c, 0x5e, 0x44, 0x1d, 0x5d, 0xbc, 0x1f, 0x63, 0xc7, 0xf2, 0xe6,
-	0x62, 0xc7, 0x6e, 0xc4, 0xf8, 0x92, 0x9b, 0xed, 0x06, 0xa1, 0x29, 0x5a, 0xa2, 0x2d, 0x91, 0xcc,
-	0x92, 0xb4, 0x91, 0x00, 0xed, 0x62, 0xb5, 0x7b, 0x44, 0x6d, 0xb4, 0xdc, 0xdd, 0xec, 0x2e, 0x95,
-	0xc8, 0x86, 0x1f, 0x1a, 0xb4, 0x40, 0x81, 0x3e, 0xb6, 0x28, 0xfa, 0x50, 0x14, 0x45, 0x9a, 0xf6,
-	0x21, 0x05, 0x5a, 0x04, 0x28, 0xda, 0x02, 0x7d, 0x29, 0xd0, 0x97, 0xbe, 0x16, 0x79, 0x28, 0xda,
-	0xe7, 0xa2, 0x8f, 0xfd, 0x1b, 0x8a, 0x73, 0xd9, 0xe5, 0xae, 0xb4, 0x14, 0xa5, 0xc8, 0x4a, 0xfa,
-	0x64, 0xed, 0x9c, 0x99, 0x73, 0x7e, 0x33, 0x67, 0x66, 0xce, 0xcc, 0x98, 0xf0, 0x52, 0xd7, 0xb6,
-	0xbb, 0x26, 0x2e, 0x69, 0xb6, 0xe5, 0xab, 0x86, 0x85, 0xdd, 0xd2, 0xee, 0xd5, 0x92, 0x66, 0xf6,
-	0x3d, 0x1f, 0xbb, 0x8a, 0x87, 0xdd, 0x5d, 0x43, 0xc3, 0xcb, 0x8e, 0x6b, 0xfb, 0x36, 0x9a, 0x63,
-	0xac, 0xcb, 0x21, 0xeb, 0xf2, 0xee, 0xd5, 0xe2, 0x59, 0x2e, 0xaf, 0x3a, 0x46, 0x49, 0xb5, 0x2c,
-	0xdb, 0x57, 0x7d, 0xc3, 0xb6, 0x3c, 0x26, 0x52, 0x7c, 0x86, 0xaf, 0xd2, 0xaf, 0xcd, 0xfe, 0x56,
-	0x09, 0xf7, 0x1c, 0x7f, 0x8f, 0x2d, 0x4a, 0x9f, 0xa4, 0x00, 0xea, 0xb6, 0x8e, 0x2b, 0xb6, 0xb5,
-	0x65, 0x74, 0xd1, 0x05, 0xc8, 0xf6, 0x54, 0x6d, 0xdb, 0xb0, 0xb0, 0xe2, 0xef, 0x39, 0x58, 0x14,
-	0x96, 0x84, 0x4b, 0x69, 0x39, 0xc3, 0x69, 0xed, 0x3d, 0x07, 0xa3, 0x25, 0xc8, 0xea, 0x86, 0xb7,
-	0xa3, 0x78, 0xc6, 0x23, 0xac, 0x74, 0x37, 0xc5, 0xb1, 0x25, 0xe1, 0xd2, 0x84, 0x0c, 0x84, 0xd6,
-	0x32, 0x1e, 0xe1, 0xd5, 0x4d, 0xb2, 0x89, 0xad, 0xf6, 0xfd, 0x6d, 0xc5, 0xd3, 0x6c, 0x07, 0x7b,
-	0xe2, 0xf8, 0xd2, 0x38, 0xd9, 0x84, 0xd2, 0x5a, 0x94, 0x84, 0x2e, 0xc2, 0x0c, 0xd7, 0x4b, 0x51,
-	0x35, 0xcd, 0xee, 0x5b, 0xbe, 0x98, 0xa6, 0x47, 0xe5, 0x39, 0xb9, 0xcc, 0xa8, 0xa8, 0x06, 0xd3,
-	0x3d, 0xec, 0xab, 0xba, 0xea, 0xab, 0x62, 0x6a, 0x69, 0xfc, 0x52, 0xe6, 0xda, 0xcb, 0xcb, 0x09,
-	0x26, 0x58, 0x1e, 0xe8, 0xb0, 0xbc, 0xc1, 0xf9, 0xab, 0x96, 0xef, 0xee, 0xc9, 0xa1, 0x38, 0x3a,
-	0x07, 0x60, 0xf4, 0xd4, 0x2e, 0xd7, 0x6c, 0x82, 0x1e, 0x97, 0xa6, 0x14, 0xaa, 0x57, 0x05, 0x26,
-	0x4d, 0x75, 0x13, 0x9b, 0x9e, 0x38, 0x49, 0xcf, 0xb9, 0x32, 0xea, 0x9c, 0x75, 0xca, 0xcd, 0x4e,
-	0xe1, 0xa2, 0xe8, 0x45, 0x98, 0x31, 0x6d, 0x4d, 0x35, 0x15, 0xcf, 0xd3, 0x15, 0xa6, 0xd7, 0x14,
-	0xb5, 0x4f, 0x8e, 0x92, 0x5b, 0x9e, 0x5e, 0xa1, 0x6a, 0x21, 0x48, 0xf9, 0x6a, 0xd7, 0x13, 0xa7,
-	0xa9, 0x69, 0xe8, 0xdf, 0x68, 0x09, 0x32, 0x8e, 0x8b, 0xc9, 0xe5, 0x18, 0x9b, 0x26, 0x16, 0x61,
-	0x49, 0xb8, 0x34, 0x2d, 0x47, 0x49, 0xc5, 0x5b, 0x90, 0x8b, 0x29, 0x87, 0x0a, 0x30, 0xbe, 0x83,
-	0xf7, 0xf8, 0x2d, 0x91, 0x3f, 0xd1, 0x3c, 0x4c, 0xec, 0xaa, 0x66, 0x1f, 0xd3, 0x6b, 0x49, 0xcb,
-	0xec, 0xe3, 0xe6, 0xd8, 0x1b, 0x42, 0xf1, 0x4d, 0xc8, 0x44, 0x10, 0x1f, 0x47, 0x54, 0xfa, 0xab,
-	0x00, 0xb0, 0xa1, 0x12, 0x6f, 0x2c, 0xf7, 0xfd, 0x6d, 0x54, 0x84, 0xe9, 0xbe, 0x87, 0x5d, 0x4b,
-	0xed, 0x05, 0x0e, 0x12, 0x7e, 0x93, 0x35, 0x47, 0xf5, 0xbc, 0x0f, 0x6d, 0x57, 0xe7, 0xfb, 0x84,
-	0xdf, 0xe8, 0x06, 0x2c, 0x06, 0x4e, 0xad, 0xa9, 0x8a, 0x86, 0x5d, 0xdf, 0xd8, 0x32, 0x34, 0xd5,
-	0xc7, 0xa2, 0x4e, 0x39, 0xe7, 0xf9, 0x6a, 0x45, 0xad, 0x0c, 0xd6, 0xd0, 0xcb, 0x80, 0x34, 0xd3,
-	0xc0, 0x96, 0x1f, 0x93, 0xc0, 0x54, 0x62, 0x96, 0xad, 0x44, 0xd9, 0xcf, 0x01, 0x70, 0x76, 0xa2,
-	0xde, 0x16, 0xbb, 0x65, 0x46, 0xb9, 0x8f, 0xf7, 0xa4, 0x2f, 0x04, 0xc8, 0x96, 0x75, 0xdd, 0xb6,
-	0x3c, 0xee, 0xf1, 0x0f, 0x60, 0x6e, 0xdb, 0xf7, 0x1d, 0xc5, 0xb4, 0x55, 0x5d, 0xd9, 0x54, 0x4d,
-	0xd5, 0xd2, 0x0c, 0xab, 0x4b, 0xf5, 0xca, 0x5c, 0x7b, 0x31, 0xd1, 0x07, 0xd6, 0x7c, 0xdf, 0x59,
-	0xb7, 0x55, 0xfd, 0x4e, 0xc0, 0x2d, 0xcf, 0x6e, 0xef, 0x27, 0xa1, 0x1d, 0x28, 0x6e, 0xdb, 0xae,
-	0xf1, 0x88, 0x08, 0x9a, 0x8a, 0x63, 0xeb, 0x8a, 0xda, 0xf7, 0x6d, 0x4f, 0x53, 0x4d, 0xb2, 0xfd,
-	0x18, 0xdd, 0x3e, 0xd9, 0x95, 0xd7, 0x42, 0xb1, 0xa6, 0xad, 0x97, 0x07, 0x42, 0xb2, 0xb8, 0x3d,
-	0x64, 0x45, 0x2a, 0xc1, 0xec, 0x01, 0x50, 0xe4, 0x2a, 0x74, 0xc3, 0x53, 0x37, 0x4d, 0xac, 0x53,
-	0x75, 0xa6, 0xe5, 0xf0, 0x5b, 0x7a, 0x0d, 0xc4, 0x61, 0xc7, 0x1c, 0x2a, 0xf7, 0x22, 0xc0, 0x3a,
-	0xee, 0xaa, 0xda, 0x5e, 0x79, 0x53, 0xd5, 0x90, 0x08, 0x53, 0xd8, 0x8a, 0x32, 0x06, 0x9f, 0xd2,
-	0xdf, 0xb2, 0x30, 0x55, 0x61, 0xb7, 0x49, 0x7c, 0x3d, 0xe2, 0x2a, 0xf4, 0x6f, 0xe2, 0xeb, 0x3a,
-	0xf6, 0x34, 0xd7, 0x70, 0x48, 0xa6, 0xe2, 0x9e, 0x12, 0x25, 0xa1, 0x6f, 0x00, 0x32, 0x2c, 0xc3,
-	0x37, 0x54, 0x53, 0xb1, 0x6c, 0x1d, 0xf3, 0x60, 0x1a, 0xa7, 0xc1, 0x54, 0xe0, 0x2b, 0x2c, 0x18,
-	0x49, 0x3c, 0xbd, 0x0d, 0x19, 0xce, 0x45, 0x2e, 0x55, 0x4c, 0x51, 0xf3, 0x9e, 0x1f, 0x11, 0xc1,
-	0x32, 0x58, 0x83, 0xcc, 0xf7, 0x36, 0x64, 0x7a, 0xd4, 0xc5, 0xc9, 0x3d, 0x6d, 0xd3, 0xf4, 0x30,
-	0x6c, 0x87, 0x41, 0x28, 0xc8, 0xd0, 0x1b, 0x84, 0xc5, 0x45, 0x12, 0xfb, 0xdd, 0xae, 0x61, 0x75,
-	0x83, 0x9c, 0x2d, 0x4e, 0xb2, 0x9c, 0xc6, 0xc9, 0x2d, 0x46, 0x25, 0x1e, 0xdd, 0xb3, 0x2d, 0xc3,
-	0xb7, 0xdd, 0x28, 0xef, 0x14, 0xf3, 0xe8, 0xc1, 0x4a, 0xc0, 0x2e, 0xc2, 0x94, 0x85, 0xfd, 0x0f,
-	0x6d, 0x77, 0x47, 0x9c, 0xa6, 0x3c, 0xc1, 0x27, 0xba, 0x0c, 0xb3, 0x41, 0x40, 0x19, 0xce, 0xee,
-	0x0d, 0x45, 0x33, 0x74, 0x97, 0xe7, 0xd1, 0x19, 0xbe, 0x50, 0x73, 0x76, 0x6f, 0x54, 0x0c, 0xdd,
-	0x45, 0x77, 0x21, 0xa7, 0x52, 0xbf, 0x0f, 0x6c, 0x04, 0x54, 0xc3, 0x0b, 0x89, 0x1a, 0x46, 0x23,
-	0x44, 0xce, 0xaa, 0xd1, 0x78, 0x79, 0x16, 0xc0, 0xeb, 0x6f, 0x06, 0x80, 0x32, 0xf4, 0xb0, 0x08,
-	0x05, 0xdd, 0x06, 0x6a, 0x55, 0xc5, 0xb1, 0x6d, 0xd3, 0x13, 0xb3, 0x34, 0x95, 0x9e, 0x1b, 0x7a,
-	0x11, 0x4d, 0xdb, 0x36, 0xe5, 0xb4, 0xc5, 0xff, 0xf2, 0xd0, 0x59, 0x48, 0x93, 0x44, 0x49, 0x9f,
-	0x2f, 0x31, 0x47, 0x93, 0xe3, 0x80, 0x80, 0x5e, 0x83, 0x33, 0xcc, 0xc1, 0x94, 0x9d, 0xfe, 0x26,
-	0x76, 0x2d, 0xec, 0x63, 0x4f, 0x51, 0x4d, 0x67, 0x5b, 0x15, 0xf3, 0xd4, 0xff, 0x16, 0xd8, 0xf2,
-	0xfd, 0x70, 0xb5, 0x4c, 0x16, 0xd1, 0xbb, 0x30, 0xe3, 0x62, 0xcf, 0xee, 0xbb, 0x1a, 0x56, 0x78,
-	0x8e, 0x9f, 0xa1, 0xc0, 0x5e, 0x49, 0x04, 0xc6, 0x1d, 0x77, 0x59, 0xe6, 0x32, 0xd1, 0x44, 0x9f,
-	0x77, 0x63, 0x44, 0x74, 0x05, 0x66, 0xe9, 0x8e, 0xca, 0x96, 0x61, 0x75, 0xb1, 0xeb, 0xb8, 0x86,
-	0xe5, 0x8b, 0x05, 0x6a, 0x95, 0x02, 0x5d, 0xb8, 0x3b, 0xa0, 0x13, 0x1f, 0x33, 0x69, 0xf4, 0x28,
-	0xea, 0xa6, 0xaa, 0x89, 0xe8, 0x10, 0x1f, 0x1b, 0x44, 0x99, 0x0c, 0xe6, 0x20, 0xe2, 0x9e, 0x81,
-	0xb4, 0x87, 0xcd, 0x2d, 0xc5, 0x34, 0xac, 0x1d, 0x9e, 0x35, 0xa7, 0x09, 0x61, 0xdd, 0xb0, 0x76,
-	0x48, 0xa0, 0x3d, 0xb2, 0xad, 0x20, 0x37, 0xd2, 0xbf, 0x49, 0x30, 0x63, 0x4b, 0x77, 0x6c, 0x02,
-	0x8b, 0x25, 0xc3, 0xf0, 0x9b, 0x98, 0x33, 0x08, 0xb1, 0xc0, 0x8d, 0x76, 0xb1, 0xeb, 0x91, 0x80,
-	0xec, 0x52, 0xd6, 0x05, 0xbe, 0xcc, 0x0d, 0xf2, 0x80, 0x2d, 0xd2, 0x3c, 0xde, 0x77, 0x5d, 0x92,
-	0x63, 0x79, 0xc8, 0x04, 0x62, 0xdb, 0x3c, 0x8f, 0xb3, 0x55, 0x16, 0x27, 0x81, 0xd4, 0x2b, 0x10,
-	0xd0, 0x59, 0x40, 0x07, 0x32, 0x06, 0x95, 0x41, 0x7c, 0x8d, 0x38, 0x45, 0x20, 0x71, 0x1e, 0x32,
-	0x9a, 0x8b, 0x55, 0x1f, 0x2b, 0xbe, 0xd1, 0xc3, 0xe2, 0xfb, 0xcc, 0xd7, 0x18, 0xa9, 0x6d, 0xf4,
-	0x30, 0xba, 0x05, 0x93, 0x9e, 0xaf, 0xfa, 0x7d, 0x4f, 0xdc, 0x59, 0x12, 0x2e, 0xe5, 0xaf, 0x3d,
-	0x77, 0xe8, 0x75, 0xb6, 0x28, 0xab, 0xcc, 0x45, 0xd0, 0x0b, 0x90, 0x67, 0x7f, 0x29, 0x3d, 0xec,
-	0x79, 0x6a, 0x17, 0x8b, 0x26, 0x3d, 0x20, 0xc7, 0xa8, 0x1b, 0x8c, 0x88, 0x5e, 0x86, 0x39, 0x0a,
-	0x37, 0x0c, 0x30, 0x5a, 0xf8, 0x88, 0x3d, 0x96, 0x88, 0xc8, 0x52, 0x10, 0x62, 0xa4, 0xfa, 0x21,
-	0x69, 0x8b, 0x07, 0xb4, 0x17, 0x89, 0x49, 0x8b, 0x39, 0x44, 0xb0, 0x12, 0x06, 0xe5, 0x32, 0xcc,
-	0x19, 0x96, 0xe7, 0xab, 0x96, 0x86, 0x95, 0xae, 0x6b, 0xf7, 0x1d, 0xa5, 0xef, 0x9a, 0x9e, 0x68,
-	0x53, 0xc7, 0x9f, 0x0d, 0x96, 0x56, 0xc9, 0x4a, 0xc7, 0x35, 0x3d, 0xb2, 0x7b, 0xcc, 0x86, 0x2c,
-	0x29, 0x3a, 0x0c, 0x4b, 0xc4, 0x82, 0x2c, 0x29, 0x9e, 0x87, 0x0c, 0xfe, 0xc8, 0x31, 0x5c, 0x6e,
-	0xbf, 0x0f, 0x98, 0xfd, 0x18, 0x89, 0xd8, 0xaf, 0x58, 0x86, 0xb9, 0x04, 0x1f, 0x3f, 0x56, 0x69,
-	0x60, 0xc0, 0x24, 0xb3, 0x2b, 0x5a, 0x04, 0xd4, 0x6a, 0x97, 0xdb, 0x9d, 0x96, 0xd2, 0xa9, 0xb7,
-	0x9a, 0xd5, 0x4a, 0xed, 0x6e, 0xad, 0xba, 0x52, 0xf8, 0x3f, 0x54, 0x80, 0x6c, 0x53, 0x6e, 0x3c,
-	0xa8, 0xb5, 0x6a, 0x8d, 0x7a, 0xad, 0xbe, 0x5a, 0x10, 0x50, 0x06, 0xa6, 0xe4, 0x4e, 0x9d, 0x7e,
-	0x8c, 0xa1, 0x19, 0xc8, 0xc8, 0xd5, 0x4a, 0xa3, 0x5e, 0xa9, 0xad, 0x13, 0xc2, 0x38, 0xca, 0xc2,
-	0x74, 0xab, 0xdd, 0x68, 0x36, 0xc9, 0x57, 0x0a, 0xa5, 0x61, 0xa2, 0x2a, 0xcb, 0x0d, 0xb9, 0x30,
-	0x21, 0x7d, 0x2f, 0x05, 0x39, 0x7e, 0x97, 0x1d, 0x47, 0x27, 0x6f, 0xfd, 0x2b, 0x30, 0xaf, 0x63,
-	0xcf, 0x70, 0xb1, 0x1e, 0x77, 0xa9, 0x14, 0x73, 0x29, 0xbe, 0x16, 0x75, 0xa9, 0xdb, 0x50, 0x0c,
-	0x24, 0x12, 0x52, 0x30, 0xab, 0x09, 0x45, 0xce, 0xb1, 0x71, 0x20, 0x13, 0x77, 0x60, 0x21, 0x90,
-	0x8e, 0xe7, 0xd2, 0xc9, 0xa3, 0xe6, 0xd2, 0x39, 0x2e, 0x1f, 0x2b, 0x41, 0x4a, 0xfb, 0xd4, 0x20,
-	0xa9, 0x53, 0x31, 0xf4, 0xe0, 0x45, 0x88, 0xa8, 0x41, 0x92, 0x64, 0x4d, 0x27, 0x6e, 0x10, 0x08,
-	0x44, 0x2a, 0x5a, 0xf6, 0x38, 0x14, 0xf8, 0x4a, 0x2d, 0x2c, 0x6c, 0x77, 0xe0, 0xdc, 0xc1, 0xed,
-	0xa3, 0xc5, 0x48, 0x9a, 0xa2, 0xbf, 0x74, 0x68, 0x92, 0x8e, 0xd6, 0x21, 0xc5, 0x7d, 0x88, 0xa2,
-	0xc5, 0xc3, 0x15, 0x08, 0xf0, 0x2a, 0x83, 0x44, 0x0e, 0xd4, 0x9f, 0x03, 0x64, 0xeb, 0x61, 0x3e,
-	0xbf, 0x01, 0x8b, 0xe1, 0x6d, 0xc4, 0x13, 0x09, 0x2f, 0x08, 0x83, 0x9b, 0x88, 0x26, 0x12, 0xe9,
-	0x2f, 0x13, 0x90, 0x6e, 0x38, 0xd8, 0xa5, 0x9b, 0x24, 0x56, 0x17, 0x41, 0x22, 0x1c, 0x8b, 0x24,
-	0xc2, 0x7b, 0x90, 0xb7, 0x03, 0x21, 0x66, 0xaf, 0xf1, 0x43, 0x72, 0x46, 0xb8, 0xff, 0x32, 0x31,
-	0xa1, 0x9c, 0x0b, 0x45, 0xa9, 0x45, 0xbf, 0x19, 0xe6, 0x9d, 0x14, 0xdd, 0xe3, 0x85, 0x11, 0x7b,
-	0xec, 0xcb, 0x3c, 0x8b, 0x30, 0xa9, 0x63, 0x5f, 0x35, 0x4c, 0x7e, 0x65, 0xfc, 0x2b, 0x21, 0x23,
-	0x4d, 0x24, 0x65, 0xa4, 0xd8, 0x1b, 0x30, 0xb9, 0xef, 0x0d, 0x38, 0x0f, 0x19, 0x5f, 0x75, 0xbb,
-	0xd8, 0x67, 0xcb, 0xcc, 0x85, 0x80, 0x91, 0x08, 0x83, 0x24, 0x8f, 0x0c, 0xd8, 0x0c, 0x4c, 0x35,
-	0xab, 0xf5, 0x95, 0x84, 0x58, 0x9d, 0x86, 0xd4, 0x4a, 0xa3, 0x5e, 0x65, 0x41, 0x5a, 0xbe, 0xd3,
-	0x90, 0xdb, 0x34, 0x48, 0xa5, 0xcf, 0xc7, 0x20, 0x45, 0x0d, 0x33, 0x0f, 0x85, 0xf6, 0xbb, 0xcd,
-	0xea, 0xbe, 0x0d, 0x11, 0xe4, 0x2b, 0x72, 0xb5, 0xdc, 0xae, 0x2a, 0x95, 0xf5, 0x4e, 0xab, 0x5d,
-	0x95, 0x0b, 0x02, 0xa1, 0xad, 0x54, 0xd7, 0xab, 0x11, 0xda, 0x18, 0xa1, 0x75, 0x9a, 0xab, 0x72,
-	0x79, 0xa5, 0xaa, 0x6c, 0x94, 0x29, 0x6d, 0x1c, 0xcd, 0x42, 0x2e, 0xa0, 0xd5, 0x1b, 0x2b, 0xd5,
-	0x56, 0x21, 0x45, 0xd8, 0xe4, 0x6a, 0xb3, 0x5c, 0x93, 0x43, 0xd1, 0x09, 0x26, 0xba, 0x12, 0x3d,
-	0x62, 0x92, 0x80, 0xe1, 0xc7, 0x12, 0x49, 0xa5, 0xd9, 0x68, 0xac, 0x17, 0xa6, 0x08, 0x95, 0x1f,
-	0x3c, 0xa0, 0x4e, 0xa3, 0xb3, 0x20, 0xb6, 0xaa, 0xed, 0x01, 0x49, 0xd9, 0x28, 0xd7, 0xcb, 0xab,
-	0xd5, 0x8d, 0x6a, 0xbd, 0x5d, 0x48, 0xa3, 0x05, 0x98, 0x2d, 0x77, 0xda, 0x0d, 0x85, 0x1f, 0xcb,
-	0x80, 0x00, 0x31, 0x20, 0x25, 0xc7, 0x01, 0x66, 0x50, 0x1e, 0x80, 0x6c, 0xb6, 0x5e, 0xbe, 0x53,
-	0x5d, 0x6f, 0x15, 0xb2, 0x68, 0x0e, 0x66, 0xc8, 0x37, 0xd3, 0x49, 0x29, 0x77, 0xda, 0x6b, 0x85,
-	0x9c, 0xf4, 0x1d, 0x01, 0xe6, 0x2b, 0xf4, 0x29, 0xe3, 0x39, 0x4d, 0xc6, 0x1f, 0xf4, 0xb1, 0xe7,
-	0x93, 0x06, 0xc6, 0x71, 0xed, 0xf7, 0xb1, 0xe6, 0x93, 0x1c, 0xc0, 0xdc, 0x3a, 0xcd, 0x29, 0x35,
-	0x3d, 0xd1, 0xb7, 0x5f, 0x83, 0x29, 0xfe, 0x80, 0x53, 0xa7, 0xce, 0x5c, 0x3b, 0x7b, 0xd8, 0x43,
-	0x28, 0x07, 0xcc, 0x12, 0x86, 0xd9, 0x55, 0xec, 0x9f, 0xfc, 0x7c, 0xda, 0x73, 0xf1, 0x3a, 0x54,
-	0xa7, 0x10, 0x68, 0xcf, 0xc5, 0x0a, 0x50, 0x5d, 0xfa, 0x54, 0x80, 0x79, 0x96, 0xb1, 0x4f, 0xfb,
-	0x28, 0x74, 0x13, 0x26, 0xfb, 0xf4, 0x24, 0xde, 0x02, 0x48, 0x87, 0x19, 0x82, 0x61, 0x92, 0xb9,
-	0x84, 0xf4, 0xeb, 0x31, 0x98, 0x6f, 0x61, 0x3f, 0x52, 0xdd, 0x9f, 0x1a, 0xcc, 0x35, 0x98, 0x54,
-	0x35, 0x3f, 0x78, 0xaa, 0xf2, 0x43, 0xea, 0xd0, 0x24, 0x30, 0xcb, 0x65, 0x2a, 0x27, 0x73, 0x79,
-	0xf4, 0x7a, 0xa8, 0xf0, 0x11, 0x3b, 0x96, 0x40, 0xdb, 0xb7, 0x60, 0x92, 0x6d, 0x45, 0x42, 0xbc,
-	0x53, 0xbf, 0x5f, 0x6f, 0x3c, 0xac, 0xb3, 0xd7, 0x9a, 0xf8, 0x6a, 0xb3, 0xdc, 0x6a, 0x3d, 0x6c,
-	0xc8, 0x2b, 0x05, 0x81, 0x38, 0xff, 0x6a, 0xb5, 0x5e, 0x95, 0x49, 0x20, 0x85, 0xe4, 0x31, 0x69,
-	0x1b, 0xe6, 0x57, 0xb0, 0x89, 0x4f, 0xff, 0x4e, 0xa5, 0x35, 0x98, 0x5b, 0x37, 0xbc, 0xc0, 0x4d,
-	0xbd, 0x2f, 0x7f, 0x90, 0xd4, 0x87, 0xf9, 0xf8, 0x4e, 0x9e, 0x63, 0x5b, 0x1e, 0x46, 0x6f, 0xc0,
-	0x34, 0x3f, 0xce, 0x13, 0x05, 0xda, 0x18, 0x1c, 0x1e, 0x40, 0x21, 0x37, 0x7a, 0x0e, 0x72, 0x3d,
-	0xc3, 0xf3, 0x48, 0x11, 0x41, 0x4e, 0xf0, 0xc4, 0x31, 0xfa, 0xd4, 0x65, 0x39, 0xf1, 0x3d, 0x42,
-	0x93, 0x76, 0x60, 0x6e, 0x15, 0xfb, 0xe1, 0x73, 0x70, 0x02, 0x4b, 0x5d, 0x80, 0xec, 0xe0, 0x11,
-	0x0b, 0x6d, 0x95, 0x09, 0x69, 0x35, 0x5d, 0xba, 0x07, 0x0b, 0x44, 0xc7, 0xf0, 0xb4, 0x93, 0xd8,
-	0xcb, 0x82, 0xc5, 0x0a, 0x29, 0x40, 0xcd, 0xaf, 0x08, 0xfb, 0x13, 0x58, 0xdc, 0x8f, 0x9d, 0xdf,
-	0xd0, 0x5b, 0x00, 0x21, 0x63, 0x70, 0x47, 0xcf, 0x1e, 0xfe, 0xea, 0xca, 0x11, 0x89, 0xa3, 0xdd,
-	0xd3, 0x7d, 0x58, 0x5c, 0xc5, 0x3e, 0x29, 0xf6, 0xb0, 0xcb, 0xeb, 0xb5, 0x2f, 0x6f, 0xbb, 0xef,
-	0x8e, 0x41, 0x36, 0xba, 0x15, 0xe9, 0xb6, 0x74, 0xbc, 0xa5, 0xf6, 0x4d, 0xff, 0x40, 0xb7, 0xc5,
-	0x36, 0x5c, 0xe0, 0xcb, 0xfb, 0xba, 0xad, 0x65, 0x98, 0xdb, 0x55, 0x4d, 0x23, 0x5e, 0xe2, 0x06,
-	0x43, 0xd5, 0x59, 0xba, 0x14, 0xa9, 0x70, 0x3d, 0x56, 0x1c, 0xb2, 0x73, 0x22, 0xc5, 0x61, 0x2a,
-	0x28, 0x0e, 0xe9, 0xca, 0xa0, 0x38, 0xbc, 0x0c, 0x6c, 0x8b, 0x08, 0xaf, 0x27, 0x4e, 0xd0, 0xbd,
-	0x67, 0xe8, 0x42, 0xc8, 0xea, 0xa1, 0x6b, 0xb0, 0xc0, 0x78, 0xe3, 0xc5, 0x1a, 0x1b, 0x98, 0xa6,
-	0x65, 0x06, 0x33, 0x56, 0xab, 0x79, 0xd2, 0x2f, 0x05, 0x58, 0x60, 0xcf, 0x5c, 0xd8, 0xee, 0x9f,
-	0x62, 0xf2, 0x4f, 0x87, 0x05, 0x2e, 0xcf, 0xff, 0x23, 0x26, 0x0f, 0xd3, 0xc1, 0xe4, 0x41, 0xfa,
-	0x81, 0x00, 0x0b, 0x2c, 0x9f, 0x9d, 0x3e, 0xce, 0x25, 0xc8, 0xc6, 0xea, 0x7c, 0x76, 0x37, 0x60,
-	0x85, 0x05, 0x3e, 0x49, 0xae, 0x24, 0x10, 0x02, 0x28, 0xde, 0xe9, 0x25, 0xd7, 0xef, 0x0b, 0x80,
-	0x56, 0xb1, 0xff, 0xbf, 0xa0, 0xf4, 0xbf, 0x53, 0x30, 0x1d, 0xe0, 0x48, 0x2c, 0xeb, 0x5f, 0x87,
-	0x49, 0xde, 0x6f, 0x8d, 0x1d, 0x6d, 0xbe, 0xc7, 0xd9, 0x8f, 0x39, 0x4b, 0x3c, 0x74, 0xc6, 0x22,
-	0xc2, 0x54, 0x10, 0xb5, 0x6c, 0xcc, 0x12, 0x7c, 0x0e, 0xeb, 0xe5, 0xb7, 0x86, 0xf5, 0xf2, 0xb7,
-	0xc3, 0x26, 0xa2, 0x4b, 0x6b, 0x80, 0xe7, 0x0f, 0x75, 0xd5, 0xd1, 0xd3, 0x8b, 0xed, 0xa4, 0x5e,
-	0xe1, 0x1e, 0x64, 0xa2, 0x9d, 0x5e, 0xea, 0x98, 0x9d, 0x5e, 0x54, 0x18, 0x55, 0x00, 0x7a, 0xaa,
-	0xa5, 0x76, 0x71, 0x0f, 0x5b, 0x3e, 0x2f, 0x37, 0x9e, 0x1b, 0xba, 0xd5, 0x46, 0xc8, 0x2a, 0x47,
-	0xc4, 0x48, 0xd9, 0x7b, 0xc2, 0x81, 0xc1, 0x22, 0x20, 0xfe, 0xa1, 0x3c, 0xac, 0xb5, 0xd7, 0x14,
-	0x36, 0x1e, 0x18, 0xdf, 0x3f, 0x48, 0x48, 0xc5, 0x06, 0x09, 0x13, 0x83, 0x41, 0xc2, 0xa4, 0xf4,
-	0x2b, 0x01, 0xf2, 0x71, 0x88, 0xe4, 0x71, 0x22, 0xaa, 0x2a, 0x7d, 0xa7, 0xeb, 0xaa, 0x3a, 0xe6,
-	0xe3, 0x6c, 0xaa, 0x7e, 0x87, 0x91, 0x48, 0x67, 0x45, 0x59, 0x5c, 0xec, 0xa8, 0x86, 0x4b, 0x5d,
-	0x70, 0x5a, 0x06, 0x42, 0x92, 0x29, 0x05, 0x35, 0x61, 0x86, 0x8b, 0x2b, 0xb6, 0x13, 0x34, 0xbe,
-	0xc4, 0x48, 0x17, 0x93, 0xe7, 0x02, 0x83, 0xbd, 0x1b, 0x8c, 0x5d, 0xce, 0xf7, 0x63, 0xdf, 0x52,
-	0x0f, 0xd0, 0x41, 0x2e, 0xf4, 0x2a, 0x9c, 0x89, 0x62, 0x55, 0x3c, 0x5f, 0x75, 0x7d, 0x36, 0xe2,
-	0x61, 0xd1, 0x32, 0x1f, 0x81, 0xdd, 0x22, 0x8b, 0x74, 0x58, 0x36, 0x72, 0xe4, 0x2e, 0xfd, 0x5d,
-	0x80, 0xb3, 0xad, 0x41, 0x2e, 0x88, 0xdc, 0xe0, 0xd7, 0x97, 0x15, 0x9e, 0x8e, 0xd7, 0xfd, 0x48,
-	0x80, 0x67, 0x65, 0xdb, 0x34, 0x37, 0x55, 0x6d, 0x27, 0x50, 0x8f, 0x1b, 0xe8, 0xeb, 0xcc, 0x78,
-	0x1d, 0x56, 0xab, 0x45, 0xd2, 0x3c, 0x2f, 0x77, 0xe2, 0x43, 0x74, 0xe1, 0x78, 0x43, 0x74, 0xe9,
-	0x31, 0xcc, 0x25, 0x8d, 0x66, 0x86, 0xfe, 0x6f, 0x0d, 0x7a, 0x1e, 0xf2, 0x3d, 0xc3, 0x8a, 0xe6,
-	0x46, 0xf6, 0x9f, 0xba, 0xd9, 0x9e, 0x61, 0x0d, 0xf2, 0x22, 0xe1, 0x52, 0x3f, 0x3a, 0x98, 0x41,
-	0xb3, 0x3d, 0xf5, 0xa3, 0x90, 0x4b, 0xfa, 0xe3, 0x18, 0x14, 0x5a, 0xd8, 0x67, 0xf3, 0xc4, 0xd3,
-	0x33, 0xee, 0xe6, 0xc1, 0x91, 0x3e, 0xfb, 0xef, 0xe1, 0x37, 0x87, 0xb5, 0x52, 0x31, 0x44, 0x5f,
-	0x7e, 0xb6, 0x3f, 0x91, 0x3c, 0xdb, 0x7f, 0x1a, 0xb3, 0xd4, 0x8f, 0x05, 0xda, 0x80, 0x46, 0x46,
-	0xff, 0xa7, 0x66, 0xbe, 0x88, 0x2f, 0xa4, 0xe2, 0xff, 0x73, 0xf7, 0x3e, 0x2c, 0xd2, 0x9c, 0x51,
-	0x6b, 0xca, 0xfc, 0x77, 0x04, 0xa7, 0x57, 0x7c, 0xf4, 0xe0, 0xff, 0x2b, 0x76, 0xcf, 0x21, 0x55,
-	0xd7, 0x57, 0x70, 0xdc, 0xb5, 0xff, 0x3c, 0x03, 0x79, 0x5e, 0x5c, 0xb3, 0x3c, 0xe1, 0xa2, 0x9f,
-	0x0a, 0x90, 0x8d, 0xb6, 0x84, 0x28, 0xf9, 0x6d, 0x4c, 0xe8, 0x3f, 0x8b, 0x2f, 0x1d, 0x81, 0x93,
-	0x85, 0xb3, 0xf4, 0xfa, 0xc7, 0x5f, 0xfc, 0xeb, 0x87, 0x63, 0x57, 0x51, 0xa9, 0xb4, 0x7b, 0xb5,
-	0xc4, 0x55, 0xf0, 0x4a, 0x8f, 0x07, 0xea, 0x3d, 0x29, 0xd1, 0xae, 0xa4, 0xf4, 0x98, 0xfc, 0xf3,
-	0xa4, 0x14, 0xb6, 0x97, 0x3f, 0x11, 0x00, 0x06, 0x13, 0x1a, 0x94, 0xfc, 0xdf, 0xd1, 0x07, 0x46,
-	0x38, 0xc5, 0x43, 0xbb, 0x57, 0x69, 0x85, 0xa2, 0x79, 0x0b, 0xdd, 0x3e, 0x26, 0x9a, 0xd2, 0xe3,
-	0x81, 0x71, 0x9f, 0xa0, 0x1f, 0x0b, 0x90, 0x8b, 0xcd, 0xaf, 0x50, 0xb2, 0x41, 0x92, 0x66, 0x5c,
-	0xc5, 0x11, 0xad, 0x9b, 0x74, 0x93, 0x42, 0xbc, 0x21, 0x1d, 0xd7, 0x60, 0x37, 0x85, 0xcb, 0xe8,
-	0x17, 0x02, 0xe4, 0x62, 0xd3, 0xa6, 0x21, 0xc0, 0x92, 0x26, 0x52, 0x23, 0x81, 0xad, 0x52, 0x60,
-	0xe5, 0xe2, 0x89, 0x6c, 0x47, 0x50, 0x7e, 0x2e, 0x40, 0x2e, 0x36, 0xdf, 0x19, 0x82, 0x32, 0x69,
-	0x06, 0x34, 0x12, 0x65, 0x87, 0xa2, 0x6c, 0x48, 0xf7, 0x4e, 0x84, 0xd2, 0x8b, 0x1e, 0x4d, 0x30,
-	0xff, 0x5c, 0x80, 0x5c, 0x6c, 0xe6, 0x33, 0x04, 0x73, 0xd2, 0x5c, 0x68, 0x24, 0x66, 0xee, 0x95,
-	0x97, 0x4f, 0xe6, 0x95, 0x9f, 0x0a, 0x90, 0x8f, 0x8f, 0x10, 0xd0, 0xe5, 0xa1, 0x71, 0x7a, 0x60,
-	0x46, 0x52, 0xbc, 0x72, 0x24, 0x5e, 0x1e, 0xd5, 0x6f, 0x52, 0xc4, 0xd7, 0xd1, 0xd5, 0x23, 0x22,
-	0x8e, 0x8c, 0x23, 0x3e, 0x11, 0x20, 0x1b, 0x1d, 0x09, 0x0d, 0x49, 0x3b, 0x09, 0x53, 0xa3, 0x91,
-	0x76, 0x5c, 0xa3, 0xa8, 0xee, 0xa0, 0xb7, 0x8f, 0x8d, 0xaa, 0xf4, 0x38, 0x3a, 0x9f, 0x79, 0x82,
-	0x3e, 0x13, 0x60, 0x66, 0xdf, 0xf8, 0x07, 0x25, 0x1b, 0x28, 0x79, 0x48, 0x54, 0x5c, 0x0c, 0x98,
-	0x83, 0x5f, 0x9e, 0x2d, 0x57, 0x7b, 0x8e, 0xbf, 0x27, 0xc9, 0x14, 0xe2, 0xba, 0xb4, 0x7a, 0x52,
-	0x88, 0x37, 0x35, 0x7a, 0x30, 0xf1, 0xcd, 0x9f, 0x09, 0x30, 0xb3, 0x6f, 0x78, 0x33, 0x04, 0x6c,
-	0xf2, 0x88, 0xa7, 0x78, 0x61, 0x48, 0xf8, 0x0d, 0x38, 0xa5, 0x5b, 0x14, 0xf7, 0xab, 0xe8, 0xfa,
-	0x11, 0x71, 0x7b, 0x54, 0x98, 0xf7, 0xa0, 0xbf, 0x17, 0x20, 0x17, 0x2b, 0xf6, 0xd0, 0xf0, 0x07,
-	0x64, 0x7f, 0xdf, 0x5f, 0xbc, 0x7c, 0x14, 0x56, 0xee, 0x96, 0x75, 0x8a, 0x72, 0x0d, 0xdd, 0x3d,
-	0x49, 0x20, 0x95, 0x06, 0x3f, 0xc9, 0xf8, 0x9d, 0x00, 0x99, 0xc8, 0x84, 0x00, 0x5d, 0x1c, 0x66,
-	0xd5, 0x7d, 0x33, 0x84, 0xe2, 0xe1, 0x05, 0xab, 0xf4, 0x2d, 0x8a, 0xf3, 0x21, 0xea, 0x3c, 0x1d,
-	0x9c, 0xa5, 0xc7, 0xd1, 0x62, 0xfb, 0x09, 0xfa, 0xad, 0x00, 0xf9, 0xf8, 0xe0, 0x69, 0x48, 0x26,
-	0x48, 0x9c, 0x4e, 0x8d, 0x0c, 0xb3, 0x77, 0x28, 0xfa, 0xfb, 0xd2, 0x53, 0xb2, 0x32, 0x71, 0xe1,
-	0x3f, 0x09, 0x90, 0x8f, 0x8f, 0xa0, 0x86, 0x20, 0x4e, 0x9c, 0x53, 0x8d, 0x44, 0xcc, 0xed, 0x7d,
-	0xf9, 0x94, 0xec, 0xfd, 0x0f, 0x01, 0xce, 0x0c, 0x69, 0xb1, 0xd0, 0xf5, 0x44, 0x68, 0x87, 0x37,
-	0x64, 0x23, 0xf5, 0x31, 0xa8, 0x3e, 0x9a, 0xf4, 0xed, 0x53, 0xd1, 0xe7, 0xa6, 0xcb, 0xd1, 0x91,
-	0x9b, 0xf9, 0xa7, 0x00, 0x0b, 0x89, 0x8d, 0x31, 0xba, 0x3a, 0xec, 0xd1, 0x1e, 0xda, 0x44, 0x8f,
-	0xd4, 0xcb, 0xa2, 0x7a, 0x6d, 0x4b, 0xda, 0xa9, 0xe8, 0x55, 0xa2, 0xaf, 0x7a, 0x80, 0x89, 0x28,
-	0xf7, 0x99, 0x00, 0xe9, 0xb0, 0x3d, 0x42, 0x2f, 0x1c, 0xa9, 0x7d, 0x1a, 0xa9, 0xc4, 0x03, 0xaa,
-	0x44, 0x53, 0xba, 0x7f, 0x22, 0x25, 0xe2, 0xfd, 0x18, 0x01, 0xfb, 0x1b, 0x56, 0x36, 0x45, 0x7e,
-	0x83, 0x38, 0xb4, 0x6c, 0x3a, 0xd0, 0x46, 0x8d, 0x04, 0x7d, 0xdc, 0x77, 0x29, 0x19, 0xf4, 0xe0,
-	0xd7, 0x5a, 0x04, 0xf0, 0x1f, 0x04, 0x98, 0xd9, 0xd7, 0x4f, 0x0d, 0x79, 0x97, 0x92, 0xbb, 0xae,
-	0x91, 0xa0, 0x1f, 0x52, 0xd0, 0xef, 0x48, 0xeb, 0x27, 0xab, 0xf5, 0xe8, 0xe1, 0x4e, 0x70, 0x38,
-	0x41, 0xfe, 0x67, 0x01, 0xd0, 0xc1, 0xee, 0x0c, 0x2d, 0x27, 0x27, 0xd1, 0x61, 0x6d, 0xdc, 0x48,
-	0xfc, 0xef, 0x51, 0xfc, 0x6d, 0xa9, 0x71, 0x22, 0xfc, 0x5a, 0x70, 0x7e, 0x54, 0x85, 0x3b, 0x16,
-	0x9c, 0xd1, 0xec, 0x5e, 0x12, 0x80, 0x3b, 0x73, 0xbc, 0x3c, 0xe5, 0x3f, 0xed, 0x69, 0x92, 0x0a,
-	0xa5, 0x29, 0xbc, 0x77, 0x9b, 0xf3, 0x76, 0x6d, 0x53, 0xb5, 0xba, 0xcb, 0xb6, 0xdb, 0x2d, 0x75,
-	0xb1, 0x45, 0xeb, 0x97, 0x12, 0x5b, 0x52, 0x1d, 0xc3, 0x8b, 0xfd, 0x50, 0xff, 0x56, 0xf8, 0xb1,
-	0x39, 0x49, 0x19, 0xaf, 0xff, 0x37, 0x00, 0x00, 0xff, 0xff, 0xcf, 0xbe, 0xbf, 0xb9, 0xd0, 0x2f,
-	0x00, 0x00,
+	// 3988 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5b, 0xdb, 0x6f, 0x1b, 0x57,
+	0x7a, 0xdf, 0xa1, 0x28, 0x4a, 0xfc, 0x78, 0x11, 0x75, 0x74, 0xf1, 0x2c, 0x63, 0xc7, 0xf2, 0xe4,
+	0xe6, 0xd8, 0x89, 0x18, 0x3b, 0xde, 0x5c, 0x1c, 0x37, 0x08, 0x4d, 0xd1, 0x12, 0x63, 0x8a, 0xe4,
+	0x0e, 0xa5, 0xb8, 0x09, 0xba, 0x1d, 0x8c, 0xc8, 0x23, 0x6a, 0xa2, 0xe1, 0xcc, 0xec, 0xcc, 0x50,
+	0x1b, 0xd9, 0xf0, 0x43, 0x17, 0x5d, 0xa0, 0x40, 0x81, 0xa2, 0x40, 0xaf, 0x28, 0x8a, 0x45, 0xb1,
+	0xdd, 0x16, 0xc5, 0x06, 0x68, 0xd1, 0x6d, 0xb1, 0x2d, 0xda, 0x3e, 0xf4, 0xa5, 0x40, 0x5f, 0xfa,
+	0xb4, 0x0f, 0x45, 0xfb, 0x52, 0x14, 0x28, 0xfa, 0x0f, 0xf4, 0xa1, 0xaf, 0xc5, 0xb9, 0xcc, 0x70,
+	0x86, 0x9c, 0x11, 0xa5, 0x30, 0xb4, 0xfb, 0x64, 0xcd, 0x77, 0x6e, 0xbf, 0xf3, 0x9d, 0x73, 0x7e,
+	0xdf, 0x8d, 0x86, 0xd7, 0x7b, 0xa6, 0xd9, 0xd3, 0x71, 0xa9, 0x63, 0x1a, 0xae, 0xaa, 0x19, 0xd8,
+	0x2e, 0x9d, 0xdc, 0x2a, 0x75, 0xf4, 0x81, 0xe3, 0x62, 0x5b, 0x71, 0xb0, 0x7d, 0xa2, 0x75, 0xf0,
+	0xa6, 0x65, 0x9b, 0xae, 0x89, 0x56, 0x58, 0xd7, 0x4d, 0xbf, 0xeb, 0xe6, 0xc9, 0xad, 0xe2, 0x65,
+	0x3e, 0x5e, 0xb5, 0xb4, 0x92, 0x6a, 0x18, 0xa6, 0xab, 0xba, 0x9a, 0x69, 0x38, 0x6c, 0x48, 0xf1,
+	0x05, 0xde, 0x4a, 0xbf, 0x0e, 0x06, 0x87, 0x25, 0xdc, 0xb7, 0xdc, 0x53, 0xd6, 0x28, 0xfd, 0x28,
+	0x09, 0xd0, 0x30, 0xbb, 0xb8, 0x62, 0x1a, 0x87, 0x5a, 0x0f, 0x5d, 0x83, 0x6c, 0x5f, 0xed, 0x1c,
+	0x69, 0x06, 0x56, 0xdc, 0x53, 0x0b, 0x8b, 0xc2, 0x86, 0x70, 0x3d, 0x2d, 0x67, 0xb8, 0x6c, 0xef,
+	0xd4, 0xc2, 0x68, 0x03, 0xb2, 0x5d, 0xcd, 0x39, 0x56, 0x1c, 0xed, 0x31, 0x56, 0x7a, 0x07, 0x62,
+	0x62, 0x43, 0xb8, 0x3e, 0x2f, 0x03, 0x91, 0xb5, 0xb5, 0xc7, 0x78, 0xfb, 0x80, 0x4c, 0x62, 0xaa,
+	0x03, 0xf7, 0x48, 0x71, 0x3a, 0xa6, 0x85, 0x1d, 0x71, 0x6e, 0x63, 0x8e, 0x4c, 0x42, 0x65, 0x6d,
+	0x2a, 0x42, 0xaf, 0xc1, 0x12, 0xdf, 0x97, 0xa2, 0x76, 0x3a, 0xe6, 0xc0, 0x70, 0xc5, 0x34, 0x5d,
+	0x2a, 0xcf, 0xc5, 0x65, 0x26, 0x45, 0x35, 0x58, 0xec, 0x63, 0x57, 0xed, 0xaa, 0xae, 0x2a, 0x26,
+	0x37, 0xe6, 0xae, 0x67, 0x6e, 0xbf, 0xb9, 0x19, 0xa1, 0x82, 0xcd, 0xe1, 0x1e, 0x36, 0x77, 0x79,
+	0xff, 0xaa, 0xe1, 0xda, 0xa7, 0xb2, 0x3f, 0x1c, 0x5d, 0x01, 0xd0, 0xfa, 0x6a, 0x8f, 0xef, 0x6c,
+	0x9e, 0x2e, 0x97, 0xa6, 0x12, 0xba, 0xaf, 0x0a, 0xa4, 0x74, 0xf5, 0x00, 0xeb, 0x8e, 0x98, 0xa2,
+	0xeb, 0xdc, 0x9c, 0xb4, 0x4e, 0x9d, 0xf6, 0x66, 0xab, 0xf0, 0xa1, 0xe8, 0x55, 0x58, 0xd2, 0xcd,
+	0x8e, 0xaa, 0x2b, 0x8e, 0xd3, 0x55, 0xd8, 0xbe, 0x16, 0xa8, 0x7e, 0x72, 0x54, 0xdc, 0x76, 0xba,
+	0x15, 0xba, 0x2d, 0x04, 0x49, 0x57, 0xed, 0x39, 0xe2, 0x22, 0x55, 0x0d, 0xfd, 0x1b, 0x6d, 0x40,
+	0xc6, 0xb2, 0x31, 0x39, 0x1c, 0xed, 0x40, 0xc7, 0x22, 0x6c, 0x08, 0xd7, 0x17, 0xe5, 0xa0, 0xa8,
+	0xf8, 0x01, 0xe4, 0x42, 0x9b, 0x43, 0x05, 0x98, 0x3b, 0xc6, 0xa7, 0xfc, 0x94, 0xc8, 0x9f, 0x68,
+	0x15, 0xe6, 0x4f, 0x54, 0x7d, 0x80, 0xe9, 0xb1, 0xa4, 0x65, 0xf6, 0x71, 0x37, 0xf1, 0x9e, 0x50,
+	0x7c, 0x1f, 0x32, 0x01, 0xc4, 0x17, 0x19, 0x2a, 0xfd, 0x34, 0x01, 0xb0, 0xab, 0x92, 0xdb, 0x58,
+	0x1e, 0xb8, 0x47, 0xa8, 0x08, 0x8b, 0x03, 0x07, 0xdb, 0x86, 0xda, 0xf7, 0x2e, 0x88, 0xff, 0x4d,
+	0xda, 0x2c, 0xd5, 0x71, 0xbe, 0x67, 0xda, 0x5d, 0x3e, 0x8f, 0xff, 0x8d, 0x8e, 0xe0, 0x9b, 0x1d,
+	0x5d, 0xc3, 0x86, 0xab, 0x74, 0xb0, 0xed, 0x6a, 0x87, 0x5a, 0x47, 0x75, 0xb1, 0xd2, 0xa1, 0xda,
+	0x14, 0xe7, 0x36, 0x84, 0xeb, 0x99, 0xdb, 0x6f, 0x44, 0x2a, 0xbd, 0x42, 0x47, 0x55, 0x86, 0x83,
+	0xd8, 0x09, 0xc8, 0x97, 0x3a, 0xd1, 0x0d, 0xe8, 0x0e, 0xac, 0x7b, 0xcf, 0xa7, 0xa3, 0x06, 0x57,
+	0x13, 0xbb, 0x14, 0xd3, 0x2a, 0x6f, 0xad, 0xa8, 0x81, 0xb1, 0xe8, 0x4d, 0x40, 0xe3, 0xf8, 0x44,
+	0x4c, 0x47, 0x2c, 0x8f, 0x2d, 0x45, 0xee, 0x13, 0xef, 0x4e, 0x14, 0x79, 0xc8, 0xee, 0x13, 0x93,
+	0x3c, 0xc4, 0xa7, 0x52, 0x1b, 0x2e, 0xc5, 0xe0, 0x46, 0xef, 0x81, 0xa8, 0x39, 0xce, 0x00, 0x2b,
+	0x11, 0xcb, 0x09, 0xf4, 0xd8, 0xd7, 0x69, 0xfb, 0xd8, 0x78, 0xe9, 0xe7, 0x02, 0x64, 0xcb, 0xdd,
+	0xae, 0x69, 0x38, 0x7c, 0xaa, 0x4f, 0x60, 0xe5, 0xc8, 0x75, 0x2d, 0x45, 0x37, 0xd5, 0xae, 0x72,
+	0xa0, 0xea, 0xaa, 0xd1, 0xd1, 0x8c, 0x1e, 0x9d, 0x25, 0x73, 0xfb, 0xd5, 0x48, 0x6d, 0xee, 0xb8,
+	0xae, 0x55, 0x37, 0xd5, 0xee, 0x7d, 0xaf, 0xb7, 0xbc, 0x7c, 0x34, 0x2a, 0x42, 0xc7, 0x50, 0x3c,
+	0x32, 0x6d, 0xed, 0x31, 0x19, 0xa8, 0x2b, 0x96, 0xd9, 0x55, 0xd4, 0x81, 0x6b, 0x3a, 0x1d, 0x55,
+	0x27, 0xd3, 0x27, 0xe8, 0xf4, 0xd1, 0x2f, 0x71, 0xc7, 0x1f, 0xd6, 0x32, 0xbb, 0xe5, 0xe1, 0x20,
+	0x59, 0x3c, 0x8a, 0x69, 0x91, 0x4a, 0xb0, 0x3c, 0x06, 0x8a, 0xdc, 0xa4, 0xae, 0xe6, 0xa8, 0x07,
+	0x3a, 0xee, 0x72, 0xa5, 0xf8, 0xdf, 0xd2, 0x3b, 0x20, 0xc6, 0x2d, 0x73, 0xe6, 0xb8, 0x57, 0x01,
+	0xea, 0xb8, 0xa7, 0x76, 0x4e, 0xcb, 0x07, 0x6a, 0x07, 0x89, 0xb0, 0x80, 0x8d, 0x60, 0x47, 0xef,
+	0x53, 0xfa, 0x3d, 0x01, 0x72, 0x0d, 0xec, 0x7e, 0xcf, 0xb4, 0x8f, 0x5b, 0xa6, 0xae, 0x75, 0x4e,
+	0xd1, 0x36, 0x2c, 0x5a, 0xb6, 0x79, 0xa2, 0x75, 0xb1, 0x4d, 0x3b, 0xe7, 0xe3, 0xf8, 0x21, 0x38,
+	0x6a, 0xb3, 0xc5, 0x87, 0xc8, 0xfe, 0xe0, 0xe0, 0xa2, 0x89, 0xf0, 0xa2, 0x2f, 0xc1, 0xa2, 0xd7,
+	0x1f, 0x65, 0x60, 0x61, 0xbf, 0xf1, 0xb0, 0xd1, 0x7c, 0xd4, 0x28, 0x7c, 0x03, 0x01, 0xa4, 0x2a,
+	0xe5, 0x7a, 0xad, 0xd2, 0x2c, 0x08, 0xd2, 0x6f, 0x26, 0x00, 0xd5, 0x5a, 0x65, 0x9d, 0xd0, 0x09,
+	0x21, 0x79, 0x0e, 0xef, 0x65, 0xc8, 0x0f, 0x1c, 0xac, 0x68, 0x96, 0xa2, 0xea, 0x9a, 0xea, 0x60,
+	0x87, 0xef, 0x28, 0x3b, 0x70, 0x70, 0xcd, 0x2a, 0x33, 0x19, 0xba, 0x09, 0xcb, 0x1d, 0x1b, 0x93,
+	0x47, 0xe7, 0x0c, 0x0e, 0x0c, 0x86, 0x94, 0xa3, 0x28, 0xb0, 0x86, 0xb6, 0x2f, 0xa7, 0x14, 0xed,
+	0x7f, 0x29, 0xf4, 0xb1, 0xcf, 0x71, 0x8a, 0xf6, 0xc5, 0x0d, 0xf2, 0xe4, 0x6f, 0xc0, 0xb2, 0xf7,
+	0xd8, 0x34, 0xeb, 0xe4, 0x8e, 0xd2, 0xd1, 0xba, 0xb6, 0x98, 0xa4, 0x5d, 0x97, 0x78, 0x43, 0xcd,
+	0x3a, 0xb9, 0x53, 0xd1, 0xba, 0x36, 0xc1, 0x69, 0x98, 0x5d, 0x1c, 0xe8, 0xc8, 0x78, 0x38, 0x4b,
+	0xa4, 0x7e, 0xaf, 0x37, 0x00, 0x71, 0x33, 0xe0, 0x04, 0x7a, 0xa6, 0x68, 0xcf, 0x82, 0xd7, 0xe2,
+	0xf5, 0x96, 0xfe, 0x37, 0x07, 0x0b, 0x15, 0xb6, 0x0e, 0xe1, 0xd5, 0x00, 0x2d, 0xd1, 0xbf, 0x09,
+	0xaf, 0x76, 0xb1, 0xd3, 0xb1, 0x35, 0x8b, 0x28, 0x8c, 0xb3, 0x52, 0x50, 0x44, 0xd6, 0xd3, 0x0c,
+	0xcd, 0xd5, 0x54, 0x5d, 0xa1, 0xe8, 0x18, 0x71, 0xcf, 0x51, 0xe2, 0x2e, 0xf0, 0x16, 0x46, 0xfc,
+	0x84, 0xbb, 0x3f, 0x82, 0x0c, 0xef, 0x45, 0x89, 0x2b, 0x49, 0xdf, 0xc2, 0xd5, 0x09, 0xd6, 0x42,
+	0x06, 0x63, 0x68, 0x65, 0x3f, 0x82, 0x4c, 0x9f, 0xd2, 0x29, 0x79, 0x54, 0x47, 0x54, 0x05, 0x71,
+	0x33, 0x0c, 0x69, 0x57, 0x86, 0xfe, 0x90, 0x82, 0x5f, 0x23, 0x76, 0xa6, 0xd7, 0xd3, 0x8c, 0x9e,
+	0xe7, 0x1f, 0x70, 0xf5, 0xe4, 0xb9, 0xb8, 0xcd, 0xa4, 0x84, 0xd3, 0xfa, 0xa6, 0xa1, 0xb9, 0xa6,
+	0x1d, 0xec, 0xbb, 0xc0, 0x38, 0x6d, 0xd8, 0xe2, 0x75, 0x17, 0x61, 0xc1, 0xbb, 0x17, 0x8b, 0xb4,
+	0x8f, 0xf7, 0x19, 0x7d, 0xca, 0xe9, 0xe8, 0x53, 0x7e, 0x00, 0x39, 0x95, 0x92, 0x94, 0xa7, 0x23,
+	0xa0, 0x3b, 0xbc, 0x16, 0xb9, 0xc3, 0x20, 0x9d, 0xc9, 0x59, 0x35, 0x48, 0x6e, 0x2f, 0x02, 0x04,
+	0x2e, 0x6a, 0x86, 0x2e, 0x16, 0x90, 0xa0, 0x7b, 0x40, 0xb5, 0xaa, 0x58, 0xa6, 0xa9, 0x3b, 0x62,
+	0x96, 0x9a, 0xed, 0x2b, 0xb1, 0x07, 0xd1, 0x32, 0x4d, 0x5d, 0x4e, 0x1b, 0xfc, 0x2f, 0x07, 0x5d,
+	0x86, 0xb4, 0xf7, 0x8a, 0x1c, 0x31, 0x47, 0x0d, 0xf1, 0x50, 0x80, 0xde, 0x81, 0x4b, 0xec, 0x61,
+	0x2a, 0xc7, 0x83, 0x03, 0x6c, 0x1b, 0xd8, 0xc5, 0x8e, 0xa2, 0xea, 0xd6, 0x91, 0x2a, 0xe6, 0xe9,
+	0x8b, 0x59, 0x63, 0xcd, 0x0f, 0xfd, 0xd6, 0x32, 0x69, 0x44, 0x9f, 0xc2, 0x92, 0x8d, 0x1d, 0x73,
+	0x60, 0x77, 0xb0, 0xc2, 0xfd, 0x89, 0x25, 0x0a, 0xec, 0xad, 0x18, 0xd3, 0x46, 0x55, 0xb7, 0x29,
+	0xf3, 0x31, 0x41, 0xa7, 0x22, 0x6f, 0x87, 0x84, 0xe4, 0xf9, 0xd2, 0x19, 0x95, 0x43, 0xcd, 0xe8,
+	0x61, 0xdb, 0xb2, 0x35, 0xc3, 0x15, 0x0b, 0xec, 0x55, 0xd0, 0x86, 0x07, 0x43, 0x39, 0xb9, 0x63,
+	0x3a, 0xa5, 0x3a, 0x45, 0x3d, 0x50, 0x3b, 0x22, 0x3a, 0xe3, 0x8e, 0x0d, 0x29, 0x51, 0x06, 0x7d,
+	0x48, 0x8f, 0x35, 0xc8, 0x7b, 0xaf, 0xdf, 0xa2, 0x2c, 0x23, 0xae, 0xd0, 0x49, 0xa4, 0xc9, 0xc4,
+	0x27, 0xe7, 0x8c, 0x10, 0x7b, 0x7e, 0x0a, 0xab, 0x94, 0x9a, 0x3c, 0xf5, 0x7a, 0x13, 0xae, 0xd2,
+	0x09, 0x5f, 0x8b, 0x9c, 0x70, 0x9c, 0xe5, 0x64, 0xa4, 0x59, 0x63, 0xcc, 0xf7, 0x02, 0xa4, 0x1d,
+	0xac, 0x1f, 0x2a, 0xba, 0x66, 0x1c, 0x73, 0xeb, 0xbe, 0x48, 0x04, 0x75, 0xcd, 0x38, 0x26, 0x74,
+	0xf0, 0xd8, 0x34, 0x3c, 0x1b, 0x4e, 0xff, 0x26, 0xf6, 0x01, 0x1b, 0x5d, 0xcb, 0x24, 0xca, 0x63,
+	0x46, 0xdb, 0xff, 0x26, 0x87, 0xee, 0x11, 0x81, 0x77, 0xd9, 0x4f, 0xb0, 0xed, 0x10, 0xda, 0xe8,
+	0xd1, 0xae, 0x6b, 0xbc, 0x99, 0x1f, 0xdb, 0x27, 0xac, 0x91, 0xfa, 0x1b, 0x03, 0xdb, 0x26, 0xb6,
+	0x9c, 0x3f, 0x6c, 0x6f, 0xd8, 0x11, 0xf7, 0x37, 0x58, 0x2b, 0x7b, 0xcd, 0xde, 0xa8, 0xb7, 0xc0,
+	0x93, 0x33, 0xda, 0xf1, 0xc6, 0x68, 0x74, 0x0c, 0xe2, 0x6d, 0xe4, 0xea, 0x7a, 0x23, 0xae, 0x42,
+	0x86, 0x13, 0xb8, 0xab, 0xf5, 0xb1, 0xf8, 0x39, 0x7b, 0x11, 0x4c, 0xb4, 0xa7, 0xf5, 0x31, 0xfa,
+	0x00, 0x52, 0x8e, 0xab, 0xba, 0x03, 0x47, 0x3c, 0xa6, 0x46, 0xea, 0xa5, 0x33, 0x2f, 0x5d, 0x9b,
+	0x76, 0x95, 0xf9, 0x10, 0xf4, 0x0a, 0xe4, 0xd9, 0x5f, 0x4a, 0x1f, 0x3b, 0x8e, 0xda, 0xc3, 0xa2,
+	0x4e, 0x17, 0xc8, 0x31, 0xe9, 0x2e, 0x13, 0xa2, 0x37, 0x61, 0x25, 0xcc, 0xe1, 0x34, 0x14, 0x10,
+	0xfb, 0x8c, 0x2e, 0x83, 0x44, 0x4e, 0xe2, 0x81, 0x18, 0x32, 0x37, 0xa2, 0xc9, 0x1c, 0x6d, 0xc2,
+	0x8a, 0x66, 0x38, 0xae, 0x6a, 0x74, 0xb0, 0xd2, 0xb3, 0xcd, 0x81, 0xa5, 0x0c, 0x6c, 0xdd, 0x11,
+	0x4d, 0xfa, 0x3c, 0x97, 0xbd, 0xa6, 0x6d, 0xd2, 0xb2, 0x6f, 0xeb, 0x0e, 0x99, 0x3d, 0xa4, 0x43,
+	0x46, 0xdd, 0x16, 0xc3, 0x12, 0xd0, 0x20, 0xa3, 0xee, 0xab, 0x90, 0xc1, 0x5f, 0x58, 0x9a, 0xcd,
+	0xf5, 0xf7, 0x5d, 0xa6, 0x3f, 0x26, 0x22, 0xfa, 0x2b, 0x96, 0x61, 0x25, 0xe2, 0x25, 0x5e, 0xc8,
+	0x59, 0xd6, 0x20, 0xc5, 0xf4, 0x8a, 0xd6, 0x01, 0xb5, 0xf7, 0xca, 0x7b, 0xfb, 0x6d, 0x65, 0xbf,
+	0xd1, 0x6e, 0x55, 0x2b, 0xb5, 0x07, 0xb5, 0xea, 0x56, 0xe1, 0x1b, 0xa8, 0x00, 0xd9, 0x96, 0xdc,
+	0xfc, 0xa4, 0xd6, 0xae, 0x35, 0x1b, 0xb5, 0xc6, 0x76, 0x41, 0x20, 0xe6, 0x5e, 0xde, 0x6f, 0xd0,
+	0x8f, 0x04, 0x5a, 0x82, 0x8c, 0x5c, 0xad, 0x34, 0x1b, 0x95, 0x5a, 0x9d, 0x08, 0xe6, 0x50, 0x16,
+	0x16, 0xdb, 0x7b, 0xcd, 0x56, 0x8b, 0x7c, 0x25, 0x51, 0x1a, 0xe6, 0xab, 0xb2, 0xdc, 0x94, 0x0b,
+	0xf3, 0xd2, 0x0f, 0x92, 0x90, 0xe3, 0x67, 0xb9, 0x6f, 0x75, 0x89, 0x4f, 0xfa, 0x16, 0xac, 0x76,
+	0xb1, 0xa3, 0xd9, 0xb8, 0x1b, 0xbe, 0x52, 0xcc, 0x1c, 0x23, 0xde, 0x16, 0xbc, 0x52, 0xf7, 0xa0,
+	0xe8, 0x8d, 0x88, 0x30, 0x14, 0xcc, 0x3a, 0x8b, 0xbc, 0xc7, 0xee, 0x98, 0xbd, 0xd8, 0x87, 0x35,
+	0x6f, 0x74, 0x98, 0xf1, 0x53, 0xe7, 0x65, 0xfc, 0x15, 0x3e, 0x3e, 0xe4, 0xd5, 0x96, 0x46, 0xb6,
+	0x41, 0x08, 0x5e, 0xd1, 0xba, 0x9e, 0xdd, 0x0a, 0x6c, 0x83, 0x50, 0x79, 0xad, 0x4b, 0xae, 0x81,
+	0x37, 0x20, 0x10, 0xe3, 0x31, 0x13, 0x56, 0xe0, 0x2d, 0x35, 0x3f, 0xd4, 0x3b, 0x86, 0x2b, 0xe3,
+	0xd3, 0x07, 0xfd, 0xdb, 0x34, 0x45, 0x7f, 0xfd, 0x4c, 0x53, 0x12, 0x74, 0x6d, 0x8b, 0x23, 0x88,
+	0x82, 0xfe, 0xe8, 0x4d, 0xf0, 0xf0, 0x2a, 0x43, 0x73, 0x03, 0xf4, 0x3e, 0x7b, 0xc8, 0xea, 0xbe,
+	0xd5, 0xb9, 0x03, 0xeb, 0xfe, 0x69, 0x84, 0x89, 0x84, 0x07, 0x2e, 0xde, 0x49, 0x04, 0x89, 0x44,
+	0xfa, 0x9f, 0x79, 0x48, 0x37, 0x2d, 0x6c, 0xd3, 0x49, 0x22, 0x7d, 0x20, 0x8f, 0x08, 0x13, 0x01,
+	0x22, 0xfc, 0x18, 0xf2, 0xa6, 0x37, 0x88, 0xe9, 0x6b, 0xee, 0x0c, 0xce, 0xf0, 0xe7, 0xdf, 0x24,
+	0x2a, 0x94, 0x73, 0xfe, 0x50, 0xaa, 0xd1, 0x5f, 0xf0, 0x79, 0x27, 0x49, 0xe7, 0x78, 0x65, 0xc2,
+	0x1c, 0x23, 0xcc, 0xb3, 0x0e, 0xa9, 0x2e, 0x76, 0x55, 0x4d, 0xe7, 0x47, 0xc6, 0xbf, 0x22, 0x18,
+	0x69, 0x3e, 0x8a, 0x91, 0x42, 0x36, 0x20, 0x35, 0x62, 0x03, 0xae, 0x42, 0xc6, 0x55, 0xed, 0x1e,
+	0x76, 0x59, 0x33, 0xbb, 0x42, 0xc0, 0x44, 0xa4, 0x83, 0x24, 0x4f, 0x7c, 0xb0, 0x19, 0x58, 0x68,
+	0x55, 0x1b, 0x5b, 0x11, 0x6f, 0x75, 0x11, 0x92, 0x5b, 0xcd, 0x46, 0x95, 0x3d, 0xd2, 0xf2, 0xfd,
+	0xa6, 0xbc, 0x47, 0x1f, 0xa9, 0xf4, 0x9f, 0x09, 0x48, 0x52, 0xc5, 0xac, 0x42, 0x61, 0xef, 0xd3,
+	0x56, 0x75, 0x64, 0x42, 0x04, 0xf9, 0x8a, 0x5c, 0x2d, 0xef, 0x55, 0x95, 0x4a, 0x7d, 0xbf, 0xbd,
+	0x57, 0x95, 0x0b, 0x02, 0x91, 0x6d, 0x55, 0xeb, 0xd5, 0x80, 0x2c, 0x41, 0x64, 0xfb, 0xad, 0x6d,
+	0xb9, 0xbc, 0x55, 0x55, 0x76, 0xcb, 0x54, 0x36, 0x87, 0x96, 0x21, 0xe7, 0xc9, 0x1a, 0xcd, 0xad,
+	0x6a, 0xbb, 0x90, 0x24, 0xdd, 0xe4, 0x6a, 0xab, 0x5c, 0x93, 0xfd, 0xa1, 0xf3, 0x6c, 0xe8, 0x56,
+	0x70, 0x89, 0x14, 0x01, 0xc3, 0x97, 0x25, 0x23, 0x95, 0x56, 0xb3, 0x59, 0x2f, 0x2c, 0x10, 0x29,
+	0x5f, 0x78, 0x28, 0x5d, 0x44, 0x97, 0x41, 0x6c, 0x57, 0xf7, 0x86, 0x22, 0x65, 0xb7, 0xdc, 0x28,
+	0x6f, 0x57, 0x77, 0xab, 0x8d, 0xbd, 0x42, 0x1a, 0xad, 0xc1, 0x72, 0x79, 0x7f, 0xaf, 0xa9, 0xf0,
+	0x65, 0x19, 0x10, 0x20, 0x0a, 0xa4, 0xe2, 0x30, 0xc0, 0x0c, 0xca, 0x03, 0x90, 0xc9, 0xea, 0xe5,
+	0xfb, 0xd5, 0x7a, 0xbb, 0x90, 0x45, 0x2b, 0xb0, 0x44, 0xbe, 0xd9, 0x9e, 0x94, 0xf2, 0xfe, 0xde,
+	0x4e, 0x21, 0x47, 0xb5, 0x1f, 0x5a, 0xb1, 0x5d, 0xfb, 0xac, 0x5a, 0xc8, 0xfb, 0xf2, 0xea, 0xde,
+	0xa3, 0xa6, 0xfc, 0x50, 0x69, 0x35, 0xeb, 0xb5, 0xca, 0xa7, 0x85, 0x25, 0xe9, 0x57, 0x04, 0x58,
+	0xad, 0x50, 0xd3, 0xc7, 0x39, 0x50, 0xc6, 0xdf, 0x1d, 0x60, 0xc7, 0x25, 0x81, 0xb9, 0x65, 0x9b,
+	0x9f, 0xe3, 0x8e, 0x4b, 0x38, 0x83, 0x3d, 0x83, 0x34, 0x97, 0xd4, 0xba, 0x91, 0x6f, 0xe1, 0x1d,
+	0x58, 0xe0, 0x06, 0x9f, 0x27, 0x22, 0x2e, 0x9f, 0x65, 0x38, 0x65, 0xaf, 0xb3, 0x84, 0x61, 0x79,
+	0x1b, 0xbb, 0xd3, 0xaf, 0x4f, 0x73, 0x09, 0xdc, 0xbb, 0xee, 0xf2, 0x38, 0x2b, 0xed, 0xb9, 0xd5,
+	0x5d, 0xe9, 0xc7, 0x02, 0xac, 0x32, 0x86, 0x9f, 0xf5, 0x52, 0xe8, 0x2e, 0xa4, 0x06, 0x74, 0x25,
+	0x1e, 0xd8, 0x48, 0x67, 0x29, 0x82, 0x61, 0x92, 0xf9, 0x08, 0xe9, 0x5f, 0x04, 0x58, 0x63, 0x22,
+	0xdf, 0xdf, 0x9e, 0x19, 0xce, 0x0d, 0xc8, 0x86, 0x4c, 0x03, 0xb3, 0x70, 0x60, 0x0c, 0x6d, 0xc2,
+	0x35, 0xde, 0xc3, 0x63, 0x50, 0x46, 0x1d, 0x34, 0x76, 0xf3, 0x8c, 0x5f, 0x38, 0x25, 0x98, 0x1a,
+	0x49, 0x09, 0x4a, 0xff, 0x21, 0xc0, 0x95, 0x36, 0x76, 0xa3, 0x18, 0xff, 0x39, 0xee, 0xeb, 0x63,
+	0xc8, 0x04, 0x6d, 0xd5, 0xfc, 0x05, 0x6d, 0x55, 0x70, 0xb0, 0xf4, 0x3b, 0x02, 0x88, 0x6d, 0xec,
+	0xd6, 0x43, 0x41, 0xe3, 0xec, 0x36, 0x17, 0x11, 0xb6, 0x26, 0xa3, 0xc2, 0x56, 0xe9, 0x87, 0x02,
+	0xbc, 0xd0, 0xc6, 0xee, 0x98, 0xc3, 0x31, 0x3b, 0x68, 0xd1, 0x81, 0x72, 0x32, 0x26, 0x50, 0x96,
+	0x7e, 0x2a, 0xc0, 0x7a, 0x1b, 0xbb, 0x21, 0x57, 0x66, 0x66, 0xd8, 0xc6, 0xe2, 0xe9, 0xe4, 0x57,
+	0x8a, 0xa7, 0xa5, 0x1f, 0x08, 0xb0, 0x42, 0x4f, 0x9b, 0xbb, 0x1b, 0xb3, 0x43, 0x1c, 0x8a, 0xad,
+	0x93, 0x23, 0xb1, 0xb5, 0xf4, 0x1b, 0x02, 0xac, 0x30, 0x9e, 0x60, 0x7e, 0xcc, 0xec, 0x70, 0xbc,
+	0x02, 0xf9, 0x11, 0x3f, 0x8a, 0x9d, 0x68, 0xae, 0x1f, 0x72, 0xa0, 0xbe, 0x4c, 0xc0, 0x2a, 0xb9,
+	0x6e, 0xc3, 0x64, 0xcb, 0xcc, 0x10, 0xed, 0x40, 0x4a, 0xed, 0xb8, 0x1e, 0x92, 0x7c, 0x4c, 0x5a,
+	0x20, 0x0a, 0xcc, 0x66, 0x99, 0x8e, 0x93, 0xf9, 0x78, 0xf4, 0xae, 0xcf, 0xd4, 0xe7, 0x4c, 0x20,
+	0x79, 0x34, 0xfd, 0x21, 0xa4, 0xd8, 0x54, 0xe1, 0x34, 0x63, 0x01, 0xb2, 0xc4, 0xce, 0xb6, 0xca,
+	0xed, 0xf6, 0xa3, 0xa6, 0xbc, 0x55, 0x10, 0x88, 0x95, 0xdf, 0xae, 0x36, 0xaa, 0x32, 0xf1, 0x18,
+	0x7c, 0x71, 0x42, 0x3a, 0x82, 0xd5, 0x2d, 0xac, 0xe3, 0xd9, 0x1b, 0x23, 0x69, 0x07, 0x56, 0xea,
+	0x9a, 0xe3, 0xd9, 0xd7, 0x29, 0xee, 0xab, 0x34, 0x80, 0xd5, 0xf0, 0x4c, 0x8e, 0x65, 0x1a, 0x0e,
+	0x46, 0xef, 0xc1, 0x22, 0x5f, 0xce, 0x11, 0x05, 0x9a, 0xa7, 0x39, 0xdb, 0xf2, 0xfb, 0xbd, 0xd1,
+	0x4b, 0x90, 0xeb, 0x6b, 0x8e, 0x43, 0xd8, 0x82, 0xac, 0xe0, 0x88, 0x09, 0x7a, 0xcd, 0xb3, 0x5c,
+	0xf8, 0x19, 0x91, 0x49, 0xc7, 0xb0, 0xb2, 0x8d, 0x5d, 0xdf, 0xef, 0x9d, 0x42, 0x53, 0xd7, 0x20,
+	0x3b, 0xf4, 0xd6, 0x7d, 0x5d, 0x65, 0x7c, 0x59, 0xad, 0x2b, 0x7d, 0x0c, 0x6b, 0x64, 0x8f, 0xfe,
+	0x6a, 0xd3, 0xe8, 0xcb, 0x80, 0xf5, 0x0a, 0x89, 0xb4, 0xf5, 0x67, 0x84, 0xfd, 0x29, 0xac, 0x8f,
+	0x62, 0xe7, 0x27, 0xf4, 0x21, 0x80, 0xdf, 0xd1, 0x3b, 0xa3, 0x17, 0xcf, 0x0e, 0x2f, 0xe4, 0xc0,
+	0x88, 0xf3, 0x9d, 0xd3, 0x43, 0x58, 0xdf, 0xc6, 0x2e, 0x21, 0x77, 0x6c, 0x4f, 0xcb, 0xe6, 0xd2,
+	0xaf, 0x26, 0x20, 0x1b, 0x9c, 0x0a, 0xbd, 0x03, 0x97, 0xba, 0xf8, 0x50, 0x1d, 0xe8, 0xee, 0x58,
+	0x5a, 0x89, 0x4d, 0xb8, 0xc6, 0x9b, 0x47, 0xd2, 0x4a, 0x9b, 0xb0, 0x72, 0xa2, 0xea, 0x5a, 0x38,
+	0x96, 0xf7, 0xea, 0xa9, 0xcb, 0xb4, 0x29, 0x10, 0xca, 0x3b, 0x2c, 0x0a, 0x66, 0xeb, 0x04, 0xdc,
+	0x9a, 0xa4, 0x17, 0x05, 0xd3, 0x96, 0x61, 0x14, 0x7c, 0x03, 0xd8, 0x14, 0x81, 0xbe, 0x8e, 0x38,
+	0x4f, 0xe7, 0x5e, 0xa2, 0x0d, 0x7e, 0x57, 0x07, 0xdd, 0x86, 0x35, 0xd6, 0x37, 0xcc, 0xa6, 0xac,
+	0x56, 0x9a, 0x96, 0x19, 0xcc, 0x50, 0x50, 0xea, 0x48, 0x7f, 0x22, 0xc0, 0x1a, 0xf3, 0xcf, 0x67,
+	0xef, 0x0d, 0xde, 0x85, 0xb4, 0xef, 0x35, 0x71, 0xeb, 0x38, 0x21, 0x11, 0xbc, 0xe8, 0x79, 0x54,
+	0xd2, 0xaf, 0x0b, 0xb0, 0xc6, 0xf8, 0xec, 0xff, 0x81, 0xd7, 0x4a, 0xc8, 0x95, 0x3c, 0x04, 0x0f,
+	0xca, 0xec, 0x6c, 0xb4, 0xf4, 0x6b, 0x02, 0xa0, 0xed, 0xa1, 0x77, 0xfb, 0x3c, 0x37, 0xfd, 0xdf,
+	0x49, 0x58, 0xf4, 0x70, 0x44, 0xe6, 0x2f, 0xde, 0x85, 0x14, 0x77, 0x7d, 0x12, 0xe7, 0x2b, 0xb7,
+	0xf0, 0xee, 0x17, 0x2c, 0xed, 0x9c, 0x99, 0x4c, 0x16, 0x61, 0xc1, 0x7b, 0xb5, 0x2c, 0x9f, 0xec,
+	0x7d, 0xc6, 0x25, 0x2d, 0x0f, 0xe3, 0x92, 0x96, 0xf7, 0xfc, 0x6c, 0x49, 0x8f, 0xfa, 0x00, 0x2f,
+	0x9f, 0x79, 0x55, 0x27, 0xa7, 0x69, 0x8f, 0xa2, 0x92, 0x22, 0x23, 0x61, 0x42, 0x72, 0x8a, 0x30,
+	0x01, 0x55, 0x00, 0xfa, 0xaa, 0xa1, 0xf6, 0x70, 0x1f, 0x1b, 0x2e, 0x77, 0x37, 0x5e, 0x8a, 0x9d,
+	0x6a, 0xd7, 0xef, 0x2a, 0x07, 0x86, 0x91, 0x78, 0x7d, 0xca, 0xcc, 0xe8, 0x3a, 0x20, 0xfe, 0xa1,
+	0x3c, 0xaa, 0xed, 0xed, 0x28, 0x2c, 0x0f, 0x3a, 0x37, 0x9a, 0x31, 0x4d, 0x86, 0x32, 0xa6, 0xf3,
+	0xc3, 0x8c, 0x69, 0x4a, 0xfa, 0x53, 0x01, 0xf2, 0x61, 0x88, 0xc4, 0x38, 0x91, 0xad, 0x2a, 0x03,
+	0xab, 0x67, 0xab, 0x5d, 0xaf, 0x00, 0x4f, 0xb7, 0xbf, 0xcf, 0x44, 0xe8, 0x2a, 0x53, 0xa5, 0x62,
+	0x63, 0x4b, 0xd5, 0x6c, 0x5e, 0x31, 0x05, 0x22, 0x92, 0xa9, 0x04, 0xb5, 0x60, 0x89, 0x0f, 0x57,
+	0x4c, 0xcb, 0xcb, 0xf0, 0xc5, 0x97, 0x36, 0xca, 0xc3, 0xb9, 0x9b, 0xac, 0xbb, 0x9c, 0x1f, 0x84,
+	0xbe, 0xa5, 0x3e, 0xa0, 0xf1, 0x5e, 0xe8, 0x5b, 0x70, 0x29, 0x88, 0x55, 0x71, 0x5c, 0xd5, 0x76,
+	0x59, 0x2e, 0x9b, 0xbd, 0x96, 0xd5, 0x00, 0xec, 0x36, 0x69, 0xa4, 0x55, 0x81, 0x89, 0x15, 0x50,
+	0xe9, 0x5f, 0x05, 0xb8, 0x1c, 0x88, 0x74, 0x03, 0x27, 0xf8, 0x1c, 0x03, 0xdd, 0xaf, 0xe5, 0xd6,
+	0x7d, 0xc9, 0x02, 0x35, 0x6f, 0x67, 0x6d, 0xed, 0x31, 0x7e, 0x9e, 0x7b, 0xba, 0xc2, 0x4b, 0x96,
+	0x8c, 0x87, 0xe6, 0x29, 0x0f, 0xa5, 0x0d, 0x8f, 0x80, 0xa4, 0xdf, 0x16, 0xe0, 0x45, 0xd9, 0xd4,
+	0xf5, 0x03, 0xb5, 0x73, 0xec, 0x41, 0xe6, 0xc7, 0xf9, 0x3c, 0xf9, 0x79, 0x9f, 0x79, 0x96, 0x01,
+	0xa3, 0xc4, 0x9d, 0xb3, 0x70, 0x05, 0x56, 0xb8, 0x58, 0x05, 0x56, 0x7a, 0x02, 0x2b, 0x51, 0x19,
+	0xf3, 0xd8, 0xdf, 0x65, 0xa0, 0x97, 0x21, 0xdf, 0xd7, 0x8c, 0x20, 0x93, 0xb3, 0x5f, 0x9f, 0x65,
+	0xfb, 0x9a, 0x31, 0x64, 0x71, 0xd2, 0x4b, 0xfd, 0x62, 0x9c, 0xef, 0xb3, 0x7d, 0xf5, 0x0b, 0xbf,
+	0x97, 0xf4, 0xb7, 0x09, 0x28, 0x90, 0x60, 0x98, 0x96, 0x79, 0x66, 0xa7, 0xdc, 0x83, 0xf1, 0x7a,
+	0x30, 0xfb, 0x1d, 0xdb, 0xfb, 0x71, 0x81, 0x5f, 0x08, 0xd1, 0x57, 0x2f, 0x0c, 0xcf, 0x47, 0x17,
+	0x86, 0xbf, 0x8e, 0x12, 0xd7, 0xf7, 0x05, 0x1a, 0x2e, 0x07, 0xea, 0xc6, 0x33, 0x53, 0x5f, 0xe0,
+	0x2e, 0x24, 0xc3, 0x3f, 0x97, 0xf9, 0x1c, 0xd6, 0x29, 0xc3, 0xd5, 0x5a, 0x32, 0xff, 0xc1, 0xe3,
+	0xec, 0x5c, 0xa5, 0x3e, 0x7c, 0xb3, 0x62, 0xf6, 0x2d, 0xe2, 0x23, 0x3e, 0x8b, 0xe5, 0x7e, 0x26,
+	0xc0, 0x25, 0xc2, 0x59, 0xa1, 0x92, 0xfa, 0xcc, 0x54, 0x3c, 0x5e, 0xe7, 0x4f, 0x7e, 0xc5, 0x3a,
+	0xff, 0xed, 0x3f, 0x78, 0x1d, 0xf2, 0x3c, 0x86, 0x61, 0x74, 0x6c, 0xa3, 0x3f, 0x14, 0x20, 0x1b,
+	0x8c, 0xbc, 0x51, 0xb4, 0x0b, 0x12, 0x11, 0xe6, 0x17, 0x5f, 0x3f, 0x47, 0x4f, 0xc6, 0x43, 0xd2,
+	0xbb, 0xdf, 0xff, 0xf9, 0x7f, 0xfd, 0x56, 0xe2, 0x16, 0x2a, 0x95, 0x4e, 0x6e, 0x95, 0xb8, 0x36,
+	0x9c, 0xd2, 0x93, 0xa1, 0xa6, 0x9e, 0x96, 0x68, 0xf0, 0x57, 0x7a, 0x42, 0xfe, 0x79, 0x5a, 0xf2,
+	0xa3, 0xf8, 0xdf, 0x17, 0x00, 0x86, 0x19, 0x7c, 0x14, 0xfd, 0x8b, 0xb9, 0xb1, 0x14, 0x7f, 0xf1,
+	0xcc, 0x24, 0x81, 0xb4, 0x45, 0xd1, 0x7c, 0x88, 0xee, 0x5d, 0x10, 0x4d, 0xe9, 0xc9, 0xf0, 0x9c,
+	0x9e, 0xa2, 0xdf, 0x15, 0x20, 0x17, 0xaa, 0x6f, 0xa0, 0x68, 0x85, 0x44, 0xd5, 0x40, 0x8a, 0x13,
+	0x22, 0x64, 0xe9, 0x2e, 0x85, 0x78, 0x47, 0xba, 0xa8, 0xc2, 0xee, 0x0a, 0x37, 0xd0, 0x1f, 0x0b,
+	0x90, 0x0b, 0x55, 0x23, 0x62, 0x80, 0x45, 0x55, 0x2c, 0x26, 0x02, 0xdb, 0xa6, 0xc0, 0xca, 0xc5,
+	0xa9, 0x74, 0x47, 0x50, 0xfe, 0x93, 0x00, 0xf9, 0x70, 0x31, 0x02, 0xdd, 0x38, 0x03, 0xe6, 0x48,
+	0x18, 0x34, 0x11, 0x67, 0x8f, 0xe2, 0x54, 0xa5, 0x5f, 0x9a, 0x06, 0x67, 0xc9, 0xb7, 0x85, 0xa5,
+	0x27, 0x41, 0x13, 0xfc, 0xb4, 0xc4, 0x52, 0x75, 0x64, 0x1f, 0xff, 0x1e, 0x76, 0x60, 0x82, 0x86,
+	0xf2, 0x76, 0x9c, 0x09, 0x89, 0xaf, 0x58, 0x4c, 0xdc, 0x97, 0x4e, 0xf7, 0x75, 0x28, 0xa9, 0xb3,
+	0xd9, 0x57, 0x20, 0xaa, 0x20, 0x9b, 0xfb, 0x2b, 0x01, 0x96, 0xc7, 0xea, 0x0f, 0xe8, 0xcd, 0x58,
+	0xd3, 0x18, 0x55, 0xa7, 0x98, 0xb8, 0xa5, 0x26, 0xdd, 0x52, 0x4d, 0xda, 0x9a, 0x6a, 0x4b, 0xbc,
+	0x42, 0x41, 0x50, 0xff, 0x03, 0xb3, 0x7f, 0xe3, 0x3f, 0x87, 0x88, 0x4f, 0xe6, 0xc6, 0x14, 0x32,
+	0x26, 0x62, 0x97, 0x29, 0xf6, 0xba, 0xb4, 0x3d, 0x15, 0xf6, 0x61, 0xfd, 0x82, 0xc0, 0xff, 0x73,
+	0x01, 0x96, 0x46, 0x6a, 0x17, 0xe8, 0x66, 0x1c, 0xf2, 0x88, 0x0a, 0xc7, 0x44, 0xd0, 0x0d, 0x0a,
+	0x7a, 0x47, 0xaa, 0x4c, 0x05, 0x9a, 0x95, 0x2e, 0x08, 0xe0, 0x2f, 0x05, 0xc8, 0x06, 0xeb, 0x16,
+	0x31, 0x36, 0x24, 0xa2, 0xb4, 0x31, 0x11, 0xea, 0xb7, 0x29, 0xd4, 0x87, 0xd2, 0x83, 0x29, 0xef,
+	0x06, 0x5f, 0x96, 0xa0, 0xfd, 0x33, 0x01, 0xb2, 0xc1, 0xea, 0x46, 0x0c, 0xda, 0x88, 0x02, 0xc8,
+	0x33, 0x52, 0x2c, 0xcb, 0xe1, 0x11, 0xa8, 0x7f, 0x29, 0x40, 0x2e, 0x54, 0x6a, 0x88, 0x61, 0xf2,
+	0xa8, 0x72, 0xc4, 0x44, 0xb0, 0xfb, 0x14, 0x6c, 0x53, 0xfa, 0x78, 0x2a, 0x26, 0x77, 0x82, 0x4b,
+	0x13, 0xcc, 0x7f, 0x24, 0x40, 0x2e, 0x54, 0x7e, 0x88, 0xc1, 0x1c, 0x55, 0xa2, 0x98, 0x88, 0x99,
+	0x5b, 0xee, 0x1b, 0xd3, 0x59, 0xee, 0x1f, 0x0b, 0x90, 0x0f, 0x67, 0xb3, 0x63, 0x4c, 0x4f, 0x64,
+	0xba, 0xbe, 0x78, 0xf3, 0x5c, 0x7d, 0xb9, 0xe7, 0xf3, 0x3e, 0x45, 0xfc, 0x36, 0xba, 0x75, 0x4e,
+	0xc4, 0x81, 0xcc, 0xf8, 0x8f, 0x04, 0xc8, 0x06, 0xab, 0x13, 0x31, 0x17, 0x35, 0xa2, 0x80, 0x31,
+	0x51, 0x8f, 0x3b, 0x14, 0xd5, 0x7d, 0xf4, 0xd1, 0x85, 0x51, 0x95, 0x9e, 0x04, 0x4b, 0x05, 0x4f,
+	0xd1, 0x4f, 0x04, 0x58, 0x1a, 0xa9, 0x44, 0xc4, 0x90, 0x55, 0x74, 0xbd, 0xa2, 0xb8, 0xee, 0x75,
+	0xf6, 0xfe, 0xff, 0xd3, 0x66, 0xb5, 0x6f, 0xb9, 0xa7, 0x17, 0x66, 0xd6, 0x58, 0x88, 0x77, 0x3b,
+	0x74, 0x61, 0x72, 0x37, 0x7f, 0x28, 0xc0, 0xd2, 0x48, 0x1d, 0x21, 0x06, 0x6c, 0x74, 0xb5, 0xa1,
+	0x78, 0x2d, 0xe6, 0xf9, 0x0d, 0x7b, 0x4a, 0x1f, 0x50, 0xdc, 0xdf, 0x42, 0x6f, 0x9f, 0x13, 0xb7,
+	0x43, 0x07, 0xf3, 0x74, 0xe8, 0xcf, 0x04, 0xc8, 0x85, 0x22, 0x79, 0x14, 0xef, 0x64, 0x8f, 0xa6,
+	0xa0, 0x8b, 0x37, 0xce, 0xd3, 0x95, 0x5f, 0x4b, 0xce, 0x54, 0xe8, 0xc1, 0xd7, 0xe3, 0x46, 0xa0,
+	0xbf, 0x16, 0x20, 0x13, 0x48, 0x56, 0xa3, 0xd7, 0xe2, 0xb4, 0x3a, 0xea, 0xc7, 0x9d, 0x9d, 0x8d,
+	0x90, 0xbe, 0x43, 0x71, 0x3e, 0x42, 0xfb, 0x33, 0x71, 0x77, 0xd0, 0x5f, 0x08, 0x90, 0x0f, 0xd7,
+	0x40, 0x62, 0x98, 0x20, 0xb2, 0x50, 0xf2, 0x8c, 0xac, 0x97, 0x8f, 0x9e, 0x5c, 0xe1, 0xbf, 0x17,
+	0x20, 0x1f, 0xae, 0x86, 0xc4, 0x20, 0x8e, 0x2c, 0x99, 0x4c, 0x44, 0xcc, 0xf5, 0x7d, 0x63, 0x46,
+	0xfa, 0xfe, 0x37, 0x01, 0x2e, 0xc5, 0xe4, 0xcf, 0xd0, 0xdb, 0x91, 0xd0, 0xce, 0xce, 0xb6, 0x4d,
+	0xdc, 0x8f, 0x46, 0xf7, 0xd3, 0x91, 0x7e, 0x79, 0x26, 0xfb, 0xb9, 0x6b, 0x73, 0x74, 0x3c, 0x10,
+	0x58, 0x8b, 0xcc, 0xd1, 0xa2, 0x5b, 0x93, 0xe2, 0x80, 0xb1, 0x7c, 0xee, 0xc4, 0x7d, 0x19, 0x74,
+	0x5f, 0x47, 0x52, 0x67, 0x36, 0x61, 0x00, 0xb5, 0xea, 0x1e, 0x26, 0xb2, 0xb9, 0x9f, 0x08, 0x90,
+	0xf6, 0x73, 0x5f, 0xe8, 0x95, 0x73, 0xe5, 0xc6, 0x26, 0x6e, 0xe2, 0x13, 0xba, 0x89, 0x96, 0xf4,
+	0x70, 0xaa, 0x4d, 0x84, 0x93, 0x6d, 0xdc, 0x81, 0xce, 0x85, 0xf2, 0x5f, 0xf1, 0x6e, 0xd3, 0x58,
+	0x8e, 0xec, 0x19, 0x79, 0xfc, 0xc3, 0xff, 0xc7, 0x41, 0x00, 0xff, 0x0d, 0xf1, 0xf8, 0xc3, 0xc9,
+	0xb2, 0x38, 0x8f, 0x3f, 0x32, 0xa5, 0x36, 0x11, 0xf4, 0x23, 0x0a, 0xfa, 0xdb, 0x52, 0x7d, 0x3a,
+	0x5f, 0x8f, 0x2e, 0x6e, 0x79, 0x8b, 0x13, 0xe4, 0xff, 0x28, 0x00, 0x1a, 0x4f, 0xbd, 0xa1, 0xcd,
+	0x68, 0x12, 0x8d, 0xcb, 0xd1, 0x4d, 0xc4, 0xff, 0x19, 0xc5, 0xbf, 0x27, 0x35, 0xa7, 0xc2, 0xdf,
+	0xf1, 0xd6, 0x0f, 0x6d, 0xe1, 0x9f, 0x59, 0xb8, 0x15, 0xac, 0x40, 0xc4, 0x87, 0x5b, 0x11, 0x75,
+	0x8a, 0x89, 0xe0, 0x8f, 0x28, 0xf8, 0x03, 0xe9, 0x3b, 0x33, 0x7b, 0xab, 0x04, 0x0d, 0xd9, 0xca,
+	0xdf, 0x09, 0x34, 0x67, 0x1e, 0xfe, 0xaf, 0x91, 0x6f, 0xc4, 0xee, 0x25, 0x22, 0x7f, 0x39, 0x71,
+	0x33, 0xbf, 0x48, 0x37, 0x23, 0x4b, 0xbb, 0xd3, 0x46, 0x0d, 0xa1, 0xd5, 0xef, 0x0a, 0x37, 0xee,
+	0x1b, 0x70, 0xa9, 0x63, 0xf6, 0xa3, 0x96, 0xbf, 0xbf, 0xc2, 0xc3, 0x04, 0x1e, 0x9c, 0xb7, 0x88,
+	0xa7, 0xd8, 0x12, 0x3e, 0xbb, 0xc7, 0xfb, 0xf6, 0x4c, 0x5d, 0x35, 0x7a, 0x9b, 0xa6, 0xdd, 0x2b,
+	0xf5, 0xb0, 0x41, 0xfd, 0xc8, 0x12, 0x6b, 0x52, 0x2d, 0xcd, 0x09, 0xfd, 0xb7, 0xfd, 0x0f, 0xfc,
+	0x8f, 0x83, 0x14, 0xed, 0xf8, 0xf6, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0xef, 0x01, 0xa7, 0x6c,
+	0xde, 0x3f, 0x00, 0x00,
 }
diff --git a/googleapis/datastore/v1/datastore.pb.go b/googleapis/datastore/v1/datastore.pb.go
index 4b82961d..1bf5667a 100644
--- a/googleapis/datastore/v1/datastore.pb.go
+++ b/googleapis/datastore/v1/datastore.pb.go
@@ -25,6 +25,7 @@ It has these top-level messages:
 	Mutation
 	MutationResult
 	ReadOptions
+	TransactionOptions
 	PartitionId
 	Key
 	ArrayValue
@@ -388,6 +389,8 @@ func (m *RunQueryResponse) GetQuery() *Query {
 type BeginTransactionRequest struct {
 	// The ID of the project against which to make the request.
 	ProjectId string `protobuf:"bytes,8,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// Options for a new transaction.
+	TransactionOptions *TransactionOptions `protobuf:"bytes,10,opt,name=transaction_options,json=transactionOptions" json:"transaction_options,omitempty"`
 }
 
 func (m *BeginTransactionRequest) Reset()                    { *m = BeginTransactionRequest{} }
@@ -402,6 +405,13 @@ func (m *BeginTransactionRequest) GetProjectId() string {
 	return ""
 }
 
+func (m *BeginTransactionRequest) GetTransactionOptions() *TransactionOptions {
+	if m != nil {
+		return m.TransactionOptions
+	}
+	return nil
+}
+
 // The response for [Datastore.BeginTransaction][google.datastore.v1.Datastore.BeginTransaction].
 type BeginTransactionResponse struct {
 	// The transaction identifier (always present).
@@ -1067,6 +1077,160 @@ func _ReadOptions_OneofSizer(msg proto.Message) (n int) {
 	return n
 }
 
+// Options for beginning a new transaction.
+type TransactionOptions struct {
+	// The `mode` of the transaction, indicating whether write operations are
+	// supported.
+	//
+	// Types that are valid to be assigned to Mode:
+	//	*TransactionOptions_ReadWrite_
+	//	*TransactionOptions_ReadOnly_
+	Mode isTransactionOptions_Mode `protobuf_oneof:"mode"`
+}
+
+func (m *TransactionOptions) Reset()                    { *m = TransactionOptions{} }
+func (m *TransactionOptions) String() string            { return proto.CompactTextString(m) }
+func (*TransactionOptions) ProtoMessage()               {}
+func (*TransactionOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
+
+type isTransactionOptions_Mode interface {
+	isTransactionOptions_Mode()
+}
+
+type TransactionOptions_ReadWrite_ struct {
+	ReadWrite *TransactionOptions_ReadWrite `protobuf:"bytes,1,opt,name=read_write,json=readWrite,oneof"`
+}
+type TransactionOptions_ReadOnly_ struct {
+	ReadOnly *TransactionOptions_ReadOnly `protobuf:"bytes,2,opt,name=read_only,json=readOnly,oneof"`
+}
+
+func (*TransactionOptions_ReadWrite_) isTransactionOptions_Mode() {}
+func (*TransactionOptions_ReadOnly_) isTransactionOptions_Mode()  {}
+
+func (m *TransactionOptions) GetMode() isTransactionOptions_Mode {
+	if m != nil {
+		return m.Mode
+	}
+	return nil
+}
+
+func (m *TransactionOptions) GetReadWrite() *TransactionOptions_ReadWrite {
+	if x, ok := m.GetMode().(*TransactionOptions_ReadWrite_); ok {
+		return x.ReadWrite
+	}
+	return nil
+}
+
+func (m *TransactionOptions) GetReadOnly() *TransactionOptions_ReadOnly {
+	if x, ok := m.GetMode().(*TransactionOptions_ReadOnly_); ok {
+		return x.ReadOnly
+	}
+	return nil
+}
+
+// XXX_OneofFuncs is for the internal use of the proto package.
+func (*TransactionOptions) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
+	return _TransactionOptions_OneofMarshaler, _TransactionOptions_OneofUnmarshaler, _TransactionOptions_OneofSizer, []interface{}{
+		(*TransactionOptions_ReadWrite_)(nil),
+		(*TransactionOptions_ReadOnly_)(nil),
+	}
+}
+
+func _TransactionOptions_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
+	m := msg.(*TransactionOptions)
+	// mode
+	switch x := m.Mode.(type) {
+	case *TransactionOptions_ReadWrite_:
+		b.EncodeVarint(1<<3 | proto.WireBytes)
+		if err := b.EncodeMessage(x.ReadWrite); err != nil {
+			return err
+		}
+	case *TransactionOptions_ReadOnly_:
+		b.EncodeVarint(2<<3 | proto.WireBytes)
+		if err := b.EncodeMessage(x.ReadOnly); err != nil {
+			return err
+		}
+	case nil:
+	default:
+		return fmt.Errorf("TransactionOptions.Mode has unexpected type %T", x)
+	}
+	return nil
+}
+
+func _TransactionOptions_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
+	m := msg.(*TransactionOptions)
+	switch tag {
+	case 1: // mode.read_write
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		msg := new(TransactionOptions_ReadWrite)
+		err := b.DecodeMessage(msg)
+		m.Mode = &TransactionOptions_ReadWrite_{msg}
+		return true, err
+	case 2: // mode.read_only
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		msg := new(TransactionOptions_ReadOnly)
+		err := b.DecodeMessage(msg)
+		m.Mode = &TransactionOptions_ReadOnly_{msg}
+		return true, err
+	default:
+		return false, nil
+	}
+}
+
+func _TransactionOptions_OneofSizer(msg proto.Message) (n int) {
+	m := msg.(*TransactionOptions)
+	// mode
+	switch x := m.Mode.(type) {
+	case *TransactionOptions_ReadWrite_:
+		s := proto.Size(x.ReadWrite)
+		n += proto.SizeVarint(1<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(s))
+		n += s
+	case *TransactionOptions_ReadOnly_:
+		s := proto.Size(x.ReadOnly)
+		n += proto.SizeVarint(2<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(s))
+		n += s
+	case nil:
+	default:
+		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
+	}
+	return n
+}
+
+// Options specific to read / write transactions.
+type TransactionOptions_ReadWrite struct {
+	// The transaction identifier of the transaction being retried.
+	PreviousTransaction []byte `protobuf:"bytes,1,opt,name=previous_transaction,json=previousTransaction,proto3" json:"previous_transaction,omitempty"`
+}
+
+func (m *TransactionOptions_ReadWrite) Reset()         { *m = TransactionOptions_ReadWrite{} }
+func (m *TransactionOptions_ReadWrite) String() string { return proto.CompactTextString(m) }
+func (*TransactionOptions_ReadWrite) ProtoMessage()    {}
+func (*TransactionOptions_ReadWrite) Descriptor() ([]byte, []int) {
+	return fileDescriptor0, []int{15, 0}
+}
+
+func (m *TransactionOptions_ReadWrite) GetPreviousTransaction() []byte {
+	if m != nil {
+		return m.PreviousTransaction
+	}
+	return nil
+}
+
+// Options specific to read-only transactions.
+type TransactionOptions_ReadOnly struct {
+}
+
+func (m *TransactionOptions_ReadOnly) Reset()                    { *m = TransactionOptions_ReadOnly{} }
+func (m *TransactionOptions_ReadOnly) String() string            { return proto.CompactTextString(m) }
+func (*TransactionOptions_ReadOnly) ProtoMessage()               {}
+func (*TransactionOptions_ReadOnly) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15, 1} }
+
 func init() {
 	proto.RegisterType((*LookupRequest)(nil), "google.datastore.v1.LookupRequest")
 	proto.RegisterType((*LookupResponse)(nil), "google.datastore.v1.LookupResponse")
@@ -1083,6 +1247,9 @@ func init() {
 	proto.RegisterType((*Mutation)(nil), "google.datastore.v1.Mutation")
 	proto.RegisterType((*MutationResult)(nil), "google.datastore.v1.MutationResult")
 	proto.RegisterType((*ReadOptions)(nil), "google.datastore.v1.ReadOptions")
+	proto.RegisterType((*TransactionOptions)(nil), "google.datastore.v1.TransactionOptions")
+	proto.RegisterType((*TransactionOptions_ReadWrite)(nil), "google.datastore.v1.TransactionOptions.ReadWrite")
+	proto.RegisterType((*TransactionOptions_ReadOnly)(nil), "google.datastore.v1.TransactionOptions.ReadOnly")
 	proto.RegisterEnum("google.datastore.v1.CommitRequest_Mode", CommitRequest_Mode_name, CommitRequest_Mode_value)
 	proto.RegisterEnum("google.datastore.v1.ReadOptions_ReadConsistency", ReadOptions_ReadConsistency_name, ReadOptions_ReadConsistency_value)
 }
@@ -1343,81 +1510,87 @@ var _Datastore_serviceDesc = grpc.ServiceDesc{
 func init() { proto.RegisterFile("google/datastore/v1/datastore.proto", fileDescriptor0) }
 
 var fileDescriptor0 = []byte{
-	// 1205 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x41, 0x6f, 0xe3, 0x44,
-	0x14, 0xae, 0x93, 0x36, 0x9b, 0xbc, 0xa4, 0x69, 0x3a, 0xbb, 0xb0, 0x26, 0xbb, 0x15, 0xc1, 0xa5,
-	0xda, 0xa8, 0xbb, 0x9b, 0xb4, 0x81, 0x15, 0xa8, 0xed, 0xa5, 0x49, 0xb3, 0x6d, 0xc4, 0x36, 0x29,
-	0xd3, 0xb4, 0x12, 0x48, 0xc8, 0x72, 0xed, 0x69, 0x30, 0x75, 0x3c, 0xae, 0x3d, 0xa9, 0x88, 0x10,
-	0x2b, 0x01, 0x5a, 0x7e, 0x00, 0xfc, 0x02, 0x2e, 0x1c, 0x10, 0x47, 0x4e, 0x88, 0x7f, 0xc1, 0x91,
-	0x2b, 0xff, 0x80, 0x3f, 0x80, 0x3c, 0x1e, 0x37, 0x75, 0xd6, 0x69, 0x82, 0xc4, 0x2d, 0xf3, 0xf2,
-	0x7d, 0x6f, 0xbe, 0xf7, 0xde, 0xcc, 0x7b, 0x63, 0x58, 0xed, 0x51, 0xda, 0xb3, 0x48, 0xd5, 0xd0,
-	0x98, 0xe6, 0x31, 0xea, 0x92, 0xea, 0xd5, 0xe6, 0x68, 0x51, 0x71, 0x5c, 0xca, 0x28, 0xba, 0x1b,
-	0x80, 0x2a, 0x23, 0xfb, 0xd5, 0x66, 0xf1, 0xa1, 0x60, 0x6a, 0x8e, 0x59, 0xd5, 0x6c, 0x9b, 0x32,
-	0x8d, 0x99, 0xd4, 0xf6, 0x02, 0x4a, 0xb1, 0x14, 0xe7, 0x97, 0xd8, 0xcc, 0x64, 0x43, 0x81, 0x78,
-	0x3b, 0x0e, 0x71, 0x39, 0x20, 0xae, 0x00, 0x28, 0x3f, 0x49, 0xb0, 0xf8, 0x82, 0xd2, 0x8b, 0x81,
-	0x83, 0xc9, 0xe5, 0x80, 0x78, 0x0c, 0xad, 0x00, 0x38, 0x2e, 0xfd, 0x82, 0xe8, 0x4c, 0x35, 0x0d,
-	0x39, 0x5d, 0x92, 0xca, 0x19, 0x9c, 0x11, 0x96, 0x96, 0x81, 0x1a, 0x90, 0x73, 0x89, 0x66, 0xa8,
-	0xd4, 0xe1, 0x4a, 0x64, 0xa9, 0x24, 0x95, 0xb3, 0xb5, 0x52, 0x25, 0x46, 0x7d, 0x05, 0x13, 0xcd,
-	0xe8, 0x04, 0x38, 0x9c, 0x75, 0x47, 0x0b, 0xf4, 0x04, 0xe6, 0x2f, 0xc8, 0xd0, 0x93, 0x93, 0xa5,
-	0x64, 0x39, 0x5b, 0x93, 0x63, 0xc9, 0x1f, 0x91, 0x21, 0xe6, 0x28, 0xe5, 0x0f, 0x09, 0xf2, 0xa1,
-	0x46, 0xcf, 0xa1, 0xb6, 0x47, 0xd0, 0x07, 0xb0, 0x70, 0x4e, 0x07, 0xb6, 0x21, 0x4b, 0xdc, 0xc3,
-	0x3b, 0xb1, 0x1e, 0x9a, 0x3c, 0x13, 0x98, 0x78, 0x03, 0x8b, 0xe1, 0x00, 0x8f, 0xb6, 0xe1, 0x4e,
-	0xdf, 0xf4, 0x3c, 0xd3, 0xee, 0xc9, 0x89, 0x59, 0xa9, 0x21, 0x03, 0xbd, 0x0f, 0x69, 0x83, 0x9c,
-	0x13, 0xd7, 0x25, 0xc6, 0x54, 0xe9, 0xd7, 0x48, 0xe5, 0xf7, 0x04, 0x2c, 0xe1, 0x81, 0xfd, 0xb1,
-	0x9f, 0xf5, 0xd9, 0x93, 0xec, 0x68, 0x2e, 0x33, 0xfd, 0x6c, 0xf9, 0x80, 0xc4, 0x2d, 0x49, 0x3e,
-	0x0a, 0x81, 0x2d, 0x03, 0x67, 0x9d, 0xd1, 0xe2, 0xff, 0xa9, 0x54, 0x0d, 0x16, 0xf8, 0x71, 0x91,
-	0x93, 0x9c, 0x5d, 0x8c, 0x65, 0xf3, 0xd0, 0x0e, 0xe6, 0x70, 0x00, 0x45, 0x3b, 0x90, 0xe9, 0x5d,
-	0x5a, 0x6a, 0xc0, 0xbb, 0xc3, 0x79, 0x2b, 0xb1, 0xbc, 0xfd, 0x4b, 0x2b, 0xa4, 0xa6, 0x7b, 0xe2,
-	0x77, 0x3d, 0x07, 0xc0, 0x99, 0x2a, 0x1b, 0x3a, 0x44, 0xf9, 0x46, 0x82, 0xc2, 0x28, 0x79, 0xa2,
-	0xfa, 0xdb, 0xb0, 0x70, 0xa6, 0x31, 0xfd, 0x73, 0x11, 0xd2, 0xda, 0x64, 0x51, 0x41, 0x05, 0xeb,
-	0x3e, 0x18, 0x07, 0x1c, 0xb4, 0x11, 0x46, 0x94, 0x98, 0x16, 0x91, 0x88, 0x47, 0xf9, 0x10, 0xee,
-	0xd7, 0x49, 0xcf, 0xb4, 0xbb, 0xae, 0x66, 0x7b, 0x9a, 0xee, 0x27, 0x66, 0xb6, 0x3a, 0x2a, 0x3b,
-	0x20, 0xbf, 0xce, 0x14, 0x41, 0x94, 0x20, 0xcb, 0x46, 0x66, 0x1e, 0x4a, 0x0e, 0xdf, 0x34, 0x29,
-	0x18, 0x96, 0x30, 0xb5, 0xac, 0x33, 0x4d, 0xbf, 0x98, 0xf1, 0xdc, 0x4c, 0xf7, 0x89, 0xa0, 0x30,
-	0xf2, 0x19, 0x28, 0x51, 0x7e, 0x4d, 0xc0, 0x62, 0x83, 0xf6, 0xfb, 0x26, 0x9b, 0x71, 0x9b, 0x6d,
-	0x98, 0xef, 0x53, 0x83, 0xc8, 0x0b, 0x25, 0xa9, 0x9c, 0xaf, 0x3d, 0x8a, 0xcd, 0x60, 0xc4, 0x61,
-	0xe5, 0x90, 0x1a, 0x04, 0x73, 0x12, 0x52, 0x62, 0x34, 0x1e, 0xcc, 0x45, 0x54, 0xa2, 0x6d, 0xc8,
-	0xf4, 0x07, 0xa2, 0xd7, 0xc9, 0x29, 0x7e, 0xd3, 0xe2, 0x4f, 0xd0, 0xa1, 0x40, 0xe1, 0x11, 0x5e,
-	0x79, 0x0e, 0xf3, 0xfe, 0x76, 0xe8, 0x1e, 0x14, 0x0e, 0x3b, 0x7b, 0x4d, 0xf5, 0xa4, 0x7d, 0x7c,
-	0xd4, 0x6c, 0xb4, 0x9e, 0xb7, 0x9a, 0x7b, 0x85, 0x39, 0xb4, 0x0c, 0x8b, 0x5d, 0xbc, 0xdb, 0x3e,
-	0xde, 0x6d, 0x74, 0x5b, 0x9d, 0xf6, 0xee, 0x8b, 0x82, 0x84, 0xde, 0x80, 0xe5, 0x76, 0xa7, 0xad,
-	0x46, 0xcd, 0x89, 0xfa, 0x9b, 0x70, 0xef, 0x86, 0x26, 0xd5, 0x23, 0x16, 0xd1, 0x19, 0x75, 0x95,
-	0x57, 0x12, 0xe4, 0xc3, 0xe8, 0x44, 0x2d, 0xdb, 0x50, 0x08, 0xf7, 0x57, 0x5d, 0x7e, 0xe4, 0xc2,
-	0xde, 0xb6, 0x7a, 0xbb, 0xec, 0xa0, 0xc1, 0x2c, 0xf5, 0x23, 0x6b, 0x0f, 0xad, 0xc2, 0xa2, 0x69,
-	0x1b, 0xe4, 0x4b, 0x75, 0xe0, 0x18, 0x1a, 0x23, 0x9e, 0x3c, 0x5f, 0x92, 0xca, 0x0b, 0x38, 0xc7,
-	0x8d, 0x27, 0x81, 0x4d, 0xd1, 0x00, 0xed, 0x5a, 0x16, 0xd5, 0x35, 0x46, 0x5a, 0x86, 0x37, 0x63,
-	0xe9, 0xc2, 0xce, 0x2b, 0xcd, 0xd4, 0x79, 0x1b, 0x70, 0x37, 0xb2, 0x85, 0x08, 0xf7, 0xbf, 0x39,
-	0xf9, 0x2d, 0x01, 0xe9, 0x30, 0x60, 0xf4, 0x0c, 0x52, 0xa6, 0xed, 0x11, 0x97, 0xf1, 0x90, 0xb2,
-	0xb5, 0x07, 0xb7, 0xb4, 0xdf, 0x83, 0x39, 0x2c, 0xc0, 0x3e, 0x2d, 0x48, 0x05, 0x3f, 0x73, 0xd3,
-	0x69, 0x01, 0x38, 0xa0, 0xf1, 0xdd, 0x52, 0x33, 0xd2, 0xf8, 0x6e, 0x35, 0x48, 0x19, 0xc4, 0x22,
-	0x8c, 0x88, 0xee, 0x35, 0x31, 0x42, 0x9f, 0x13, 0x20, 0xd1, 0x2a, 0xe4, 0xce, 0x34, 0x8f, 0xa8,
-	0x57, 0xc4, 0xf5, 0xfc, 0x73, 0xed, 0x67, 0x3e, 0x79, 0x20, 0xe1, 0xac, 0x6f, 0x3d, 0x0d, 0x8c,
-	0xf5, 0x2c, 0x64, 0xa8, 0x43, 0x5c, 0x9e, 0x8a, 0xfa, 0x0a, 0x3c, 0xd0, 0xa9, 0x7d, 0x6e, 0x99,
-	0x3a, 0x53, 0x0d, 0xc2, 0x88, 0x38, 0x66, 0xcc, 0xd5, 0x18, 0xe9, 0x0d, 0x95, 0xef, 0x24, 0xc8,
-	0x47, 0xcf, 0x09, 0x5a, 0x87, 0xe4, 0x05, 0x09, 0x5b, 0xf1, 0xe4, 0xb4, 0xfb, 0x20, 0x24, 0xc3,
-	0x9d, 0x50, 0x8a, 0x9f, 0xe9, 0x24, 0x0e, 0x97, 0xe8, 0x31, 0x2c, 0x8f, 0xed, 0x4b, 0x0c, 0x9e,
-	0xd6, 0x34, 0x2e, 0x84, 0x7f, 0xec, 0x09, 0xbb, 0xf2, 0x8f, 0x04, 0xd9, 0x1b, 0xc3, 0x01, 0x7d,
-	0x06, 0x05, 0x3e, 0x54, 0x74, 0x6a, 0x7b, 0xa6, 0xc7, 0x88, 0xad, 0x0f, 0xf9, 0x15, 0xce, 0xd7,
-	0x36, 0xa6, 0x0d, 0x16, 0xfe, 0xbb, 0x31, 0xe2, 0x1d, 0xcc, 0xe1, 0x25, 0x37, 0x6a, 0x1a, 0x6f,
-	0x0e, 0x89, 0x98, 0xe6, 0xa0, 0x1c, 0xc2, 0xd2, 0x98, 0x27, 0x54, 0x82, 0x87, 0xb8, 0xb9, 0xbb,
-	0xa7, 0x36, 0x3a, 0xed, 0xe3, 0xd6, 0x71, 0xb7, 0xd9, 0x6e, 0x7c, 0x32, 0x76, 0xed, 0x01, 0x52,
-	0xc7, 0x5d, 0xdc, 0x69, 0xef, 0x17, 0x24, 0x94, 0x83, 0x74, 0xf3, 0xb4, 0xd9, 0xee, 0x9e, 0xf0,
-	0x6b, 0x8e, 0xa0, 0x70, 0x23, 0x18, 0x3e, 0x75, 0x6a, 0x7f, 0xa5, 0x20, 0xb3, 0x17, 0x86, 0x81,
-	0x5e, 0x42, 0x2a, 0x78, 0x7e, 0x20, 0x25, 0x36, 0xc6, 0xc8, 0xfb, 0xa9, 0xb8, 0x7a, 0x2b, 0x46,
-	0xb4, 0xdc, 0xc7, 0xdf, 0xfe, 0xf9, 0xf7, 0x8f, 0x89, 0x35, 0xa5, 0xe4, 0xbf, 0xc7, 0xc4, 0xed,
-	0xf4, 0xaa, 0x5f, 0x8d, 0x6e, 0xee, 0xd7, 0x5b, 0x16, 0x67, 0x6c, 0x49, 0xeb, 0xe8, 0x7b, 0x09,
-	0xd2, 0xe1, 0x0c, 0x44, 0xef, 0xc6, 0xa7, 0x39, 0xfa, 0xbe, 0x28, 0xae, 0x4d, 0x41, 0x09, 0x19,
-	0x4f, 0xb9, 0x8c, 0x47, 0x8a, 0x32, 0x59, 0x86, 0x2b, 0x38, 0xbe, 0x90, 0x9f, 0x25, 0x28, 0x8c,
-	0xcf, 0x33, 0xf4, 0x24, 0x76, 0xab, 0x09, 0x03, 0xb3, 0xf8, 0x74, 0x46, 0xb4, 0x10, 0xf8, 0x8c,
-	0x0b, 0xac, 0x2a, 0xeb, 0x93, 0x05, 0x9e, 0x8d, 0x71, 0x7d, 0xa1, 0x2f, 0x21, 0x15, 0x74, 0xe8,
-	0x09, 0x15, 0x8b, 0x0c, 0xa7, 0x09, 0x15, 0x8b, 0xb6, 0xf8, 0x59, 0x2a, 0xa6, 0x73, 0xc6, 0x75,
-	0xc5, 0xc4, 0x98, 0x9d, 0x54, 0xb1, 0xe8, 0x64, 0x9f, 0x54, 0xb1, 0xf1, 0x59, 0x3d, 0x4b, 0xc5,
-	0x04, 0xc7, 0x17, 0xf2, 0x83, 0x04, 0xd9, 0x1b, 0x1d, 0x1c, 0xc5, 0xcf, 0xea, 0xd7, 0xc7, 0x48,
-	0xb1, 0x3c, 0x1d, 0x28, 0x14, 0x6d, 0x70, 0x45, 0xeb, 0xca, 0xda, 0x64, 0x45, 0xda, 0x88, 0xb6,
-	0x25, 0xad, 0xd7, 0x5f, 0x49, 0x70, 0x5f, 0xa7, 0xfd, 0xb8, 0x1d, 0xea, 0xf9, 0xeb, 0x6b, 0x77,
-	0xe4, 0x7f, 0x9f, 0x1c, 0x49, 0x9f, 0xee, 0x08, 0x58, 0x8f, 0x5a, 0x9a, 0xdd, 0xab, 0x50, 0xb7,
-	0x57, 0xed, 0x11, 0x9b, 0x7f, 0xbd, 0x54, 0x83, 0xbf, 0x34, 0xc7, 0xf4, 0x22, 0x5f, 0x38, 0xdb,
-	0xd7, 0x8b, 0x5f, 0x12, 0x6f, 0xed, 0x07, 0xf4, 0x86, 0x45, 0x07, 0x46, 0xe5, 0xda, 0x7b, 0xe5,
-	0x74, 0xf3, 0x2c, 0xc5, 0x9d, 0xbc, 0xf7, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x6b, 0xa3, 0xc8,
-	0x39, 0x9f, 0x0d, 0x00, 0x00,
+	// 1312 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x5f, 0x6f, 0xdb, 0x54,
+	0x14, 0xef, 0x4d, 0xdb, 0x2c, 0x39, 0xe9, 0x9f, 0xec, 0x76, 0xb0, 0x90, 0x6d, 0x22, 0xb8, 0x54,
+	0xab, 0xba, 0x2d, 0x69, 0x03, 0x13, 0xd2, 0x3a, 0x21, 0x35, 0x69, 0xb6, 0x46, 0xac, 0x49, 0xb9,
+	0xed, 0xc6, 0x1f, 0x09, 0x45, 0xae, 0x7d, 0x1b, 0x4c, 0x1d, 0x5f, 0xd7, 0xbe, 0x29, 0x44, 0x88,
+	0x49, 0x80, 0xc6, 0x1b, 0x2f, 0xe3, 0x13, 0xf0, 0xc2, 0x03, 0xe2, 0x91, 0x27, 0xc4, 0xb7, 0xe0,
+	0x91, 0x57, 0xbe, 0x01, 0x5f, 0x00, 0xf9, 0xfa, 0x3a, 0x89, 0x53, 0xbb, 0xf1, 0x24, 0xde, 0x7c,
+	0xaf, 0x7f, 0xbf, 0x73, 0x7e, 0xe7, 0x9c, 0xeb, 0x73, 0xae, 0x61, 0xb5, 0xcb, 0x58, 0xd7, 0xa4,
+	0x15, 0x5d, 0xe5, 0xaa, 0xcb, 0x99, 0x43, 0x2b, 0xe7, 0x5b, 0xa3, 0x45, 0xd9, 0x76, 0x18, 0x67,
+	0x78, 0xc5, 0x07, 0x95, 0x47, 0xfb, 0xe7, 0x5b, 0xc5, 0x9b, 0x92, 0xa9, 0xda, 0x46, 0x45, 0xb5,
+	0x2c, 0xc6, 0x55, 0x6e, 0x30, 0xcb, 0xf5, 0x29, 0xc5, 0x52, 0x94, 0x5d, 0x6a, 0x71, 0x83, 0x0f,
+	0x24, 0xe2, 0xcd, 0x28, 0xc4, 0x59, 0x9f, 0x3a, 0x12, 0xa0, 0xfc, 0x8c, 0x60, 0xf1, 0x09, 0x63,
+	0xa7, 0x7d, 0x9b, 0xd0, 0xb3, 0x3e, 0x75, 0x39, 0xbe, 0x05, 0x60, 0x3b, 0xec, 0x0b, 0xaa, 0xf1,
+	0x8e, 0xa1, 0x17, 0x32, 0x25, 0xb4, 0x9e, 0x25, 0x59, 0xb9, 0xd3, 0xd4, 0x71, 0x1d, 0x16, 0x1c,
+	0xaa, 0xea, 0x1d, 0x66, 0x0b, 0x25, 0x05, 0x54, 0x42, 0xeb, 0xb9, 0x6a, 0xa9, 0x1c, 0xa1, 0xbe,
+	0x4c, 0xa8, 0xaa, 0xb7, 0x7d, 0x1c, 0xc9, 0x39, 0xa3, 0x05, 0xbe, 0x0b, 0x73, 0xa7, 0x74, 0xe0,
+	0x16, 0x66, 0x4b, 0xb3, 0xeb, 0xb9, 0x6a, 0x21, 0x92, 0xfc, 0x01, 0x1d, 0x10, 0x81, 0x52, 0xfe,
+	0x44, 0xb0, 0x14, 0x68, 0x74, 0x6d, 0x66, 0xb9, 0x14, 0xbf, 0x07, 0xf3, 0x27, 0xac, 0x6f, 0xe9,
+	0x05, 0x24, 0x2c, 0xbc, 0x15, 0x69, 0xa1, 0x21, 0x32, 0x41, 0xa8, 0xdb, 0x37, 0x39, 0xf1, 0xf1,
+	0x78, 0x1b, 0xae, 0xf4, 0x0c, 0xd7, 0x35, 0xac, 0x6e, 0x21, 0x95, 0x94, 0x1a, 0x30, 0xf0, 0xbb,
+	0x90, 0xd1, 0xe9, 0x09, 0x75, 0x1c, 0xaa, 0x4f, 0x95, 0x3e, 0x44, 0x2a, 0x7f, 0xa4, 0x60, 0x99,
+	0xf4, 0xad, 0x0f, 0xbd, 0xac, 0x27, 0x4f, 0xb2, 0xad, 0x3a, 0xdc, 0xf0, 0xb2, 0xe5, 0x01, 0x52,
+	0x97, 0x24, 0xf9, 0x20, 0x00, 0x36, 0x75, 0x92, 0xb3, 0x47, 0x8b, 0xff, 0xa7, 0x52, 0x55, 0x98,
+	0x17, 0xc7, 0xa5, 0x30, 0x2b, 0xd8, 0xc5, 0x48, 0xb6, 0x08, 0x6d, 0x6f, 0x86, 0xf8, 0x50, 0xfc,
+	0x10, 0xb2, 0xdd, 0x33, 0xb3, 0xe3, 0xf3, 0xae, 0x08, 0xde, 0xad, 0x48, 0xde, 0xe3, 0x33, 0x33,
+	0xa0, 0x66, 0xba, 0xf2, 0xb9, 0xb6, 0x00, 0x20, 0x98, 0x1d, 0x3e, 0xb0, 0xa9, 0xf2, 0x2d, 0x82,
+	0xfc, 0x28, 0x79, 0xb2, 0xfa, 0xdb, 0x30, 0x7f, 0xac, 0x72, 0xed, 0x73, 0x19, 0xd2, 0x5a, 0xbc,
+	0x28, 0xbf, 0x82, 0x35, 0x0f, 0x4c, 0x7c, 0x0e, 0xde, 0x0c, 0x22, 0x4a, 0x4d, 0x8b, 0x48, 0xc6,
+	0xa3, 0xbc, 0x44, 0x70, 0xbd, 0x46, 0xbb, 0x86, 0x75, 0xe4, 0xa8, 0x96, 0xab, 0x6a, 0x5e, 0x66,
+	0x12, 0x16, 0xf2, 0x63, 0x58, 0xe1, 0x23, 0xd2, 0xb0, 0x14, 0x20, 0x5c, 0xdf, 0x8e, 0x74, 0x3d,
+	0xe6, 0x24, 0xa8, 0x08, 0xe6, 0x17, 0xf6, 0x94, 0x87, 0x50, 0xb8, 0xa8, 0x49, 0xe6, 0xa7, 0x04,
+	0xb9, 0x31, 0x86, 0xc8, 0xd2, 0x02, 0x19, 0xdf, 0x52, 0x08, 0x2c, 0x13, 0x66, 0x9a, 0xc7, 0xaa,
+	0x76, 0x9a, 0x30, 0x92, 0xe9, 0x36, 0x31, 0xe4, 0x47, 0x36, 0x7d, 0x25, 0xca, 0x6f, 0x29, 0x58,
+	0xac, 0xb3, 0x5e, 0xcf, 0xe0, 0x09, 0xdd, 0x6c, 0xc3, 0x5c, 0x8f, 0xe9, 0xb4, 0x30, 0x5f, 0x42,
+	0xeb, 0x4b, 0x31, 0x19, 0x0a, 0x19, 0x2c, 0xef, 0x33, 0x9d, 0x12, 0x41, 0xc2, 0x4a, 0x84, 0xc6,
+	0xbd, 0x99, 0x90, 0x4a, 0xbc, 0x0d, 0xd9, 0x5e, 0x5f, 0xb6, 0xd1, 0x42, 0x5a, 0x7c, 0xc4, 0xd1,
+	0x87, 0x73, 0x5f, 0xa2, 0xc8, 0x08, 0xaf, 0x3c, 0x82, 0x39, 0xcf, 0x1d, 0xbe, 0x06, 0xf9, 0xfd,
+	0xf6, 0x6e, 0xa3, 0xf3, 0xb4, 0x75, 0x78, 0xd0, 0xa8, 0x37, 0x1f, 0x35, 0x1b, 0xbb, 0xf9, 0x19,
+	0x7c, 0x15, 0x16, 0x8f, 0xc8, 0x4e, 0xeb, 0x70, 0xa7, 0x7e, 0xd4, 0x6c, 0xb7, 0x76, 0x9e, 0xe4,
+	0x11, 0x7e, 0x0d, 0xae, 0xb6, 0xda, 0xad, 0x4e, 0x78, 0x3b, 0x55, 0x7b, 0x1d, 0xae, 0x8d, 0x1f,
+	0x0b, 0x97, 0x9a, 0x54, 0xe3, 0xcc, 0x51, 0x5e, 0x20, 0x58, 0x0a, 0xa2, 0x93, 0xb5, 0x6c, 0x41,
+	0x3e, 0xf0, 0xdf, 0x71, 0xc4, 0x69, 0x0e, 0xda, 0xe6, 0xea, 0xe5, 0xb2, 0xfd, 0xde, 0xb5, 0xdc,
+	0x0b, 0xad, 0x5d, 0xbc, 0x0a, 0x8b, 0x86, 0xa5, 0xd3, 0xaf, 0x3a, 0x7d, 0x5b, 0x57, 0x39, 0x75,
+	0x0b, 0x73, 0x25, 0xb4, 0x3e, 0x4f, 0x16, 0xc4, 0xe6, 0x53, 0x7f, 0x4f, 0x51, 0x01, 0xef, 0x98,
+	0x26, 0xd3, 0x54, 0x4e, 0x9b, 0xba, 0x9b, 0xb0, 0x74, 0x41, 0x53, 0x47, 0x89, 0x9a, 0x7a, 0x1d,
+	0x56, 0x42, 0x2e, 0x64, 0xb8, 0xaf, 0x66, 0xe4, 0xf7, 0x14, 0x64, 0x82, 0x80, 0xf1, 0x7d, 0x48,
+	0x1b, 0x96, 0x4b, 0x1d, 0x2e, 0x42, 0xca, 0x55, 0x6f, 0x5c, 0xd2, 0xd9, 0xf7, 0x66, 0x88, 0x04,
+	0x7b, 0x34, 0x3f, 0x15, 0xe2, 0xcc, 0x4d, 0xa7, 0xf9, 0x60, 0x9f, 0x26, 0xbc, 0xa5, 0x13, 0xd2,
+	0x84, 0xb7, 0x2a, 0xa4, 0x75, 0x6a, 0x52, 0x4e, 0x65, 0x63, 0x8c, 0x8d, 0xd0, 0xe3, 0xf8, 0x48,
+	0xbc, 0x0a, 0x0b, 0xc7, 0xaa, 0x4b, 0x3b, 0xe7, 0xd4, 0x71, 0xbd, 0x73, 0xed, 0x65, 0x7e, 0x76,
+	0x0f, 0x91, 0x9c, 0xb7, 0xfb, 0xcc, 0xdf, 0xac, 0xe5, 0x20, 0xcb, 0x6c, 0xea, 0x88, 0x54, 0xd4,
+	0x6e, 0xc1, 0x0d, 0x8d, 0x59, 0x27, 0xa6, 0xa1, 0xf1, 0x8e, 0x4e, 0x39, 0x95, 0xc7, 0x8c, 0x3b,
+	0x2a, 0xa7, 0xdd, 0x81, 0xf2, 0x3d, 0x82, 0xa5, 0xf0, 0x39, 0xc1, 0x1b, 0x30, 0x7b, 0x4a, 0x83,
+	0x2e, 0x1f, 0x9f, 0x76, 0x0f, 0x84, 0x0b, 0x70, 0x25, 0x90, 0xe2, 0x65, 0x7a, 0x96, 0x04, 0x4b,
+	0x7c, 0x07, 0xae, 0x4e, 0xf8, 0xa5, 0xba, 0x48, 0x6b, 0x86, 0xe4, 0x83, 0x17, 0xbb, 0x72, 0x5f,
+	0xf9, 0x17, 0x41, 0x6e, 0x6c, 0xee, 0xe0, 0xcf, 0x20, 0x2f, 0xe6, 0x95, 0xc6, 0x2c, 0xd7, 0x70,
+	0x39, 0xb5, 0xb4, 0x81, 0xf8, 0x84, 0x97, 0xaa, 0x9b, 0xd3, 0x66, 0x96, 0x78, 0xae, 0x8f, 0x78,
+	0x7b, 0x33, 0x64, 0xd9, 0x09, 0x6f, 0x4d, 0x36, 0x87, 0x54, 0x44, 0x73, 0x50, 0xf6, 0x61, 0x79,
+	0xc2, 0x12, 0x2e, 0xc1, 0x4d, 0xd2, 0xd8, 0xd9, 0xed, 0xd4, 0xdb, 0xad, 0xc3, 0xe6, 0xe1, 0x51,
+	0xa3, 0x55, 0xff, 0x64, 0xe2, 0xb3, 0x07, 0x48, 0x1f, 0x1e, 0x91, 0x76, 0xeb, 0x71, 0x1e, 0xe1,
+	0x05, 0xc8, 0x34, 0x9e, 0x35, 0x5a, 0x47, 0x4f, 0xc5, 0x67, 0x8e, 0x21, 0x3f, 0x16, 0x8c, 0x3f,
+	0xd0, 0x7e, 0x4c, 0x01, 0xbe, 0xd8, 0xe2, 0x31, 0x01, 0x10, 0xc1, 0x7f, 0xe9, 0x18, 0x9c, 0xca,
+	0xb9, 0xb6, 0x95, 0x70, 0x3e, 0x88, 0xe8, 0x3f, 0xf2, 0x88, 0x7b, 0x33, 0x24, 0xeb, 0x04, 0x0b,
+	0xdc, 0x86, 0xac, 0x7f, 0x01, 0xb0, 0xcc, 0x60, 0xda, 0x6d, 0xbe, 0x8a, 0xc9, 0xb6, 0x65, 0x8a,
+	0xd1, 0xec, 0xc8, 0xe7, 0xe2, 0xfb, 0x90, 0x1d, 0xba, 0xc2, 0x5b, 0x70, 0xcd, 0x76, 0xe8, 0xb9,
+	0xc1, 0xfa, 0x6e, 0xe7, 0xe2, 0x64, 0x58, 0x09, 0xde, 0x8d, 0xd9, 0x2e, 0x02, 0x64, 0x02, 0xbb,
+	0xb5, 0xb4, 0xdf, 0xe8, 0xab, 0x7f, 0xa7, 0x21, 0xbb, 0x1b, 0x88, 0xc1, 0xcf, 0x21, 0xed, 0xdf,
+	0xf4, 0xb0, 0x12, 0xa9, 0x34, 0x74, 0x55, 0x2d, 0xae, 0x5e, 0x8a, 0x91, 0x23, 0xe8, 0xce, 0x77,
+	0x7f, 0xfd, 0xf3, 0x53, 0x6a, 0x4d, 0x29, 0x79, 0x57, 0x5f, 0xd9, 0xad, 0xdc, 0xca, 0xd7, 0xa3,
+	0x4e, 0xf6, 0xcd, 0x03, 0x53, 0x30, 0x1e, 0xa0, 0x0d, 0xfc, 0x03, 0x82, 0x4c, 0x70, 0xdd, 0xc0,
+	0x6f, 0x47, 0x1f, 0xbb, 0xf0, 0x55, 0xae, 0xb8, 0x36, 0x05, 0x25, 0x65, 0xdc, 0x13, 0x32, 0x6e,
+	0x2b, 0x4a, 0xbc, 0x0c, 0x47, 0x72, 0x3c, 0x21, 0xbf, 0x20, 0xc8, 0x4f, 0xce, 0x77, 0x7c, 0x37,
+	0xd2, 0x55, 0xcc, 0xd5, 0xa4, 0x78, 0x2f, 0x21, 0x5a, 0x0a, 0xbc, 0x2f, 0x04, 0x56, 0x94, 0x8d,
+	0x78, 0x81, 0xc7, 0x13, 0x5c, 0x4f, 0xe8, 0x73, 0x48, 0xfb, 0x13, 0x2b, 0xa6, 0x62, 0xa1, 0x61,
+	0x1d, 0x53, 0xb1, 0xf0, 0xc8, 0x4b, 0x52, 0x31, 0x4d, 0x30, 0x86, 0x15, 0x93, 0xd7, 0x8e, 0xb8,
+	0x8a, 0x85, 0x6f, 0x3a, 0x71, 0x15, 0x9b, 0xbc, 0xbb, 0x24, 0xa9, 0x98, 0xe4, 0x78, 0x42, 0x5e,
+	0x22, 0xc8, 0x8d, 0x4d, 0x34, 0x1c, 0x7d, 0x77, 0xb9, 0x38, 0x56, 0x8b, 0xeb, 0xd3, 0x81, 0x52,
+	0xd1, 0xa6, 0x50, 0xb4, 0xa1, 0xac, 0xc5, 0x2b, 0x52, 0x47, 0xb4, 0x07, 0x68, 0xa3, 0xf6, 0x02,
+	0xc1, 0x75, 0x8d, 0xf5, 0xa2, 0x3c, 0xd4, 0x96, 0x86, 0x9f, 0xdd, 0x81, 0xf7, 0x2b, 0x78, 0x80,
+	0x3e, 0x7d, 0x28, 0x61, 0x5d, 0x66, 0xaa, 0x56, 0xb7, 0xcc, 0x9c, 0x6e, 0xa5, 0x4b, 0x2d, 0xf1,
+	0xa3, 0x58, 0xf1, 0x5f, 0xa9, 0xb6, 0xe1, 0x86, 0x7e, 0x26, 0xb7, 0x87, 0x8b, 0x5f, 0x53, 0x6f,
+	0x3c, 0xf6, 0xe9, 0x75, 0x93, 0xf5, 0xf5, 0xf2, 0xd0, 0x7a, 0xf9, 0xd9, 0xd6, 0x71, 0x5a, 0x18,
+	0x79, 0xe7, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xb7, 0x0f, 0xc7, 0x4b, 0x0a, 0x0f, 0x00, 0x00,
 }
diff --git a/googleapis/datastore/v1/query.pb.go b/googleapis/datastore/v1/query.pb.go
index 43fe995d..977e6d8a 100644
--- a/googleapis/datastore/v1/query.pb.go
+++ b/googleapis/datastore/v1/query.pb.go
@@ -160,7 +160,7 @@ const (
 	// The query is finished, but there may be more results after the end
 	// cursor.
 	QueryResultBatch_MORE_RESULTS_AFTER_CURSOR QueryResultBatch_MoreResultsType = 4
-	// The query has been exhausted.
+	// The query is finished, and there are no more results.
 	QueryResultBatch_NO_MORE_RESULTS QueryResultBatch_MoreResultsType = 3
 )
 
diff --git a/googleapis/datastore/v1beta3/datastore.pb.go b/googleapis/datastore/v1beta3/datastore.pb.go
index af9c0ed7..0e5191bd 100644
--- a/googleapis/datastore/v1beta3/datastore.pb.go
+++ b/googleapis/datastore/v1beta3/datastore.pb.go
@@ -25,6 +25,7 @@ It has these top-level messages:
 	Mutation
 	MutationResult
 	ReadOptions
+	TransactionOptions
 	PartitionId
 	Key
 	ArrayValue
@@ -388,6 +389,8 @@ func (m *RunQueryResponse) GetQuery() *Query {
 type BeginTransactionRequest struct {
 	// The ID of the project against which to make the request.
 	ProjectId string `protobuf:"bytes,8,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// Options for a new transaction.
+	TransactionOptions *TransactionOptions `protobuf:"bytes,10,opt,name=transaction_options,json=transactionOptions" json:"transaction_options,omitempty"`
 }
 
 func (m *BeginTransactionRequest) Reset()                    { *m = BeginTransactionRequest{} }
@@ -402,6 +405,13 @@ func (m *BeginTransactionRequest) GetProjectId() string {
 	return ""
 }
 
+func (m *BeginTransactionRequest) GetTransactionOptions() *TransactionOptions {
+	if m != nil {
+		return m.TransactionOptions
+	}
+	return nil
+}
+
 // The response for [Datastore.BeginTransaction][google.datastore.v1beta3.Datastore.BeginTransaction].
 type BeginTransactionResponse struct {
 	// The transaction identifier (always present).
@@ -1067,6 +1077,160 @@ func _ReadOptions_OneofSizer(msg proto.Message) (n int) {
 	return n
 }
 
+// Options for beginning a new transaction.
+type TransactionOptions struct {
+	// The `mode` of the transaction, indicating whether write operations are
+	// supported.
+	//
+	// Types that are valid to be assigned to Mode:
+	//	*TransactionOptions_ReadWrite_
+	//	*TransactionOptions_ReadOnly_
+	Mode isTransactionOptions_Mode `protobuf_oneof:"mode"`
+}
+
+func (m *TransactionOptions) Reset()                    { *m = TransactionOptions{} }
+func (m *TransactionOptions) String() string            { return proto.CompactTextString(m) }
+func (*TransactionOptions) ProtoMessage()               {}
+func (*TransactionOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
+
+type isTransactionOptions_Mode interface {
+	isTransactionOptions_Mode()
+}
+
+type TransactionOptions_ReadWrite_ struct {
+	ReadWrite *TransactionOptions_ReadWrite `protobuf:"bytes,1,opt,name=read_write,json=readWrite,oneof"`
+}
+type TransactionOptions_ReadOnly_ struct {
+	ReadOnly *TransactionOptions_ReadOnly `protobuf:"bytes,2,opt,name=read_only,json=readOnly,oneof"`
+}
+
+func (*TransactionOptions_ReadWrite_) isTransactionOptions_Mode() {}
+func (*TransactionOptions_ReadOnly_) isTransactionOptions_Mode()  {}
+
+func (m *TransactionOptions) GetMode() isTransactionOptions_Mode {
+	if m != nil {
+		return m.Mode
+	}
+	return nil
+}
+
+func (m *TransactionOptions) GetReadWrite() *TransactionOptions_ReadWrite {
+	if x, ok := m.GetMode().(*TransactionOptions_ReadWrite_); ok {
+		return x.ReadWrite
+	}
+	return nil
+}
+
+func (m *TransactionOptions) GetReadOnly() *TransactionOptions_ReadOnly {
+	if x, ok := m.GetMode().(*TransactionOptions_ReadOnly_); ok {
+		return x.ReadOnly
+	}
+	return nil
+}
+
+// XXX_OneofFuncs is for the internal use of the proto package.
+func (*TransactionOptions) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
+	return _TransactionOptions_OneofMarshaler, _TransactionOptions_OneofUnmarshaler, _TransactionOptions_OneofSizer, []interface{}{
+		(*TransactionOptions_ReadWrite_)(nil),
+		(*TransactionOptions_ReadOnly_)(nil),
+	}
+}
+
+func _TransactionOptions_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
+	m := msg.(*TransactionOptions)
+	// mode
+	switch x := m.Mode.(type) {
+	case *TransactionOptions_ReadWrite_:
+		b.EncodeVarint(1<<3 | proto.WireBytes)
+		if err := b.EncodeMessage(x.ReadWrite); err != nil {
+			return err
+		}
+	case *TransactionOptions_ReadOnly_:
+		b.EncodeVarint(2<<3 | proto.WireBytes)
+		if err := b.EncodeMessage(x.ReadOnly); err != nil {
+			return err
+		}
+	case nil:
+	default:
+		return fmt.Errorf("TransactionOptions.Mode has unexpected type %T", x)
+	}
+	return nil
+}
+
+func _TransactionOptions_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
+	m := msg.(*TransactionOptions)
+	switch tag {
+	case 1: // mode.read_write
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		msg := new(TransactionOptions_ReadWrite)
+		err := b.DecodeMessage(msg)
+		m.Mode = &TransactionOptions_ReadWrite_{msg}
+		return true, err
+	case 2: // mode.read_only
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		msg := new(TransactionOptions_ReadOnly)
+		err := b.DecodeMessage(msg)
+		m.Mode = &TransactionOptions_ReadOnly_{msg}
+		return true, err
+	default:
+		return false, nil
+	}
+}
+
+func _TransactionOptions_OneofSizer(msg proto.Message) (n int) {
+	m := msg.(*TransactionOptions)
+	// mode
+	switch x := m.Mode.(type) {
+	case *TransactionOptions_ReadWrite_:
+		s := proto.Size(x.ReadWrite)
+		n += proto.SizeVarint(1<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(s))
+		n += s
+	case *TransactionOptions_ReadOnly_:
+		s := proto.Size(x.ReadOnly)
+		n += proto.SizeVarint(2<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(s))
+		n += s
+	case nil:
+	default:
+		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
+	}
+	return n
+}
+
+// Options specific to read / write transactions.
+type TransactionOptions_ReadWrite struct {
+	// The transaction identifier of the transaction being retried.
+	PreviousTransaction []byte `protobuf:"bytes,1,opt,name=previous_transaction,json=previousTransaction,proto3" json:"previous_transaction,omitempty"`
+}
+
+func (m *TransactionOptions_ReadWrite) Reset()         { *m = TransactionOptions_ReadWrite{} }
+func (m *TransactionOptions_ReadWrite) String() string { return proto.CompactTextString(m) }
+func (*TransactionOptions_ReadWrite) ProtoMessage()    {}
+func (*TransactionOptions_ReadWrite) Descriptor() ([]byte, []int) {
+	return fileDescriptor0, []int{15, 0}
+}
+
+func (m *TransactionOptions_ReadWrite) GetPreviousTransaction() []byte {
+	if m != nil {
+		return m.PreviousTransaction
+	}
+	return nil
+}
+
+// Options specific to read-only transactions.
+type TransactionOptions_ReadOnly struct {
+}
+
+func (m *TransactionOptions_ReadOnly) Reset()                    { *m = TransactionOptions_ReadOnly{} }
+func (m *TransactionOptions_ReadOnly) String() string            { return proto.CompactTextString(m) }
+func (*TransactionOptions_ReadOnly) ProtoMessage()               {}
+func (*TransactionOptions_ReadOnly) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15, 1} }
+
 func init() {
 	proto.RegisterType((*LookupRequest)(nil), "google.datastore.v1beta3.LookupRequest")
 	proto.RegisterType((*LookupResponse)(nil), "google.datastore.v1beta3.LookupResponse")
@@ -1083,6 +1247,9 @@ func init() {
 	proto.RegisterType((*Mutation)(nil), "google.datastore.v1beta3.Mutation")
 	proto.RegisterType((*MutationResult)(nil), "google.datastore.v1beta3.MutationResult")
 	proto.RegisterType((*ReadOptions)(nil), "google.datastore.v1beta3.ReadOptions")
+	proto.RegisterType((*TransactionOptions)(nil), "google.datastore.v1beta3.TransactionOptions")
+	proto.RegisterType((*TransactionOptions_ReadWrite)(nil), "google.datastore.v1beta3.TransactionOptions.ReadWrite")
+	proto.RegisterType((*TransactionOptions_ReadOnly)(nil), "google.datastore.v1beta3.TransactionOptions.ReadOnly")
 	proto.RegisterEnum("google.datastore.v1beta3.CommitRequest_Mode", CommitRequest_Mode_name, CommitRequest_Mode_value)
 	proto.RegisterEnum("google.datastore.v1beta3.ReadOptions_ReadConsistency", ReadOptions_ReadConsistency_name, ReadOptions_ReadConsistency_value)
 }
@@ -1343,82 +1510,88 @@ var _Datastore_serviceDesc = grpc.ServiceDesc{
 func init() { proto.RegisterFile("google/datastore/v1beta3/datastore.proto", fileDescriptor0) }
 
 var fileDescriptor0 = []byte{
-	// 1218 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xcf, 0x72, 0xdb, 0xd4,
-	0x17, 0xce, 0x75, 0x12, 0xc7, 0x39, 0xce, 0x1f, 0xf7, 0xfe, 0xfa, 0x03, 0x4d, 0x68, 0xc1, 0xa3,
-	0x52, 0x6a, 0x42, 0xb1, 0x89, 0x4b, 0xa7, 0x10, 0xba, 0x88, 0xed, 0xb8, 0xb5, 0x87, 0xc6, 0x09,
-	0xd7, 0x6e, 0x67, 0x60, 0xa3, 0x91, 0xa5, 0x1b, 0x23, 0x22, 0xeb, 0x2a, 0xd2, 0x75, 0x07, 0x0f,
-	0xc3, 0x86, 0x15, 0x03, 0xc3, 0x0a, 0x78, 0x00, 0xb6, 0xb0, 0x06, 0x5e, 0x81, 0x19, 0x66, 0xd8,
-	0xf0, 0x0a, 0x3c, 0x04, 0x4b, 0x46, 0x57, 0x57, 0x76, 0xe4, 0x56, 0xb6, 0xc2, 0xb0, 0xb3, 0x8e,
-	0xbf, 0xef, 0x9c, 0xef, 0x9c, 0x73, 0x75, 0xce, 0x15, 0x94, 0x06, 0x8c, 0x0d, 0x6c, 0x5a, 0x31,
-	0x75, 0xae, 0xfb, 0x9c, 0x79, 0xb4, 0xf2, 0x74, 0xaf, 0x4f, 0xb9, 0x7e, 0x67, 0x6a, 0x29, 0xbb,
-	0x1e, 0xe3, 0x0c, 0x2b, 0x21, 0xb2, 0x3c, 0xb5, 0x4b, 0xe4, 0xce, 0x35, 0xe9, 0x43, 0x77, 0xad,
-	0x8a, 0xee, 0x38, 0x8c, 0xeb, 0xdc, 0x62, 0x8e, 0x1f, 0xf2, 0x76, 0x6e, 0x26, 0x46, 0xa0, 0x0e,
-	0xb7, 0xf8, 0x58, 0xc2, 0x5e, 0x4d, 0x84, 0x9d, 0x8f, 0xa8, 0x27, 0x51, 0xea, 0x4f, 0x08, 0x36,
-	0x1f, 0x31, 0x76, 0x36, 0x72, 0x09, 0x3d, 0x1f, 0x51, 0x9f, 0xe3, 0xeb, 0x00, 0xae, 0xc7, 0x3e,
-	0xa1, 0x06, 0xd7, 0x2c, 0x53, 0xc9, 0x15, 0x51, 0x69, 0x9d, 0xac, 0x4b, 0x4b, 0xdb, 0xc4, 0x2d,
-	0xd8, 0xf0, 0xa8, 0x6e, 0x6a, 0xcc, 0x15, 0x9a, 0x14, 0x54, 0x44, 0xa5, 0x7c, 0xf5, 0x66, 0x39,
-	0x29, 0x99, 0x32, 0xa1, 0xba, 0x79, 0x1c, 0x82, 0x49, 0xde, 0x9b, 0x3e, 0xe0, 0x3d, 0x58, 0x39,
-	0xa3, 0x63, 0x5f, 0x59, 0x2e, 0x2e, 0x97, 0xf2, 0xd5, 0xeb, 0xc9, 0x1e, 0xde, 0xa7, 0x63, 0x22,
-	0xa0, 0xea, 0xef, 0x08, 0xb6, 0x22, 0xb5, 0xbe, 0xcb, 0x1c, 0x9f, 0xe2, 0xfb, 0xb0, 0x7a, 0xca,
-	0x46, 0x8e, 0xa9, 0x20, 0xe1, 0xe6, 0xb5, 0x64, 0x37, 0x4d, 0x51, 0x1d, 0x42, 0xfd, 0x91, 0xcd,
-	0x49, 0x48, 0xc2, 0x07, 0xb0, 0x36, 0xb4, 0x7c, 0xdf, 0x72, 0x06, 0x4a, 0xe6, 0x52, 0xfc, 0x88,
-	0x86, 0xdf, 0x85, 0x9c, 0x49, 0x4f, 0xa9, 0xe7, 0x51, 0x33, 0x5d, 0x26, 0x13, 0xb8, 0xfa, 0x47,
-	0x06, 0xb6, 0xc9, 0xc8, 0xf9, 0x20, 0x68, 0x47, 0xfa, 0xea, 0xbb, 0xba, 0xc7, 0xad, 0xa0, 0x82,
-	0x01, 0x20, 0xb3, 0xa8, 0xfa, 0x27, 0x11, 0xba, 0x6d, 0x92, 0xbc, 0x3b, 0x7d, 0xf8, 0x0f, 0xfb,
-	0x78, 0x0f, 0x56, 0xc5, 0x89, 0x52, 0x96, 0x85, 0x8b, 0x57, 0x92, 0x5d, 0x88, 0x4c, 0x5b, 0x4b,
-	0x24, 0xc4, 0xe3, 0x1a, 0xac, 0x0f, 0xce, 0x6d, 0x2d, 0x24, 0xaf, 0x09, 0xb2, 0x9a, 0x4c, 0x7e,
-	0x78, 0x6e, 0x47, 0xfc, 0xdc, 0x40, 0xfe, 0xae, 0x6f, 0x00, 0x08, 0xba, 0xc6, 0xc7, 0x2e, 0x55,
-	0xbf, 0x46, 0x50, 0x98, 0x16, 0x54, 0x1e, 0x90, 0x03, 0x58, 0xed, 0xeb, 0xdc, 0xf8, 0x58, 0x66,
-	0xb8, 0xbb, 0x40, 0x5e, 0xd8, 0xdf, 0x7a, 0xc0, 0x20, 0x21, 0x11, 0xdf, 0x8d, 0x12, 0xcc, 0xa4,
-	0x4a, 0x50, 0xa6, 0xa7, 0xbe, 0x03, 0x2f, 0xd6, 0xe9, 0xc0, 0x72, 0x7a, 0x9e, 0xee, 0xf8, 0xba,
-	0x11, 0x14, 0x2b, 0x5d, 0x97, 0xd5, 0xfb, 0xa0, 0x3c, 0xcb, 0x94, 0xe9, 0x14, 0x21, 0xcf, 0xa7,
-	0x66, 0x91, 0xd4, 0x06, 0xb9, 0x68, 0x52, 0x09, 0x6c, 0x13, 0x66, 0xdb, 0x7d, 0xdd, 0x38, 0x4b,
-	0x79, 0xaa, 0x16, 0xfb, 0xc4, 0x50, 0x98, 0xfa, 0x0c, 0x95, 0xa8, 0xbf, 0x64, 0x60, 0xb3, 0xc1,
-	0x86, 0x43, 0x8b, 0xa7, 0x0c, 0x73, 0x00, 0x2b, 0x43, 0x66, 0x52, 0x65, 0xb5, 0x88, 0x4a, 0x5b,
-	0xd5, 0xdb, 0xc9, 0x65, 0x8c, 0x79, 0x2d, 0x1f, 0x31, 0x93, 0x12, 0xc1, 0xc4, 0xea, 0x73, 0x84,
-	0xb6, 0x96, 0x62, 0x52, 0xf1, 0x01, 0xac, 0x0f, 0x47, 0x72, 0x62, 0x2a, 0x59, 0xf1, 0x46, 0xce,
-	0x39, 0x55, 0x47, 0x12, 0x4a, 0xa6, 0x24, 0xf5, 0x01, 0xac, 0x04, 0x31, 0xf1, 0x55, 0x28, 0x1c,
-	0x1d, 0x1f, 0x36, 0xb5, 0xc7, 0x9d, 0xee, 0x49, 0xb3, 0xd1, 0x7e, 0xd0, 0x6e, 0x1e, 0x16, 0x96,
-	0xf0, 0x15, 0xd8, 0xec, 0x91, 0x5a, 0xa7, 0x5b, 0x6b, 0xf4, 0xda, 0xc7, 0x9d, 0xda, 0xa3, 0x02,
-	0xc2, 0xff, 0x87, 0x2b, 0x9d, 0xe3, 0x8e, 0x16, 0x37, 0x67, 0xea, 0x2f, 0xc0, 0xd5, 0x0b, 0xc2,
-	0x34, 0x9f, 0xda, 0xd4, 0xe0, 0xcc, 0x53, 0xbf, 0x42, 0xb0, 0x15, 0xa5, 0x28, 0xbb, 0xda, 0x85,
-	0x42, 0x14, 0x5f, 0xf3, 0xc4, 0x09, 0x8c, 0xe6, 0x62, 0x29, 0x85, 0xf6, 0x70, 0x24, 0x6d, 0x0f,
-	0x63, 0xcf, 0x3e, 0xbe, 0x01, 0x9b, 0x96, 0x63, 0xd2, 0x4f, 0xb5, 0x91, 0x6b, 0xea, 0x9c, 0xfa,
-	0xca, 0x4a, 0x11, 0x95, 0x56, 0xc9, 0x86, 0x30, 0x3e, 0x0e, 0x6d, 0xea, 0x29, 0xe0, 0x9a, 0x6d,
-	0x33, 0x43, 0xe7, 0xb4, 0x6d, 0xfa, 0x29, 0x3b, 0x19, 0x8d, 0x6e, 0x94, 0x7e, 0x74, 0xb7, 0xe0,
-	0x7f, 0xb1, 0x38, 0x32, 0xf1, 0x7f, 0xe1, 0xe9, 0xb7, 0x0c, 0xe4, 0xa2, 0xd4, 0xf1, 0x3e, 0x64,
-	0x2d, 0xc7, 0xa7, 0x1e, 0x17, 0xc9, 0xe5, 0xab, 0xc5, 0x45, 0xf3, 0xbb, 0xb5, 0x44, 0x24, 0x23,
-	0xe0, 0x86, 0x95, 0x11, 0x27, 0x32, 0x25, 0x37, 0x64, 0x84, 0x5c, 0x11, 0x37, 0x7b, 0x19, 0xae,
-	0x88, 0x7b, 0x0f, 0xb2, 0x26, 0xb5, 0x29, 0xa7, 0x72, 0xe8, 0xcd, 0xcf, 0x3a, 0x20, 0x86, 0x70,
-	0x7c, 0x03, 0x36, 0xfa, 0xba, 0x4f, 0xb5, 0xa7, 0xd4, 0xf3, 0x83, 0xf3, 0x1f, 0xf4, 0x65, 0xb9,
-	0x85, 0x48, 0x3e, 0xb0, 0x3e, 0x09, 0x8d, 0xf5, 0x3c, 0xac, 0x33, 0x97, 0x7a, 0xa2, 0x3c, 0xf5,
-	0xeb, 0xf0, 0x92, 0xc1, 0x9c, 0x53, 0xdb, 0x32, 0xb8, 0x66, 0x52, 0x4e, 0xe5, 0x49, 0xe4, 0x9e,
-	0xce, 0xe9, 0x60, 0xac, 0x7e, 0x89, 0x60, 0x2b, 0x7e, 0x8a, 0x70, 0x05, 0x96, 0xcf, 0x68, 0x34,
-	0xcb, 0x17, 0xf4, 0x23, 0x40, 0x62, 0x05, 0xd6, 0x22, 0x3d, 0x41, 0x0b, 0x96, 0x49, 0xf4, 0x88,
-	0xdf, 0x80, 0x2b, 0x33, 0xc1, 0xa9, 0x29, 0x4a, 0x9d, 0x23, 0x85, 0xe8, 0x8f, 0x43, 0x69, 0x57,
-	0xff, 0x46, 0x90, 0xbf, 0xb0, 0x62, 0x70, 0x1f, 0x0a, 0x62, 0x3f, 0x19, 0xcc, 0xf1, 0x2d, 0x9f,
-	0x53, 0xc7, 0x18, 0x8b, 0xf7, 0x7d, 0xab, 0x7a, 0x37, 0xd5, 0x8e, 0x12, 0xbf, 0x1b, 0x53, 0x72,
-	0x6b, 0x89, 0x6c, 0x7b, 0x71, 0xd3, 0xec, 0x38, 0xc9, 0x3c, 0x67, 0x9c, 0xa8, 0x47, 0xb0, 0x3d,
-	0xe3, 0x09, 0x17, 0xe1, 0x1a, 0x69, 0xd6, 0x0e, 0xb5, 0xc6, 0x71, 0xa7, 0xdb, 0xee, 0xf6, 0x9a,
-	0x9d, 0xc6, 0x87, 0x33, 0x33, 0x02, 0x20, 0xdb, 0xed, 0x91, 0xe3, 0xce, 0xc3, 0x02, 0xc2, 0x1b,
-	0x90, 0x6b, 0x3e, 0x69, 0x76, 0x7a, 0x8f, 0xc5, 0x4c, 0xc0, 0x50, 0xb8, 0x90, 0x91, 0x58, 0x5b,
-	0xd5, 0x5f, 0xd7, 0x60, 0xfd, 0x30, 0xca, 0x05, 0x7f, 0x83, 0x20, 0x1b, 0xde, 0x71, 0xf0, 0xad,
-	0xe4, 0x4c, 0x63, 0x77, 0xb6, 0x9d, 0xd2, 0x62, 0xa0, 0x1c, 0xda, 0x6f, 0x7d, 0xf1, 0xe7, 0x5f,
-	0xdf, 0x66, 0x76, 0xd5, 0x9b, 0x93, 0xdb, 0xa0, 0x7c, 0xab, 0xfd, 0xca, 0x67, 0xd3, 0x37, 0xfe,
-	0xf3, 0x7d, 0x5b, 0xd0, 0xf6, 0xd1, 0x2e, 0xfe, 0x1e, 0x41, 0x2e, 0x5a, 0xaa, 0xf8, 0xf5, 0x39,
-	0xb5, 0x8f, 0xdf, 0x64, 0x76, 0x76, 0xd3, 0x40, 0xa5, 0xaa, 0xaa, 0x50, 0x75, 0x5b, 0xbd, 0xb5,
-	0x40, 0x95, 0x27, 0x89, 0x81, 0xae, 0x9f, 0x11, 0x14, 0x66, 0xb7, 0x24, 0xde, 0x4b, 0x0e, 0x9a,
-	0xb0, 0x8b, 0x77, 0xaa, 0x97, 0xa1, 0x48, 0xbd, 0xfb, 0x42, 0xef, 0xdb, 0x6a, 0x65, 0x81, 0xde,
-	0xfe, 0x8c, 0x83, 0x40, 0x77, 0xd0, 0xdf, 0x70, 0xfa, 0xcf, 0xeb, 0x6f, 0x6c, 0x05, 0xce, 0xeb,
-	0x6f, 0x7c, 0x91, 0xa4, 0xee, 0xaf, 0x21, 0x68, 0x93, 0xfe, 0xca, 0xdd, 0x3e, 0xb7, 0xbf, 0xf1,
-	0x3b, 0xc5, 0xdc, 0xfe, 0xce, 0x5e, 0x15, 0x52, 0xf7, 0x57, 0x12, 0x03, 0x5d, 0x3f, 0x20, 0xc8,
-	0x5f, 0xd8, 0x18, 0x78, 0xce, 0x7d, 0xe1, 0xd9, 0x05, 0xb6, 0xf3, 0x66, 0x4a, 0xb4, 0x14, 0x78,
-	0x57, 0x08, 0xac, 0xa8, 0xbb, 0x0b, 0x04, 0xea, 0x53, 0xee, 0x3e, 0xda, 0xad, 0x7f, 0x87, 0xe0,
-	0x9a, 0xc1, 0x86, 0x89, 0xb1, 0xea, 0x5b, 0x93, 0xf7, 0xfa, 0x24, 0xf8, 0xdc, 0x3a, 0x41, 0x1f,
-	0xd5, 0x24, 0x76, 0xc0, 0x6c, 0xdd, 0x19, 0x94, 0x99, 0x37, 0xa8, 0x0c, 0xa8, 0x23, 0x3e, 0xc6,
-	0x2a, 0xe1, 0x5f, 0xba, 0x6b, 0xf9, 0xcf, 0x7e, 0xb5, 0xbd, 0x37, 0xb1, 0xfc, 0x98, 0x79, 0xf9,
-	0x61, 0xe8, 0xa3, 0x61, 0xb3, 0x91, 0x59, 0x9e, 0x84, 0x28, 0x3f, 0xd9, 0xab, 0x07, 0xd0, 0x7e,
-	0x56, 0xb8, 0xbb, 0xf3, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0f, 0x31, 0x6a, 0x10, 0x8c, 0x0e,
-	0x00, 0x00,
+	// 1323 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xdf, 0x6f, 0x1b, 0xc5,
+	0x13, 0xcf, 0x3a, 0x89, 0x63, 0x8f, 0xf3, 0xc3, 0xdd, 0xf6, 0xfb, 0xc5, 0x32, 0x2d, 0x58, 0x57,
+	0x4a, 0x4d, 0x28, 0x36, 0x71, 0x09, 0x15, 0xa1, 0x42, 0xb1, 0x1d, 0xb7, 0xb6, 0x68, 0xec, 0xb0,
+	0x71, 0x5b, 0x81, 0x84, 0xac, 0xb3, 0x6f, 0x63, 0x8e, 0x9c, 0x6f, 0x2f, 0x77, 0xeb, 0x42, 0x84,
+	0x78, 0xe1, 0x09, 0x81, 0x78, 0x02, 0xd4, 0x67, 0x5e, 0xe1, 0x19, 0xf8, 0x17, 0x90, 0x90, 0x78,
+	0xe1, 0x5f, 0xe0, 0x8f, 0xe0, 0x11, 0xdd, 0xde, 0x9e, 0xed, 0xb3, 0x7b, 0xf6, 0x05, 0xf1, 0x76,
+	0x3b, 0x37, 0x9f, 0x99, 0xcf, 0xcc, 0xec, 0xcd, 0xcc, 0x41, 0xbe, 0xcf, 0x58, 0xdf, 0xa0, 0x45,
+	0x4d, 0xe5, 0xaa, 0xc3, 0x99, 0x4d, 0x8b, 0x4f, 0x76, 0xba, 0x94, 0xab, 0xb7, 0xc7, 0x92, 0x82,
+	0x65, 0x33, 0xce, 0x70, 0xc6, 0xd3, 0x2c, 0x8c, 0xe5, 0x52, 0x33, 0x7b, 0x55, 0xda, 0x50, 0x2d,
+	0xbd, 0xa8, 0x9a, 0x26, 0xe3, 0x2a, 0xd7, 0x99, 0xe9, 0x78, 0xb8, 0xec, 0x8d, 0x50, 0x0f, 0xd4,
+	0xe4, 0x3a, 0x3f, 0x97, 0x6a, 0x2f, 0x85, 0xaa, 0x9d, 0x0d, 0xa9, 0x2d, 0xb5, 0x94, 0x9f, 0x10,
+	0x6c, 0x3c, 0x60, 0xec, 0x74, 0x68, 0x11, 0x7a, 0x36, 0xa4, 0x0e, 0xc7, 0xd7, 0x00, 0x2c, 0x9b,
+	0x7d, 0x4c, 0x7b, 0xbc, 0xa3, 0x6b, 0x99, 0x44, 0x0e, 0xe5, 0x93, 0x24, 0x29, 0x25, 0x0d, 0x0d,
+	0xd7, 0x61, 0xdd, 0xa6, 0xaa, 0xd6, 0x61, 0x96, 0xe0, 0x94, 0x41, 0x39, 0x94, 0x4f, 0x95, 0x6e,
+	0x14, 0xc2, 0x82, 0x29, 0x10, 0xaa, 0x6a, 0x2d, 0x4f, 0x99, 0xa4, 0xec, 0xf1, 0x01, 0xef, 0xc0,
+	0xca, 0x29, 0x3d, 0x77, 0x32, 0xcb, 0xb9, 0xe5, 0x7c, 0xaa, 0x74, 0x2d, 0xdc, 0xc2, 0xbb, 0xf4,
+	0x9c, 0x08, 0x55, 0xe5, 0x77, 0x04, 0x9b, 0x3e, 0x5b, 0xc7, 0x62, 0xa6, 0x43, 0xf1, 0x5d, 0x58,
+	0x3d, 0x61, 0x43, 0x53, 0xcb, 0x20, 0x61, 0xe6, 0xe5, 0x70, 0x33, 0x35, 0x91, 0x1d, 0x42, 0x9d,
+	0xa1, 0xc1, 0x89, 0x07, 0xc2, 0xfb, 0xb0, 0x36, 0xd0, 0x1d, 0x47, 0x37, 0xfb, 0x99, 0xd8, 0x85,
+	0xf0, 0x3e, 0x0c, 0xbf, 0x05, 0x09, 0x8d, 0x9e, 0x50, 0xdb, 0xa6, 0x5a, 0xb4, 0x48, 0x46, 0xea,
+	0xca, 0x1f, 0x31, 0xd8, 0x22, 0x43, 0xf3, 0x3d, 0xb7, 0x1c, 0xd1, 0xb3, 0x6f, 0xa9, 0x36, 0xd7,
+	0xdd, 0x0c, 0xba, 0x0a, 0xb1, 0x45, 0xd9, 0x3f, 0xf2, 0xb5, 0x1b, 0x1a, 0x49, 0x59, 0xe3, 0xc3,
+	0x7f, 0x58, 0xc7, 0x3b, 0xb0, 0x2a, 0x6e, 0x54, 0x66, 0x59, 0x98, 0x78, 0x31, 0xdc, 0x84, 0x88,
+	0xb4, 0xbe, 0x44, 0x3c, 0x7d, 0x5c, 0x86, 0x64, 0xff, 0xcc, 0xe8, 0x78, 0xe0, 0x35, 0x01, 0x56,
+	0xc2, 0xc1, 0xf7, 0xcf, 0x0c, 0x1f, 0x9f, 0xe8, 0xcb, 0xe7, 0xca, 0x3a, 0x80, 0x80, 0x77, 0xf8,
+	0xb9, 0x45, 0x95, 0xaf, 0x11, 0xa4, 0xc7, 0x09, 0x95, 0x17, 0x64, 0x1f, 0x56, 0xbb, 0x2a, 0xef,
+	0x7d, 0x24, 0x23, 0xdc, 0x5e, 0x40, 0xcf, 0xab, 0x6f, 0xc5, 0x45, 0x10, 0x0f, 0x88, 0x77, 0xfd,
+	0x00, 0x63, 0x91, 0x02, 0x94, 0xe1, 0x29, 0x4f, 0x11, 0x3c, 0x57, 0xa1, 0x7d, 0xdd, 0x6c, 0xdb,
+	0xaa, 0xe9, 0xa8, 0x3d, 0x37, 0x5b, 0x11, 0xcb, 0xfc, 0x21, 0x5c, 0xe6, 0x63, 0xd0, 0xa8, 0x46,
+	0x20, 0xfc, 0xdf, 0x0a, 0xf7, 0x3f, 0xe1, 0xc9, 0x2f, 0x15, 0xe6, 0x33, 0x32, 0xe5, 0x2e, 0x64,
+	0x66, 0x89, 0xc9, 0x74, 0xe5, 0x20, 0x35, 0x81, 0x10, 0x49, 0x5b, 0x27, 0x93, 0x22, 0x85, 0xc0,
+	0x16, 0x61, 0x86, 0xd1, 0x55, 0x7b, 0xa7, 0x11, 0xc3, 0x59, 0x6c, 0x13, 0x43, 0x7a, 0x6c, 0xd3,
+	0x63, 0xa2, 0xfc, 0x12, 0x83, 0x8d, 0x2a, 0x1b, 0x0c, 0x74, 0x1e, 0xd1, 0xcd, 0x3e, 0xac, 0x0c,
+	0x98, 0x46, 0x33, 0xab, 0x39, 0x94, 0xdf, 0x9c, 0x97, 0xa6, 0x80, 0xd5, 0xc2, 0x21, 0xd3, 0x28,
+	0x11, 0x48, 0xac, 0x3c, 0x83, 0x68, 0x7d, 0x29, 0x40, 0x15, 0xef, 0x43, 0x72, 0x30, 0x94, 0x1d,
+	0x39, 0x13, 0x17, 0x5f, 0xfc, 0x9c, 0x5b, 0x7b, 0x28, 0x55, 0xc9, 0x18, 0xa4, 0xdc, 0x83, 0x15,
+	0xd7, 0x27, 0xbe, 0x02, 0xe9, 0xc3, 0xd6, 0x41, 0xad, 0xf3, 0xb0, 0x79, 0x7c, 0x54, 0xab, 0x36,
+	0xee, 0x35, 0x6a, 0x07, 0xe9, 0x25, 0x7c, 0x09, 0x36, 0xda, 0xa4, 0xdc, 0x3c, 0x2e, 0x57, 0xdb,
+	0x8d, 0x56, 0xb3, 0xfc, 0x20, 0x8d, 0xf0, 0xff, 0xe0, 0x52, 0xb3, 0xd5, 0xec, 0x04, 0xc5, 0xb1,
+	0xca, 0xff, 0xe1, 0xca, 0xe4, 0x2d, 0x71, 0xa8, 0x41, 0x7b, 0x9c, 0xd9, 0xca, 0x57, 0x08, 0x36,
+	0xfd, 0x10, 0x65, 0x55, 0x8f, 0x21, 0xed, 0xfb, 0xef, 0xd8, 0xe2, 0x86, 0xfb, 0x7d, 0x37, 0x1f,
+	0x81, 0xbb, 0xd7, 0xf2, 0xb6, 0x06, 0x81, 0xb3, 0x83, 0xaf, 0xc3, 0x86, 0x6e, 0x6a, 0xf4, 0xd3,
+	0xce, 0xd0, 0xd2, 0x54, 0x4e, 0x9d, 0xcc, 0x4a, 0x0e, 0xe5, 0x57, 0xc9, 0xba, 0x10, 0x3e, 0xf4,
+	0x64, 0xca, 0x09, 0xe0, 0xb2, 0x61, 0xb0, 0x9e, 0xca, 0x69, 0x43, 0x73, 0x22, 0x56, 0xd2, 0x1f,
+	0x0d, 0x28, 0xfa, 0x68, 0xa8, 0xc3, 0xe5, 0x80, 0x1f, 0x19, 0xf8, 0xbf, 0xb0, 0xf4, 0x5b, 0x0c,
+	0x12, 0x7e, 0xe8, 0x78, 0x0f, 0xe2, 0xba, 0xe9, 0x50, 0x9b, 0x8b, 0xe0, 0x52, 0xa5, 0xdc, 0xa2,
+	0xf9, 0x50, 0x5f, 0x22, 0x12, 0xe1, 0x62, 0xbd, 0xcc, 0x88, 0x1b, 0x19, 0x11, 0xeb, 0x21, 0x3c,
+	0xac, 0xf0, 0x1b, 0xbf, 0x08, 0x56, 0xf8, 0xbd, 0x03, 0x71, 0x8d, 0x1a, 0x94, 0x53, 0xd9, 0x54,
+	0xe7, 0x47, 0xed, 0x02, 0x3d, 0x75, 0x7c, 0x1d, 0xd6, 0xbb, 0xaa, 0x43, 0x3b, 0x4f, 0xa8, 0xed,
+	0xb8, 0xf7, 0xdf, 0xad, 0xcb, 0x72, 0x1d, 0x91, 0x94, 0x2b, 0x7d, 0xe4, 0x09, 0x2b, 0x29, 0x48,
+	0x32, 0x8b, 0xda, 0x22, 0x3d, 0x95, 0x6b, 0xf0, 0x7c, 0x8f, 0x99, 0x27, 0x86, 0xde, 0xe3, 0x1d,
+	0x8d, 0x72, 0x2a, 0x6f, 0x22, 0xb7, 0x55, 0x4e, 0xfb, 0xe7, 0xca, 0x97, 0x08, 0x36, 0x83, 0xb7,
+	0x08, 0x17, 0x61, 0xf9, 0x94, 0xfa, 0xb3, 0x62, 0x41, 0x3d, 0x5c, 0x4d, 0x9c, 0x81, 0x35, 0x9f,
+	0x8f, 0x5b, 0x82, 0x65, 0xe2, 0x1f, 0xf1, 0xab, 0x70, 0x69, 0xca, 0x39, 0xd5, 0x44, 0xaa, 0x13,
+	0x24, 0xed, 0xbf, 0x38, 0x90, 0x72, 0xe5, 0x6f, 0x04, 0xa9, 0x89, 0x11, 0x86, 0xbb, 0x90, 0x16,
+	0xf3, 0xaf, 0xc7, 0x4c, 0x47, 0x77, 0x38, 0x35, 0x7b, 0xe7, 0xe2, 0x7b, 0xdf, 0x2c, 0xed, 0x46,
+	0x9a, 0x81, 0xe2, 0xb9, 0x3a, 0x06, 0xd7, 0x97, 0xc8, 0x96, 0x1d, 0x14, 0x4d, 0xb7, 0x93, 0xd8,
+	0x33, 0xda, 0x89, 0x72, 0x08, 0x5b, 0x53, 0x96, 0x70, 0x0e, 0xae, 0x92, 0x5a, 0xf9, 0xa0, 0x53,
+	0x6d, 0x35, 0x8f, 0x1b, 0xc7, 0xed, 0x5a, 0xb3, 0xfa, 0xfe, 0x54, 0x8f, 0x00, 0x88, 0x1f, 0xb7,
+	0x49, 0xab, 0x79, 0x3f, 0x8d, 0xf0, 0x3a, 0x24, 0x6a, 0x8f, 0x6a, 0xcd, 0xf6, 0x43, 0xd1, 0x13,
+	0x30, 0xa4, 0x27, 0x22, 0xf2, 0xc6, 0xe2, 0xd3, 0x18, 0xe0, 0xd9, 0xc9, 0x80, 0x1f, 0x03, 0x88,
+	0x0c, 0x7c, 0x62, 0xeb, 0x9c, 0xca, 0xe9, 0xf8, 0xe6, 0x45, 0x66, 0x8b, 0x48, 0xc1, 0x63, 0x17,
+	0x5d, 0x5f, 0x22, 0x49, 0xdb, 0x3f, 0xe0, 0x36, 0x24, 0xbd, 0xd5, 0xc2, 0x34, 0xfc, 0x99, 0xb9,
+	0x7b, 0x61, 0xbb, 0x2d, 0xd3, 0x10, 0xa3, 0xde, 0x96, 0xcf, 0xd9, 0x77, 0x20, 0x39, 0xf2, 0x87,
+	0x77, 0xe0, 0x8a, 0x65, 0xd3, 0x27, 0x3a, 0x1b, 0x3a, 0x9d, 0xd9, 0xd1, 0x72, 0xd9, 0x7f, 0x37,
+	0x61, 0x3b, 0x0b, 0x90, 0xf0, 0xed, 0x56, 0xe2, 0xde, 0xa4, 0x28, 0xfd, 0xba, 0x06, 0xc9, 0x03,
+	0x9f, 0x11, 0xfe, 0x06, 0x41, 0xdc, 0xdb, 0x2e, 0xf1, 0xcd, 0x70, 0xbe, 0x81, 0x6d, 0x39, 0x9b,
+	0x5f, 0xac, 0x28, 0xc7, 0xd9, 0xeb, 0x5f, 0xfc, 0xf9, 0xd7, 0xb7, 0xb1, 0x6d, 0xe5, 0xc6, 0x68,
+	0x0f, 0x97, 0xfd, 0xce, 0x29, 0x7e, 0x36, 0xee, 0x85, 0x9f, 0xef, 0x19, 0x02, 0xb6, 0x87, 0xb6,
+	0xf1, 0xf7, 0x08, 0x12, 0xfe, 0x3a, 0x83, 0x5f, 0x99, 0x73, 0x2b, 0x83, 0x3b, 0x64, 0x76, 0x3b,
+	0x8a, 0xaa, 0x64, 0x55, 0x12, 0xac, 0x6e, 0x29, 0x37, 0x17, 0xb0, 0xb2, 0x25, 0xd0, 0xe5, 0xf5,
+	0x33, 0x82, 0xf4, 0xf4, 0xfe, 0x80, 0x77, 0xc2, 0x9d, 0x86, 0x2c, 0x41, 0xd9, 0xd2, 0x45, 0x20,
+	0x92, 0xef, 0x9e, 0xe0, 0xfb, 0x86, 0x52, 0x5c, 0xc0, 0xb7, 0x3b, 0x65, 0xc0, 0xe5, 0xed, 0xd6,
+	0xd7, 0x9b, 0x8b, 0xf3, 0xea, 0x1b, 0x58, 0x0e, 0xe6, 0xd5, 0x37, 0x38, 0x62, 0x23, 0xd7, 0xb7,
+	0x27, 0x60, 0xa3, 0xfa, 0xca, 0xad, 0x67, 0x6e, 0x7d, 0x83, 0xdb, 0xd6, 0xdc, 0xfa, 0x4e, 0x2f,
+	0x51, 0x91, 0xeb, 0x2b, 0x81, 0x2e, 0xaf, 0x1f, 0x10, 0xa4, 0x26, 0x66, 0x29, 0x9e, 0xb3, 0x49,
+	0xcd, 0x8e, 0xf6, 0xec, 0x6b, 0x11, 0xb5, 0x25, 0xc1, 0x5d, 0x41, 0xb0, 0xa8, 0x6c, 0x2f, 0x20,
+	0xa8, 0x8e, 0xb1, 0x7b, 0x68, 0xbb, 0xf2, 0x1d, 0x82, 0xab, 0x3d, 0x36, 0x08, 0xf5, 0x55, 0xd9,
+	0x1c, 0x7d, 0xd7, 0x47, 0xee, 0x8f, 0xee, 0x11, 0xfa, 0xa0, 0x2c, 0x75, 0xfb, 0xcc, 0x50, 0xcd,
+	0x7e, 0x81, 0xd9, 0xfd, 0x62, 0x9f, 0x9a, 0xe2, 0x37, 0xb8, 0xe8, 0xbd, 0x52, 0x2d, 0xdd, 0x99,
+	0xfd, 0x5f, 0x7e, 0x7b, 0x24, 0xf9, 0x31, 0xf6, 0xc2, 0x7d, 0xcf, 0x46, 0xd5, 0x60, 0x43, 0xad,
+	0x30, 0x72, 0x51, 0x78, 0xb4, 0x53, 0x71, 0x55, 0xbb, 0x71, 0x61, 0xee, 0xf6, 0x3f, 0x01, 0x00,
+	0x00, 0xff, 0xff, 0xfe, 0xa6, 0x17, 0x82, 0x06, 0x10, 0x00, 0x00,
 }
diff --git a/googleapis/datastore/v1beta3/query.pb.go b/googleapis/datastore/v1beta3/query.pb.go
index 35dbbb64..42bc09e9 100644
--- a/googleapis/datastore/v1beta3/query.pb.go
+++ b/googleapis/datastore/v1beta3/query.pb.go
@@ -160,7 +160,7 @@ const (
 	// The query is finished, but there may be more results after the end
 	// cursor.
 	QueryResultBatch_MORE_RESULTS_AFTER_CURSOR QueryResultBatch_MoreResultsType = 4
-	// The query has been exhausted.
+	// The query is finished, and there are no more results.
 	QueryResultBatch_NO_MORE_RESULTS QueryResultBatch_MoreResultsType = 3
 )
 
diff --git a/googleapis/devtools/cloudbuild/v1/cloudbuild.pb.go b/googleapis/devtools/cloudbuild/v1/cloudbuild.pb.go
index 4534af73..0ec93f0f 100644
--- a/googleapis/devtools/cloudbuild/v1/cloudbuild.pb.go
+++ b/googleapis/devtools/cloudbuild/v1/cloudbuild.pb.go
@@ -13,12 +13,14 @@ It has these top-level messages:
 	Source
 	BuiltImage
 	BuildStep
+	Volume
 	Results
 	Build
 	BuildOperationMetadata
 	SourceProvenance
 	FileHashes
 	Hash
+	Secret
 	CreateBuildRequest
 	GetBuildRequest
 	ListBuildsRequest
@@ -106,7 +108,7 @@ var Build_Status_value = map[string]int32{
 func (x Build_Status) String() string {
 	return proto.EnumName(Build_Status_name, int32(x))
 }
-func (Build_Status) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{6, 0} }
+func (Build_Status) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{7, 0} }
 
 // Specifies the hash algorithm, if any.
 type Hash_HashType int32
@@ -130,7 +132,7 @@ var Hash_HashType_value = map[string]int32{
 func (x Hash_HashType) String() string {
 	return proto.EnumName(Hash_HashType_name, int32(x))
 }
-func (Hash_HashType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{10, 0} }
+func (Hash_HashType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{11, 0} }
 
 // Specifies the manner in which the build should be verified, if at all.
 type BuildOptions_VerifyOption int32
@@ -155,7 +157,7 @@ func (x BuildOptions_VerifyOption) String() string {
 	return proto.EnumName(BuildOptions_VerifyOption_name, int32(x))
 }
 func (BuildOptions_VerifyOption) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor0, []int{23, 0}
+	return fileDescriptor0, []int{25, 0}
 }
 
 // Specifies the behavior when there is an error in the substitution checks.
@@ -182,7 +184,7 @@ func (x BuildOptions_SubstitutionOption) String() string {
 	return proto.EnumName(BuildOptions_SubstitutionOption_name, int32(x))
 }
 func (BuildOptions_SubstitutionOption) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor0, []int{23, 1}
+	return fileDescriptor0, []int{25, 1}
 }
 
 // StorageSource describes the location of the source in an archive file in
@@ -591,6 +593,18 @@ type BuildStep struct {
 	// Optional entrypoint to be used instead of the build step image's default
 	// If unset, the image's default will be used.
 	Entrypoint string `protobuf:"bytes,7,opt,name=entrypoint" json:"entrypoint,omitempty"`
+	// A list of environment variables which are encrypted using a Cloud KMS
+	// crypto key. These values must be specified in the build's secrets.
+	SecretEnv []string `protobuf:"bytes,8,rep,name=secret_env,json=secretEnv" json:"secret_env,omitempty"`
+	// List of volumes to mount into the build step.
+	//
+	// Each volume will be created as an empty volume prior to execution of the
+	// build step. Upon completion of the build, volumes and their contents will
+	// be discarded.
+	//
+	// Using a named volume in only one step is not valid as it is indicative
+	// of a mis-configured build request.
+	Volumes []*Volume `protobuf:"bytes,9,rep,name=volumes" json:"volumes,omitempty"`
 }
 
 func (m *BuildStep) Reset()                    { *m = BuildStep{} }
@@ -647,6 +661,54 @@ func (m *BuildStep) GetEntrypoint() string {
 	return ""
 }
 
+func (m *BuildStep) GetSecretEnv() []string {
+	if m != nil {
+		return m.SecretEnv
+	}
+	return nil
+}
+
+func (m *BuildStep) GetVolumes() []*Volume {
+	if m != nil {
+		return m.Volumes
+	}
+	return nil
+}
+
+// Volume describes a Docker container volume which is mounted into build steps
+// in order to persist files across build step execution.
+type Volume struct {
+	// Name of the volume to mount.
+	//
+	// Volume names must be unique per build step and must be valid names for
+	// Docker volumes. Each named volume must be used by at least two build steps.
+	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
+	// Path at which to mount the volume.
+	//
+	// Paths must be absolute and cannot conflict with other volume paths on the
+	// same build step or with certain reserved volume paths.
+	Path string `protobuf:"bytes,2,opt,name=path" json:"path,omitempty"`
+}
+
+func (m *Volume) Reset()                    { *m = Volume{} }
+func (m *Volume) String() string            { return proto.CompactTextString(m) }
+func (*Volume) ProtoMessage()               {}
+func (*Volume) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
+
+func (m *Volume) GetName() string {
+	if m != nil {
+		return m.Name
+	}
+	return ""
+}
+
+func (m *Volume) GetPath() string {
+	if m != nil {
+		return m.Path
+	}
+	return ""
+}
+
 // Results describes the artifacts created by the build pipeline.
 type Results struct {
 	// Images that were built as a part of the build.
@@ -658,7 +720,7 @@ type Results struct {
 func (m *Results) Reset()                    { *m = Results{} }
 func (m *Results) String() string            { return proto.CompactTextString(m) }
 func (*Results) ProtoMessage()               {}
-func (*Results) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
+func (*Results) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
 
 func (m *Results) GetImages() []*BuiltImage {
 	if m != nil {
@@ -759,12 +821,14 @@ type Build struct {
 	Substitutions map[string]string `protobuf:"bytes,29,rep,name=substitutions" json:"substitutions,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
 	// Tags for annotation of a Build. These are not docker tags.
 	Tags []string `protobuf:"bytes,31,rep,name=tags" json:"tags,omitempty"`
+	// Secrets to decrypt using Cloud KMS.
+	Secrets []*Secret `protobuf:"bytes,32,rep,name=secrets" json:"secrets,omitempty"`
 }
 
 func (m *Build) Reset()                    { *m = Build{} }
 func (m *Build) String() string            { return proto.CompactTextString(m) }
 func (*Build) ProtoMessage()               {}
-func (*Build) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
+func (*Build) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
 
 func (m *Build) GetId() string {
 	if m != nil {
@@ -899,6 +963,13 @@ func (m *Build) GetTags() []string {
 	return nil
 }
 
+func (m *Build) GetSecrets() []*Secret {
+	if m != nil {
+		return m.Secrets
+	}
+	return nil
+}
+
 // Metadata for build operations.
 type BuildOperationMetadata struct {
 	// The build that the operation is tracking.
@@ -908,7 +979,7 @@ type BuildOperationMetadata struct {
 func (m *BuildOperationMetadata) Reset()                    { *m = BuildOperationMetadata{} }
 func (m *BuildOperationMetadata) String() string            { return proto.CompactTextString(m) }
 func (*BuildOperationMetadata) ProtoMessage()               {}
-func (*BuildOperationMetadata) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
+func (*BuildOperationMetadata) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
 
 func (m *BuildOperationMetadata) GetBuild() *Build {
 	if m != nil {
@@ -942,7 +1013,7 @@ type SourceProvenance struct {
 func (m *SourceProvenance) Reset()                    { *m = SourceProvenance{} }
 func (m *SourceProvenance) String() string            { return proto.CompactTextString(m) }
 func (*SourceProvenance) ProtoMessage()               {}
-func (*SourceProvenance) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
+func (*SourceProvenance) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
 
 func (m *SourceProvenance) GetResolvedStorageSource() *StorageSource {
 	if m != nil {
@@ -975,7 +1046,7 @@ type FileHashes struct {
 func (m *FileHashes) Reset()                    { *m = FileHashes{} }
 func (m *FileHashes) String() string            { return proto.CompactTextString(m) }
 func (*FileHashes) ProtoMessage()               {}
-func (*FileHashes) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
+func (*FileHashes) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
 
 func (m *FileHashes) GetFileHash() []*Hash {
 	if m != nil {
@@ -995,7 +1066,7 @@ type Hash struct {
 func (m *Hash) Reset()                    { *m = Hash{} }
 func (m *Hash) String() string            { return proto.CompactTextString(m) }
 func (*Hash) ProtoMessage()               {}
-func (*Hash) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
+func (*Hash) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
 
 func (m *Hash) GetType() Hash_HashType {
 	if m != nil {
@@ -1011,6 +1082,39 @@ func (m *Hash) GetValue() []byte {
 	return nil
 }
 
+// Secret pairs a set of secret environment variables containing encrypted
+// values with the Cloud KMS key to use to decrypt the value.
+type Secret struct {
+	// Cloud KMS key name to use to decrypt these envs.
+	KmsKeyName string `protobuf:"bytes,1,opt,name=kms_key_name,json=kmsKeyName" json:"kms_key_name,omitempty"`
+	// Map of environment variable name to its encrypted value.
+	//
+	// Secret environment variables must be unique across all of a build's
+	// secrets, and must be used by at least one build step. Values can be at most
+	// 1 KB in size. There can be at most ten secret values across all of a
+	// build's secrets.
+	SecretEnv map[string][]byte `protobuf:"bytes,3,rep,name=secret_env,json=secretEnv" json:"secret_env,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (m *Secret) Reset()                    { *m = Secret{} }
+func (m *Secret) String() string            { return proto.CompactTextString(m) }
+func (*Secret) ProtoMessage()               {}
+func (*Secret) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
+
+func (m *Secret) GetKmsKeyName() string {
+	if m != nil {
+		return m.KmsKeyName
+	}
+	return ""
+}
+
+func (m *Secret) GetSecretEnv() map[string][]byte {
+	if m != nil {
+		return m.SecretEnv
+	}
+	return nil
+}
+
 // Request to create a new build.
 type CreateBuildRequest struct {
 	// ID of the project.
@@ -1022,7 +1126,7 @@ type CreateBuildRequest struct {
 func (m *CreateBuildRequest) Reset()                    { *m = CreateBuildRequest{} }
 func (m *CreateBuildRequest) String() string            { return proto.CompactTextString(m) }
 func (*CreateBuildRequest) ProtoMessage()               {}
-func (*CreateBuildRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
+func (*CreateBuildRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
 
 func (m *CreateBuildRequest) GetProjectId() string {
 	if m != nil {
@@ -1049,7 +1153,7 @@ type GetBuildRequest struct {
 func (m *GetBuildRequest) Reset()                    { *m = GetBuildRequest{} }
 func (m *GetBuildRequest) String() string            { return proto.CompactTextString(m) }
 func (*GetBuildRequest) ProtoMessage()               {}
-func (*GetBuildRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
+func (*GetBuildRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
 
 func (m *GetBuildRequest) GetProjectId() string {
 	if m != nil {
@@ -1080,7 +1184,7 @@ type ListBuildsRequest struct {
 func (m *ListBuildsRequest) Reset()                    { *m = ListBuildsRequest{} }
 func (m *ListBuildsRequest) String() string            { return proto.CompactTextString(m) }
 func (*ListBuildsRequest) ProtoMessage()               {}
-func (*ListBuildsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
+func (*ListBuildsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
 
 func (m *ListBuildsRequest) GetProjectId() string {
 	if m != nil {
@@ -1121,7 +1225,7 @@ type ListBuildsResponse struct {
 func (m *ListBuildsResponse) Reset()                    { *m = ListBuildsResponse{} }
 func (m *ListBuildsResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListBuildsResponse) ProtoMessage()               {}
-func (*ListBuildsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
+func (*ListBuildsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
 
 func (m *ListBuildsResponse) GetBuilds() []*Build {
 	if m != nil {
@@ -1148,7 +1252,7 @@ type CancelBuildRequest struct {
 func (m *CancelBuildRequest) Reset()                    { *m = CancelBuildRequest{} }
 func (m *CancelBuildRequest) String() string            { return proto.CompactTextString(m) }
 func (*CancelBuildRequest) ProtoMessage()               {}
-func (*CancelBuildRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
+func (*CancelBuildRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
 
 func (m *CancelBuildRequest) GetProjectId() string {
 	if m != nil {
@@ -1198,7 +1302,7 @@ type BuildTrigger struct {
 func (m *BuildTrigger) Reset()                    { *m = BuildTrigger{} }
 func (m *BuildTrigger) String() string            { return proto.CompactTextString(m) }
 func (*BuildTrigger) ProtoMessage()               {}
-func (*BuildTrigger) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
+func (*BuildTrigger) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
 
 type isBuildTrigger_BuildTemplate interface {
 	isBuildTrigger_BuildTemplate()
@@ -1358,7 +1462,7 @@ type CreateBuildTriggerRequest struct {
 func (m *CreateBuildTriggerRequest) Reset()                    { *m = CreateBuildTriggerRequest{} }
 func (m *CreateBuildTriggerRequest) String() string            { return proto.CompactTextString(m) }
 func (*CreateBuildTriggerRequest) ProtoMessage()               {}
-func (*CreateBuildTriggerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
+func (*CreateBuildTriggerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
 
 func (m *CreateBuildTriggerRequest) GetProjectId() string {
 	if m != nil {
@@ -1385,7 +1489,7 @@ type GetBuildTriggerRequest struct {
 func (m *GetBuildTriggerRequest) Reset()                    { *m = GetBuildTriggerRequest{} }
 func (m *GetBuildTriggerRequest) String() string            { return proto.CompactTextString(m) }
 func (*GetBuildTriggerRequest) ProtoMessage()               {}
-func (*GetBuildTriggerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
+func (*GetBuildTriggerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
 
 func (m *GetBuildTriggerRequest) GetProjectId() string {
 	if m != nil {
@@ -1410,7 +1514,7 @@ type ListBuildTriggersRequest struct {
 func (m *ListBuildTriggersRequest) Reset()                    { *m = ListBuildTriggersRequest{} }
 func (m *ListBuildTriggersRequest) String() string            { return proto.CompactTextString(m) }
 func (*ListBuildTriggersRequest) ProtoMessage()               {}
-func (*ListBuildTriggersRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
+func (*ListBuildTriggersRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
 
 func (m *ListBuildTriggersRequest) GetProjectId() string {
 	if m != nil {
@@ -1428,7 +1532,7 @@ type ListBuildTriggersResponse struct {
 func (m *ListBuildTriggersResponse) Reset()                    { *m = ListBuildTriggersResponse{} }
 func (m *ListBuildTriggersResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListBuildTriggersResponse) ProtoMessage()               {}
-func (*ListBuildTriggersResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
+func (*ListBuildTriggersResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
 
 func (m *ListBuildTriggersResponse) GetTriggers() []*BuildTrigger {
 	if m != nil {
@@ -1448,7 +1552,7 @@ type DeleteBuildTriggerRequest struct {
 func (m *DeleteBuildTriggerRequest) Reset()                    { *m = DeleteBuildTriggerRequest{} }
 func (m *DeleteBuildTriggerRequest) String() string            { return proto.CompactTextString(m) }
 func (*DeleteBuildTriggerRequest) ProtoMessage()               {}
-func (*DeleteBuildTriggerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
+func (*DeleteBuildTriggerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
 
 func (m *DeleteBuildTriggerRequest) GetProjectId() string {
 	if m != nil {
@@ -1477,7 +1581,7 @@ type UpdateBuildTriggerRequest struct {
 func (m *UpdateBuildTriggerRequest) Reset()                    { *m = UpdateBuildTriggerRequest{} }
 func (m *UpdateBuildTriggerRequest) String() string            { return proto.CompactTextString(m) }
 func (*UpdateBuildTriggerRequest) ProtoMessage()               {}
-func (*UpdateBuildTriggerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
+func (*UpdateBuildTriggerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} }
 
 func (m *UpdateBuildTriggerRequest) GetProjectId() string {
 	if m != nil {
@@ -1513,7 +1617,7 @@ type BuildOptions struct {
 func (m *BuildOptions) Reset()                    { *m = BuildOptions{} }
 func (m *BuildOptions) String() string            { return proto.CompactTextString(m) }
 func (*BuildOptions) ProtoMessage()               {}
-func (*BuildOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
+func (*BuildOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} }
 
 func (m *BuildOptions) GetSourceProvenanceHash() []Hash_HashType {
 	if m != nil {
@@ -1542,12 +1646,14 @@ func init() {
 	proto.RegisterType((*Source)(nil), "google.devtools.cloudbuild.v1.Source")
 	proto.RegisterType((*BuiltImage)(nil), "google.devtools.cloudbuild.v1.BuiltImage")
 	proto.RegisterType((*BuildStep)(nil), "google.devtools.cloudbuild.v1.BuildStep")
+	proto.RegisterType((*Volume)(nil), "google.devtools.cloudbuild.v1.Volume")
 	proto.RegisterType((*Results)(nil), "google.devtools.cloudbuild.v1.Results")
 	proto.RegisterType((*Build)(nil), "google.devtools.cloudbuild.v1.Build")
 	proto.RegisterType((*BuildOperationMetadata)(nil), "google.devtools.cloudbuild.v1.BuildOperationMetadata")
 	proto.RegisterType((*SourceProvenance)(nil), "google.devtools.cloudbuild.v1.SourceProvenance")
 	proto.RegisterType((*FileHashes)(nil), "google.devtools.cloudbuild.v1.FileHashes")
 	proto.RegisterType((*Hash)(nil), "google.devtools.cloudbuild.v1.Hash")
+	proto.RegisterType((*Secret)(nil), "google.devtools.cloudbuild.v1.Secret")
 	proto.RegisterType((*CreateBuildRequest)(nil), "google.devtools.cloudbuild.v1.CreateBuildRequest")
 	proto.RegisterType((*GetBuildRequest)(nil), "google.devtools.cloudbuild.v1.GetBuildRequest")
 	proto.RegisterType((*ListBuildsRequest)(nil), "google.devtools.cloudbuild.v1.ListBuildsRequest")
@@ -1964,135 +2070,144 @@ var _CloudBuild_serviceDesc = grpc.ServiceDesc{
 func init() { proto.RegisterFile("google/devtools/cloudbuild/v1/cloudbuild.proto", fileDescriptor0) }
 
 var fileDescriptor0 = []byte{
-	// 2077 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x59, 0x5b, 0x6f, 0xdb, 0xd8,
-	0x11, 0x36, 0x25, 0x59, 0x97, 0x91, 0x2f, 0xcc, 0xd9, 0xac, 0x43, 0x2b, 0xeb, 0x8d, 0xcb, 0xec,
-	0x6e, 0xbd, 0xd9, 0x5d, 0xa9, 0x76, 0x90, 0xc6, 0xeb, 0x6c, 0xb3, 0xb6, 0x65, 0xc5, 0x36, 0xd6,
-	0x91, 0x52, 0x4a, 0x4a, 0xd0, 0x1b, 0x58, 0x4a, 0x3c, 0xa6, 0xd9, 0x50, 0x24, 0x4b, 0x1e, 0xa9,
-	0x71, 0x82, 0xa0, 0x17, 0xa0, 0x7d, 0x6d, 0x81, 0x3e, 0xf6, 0xa1, 0x6d, 0x7e, 0x40, 0x51, 0x14,
-	0x28, 0xfa, 0xd2, 0xfe, 0x8a, 0xfe, 0x85, 0x3e, 0xf6, 0x47, 0x14, 0xe7, 0x42, 0x89, 0x92, 0x92,
-	0x52, 0x6a, 0xd0, 0x97, 0x80, 0x67, 0xce, 0x7c, 0x33, 0x73, 0xe6, 0xcc, 0x99, 0xf9, 0x14, 0x43,
-	0xd9, 0xf2, 0x3c, 0xcb, 0xc1, 0x15, 0x13, 0x0f, 0x88, 0xe7, 0x39, 0x61, 0xa5, 0xeb, 0x78, 0x7d,
-	0xb3, 0xd3, 0xb7, 0x1d, 0xb3, 0x32, 0xd8, 0x8e, 0xad, 0xca, 0x7e, 0xe0, 0x11, 0x0f, 0x6d, 0x70,
-	0xfd, 0x72, 0xa4, 0x5f, 0x8e, 0x69, 0x0c, 0xb6, 0x4b, 0xef, 0x09, 0x73, 0x86, 0x6f, 0x57, 0x0c,
-	0xd7, 0xf5, 0x88, 0x41, 0x6c, 0xcf, 0x0d, 0x39, 0xb8, 0x74, 0x53, 0xec, 0x3a, 0x9e, 0x6b, 0x05,
-	0x7d, 0xd7, 0xb5, 0x5d, 0xab, 0xe2, 0xf9, 0x38, 0x18, 0x53, 0x7a, 0x5f, 0x28, 0xb1, 0x55, 0xa7,
-	0x7f, 0x5e, 0x31, 0xfb, 0x5c, 0x41, 0xec, 0x5f, 0x9f, 0xdc, 0xc7, 0x3d, 0x9f, 0x5c, 0x8a, 0xcd,
-	0x1b, 0x93, 0x9b, 0xc4, 0xee, 0xe1, 0x90, 0x18, 0x3d, 0x9f, 0x2b, 0xa8, 0x3a, 0x2c, 0x37, 0x89,
-	0x17, 0x18, 0x16, 0x6e, 0x7a, 0xfd, 0xa0, 0x8b, 0xd1, 0x1a, 0x64, 0x3b, 0xfd, 0xee, 0x53, 0x4c,
-	0x14, 0x69, 0x53, 0xda, 0x2a, 0x68, 0x62, 0x45, 0xe5, 0x5e, 0xe7, 0x47, 0xb8, 0x4b, 0x94, 0x14,
-	0x97, 0xf3, 0x15, 0x7a, 0x1f, 0xc0, 0xc2, 0xae, 0x88, 0x59, 0x49, 0x6f, 0x4a, 0x5b, 0x69, 0x2d,
-	0x26, 0x51, 0xff, 0x2a, 0x01, 0x68, 0xd8, 0xf7, 0x84, 0xf9, 0x0d, 0x00, 0x3f, 0xf0, 0x28, 0x52,
-	0xb7, 0x4d, 0xe1, 0xa2, 0x20, 0x24, 0xa7, 0x26, 0xba, 0x0e, 0x85, 0x00, 0xfb, 0x9e, 0xee, 0x1a,
-	0x3d, 0x2c, 0x1c, 0xe5, 0xa9, 0xa0, 0x6e, 0xf4, 0x30, 0xfa, 0x1a, 0x14, 0x3b, 0x81, 0xe1, 0x76,
-	0x2f, 0xf8, 0x36, 0xf5, 0x55, 0x38, 0x59, 0xd0, 0x80, 0x0b, 0x99, 0xca, 0x75, 0xc8, 0x13, 0xc3,
-	0xe2, 0xfb, 0x19, 0xb1, 0x9f, 0x23, 0x86, 0xc5, 0x36, 0x6f, 0x00, 0x74, 0xbd, 0x5e, 0xcf, 0x26,
-	0x7a, 0x78, 0x61, 0x28, 0x8b, 0x62, 0xbb, 0xc0, 0x65, 0xcd, 0x0b, 0xe3, 0x10, 0x20, 0x1f, 0xe0,
-	0x81, 0x1d, 0xd2, 0xb8, 0xff, 0x26, 0x41, 0x56, 0xc4, 0xdc, 0x86, 0x95, 0x90, 0xe7, 0x48, 0x0f,
-	0x99, 0x84, 0x45, 0x56, 0xdc, 0xf9, 0xb4, 0xfc, 0x5f, 0x2f, 0xbf, 0x3c, 0x96, 0xd8, 0x93, 0x05,
-	0x6d, 0x39, 0x1c, 0xcb, 0xf4, 0x19, 0x14, 0xd9, 0x59, 0x85, 0xcd, 0x34, 0xb3, 0xf9, 0x71, 0x82,
-	0xcd, 0x51, 0x2a, 0xe9, 0xc9, 0x83, 0xe1, 0xea, 0x30, 0x0f, 0x59, 0x6e, 0x48, 0xdd, 0x05, 0x38,
-	0xec, 0xdb, 0x0e, 0x39, 0xed, 0x19, 0x16, 0x46, 0x08, 0x32, 0x2c, 0x1b, 0x3c, 0xd5, 0xec, 0x9b,
-	0xde, 0xa5, 0x69, 0x5b, 0x38, 0x24, 0x3c, 0x87, 0x9a, 0x58, 0xa9, 0xaf, 0x24, 0x28, 0x50, 0xa8,
-	0xd9, 0x24, 0xd8, 0x7f, 0x2d, 0x52, 0x86, 0x34, 0x76, 0x07, 0x4a, 0x6a, 0x33, 0xbd, 0x55, 0xd0,
-	0xe8, 0x27, 0xd5, 0x32, 0x02, 0x2b, 0x54, 0xd2, 0x4c, 0xc4, 0xbe, 0xa9, 0x96, 0x69, 0x07, 0xfc,
-	0x02, 0x34, 0xfa, 0x89, 0x56, 0x20, 0x65, 0x9b, 0x3c, 0xe5, 0x5a, 0xca, 0x36, 0xd1, 0x3a, 0xe4,
-	0x7f, 0x62, 0xd8, 0x44, 0x3f, 0xf7, 0x02, 0x25, 0xcb, 0x90, 0x39, 0xba, 0x7e, 0xe0, 0x05, 0xb4,
-	0xa0, 0xb0, 0x4b, 0x82, 0x4b, 0xdf, 0xb3, 0x5d, 0xa2, 0xe4, 0x18, 0x24, 0x26, 0x51, 0x9f, 0x41,
-	0x4e, 0xc3, 0x61, 0xdf, 0x21, 0x21, 0x3a, 0x80, 0xac, 0x4d, 0x0f, 0x19, 0xb2, 0x80, 0x92, 0x93,
-	0x37, 0x4a, 0x8b, 0x26, 0x80, 0xe8, 0x16, 0x5c, 0x61, 0xdb, 0x7a, 0x48, 0xb0, 0xaf, 0x0b, 0x6b,
-	0xfc, 0x2c, 0xab, 0x9d, 0x28, 0x15, 0x0c, 0x12, 0xaa, 0xaf, 0x0a, 0xb0, 0xc8, 0xd2, 0x23, 0x8e,
-	0x23, 0x0d, 0x8f, 0x33, 0x5e, 0xd5, 0xf2, 0x64, 0x55, 0x57, 0x21, 0x1b, 0x12, 0x83, 0xf4, 0x43,
-	0x56, 0x38, 0x2b, 0x3b, 0x9f, 0xcc, 0x10, 0xa7, 0x59, 0x6e, 0x32, 0x88, 0x26, 0xa0, 0xe8, 0x26,
-	0x2c, 0xf3, 0x2f, 0xdd, 0xc4, 0xc4, 0xb0, 0x1d, 0x45, 0x61, 0x6e, 0x96, 0xb8, 0xf0, 0x88, 0xc9,
-	0xd0, 0xb7, 0xa2, 0x2a, 0x10, 0xe5, 0xf4, 0x61, 0x52, 0x89, 0x32, 0x65, 0x4d, 0x80, 0xd0, 0x7d,
-	0x58, 0xa4, 0x79, 0x08, 0x95, 0x22, 0xcb, 0xe7, 0xd6, 0x2c, 0x71, 0xd2, 0x04, 0x69, 0x1c, 0x86,
-	0xf6, 0x21, 0x17, 0xf0, 0xbb, 0x51, 0x80, 0xf9, 0xff, 0x28, 0xb1, 0x9c, 0x99, 0xb6, 0x16, 0xc1,
-	0xd0, 0x3d, 0x28, 0x76, 0x03, 0x6c, 0x10, 0xac, 0xd3, 0x4e, 0xa5, 0x64, 0x99, 0x95, 0x52, 0x64,
-	0x25, 0x6a, 0x63, 0xe5, 0x56, 0xd4, 0xc6, 0x34, 0xe0, 0xea, 0x54, 0x80, 0x3e, 0x07, 0x08, 0x89,
-	0x11, 0x10, 0x8e, 0xcd, 0x25, 0x62, 0x0b, 0x4c, 0x9b, 0x41, 0xef, 0x41, 0xf1, 0xdc, 0x76, 0xed,
-	0xf0, 0x82, 0x63, 0xf3, 0xc9, 0x7e, 0xb9, 0x3a, 0x03, 0xdf, 0x86, 0x1c, 0x45, 0x79, 0x7d, 0xa2,
-	0x2c, 0x31, 0xe0, 0xfa, 0x14, 0xf0, 0x48, 0x34, 0x6d, 0x2d, 0xd2, 0xa4, 0x8f, 0x50, 0x94, 0xdb,
-	0x32, 0x2b, 0xb7, 0xa8, 0x22, 0x6f, 0x40, 0xd1, 0xf1, 0xac, 0x50, 0x17, 0x5d, 0xf8, 0x1d, 0xfe,
-	0x00, 0xa8, 0xe8, 0x90, 0x77, 0xe2, 0xef, 0xc3, 0x15, 0x7e, 0x5d, 0xba, 0x1f, 0x78, 0x03, 0xec,
-	0x1a, 0x6e, 0x17, 0x2b, 0xef, 0x32, 0xbf, 0x95, 0x99, 0xae, 0xfb, 0xd1, 0x10, 0xa6, 0xc9, 0xe1,
-	0x84, 0x04, 0x6d, 0x81, 0xcc, 0x1f, 0x04, 0x09, 0x6c, 0xcb, 0xc2, 0x01, 0x2d, 0xe8, 0x35, 0x16,
-	0xc3, 0x0a, 0x93, 0xb7, 0xb8, 0xf8, 0xd4, 0x44, 0x35, 0xc8, 0x79, 0x3e, 0x9b, 0x54, 0xca, 0x35,
-	0xe6, 0x7d, 0xa6, 0xb2, 0x6e, 0x70, 0x88, 0x16, 0x61, 0xd1, 0x35, 0xc8, 0x39, 0x9e, 0xa5, 0xf7,
-	0x03, 0x47, 0x59, 0xe7, 0xdd, 0xc8, 0xf1, 0xac, 0x76, 0xe0, 0xa0, 0x1f, 0xc0, 0x72, 0xd8, 0xef,
-	0x84, 0xc4, 0x26, 0x7d, 0xee, 0x65, 0x83, 0x15, 0xe5, 0xdd, 0xd9, 0x1e, 0x4f, 0x1c, 0x59, 0xa3,
-	0xdd, 0x43, 0x1b, 0xb7, 0x46, 0x1b, 0x17, 0x31, 0xac, 0x50, 0xb9, 0xc1, 0x1b, 0x17, 0xfd, 0x2e,
-	0xed, 0x03, 0x9a, 0x06, 0xd2, 0x76, 0xf6, 0x14, 0x5f, 0x8a, 0xe7, 0x4e, 0x3f, 0xd1, 0x55, 0x58,
-	0x1c, 0x18, 0x4e, 0x3f, 0x1a, 0x51, 0x7c, 0xb1, 0x97, 0xda, 0x95, 0xd4, 0x9f, 0x42, 0x96, 0xbf,
-	0x5b, 0x84, 0x60, 0xa5, 0xd9, 0x3a, 0x68, 0xb5, 0x9b, 0x7a, 0xbb, 0xfe, 0x55, 0xbd, 0xf1, 0xa4,
-	0x2e, 0x2f, 0x20, 0x80, 0xec, 0xb7, 0xdb, 0xb5, 0x76, 0xed, 0x48, 0x96, 0x50, 0x11, 0x72, 0x4f,
-	0x1a, 0xda, 0x57, 0xa7, 0xf5, 0x63, 0x39, 0x45, 0x17, 0xcd, 0x76, 0xb5, 0x5a, 0x6b, 0x36, 0xe5,
-	0x34, 0x5d, 0x3c, 0x38, 0x38, 0x3d, 0x6b, 0x6b, 0x35, 0x39, 0x43, 0xcd, 0x9c, 0xd6, 0x5b, 0x35,
-	0xad, 0x7e, 0x70, 0xa6, 0xd7, 0x34, 0xad, 0xa1, 0xc9, 0x8b, 0x54, 0xa1, 0x75, 0xfa, 0xb0, 0xd6,
-	0x68, 0xb7, 0xe4, 0x2c, 0x5a, 0x86, 0x42, 0xf5, 0xa0, 0x5e, 0xad, 0x9d, 0x9d, 0xd5, 0x8e, 0xe4,
-	0x9c, 0xda, 0x82, 0x35, 0x91, 0x67, 0x31, 0x81, 0x1f, 0x62, 0x62, 0x98, 0x06, 0x31, 0xd0, 0x1e,
-	0x2c, 0xb2, 0x24, 0xb1, 0x83, 0x14, 0x77, 0x3e, 0x98, 0x25, 0x8f, 0x1a, 0x87, 0xa8, 0x7f, 0x4c,
-	0x83, 0x3c, 0x59, 0x3c, 0xc8, 0x84, 0x6b, 0x01, 0x0e, 0x3d, 0x67, 0x80, 0x69, 0xfb, 0x1c, 0x1b,
-	0x90, 0xe9, 0xf9, 0x07, 0xa4, 0xf6, 0x6e, 0x64, 0x6c, 0x9c, 0x90, 0x7c, 0x0f, 0xae, 0x0e, 0xbd,
-	0xc4, 0xe7, 0x65, 0x76, 0xce, 0x79, 0xa9, 0xa1, 0xc8, 0x4c, 0x8c, 0x8e, 0xfc, 0x90, 0x3e, 0x7b,
-	0x07, 0xeb, 0x17, 0x46, 0x78, 0x81, 0x43, 0x25, 0xc3, 0x2a, 0xec, 0xcb, 0x39, 0x5f, 0x51, 0xf9,
-	0x81, 0xed, 0xe0, 0x13, 0x66, 0x81, 0x57, 0x1a, 0x9c, 0x0f, 0x05, 0xa5, 0x0b, 0x58, 0x9d, 0xd8,
-	0x7e, 0x4d, 0x3d, 0x7d, 0x19, 0xaf, 0xa7, 0xe4, 0x43, 0x8d, 0x0c, 0xc6, 0x4b, 0xaf, 0x0e, 0x30,
-	0xda, 0x40, 0xfb, 0x50, 0x18, 0x9e, 0x4c, 0x91, 0xd8, 0xb9, 0x6e, 0x26, 0x98, 0xa5, 0x48, 0x2d,
-	0x1f, 0xc5, 0xae, 0xfe, 0x4c, 0x82, 0x0c, 0xfd, 0x40, 0xfb, 0x90, 0x21, 0x97, 0x3e, 0x27, 0x02,
-	0x2b, 0x89, 0x97, 0x4a, 0x21, 0xec, 0x9f, 0xd6, 0xa5, 0x8f, 0x35, 0x86, 0x1c, 0x7f, 0x2f, 0x4b,
-	0x22, 0x68, 0x75, 0x13, 0xf2, 0x91, 0x1e, 0xca, 0x43, 0xa6, 0xde, 0xa8, 0xd7, 0xf8, 0x1b, 0x69,
-	0x9e, 0x1c, 0xec, 0xdc, 0xf9, 0xa6, 0x2c, 0xa9, 0x1e, 0xa0, 0x2a, 0x6b, 0xef, 0xbc, 0x18, 0xf1,
-	0x8f, 0xfb, 0x38, 0x24, 0x49, 0x1c, 0x72, 0x58, 0xe7, 0xa9, 0xf9, 0xeb, 0x7c, 0x1f, 0x56, 0x8f,
-	0x31, 0x99, 0xc7, 0x1b, 0xa7, 0x02, 0xa9, 0x88, 0x0a, 0xa8, 0xbf, 0x92, 0xe0, 0xca, 0x99, 0x1d,
-	0x72, 0x1b, 0xe1, 0x8c, 0x46, 0xae, 0x43, 0xc1, 0x67, 0xaf, 0xc7, 0x7e, 0xce, 0x73, 0xb4, 0xa8,
-	0xe5, 0xa9, 0xa0, 0x69, 0x3f, 0xe7, 0x94, 0x99, 0x6e, 0x12, 0xef, 0x29, 0x76, 0x05, 0x63, 0x63,
-	0xea, 0x2d, 0x2a, 0xa0, 0x73, 0xe4, 0xdc, 0x76, 0x08, 0x0e, 0xd8, 0xd0, 0x2a, 0x68, 0x62, 0xa5,
-	0x3e, 0x07, 0x14, 0x8f, 0x23, 0xf4, 0x3d, 0x37, 0xc4, 0xe8, 0x0b, 0x4a, 0xef, 0xa9, 0x44, 0xd4,
-	0xc4, 0x6c, 0xd9, 0x11, 0x18, 0xf4, 0x11, 0xac, 0xba, 0xf8, 0x19, 0xd1, 0x63, 0xf1, 0xf0, 0x93,
-	0x2f, 0x53, 0xf1, 0xa3, 0x28, 0x26, 0xb5, 0x0a, 0xa8, 0x4a, 0x5f, 0x86, 0xf3, 0x36, 0x99, 0xfc,
-	0x65, 0x06, 0x96, 0x0e, 0x63, 0x23, 0x67, 0x8a, 0x75, 0x6d, 0x42, 0xd1, 0xc4, 0x61, 0x37, 0xb0,
-	0xd9, 0x24, 0x61, 0x8c, 0xa3, 0xa0, 0xc5, 0x45, 0xa8, 0x05, 0x72, 0x34, 0xc6, 0x08, 0xee, 0xf9,
-	0x8e, 0x41, 0x22, 0x5a, 0x30, 0x47, 0xdf, 0x58, 0x15, 0x26, 0x5a, 0xc2, 0x02, 0xfa, 0x22, 0x2a,
-	0xb0, 0xcc, 0xec, 0x05, 0x76, 0xb2, 0x20, 0x4a, 0x0c, 0xbd, 0x07, 0xec, 0x89, 0x31, 0x6a, 0x9d,
-	0x17, 0xbf, 0x41, 0x86, 0x92, 0x49, 0xfe, 0xb3, 0x38, 0x17, 0xff, 0x29, 0x41, 0xde, 0xb4, 0x43,
-	0xa3, 0xe3, 0x60, 0x53, 0x29, 0x6c, 0x4a, 0x5b, 0x79, 0x6d, 0xb8, 0x46, 0xe6, 0xe4, 0x34, 0xe5,
-	0x14, 0xef, 0xfe, 0x2c, 0xc1, 0x8b, 0x0b, 0x48, 0x1e, 0xaa, 0x6f, 0x3f, 0x40, 0x0f, 0x65, 0x58,
-	0x11, 0xfc, 0x43, 0xa4, 0x5b, 0xfd, 0xb9, 0x04, 0xeb, 0xb1, 0x2e, 0x20, 0x82, 0x99, 0xb1, 0xa8,
-	0x6a, 0x90, 0x13, 0xd7, 0x27, 0xda, 0xc1, 0x27, 0x73, 0x1c, 0x58, 0x8b, 0xb0, 0xea, 0x63, 0x58,
-	0x8b, 0xfa, 0xc2, 0x7c, 0xfe, 0x37, 0x00, 0x62, 0x44, 0x8a, 0x9f, 0xb6, 0x40, 0x22, 0x0e, 0xa5,
-	0x7e, 0x0e, 0xca, 0xf0, 0x91, 0x0a, 0xc3, 0x33, 0xf6, 0x0c, 0xd5, 0x84, 0xf5, 0xd7, 0x40, 0xc5,
-	0x33, 0x3f, 0x86, 0xbc, 0x70, 0x12, 0x3d, 0xf4, 0xb9, 0xce, 0x3d, 0x04, 0xab, 0xdf, 0x81, 0xf5,
-	0x23, 0xec, 0xe0, 0xff, 0x29, 0xf7, 0x09, 0x67, 0xff, 0x83, 0x04, 0xeb, 0x6d, 0xdf, 0x34, 0xfe,
-	0x0f, 0xb6, 0xe3, 0xd7, 0x9e, 0x7e, 0x8b, 0x6b, 0xff, 0x7b, 0x5a, 0xb4, 0x20, 0xc1, 0x5a, 0x51,
-	0x07, 0xd6, 0xa6, 0xb8, 0xf7, 0x68, 0xc4, 0xce, 0x3b, 0x1c, 0xaf, 0x4e, 0xb2, 0x6f, 0x36, 0x6e,
-	0x7d, 0x4a, 0xab, 0x58, 0x12, 0xb0, 0xa9, 0x0f, 0x70, 0x60, 0x9f, 0x5f, 0xea, 0x9c, 0x2c, 0x8b,
-	0x9f, 0x8f, 0xbb, 0x73, 0xf0, 0xec, 0xf2, 0x63, 0x66, 0x80, 0xaf, 0x28, 0xc5, 0x12, 0x86, 0xe3,
-	0x62, 0xe4, 0xc1, 0x3b, 0xf1, 0x67, 0x1c, 0x79, 0xcb, 0x30, 0x6f, 0xf7, 0xe7, 0xf1, 0x16, 0x7f,
-	0xfc, 0xc2, 0x27, 0x0a, 0xa7, 0x64, 0x6a, 0x19, 0x96, 0xc6, 0x02, 0x90, 0x61, 0xa9, 0xde, 0x68,
-	0xe9, 0x8f, 0x6b, 0xda, 0xe9, 0x83, 0xd3, 0xda, 0x91, 0xbc, 0x80, 0x96, 0x20, 0x3f, 0x5c, 0x49,
-	0xea, 0x9d, 0xf1, 0xb6, 0x22, 0x50, 0x2b, 0x00, 0x0f, 0xdb, 0xcd, 0x96, 0xfe, 0xf0, 0xa0, 0x55,
-	0x3d, 0x91, 0x17, 0xd0, 0x2a, 0x14, 0x0f, 0xce, 0xce, 0x1a, 0x4f, 0xf4, 0xb3, 0x46, 0xa3, 0x59,
-	0x93, 0xa5, 0x9d, 0x7f, 0x17, 0x01, 0xaa, 0x34, 0x58, 0xfe, 0xab, 0xfd, 0x37, 0x12, 0x14, 0x63,
-	0x8d, 0x04, 0x6d, 0x27, 0x9c, 0x6c, 0x9a, 0x7a, 0x94, 0x36, 0x22, 0x48, 0xec, 0xbf, 0xec, 0xca,
-	0x43, 0xaa, 0xad, 0x56, 0x7e, 0xf1, 0xcf, 0x7f, 0xfd, 0x36, 0xf5, 0xb1, 0xba, 0x59, 0x19, 0x6c,
-	0x57, 0x44, 0xb1, 0x86, 0x95, 0x17, 0xa3, 0x42, 0x7e, 0x59, 0xe1, 0x93, 0x74, 0x4f, 0x0c, 0x83,
-	0x5f, 0x4b, 0x90, 0x8f, 0x1a, 0x0b, 0x2a, 0x27, 0xc4, 0x33, 0xc1, 0x4c, 0x4a, 0x33, 0x0d, 0x1e,
-	0xf5, 0x33, 0x16, 0xd3, 0xd7, 0xd1, 0x87, 0x49, 0x31, 0x55, 0x5e, 0xd8, 0xe6, 0x4b, 0xf4, 0x3b,
-	0x09, 0x60, 0xc4, 0x1b, 0xd0, 0x37, 0x12, 0x7c, 0x4c, 0x51, 0x9d, 0xd2, 0xf6, 0x1c, 0x08, 0xde,
-	0xad, 0xd4, 0x2d, 0x16, 0xa2, 0x8a, 0x12, 0xd3, 0x86, 0x7e, 0x4f, 0xaf, 0x70, 0xc4, 0x2c, 0x92,
-	0xaf, 0x70, 0x8a, 0x85, 0xcc, 0x98, 0xb5, 0xbb, 0x2c, 0xa4, 0x6d, 0xf5, 0xd3, 0x99, 0xb2, 0xb6,
-	0xd7, 0x65, 0x7e, 0xf6, 0xa4, 0x5b, 0xe8, 0xcf, 0xd2, 0x18, 0x67, 0x8d, 0xb8, 0xcb, 0xee, 0xec,
-	0xb5, 0x36, 0xde, 0x08, 0x4b, 0xf3, 0x74, 0x2e, 0xf5, 0x36, 0x0b, 0xfb, 0x33, 0x55, 0x7d, 0x73,
-	0xd8, 0x51, 0x6b, 0xdf, 0x8b, 0xba, 0x1c, 0xfa, 0x93, 0x34, 0x62, 0xbd, 0x51, 0xbc, 0x77, 0x66,
-	0xac, 0xc5, 0xb7, 0x09, 0x56, 0xe4, 0x18, 0x55, 0x92, 0x83, 0xad, 0xbc, 0x18, 0x75, 0xfb, 0x97,
-	0xe8, 0x2f, 0x71, 0x8e, 0x1d, 0xcd, 0x3e, 0x74, 0x77, 0xd6, 0xc2, 0x9b, 0x18, 0xb4, 0xa5, 0xdd,
-	0xf9, 0x81, 0xa2, 0x70, 0x6f, 0xb1, 0x13, 0x7c, 0x80, 0x66, 0x48, 0x37, 0x2d, 0x5d, 0x34, 0x3d,
-	0x4a, 0x13, 0x0b, 0xe3, 0x8d, 0xd3, 0xb7, 0xb4, 0x36, 0xc5, 0x0a, 0x6b, 0x3d, 0x9f, 0x5c, 0x46,
-	0x69, 0xbd, 0x35, 0x77, 0x5a, 0xff, 0x21, 0x01, 0x9a, 0x1e, 0xc8, 0x89, 0x11, 0xbe, 0x71, 0x86,
-	0xcf, 0x57, 0x0d, 0xfb, 0x2c, 0xec, 0xbd, 0x9d, 0x79, 0xc3, 0x1e, 0xd6, 0xf1, 0xe1, 0x53, 0x50,
-	0xba, 0x5e, 0x2f, 0xf2, 0x39, 0xe6, 0xea, 0x91, 0xf4, 0xdd, 0x63, 0x21, 0xb7, 0x3c, 0xc7, 0x70,
-	0xad, 0xb2, 0x17, 0x58, 0x15, 0x0b, 0xbb, 0x2c, 0x77, 0x15, 0xbe, 0x65, 0xf8, 0x76, 0xf8, 0x86,
-	0x3f, 0xfc, 0xdc, 0x1b, 0xad, 0x5e, 0xa5, 0xd2, 0xc7, 0xd5, 0xc3, 0x4e, 0x96, 0x21, 0x6f, 0xff,
-	0x27, 0x00, 0x00, 0xff, 0xff, 0x1b, 0x69, 0xcf, 0xc4, 0x31, 0x1a, 0x00, 0x00,
+	// 2209 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x59, 0xdb, 0x72, 0x1b, 0x49,
+	0x19, 0xf6, 0x48, 0xb2, 0x0e, 0xbf, 0x7c, 0xd0, 0xf6, 0x66, 0x9d, 0xb1, 0xb2, 0xd9, 0x98, 0xc9,
+	0xee, 0xe2, 0xcd, 0xee, 0x4a, 0x6b, 0x87, 0x90, 0xac, 0x13, 0x12, 0xdb, 0xb2, 0x62, 0xbb, 0xe2,
+	0xc8, 0x61, 0x24, 0x25, 0xc5, 0xa9, 0x86, 0xb1, 0xa6, 0x2d, 0x0f, 0x1e, 0xcd, 0x0c, 0xd3, 0x2d,
+	0xb1, 0x4e, 0x2a, 0x05, 0x6c, 0x15, 0xdc, 0x42, 0x15, 0x97, 0x5c, 0x70, 0x78, 0x00, 0x8a, 0xa2,
+	0x8a, 0xe2, 0x86, 0x7d, 0x0a, 0x1e, 0x01, 0x2e, 0x79, 0x08, 0xaa, 0x0f, 0x23, 0x8d, 0xa4, 0x84,
+	0x19, 0x91, 0xe2, 0x26, 0x99, 0xfe, 0xbb, 0xff, 0x43, 0xff, 0xc7, 0xaf, 0x65, 0xa8, 0x74, 0x3d,
+	0xaf, 0xeb, 0xe0, 0xaa, 0x85, 0x07, 0xd4, 0xf3, 0x1c, 0x52, 0xed, 0x38, 0x5e, 0xdf, 0x3a, 0xe9,
+	0xdb, 0x8e, 0x55, 0x1d, 0x6c, 0x44, 0x56, 0x15, 0x3f, 0xf0, 0xa8, 0x87, 0xae, 0x8a, 0xf3, 0x95,
+	0xf0, 0x7c, 0x25, 0x72, 0x62, 0xb0, 0x51, 0x7e, 0x57, 0x8a, 0x33, 0x7d, 0xbb, 0x6a, 0xba, 0xae,
+	0x47, 0x4d, 0x6a, 0x7b, 0x2e, 0x11, 0xcc, 0xe5, 0xeb, 0x72, 0xd7, 0xf1, 0xdc, 0x6e, 0xd0, 0x77,
+	0x5d, 0xdb, 0xed, 0x56, 0x3d, 0x1f, 0x07, 0x63, 0x87, 0xde, 0x93, 0x87, 0xf8, 0xea, 0xa4, 0x7f,
+	0x5a, 0xb5, 0xfa, 0xe2, 0x80, 0xdc, 0xbf, 0x32, 0xb9, 0x8f, 0x7b, 0x3e, 0xbd, 0x90, 0x9b, 0xd7,
+	0x26, 0x37, 0xa9, 0xdd, 0xc3, 0x84, 0x9a, 0x3d, 0x5f, 0x1c, 0xd0, 0x0c, 0x58, 0x6c, 0x52, 0x2f,
+	0x30, 0xbb, 0xb8, 0xe9, 0xf5, 0x83, 0x0e, 0x46, 0x2b, 0x90, 0x3d, 0xe9, 0x77, 0xce, 0x31, 0x55,
+	0x95, 0x35, 0x65, 0xbd, 0xa0, 0xcb, 0x15, 0xa3, 0x7b, 0x27, 0x3f, 0xc2, 0x1d, 0xaa, 0xa6, 0x04,
+	0x5d, 0xac, 0xd0, 0x7b, 0x00, 0x5d, 0xec, 0x4a, 0x9b, 0xd5, 0xf4, 0x9a, 0xb2, 0x9e, 0xd6, 0x23,
+	0x14, 0xed, 0xaf, 0x0a, 0x80, 0x8e, 0x7d, 0x4f, 0x8a, 0xbf, 0x0a, 0xe0, 0x07, 0x1e, 0xe3, 0x34,
+	0x6c, 0x4b, 0xaa, 0x28, 0x48, 0xca, 0xa1, 0x85, 0xae, 0x40, 0x21, 0xc0, 0xbe, 0x67, 0xb8, 0x66,
+	0x0f, 0x4b, 0x45, 0x79, 0x46, 0x68, 0x98, 0x3d, 0x8c, 0xbe, 0x06, 0xc5, 0x93, 0xc0, 0x74, 0x3b,
+	0x67, 0x62, 0x9b, 0xe9, 0x2a, 0x1c, 0xcc, 0xe9, 0x20, 0x88, 0xfc, 0xc8, 0x15, 0xc8, 0x53, 0xb3,
+	0x2b, 0xf6, 0x33, 0x72, 0x3f, 0x47, 0xcd, 0x2e, 0xdf, 0xbc, 0x06, 0xd0, 0xf1, 0x7a, 0x3d, 0x9b,
+	0x1a, 0xe4, 0xcc, 0x54, 0xe7, 0xe5, 0x76, 0x41, 0xd0, 0x9a, 0x67, 0xe6, 0x2e, 0x40, 0x3e, 0xc0,
+	0x03, 0x9b, 0x30, 0xbb, 0xff, 0xa6, 0x40, 0x56, 0xda, 0xdc, 0x86, 0x25, 0x22, 0x7c, 0x64, 0x10,
+	0x4e, 0xe1, 0x96, 0x15, 0x37, 0x3f, 0xa9, 0xfc, 0xd7, 0xe0, 0x57, 0xc6, 0x1c, 0x7b, 0x30, 0xa7,
+	0x2f, 0x92, 0x31, 0x4f, 0x1f, 0x41, 0x91, 0xdf, 0x55, 0xca, 0x4c, 0x73, 0x99, 0x1f, 0xc5, 0xc8,
+	0x1c, 0xb9, 0x92, 0xdd, 0x3c, 0x18, 0xae, 0x76, 0xf3, 0x90, 0x15, 0x82, 0xb4, 0x3b, 0x00, 0xbb,
+	0x7d, 0xdb, 0xa1, 0x87, 0x3d, 0xb3, 0x8b, 0x11, 0x82, 0x0c, 0xf7, 0x86, 0x70, 0x35, 0xff, 0x66,
+	0xb1, 0xb4, 0xec, 0x2e, 0x26, 0x54, 0xf8, 0x50, 0x97, 0x2b, 0xed, 0xcb, 0x14, 0x14, 0x18, 0xab,
+	0xd5, 0xa4, 0xd8, 0x7f, 0x25, 0x67, 0x09, 0xd2, 0xd8, 0x1d, 0xa8, 0xa9, 0xb5, 0xf4, 0x7a, 0x41,
+	0x67, 0x9f, 0xec, 0x94, 0x19, 0x74, 0x89, 0x9a, 0xe6, 0x24, 0xfe, 0xcd, 0x4e, 0x59, 0x76, 0x20,
+	0x02, 0xa0, 0xb3, 0x4f, 0xb4, 0x04, 0x29, 0xdb, 0x12, 0x2e, 0xd7, 0x53, 0xb6, 0x85, 0x56, 0x21,
+	0xff, 0x13, 0xd3, 0xa6, 0xc6, 0xa9, 0x17, 0xa8, 0x59, 0xce, 0x99, 0x63, 0xeb, 0x87, 0x5e, 0xc0,
+	0x12, 0x0a, 0xbb, 0x34, 0xb8, 0xf0, 0x3d, 0xdb, 0xa5, 0x6a, 0x8e, 0xb3, 0x44, 0x28, 0x2c, 0x83,
+	0x08, 0xee, 0x04, 0x98, 0x1a, 0xcc, 0x92, 0x3c, 0x67, 0x2e, 0x08, 0x4a, 0xdd, 0x1d, 0xa0, 0x07,
+	0x90, 0x1b, 0x78, 0x4e, 0xbf, 0x87, 0x89, 0x5a, 0x58, 0x4b, 0xaf, 0x17, 0x37, 0x3f, 0x88, 0xf1,
+	0xe8, 0x53, 0x7e, 0x5a, 0x0f, 0xb9, 0xb4, 0xcf, 0x20, 0x2b, 0x48, 0xaf, 0x74, 0x00, 0x82, 0x8c,
+	0x6f, 0xd2, 0x33, 0x99, 0x9b, 0xfc, 0x5b, 0xfb, 0x02, 0x72, 0x3a, 0x26, 0x7d, 0x87, 0x12, 0xb4,
+	0x03, 0x59, 0x9b, 0xb9, 0x9d, 0x70, 0x17, 0xc5, 0x87, 0x73, 0x14, 0x28, 0x5d, 0x32, 0xa2, 0x1b,
+	0xf0, 0x16, 0xdf, 0x36, 0x08, 0xc5, 0xbe, 0x21, 0xa5, 0x09, 0xef, 0x2e, 0x9f, 0x84, 0xc1, 0xe1,
+	0x2c, 0x44, 0xfb, 0x67, 0x01, 0xe6, 0x79, 0xc0, 0xa4, 0x83, 0x95, 0xa1, 0x83, 0xc7, 0xeb, 0xac,
+	0x34, 0x59, 0x67, 0x35, 0xc8, 0x12, 0x6a, 0xd2, 0x3e, 0xe1, 0x17, 0x59, 0xda, 0xfc, 0x38, 0x81,
+	0x9d, 0x56, 0xa5, 0xc9, 0x59, 0x74, 0xc9, 0x8a, 0xae, 0xc3, 0xa2, 0xf8, 0x32, 0x2c, 0x4c, 0x4d,
+	0xdb, 0x51, 0x55, 0xae, 0x66, 0x41, 0x10, 0xf7, 0x38, 0x0d, 0x7d, 0x2b, 0xcc, 0x4b, 0x99, 0xe0,
+	0x71, 0xe1, 0x10, 0xe9, 0xac, 0x4b, 0x26, 0x74, 0x1f, 0xe6, 0x99, 0x1f, 0x88, 0x5a, 0xe4, 0xfe,
+	0x5c, 0x4f, 0x62, 0x27, 0x73, 0x90, 0x2e, 0xd8, 0xd0, 0x36, 0xe4, 0x02, 0x11, 0x1b, 0x15, 0xb8,
+	0xfe, 0x0f, 0x63, 0x0b, 0x8c, 0x9f, 0xd6, 0x43, 0x36, 0x74, 0x17, 0x8a, 0x9d, 0x00, 0x9b, 0x14,
+	0x1b, 0xac, 0x77, 0xaa, 0x59, 0x2e, 0xa5, 0x1c, 0x4a, 0x09, 0x1b, 0x6b, 0xa5, 0x15, 0x36, 0x56,
+	0x1d, 0xc4, 0x71, 0x46, 0x40, 0x9f, 0x03, 0x10, 0x6a, 0x06, 0x54, 0xf0, 0xe6, 0x62, 0x79, 0x0b,
+	0xfc, 0x34, 0x67, 0xbd, 0x0b, 0xc5, 0x53, 0xdb, 0xb5, 0xc9, 0x99, 0xe0, 0xcd, 0xc7, 0xeb, 0x15,
+	0xc7, 0x39, 0xf3, 0x4d, 0xc8, 0x31, 0x2e, 0xaf, 0x4f, 0xd5, 0x05, 0xce, 0xb8, 0x3a, 0xc5, 0xb8,
+	0x27, 0xc7, 0x88, 0x1e, 0x9e, 0x64, 0x6d, 0x41, 0xa6, 0xdb, 0x22, 0x4f, 0xb7, 0x30, 0x23, 0xaf,
+	0x41, 0xd1, 0xf1, 0xba, 0xc4, 0x90, 0x73, 0xe1, 0x6d, 0x51, 0x92, 0x8c, 0xb4, 0x2b, 0x66, 0xc3,
+	0xf7, 0xe1, 0x2d, 0x11, 0x2e, 0xc3, 0x0f, 0xbc, 0x01, 0x76, 0x4d, 0xb7, 0x83, 0xd5, 0x77, 0xb8,
+	0xde, 0x6a, 0xa2, 0x70, 0x3f, 0x19, 0xb2, 0xe9, 0x25, 0x32, 0x41, 0x41, 0xeb, 0x50, 0x12, 0x05,
+	0x41, 0x03, 0xbb, 0xdb, 0xc5, 0x01, 0x4b, 0xe8, 0x15, 0x6e, 0xc3, 0x12, 0xa7, 0xb7, 0x04, 0xf9,
+	0xd0, 0x42, 0x75, 0xc8, 0x79, 0x3e, 0x9f, 0x9d, 0xea, 0x65, 0xae, 0x3d, 0x51, 0x5a, 0x1f, 0x0b,
+	0x16, 0x3d, 0xe4, 0x45, 0x97, 0x21, 0xe7, 0x78, 0x5d, 0xa3, 0x1f, 0x38, 0xea, 0xaa, 0xe8, 0x8f,
+	0x8e, 0xd7, 0x6d, 0x07, 0x0e, 0xfa, 0x01, 0x2c, 0x92, 0xfe, 0x09, 0xa1, 0x36, 0xed, 0x0b, 0x2d,
+	0x57, 0x79, 0x52, 0xde, 0x4e, 0x56, 0x3c, 0x51, 0xce, 0x3a, 0xeb, 0x67, 0xfa, 0xb8, 0x34, 0xd6,
+	0x5b, 0xa8, 0xd9, 0x25, 0xea, 0x35, 0xd1, 0x4a, 0xd9, 0x37, 0x6b, 0x67, 0xa2, 0xb7, 0x11, 0x75,
+	0x2d, 0x51, 0x3b, 0x6b, 0xf2, 0xd3, 0x7a, 0xc8, 0x55, 0xde, 0x06, 0x34, 0xad, 0x99, 0x75, 0xe8,
+	0x73, 0x7c, 0x21, 0xfb, 0x05, 0xfb, 0x44, 0x97, 0x60, 0x7e, 0x60, 0x3a, 0xfd, 0x70, 0xea, 0x8a,
+	0xc5, 0x56, 0xea, 0x8e, 0xa2, 0xfd, 0x14, 0xb2, 0xa2, 0xf0, 0x11, 0x82, 0xa5, 0x66, 0x6b, 0xa7,
+	0xd5, 0x6e, 0x1a, 0xed, 0xc6, 0xa3, 0xc6, 0xf1, 0xb3, 0x46, 0x69, 0x0e, 0x01, 0x64, 0xbf, 0xdd,
+	0xae, 0xb7, 0xeb, 0x7b, 0x25, 0x05, 0x15, 0x21, 0xf7, 0xec, 0x58, 0x7f, 0x74, 0xd8, 0xd8, 0x2f,
+	0xa5, 0xd8, 0xa2, 0xd9, 0xae, 0xd5, 0xea, 0xcd, 0x66, 0x29, 0xcd, 0x16, 0x0f, 0x77, 0x0e, 0x8f,
+	0xda, 0x7a, 0xbd, 0x94, 0x61, 0x62, 0x0e, 0x1b, 0xad, 0xba, 0xde, 0xd8, 0x39, 0x32, 0xea, 0xba,
+	0x7e, 0xac, 0x97, 0xe6, 0xd9, 0x81, 0xd6, 0xe1, 0xe3, 0xfa, 0x71, 0xbb, 0x55, 0xca, 0xa2, 0x45,
+	0x28, 0xd4, 0x76, 0x1a, 0xb5, 0xfa, 0xd1, 0x51, 0x7d, 0xaf, 0x94, 0xd3, 0x5a, 0xb0, 0x22, 0x03,
+	0x25, 0x41, 0xc5, 0x63, 0x4c, 0x4d, 0xcb, 0xa4, 0x26, 0xda, 0x82, 0x79, 0x7e, 0x71, 0x7e, 0x91,
+	0xe2, 0xe6, 0xfb, 0x49, 0x02, 0xa1, 0x0b, 0x16, 0xed, 0x0f, 0x69, 0x28, 0x4d, 0x66, 0x1f, 0xb2,
+	0xe0, 0x72, 0x80, 0x89, 0xe7, 0x0c, 0x30, 0xeb, 0xbf, 0x63, 0x33, 0x3f, 0x3d, 0xfb, 0xcc, 0xd7,
+	0xdf, 0x09, 0x85, 0x8d, 0x63, 0xac, 0xef, 0xc1, 0xa5, 0xa1, 0x96, 0x28, 0x04, 0xc8, 0xce, 0x08,
+	0x01, 0x74, 0x14, 0x8a, 0x89, 0x20, 0xac, 0x1f, 0xb2, 0xbe, 0xe1, 0x60, 0xe3, 0xcc, 0x24, 0x67,
+	0x98, 0xa8, 0x19, 0x9e, 0x35, 0x0f, 0x66, 0x2c, 0xc3, 0xca, 0x43, 0xdb, 0xc1, 0x07, 0x5c, 0x82,
+	0x48, 0x55, 0x38, 0x1d, 0x12, 0xca, 0x67, 0xb0, 0x3c, 0xb1, 0xfd, 0x8a, 0x7c, 0x7a, 0x10, 0xcd,
+	0xa7, 0xf8, 0x4b, 0x8d, 0x04, 0x46, 0x53, 0xaf, 0x01, 0x30, 0xda, 0x40, 0xdb, 0x50, 0x18, 0xde,
+	0x4c, 0x55, 0xf8, 0xbd, 0xae, 0xc7, 0x88, 0x65, 0x9c, 0x7a, 0x3e, 0xb4, 0x5d, 0xfb, 0x99, 0x02,
+	0x19, 0xf6, 0x81, 0xb6, 0x21, 0x43, 0x2f, 0x7c, 0x31, 0xda, 0x97, 0x62, 0x83, 0xca, 0x58, 0xf8,
+	0x3f, 0xad, 0x0b, 0x1f, 0xeb, 0x9c, 0x73, 0xbc, 0x5e, 0x16, 0xa4, 0xd1, 0xda, 0x1a, 0xe4, 0xc3,
+	0x73, 0x28, 0x0f, 0x99, 0xc6, 0x71, 0xa3, 0x2e, 0x6a, 0xa4, 0x79, 0xb0, 0xb3, 0x79, 0xeb, 0x9b,
+	0x25, 0x45, 0xfb, 0x8a, 0xe1, 0x4a, 0x5e, 0x9b, 0x68, 0x0d, 0x16, 0xce, 0x7b, 0xc4, 0x38, 0xc7,
+	0x17, 0x46, 0x04, 0x67, 0xc0, 0x79, 0x8f, 0x3c, 0xc2, 0x17, 0x1c, 0xb1, 0x36, 0xc7, 0xb0, 0x4e,
+	0x9a, 0x5f, 0xf9, 0x1b, 0x89, 0x1a, 0x80, 0xfc, 0xaf, 0xee, 0x0e, 0x44, 0xfc, 0x46, 0x08, 0xa9,
+	0x7c, 0x0f, 0x96, 0xc6, 0x37, 0xe3, 0xba, 0xc1, 0x42, 0x34, 0x24, 0x1e, 0xa0, 0x1a, 0x9f, 0x6f,
+	0xa2, 0x98, 0xf0, 0x8f, 0xfb, 0x98, 0xd0, 0x38, 0x58, 0x3f, 0xac, 0xd3, 0xd4, 0xec, 0x75, 0xba,
+	0x0d, 0xcb, 0xfb, 0x98, 0xce, 0xa2, 0x4d, 0x60, 0xa1, 0x54, 0x88, 0x85, 0xb4, 0x5f, 0x2a, 0xf0,
+	0xd6, 0x91, 0x4d, 0x84, 0x0c, 0x92, 0x50, 0xc8, 0x15, 0x28, 0xf8, 0xbc, 0xfa, 0xed, 0xe7, 0xc2,
+	0x0b, 0xf3, 0x7a, 0x9e, 0x11, 0x9a, 0xf6, 0x73, 0xf1, 0x8a, 0x61, 0x9b, 0xd4, 0x3b, 0xc7, 0xae,
+	0x04, 0xd1, 0xfc, 0x78, 0x8b, 0x11, 0xd8, 0x20, 0x3d, 0xb5, 0x1d, 0x8a, 0x03, 0x3e, 0xb5, 0x0b,
+	0xba, 0x5c, 0x69, 0xcf, 0x01, 0x45, 0xed, 0x20, 0xbe, 0xe7, 0x12, 0x8c, 0xee, 0xb1, 0x17, 0x17,
+	0xa3, 0xc8, 0x9c, 0x4e, 0xe6, 0x1d, 0xc9, 0x83, 0x3e, 0x84, 0x65, 0x17, 0x7f, 0x41, 0x8d, 0x88,
+	0x3d, 0xe2, 0xe6, 0x8b, 0x8c, 0xfc, 0x24, 0xb4, 0x49, 0xab, 0x01, 0xaa, 0xb1, 0xca, 0x76, 0xde,
+	0xc4, 0x93, 0xbf, 0xc8, 0xc0, 0xc2, 0x6e, 0x64, 0xe6, 0x4e, 0xc1, 0xce, 0x35, 0x28, 0x5a, 0x98,
+	0x74, 0x02, 0x9b, 0x8f, 0x52, 0x0e, 0xb9, 0x0a, 0x7a, 0x94, 0x84, 0x5a, 0x50, 0x0a, 0xe7, 0x38,
+	0xc5, 0x3d, 0xdf, 0x31, 0x69, 0x88, 0x8b, 0x66, 0xe8, 0x7b, 0xcb, 0x52, 0x44, 0x4b, 0x4a, 0x40,
+	0xf7, 0xc2, 0x04, 0xcb, 0x24, 0x4f, 0xb0, 0x83, 0x39, 0x99, 0x62, 0xe8, 0x5d, 0xe0, 0x2d, 0x82,
+	0x17, 0x61, 0x5e, 0x3e, 0x0b, 0x87, 0x94, 0x49, 0x00, 0x38, 0x3f, 0x13, 0x00, 0x2c, 0x43, 0xde,
+	0xb2, 0x89, 0x79, 0xe2, 0x60, 0x4b, 0x2d, 0xac, 0x29, 0xeb, 0x79, 0x7d, 0xb8, 0x46, 0xd6, 0x24,
+	0x9c, 0x10, 0x18, 0xf7, 0x7e, 0x12, 0xe3, 0x65, 0x00, 0xe2, 0x51, 0xc5, 0x9b, 0x03, 0x80, 0xdd,
+	0x12, 0x2c, 0x49, 0x00, 0x26, 0xdd, 0xad, 0xfd, 0x5c, 0x81, 0xd5, 0x48, 0x17, 0x90, 0xc6, 0x24,
+	0x4c, 0xaa, 0x3a, 0xe4, 0x64, 0xf8, 0x64, 0x3b, 0xf8, 0x78, 0x86, 0x0b, 0xeb, 0x21, 0xaf, 0xf6,
+	0x14, 0x56, 0xc2, 0xbe, 0x30, 0x9b, 0xfe, 0xab, 0x00, 0x11, 0x24, 0x29, 0x6e, 0x5b, 0xa0, 0x21,
+	0x88, 0xd4, 0x3e, 0x07, 0x75, 0x58, 0xa4, 0x52, 0x70, 0xc2, 0x9e, 0xa1, 0x59, 0xb0, 0xfa, 0x0a,
+	0x56, 0x59, 0xe6, 0xfb, 0x90, 0x97, 0x4a, 0xc2, 0x42, 0x9f, 0xe9, 0xde, 0x43, 0x66, 0xed, 0x3b,
+	0xb0, 0xba, 0x87, 0x1d, 0xfc, 0x3f, 0xf9, 0x3e, 0xe6, 0xee, 0xbf, 0x57, 0x60, 0xb5, 0xed, 0x5b,
+	0xe6, 0xff, 0x41, 0x76, 0x34, 0xec, 0xe9, 0x37, 0x08, 0xfb, 0xdf, 0xd3, 0xb2, 0x05, 0x49, 0xd8,
+	0x8e, 0x4e, 0x60, 0x65, 0xea, 0xf1, 0x31, 0x82, 0x08, 0xb3, 0x0e, 0xf7, 0x4b, 0x93, 0xcf, 0x0f,
+	0x0e, 0x17, 0x7c, 0x06, 0x0b, 0xb9, 0x13, 0xb0, 0x65, 0x0c, 0x70, 0x60, 0x9f, 0x5e, 0x18, 0xe2,
+	0xb5, 0x20, 0xdf, 0xcf, 0x77, 0x66, 0x78, 0x68, 0x54, 0x9e, 0x72, 0x01, 0x62, 0xc5, 0x20, 0xa2,
+	0x14, 0x1c, 0x25, 0x23, 0x0f, 0xde, 0x8e, 0x96, 0x71, 0xa8, 0x2d, 0xc3, 0xb5, 0xdd, 0x9f, 0x45,
+	0x5b, 0xb4, 0xf8, 0xa5, 0x4e, 0x44, 0xa6, 0x68, 0x5a, 0x05, 0x16, 0xc6, 0x0c, 0x28, 0xc1, 0x42,
+	0xe3, 0xb8, 0x65, 0x3c, 0xad, 0xeb, 0x87, 0x0f, 0x0f, 0xeb, 0x7b, 0xa5, 0x39, 0xb4, 0x00, 0xf9,
+	0xe1, 0x4a, 0xd1, 0x6e, 0x8d, 0xb7, 0x15, 0xc9, 0xb5, 0x04, 0xf0, 0xb8, 0xdd, 0x6c, 0x19, 0x8f,
+	0x77, 0x5a, 0xb5, 0x83, 0xd2, 0x1c, 0x5a, 0x86, 0xe2, 0xce, 0xd1, 0xd1, 0xf1, 0x33, 0xe3, 0xe8,
+	0xf8, 0xb8, 0x59, 0x2f, 0x29, 0x9b, 0xff, 0x2e, 0x02, 0xd4, 0x98, 0xb1, 0xe2, 0x67, 0x8b, 0x5f,
+	0x2b, 0x50, 0x8c, 0x34, 0x12, 0xb4, 0x11, 0x73, 0xb3, 0x69, 0xe8, 0x51, 0xbe, 0x1a, 0xb2, 0x44,
+	0x7e, 0x45, 0xad, 0x0c, 0x9f, 0x0a, 0x5a, 0xf5, 0xcb, 0x7f, 0xfc, 0xeb, 0x37, 0xa9, 0x8f, 0xb4,
+	0xb5, 0xea, 0x60, 0xa3, 0x2a, 0x93, 0x95, 0x54, 0x5f, 0x8c, 0x12, 0xf9, 0x65, 0x55, 0x4c, 0xd2,
+	0x2d, 0x39, 0x0c, 0x7e, 0xa5, 0x40, 0x3e, 0x6c, 0x2c, 0xa8, 0x12, 0x63, 0xcf, 0x04, 0x32, 0x29,
+	0x27, 0x1a, 0x3c, 0xda, 0xa7, 0xdc, 0xa6, 0xaf, 0xa3, 0x0f, 0xe2, 0x6c, 0xaa, 0xbe, 0xb0, 0xad,
+	0x97, 0xe8, 0xb7, 0x0a, 0xc0, 0x08, 0x37, 0xa0, 0xcf, 0x62, 0x74, 0x4c, 0x41, 0x9d, 0xf2, 0xc6,
+	0x0c, 0x1c, 0xa2, 0x5b, 0x69, 0xeb, 0xdc, 0x44, 0x0d, 0xc5, 0xba, 0x0d, 0xfd, 0x8e, 0x85, 0x70,
+	0x84, 0x2c, 0xe2, 0x43, 0x38, 0x85, 0x42, 0x12, 0x7a, 0xed, 0x36, 0x37, 0x69, 0x43, 0xfb, 0x24,
+	0x91, 0xd7, 0xb6, 0x3a, 0x5c, 0xcf, 0x96, 0x72, 0x03, 0xfd, 0x59, 0x19, 0xc3, 0xac, 0x21, 0x76,
+	0xb9, 0x93, 0x3c, 0xd7, 0xc6, 0x1b, 0x61, 0x79, 0x96, 0xce, 0xa5, 0xdd, 0xe4, 0x66, 0x7f, 0xaa,
+	0x69, 0xaf, 0x37, 0x3b, 0x6c, 0xed, 0x5b, 0x61, 0x97, 0x43, 0x7f, 0x52, 0x46, 0xa8, 0x37, 0xb4,
+	0xf7, 0x56, 0xc2, 0x5c, 0x7c, 0x13, 0x63, 0xa5, 0x8f, 0x51, 0x35, 0xde, 0xd8, 0xea, 0x8b, 0x51,
+	0xb7, 0x7f, 0x89, 0xfe, 0x12, 0xc5, 0xd8, 0xe1, 0xec, 0x43, 0xb7, 0x93, 0x26, 0xde, 0xc4, 0xa0,
+	0x2d, 0xdf, 0x99, 0x9d, 0x51, 0x26, 0xee, 0x0d, 0x7e, 0x83, 0xf7, 0x51, 0x02, 0x77, 0xb3, 0xd4,
+	0x45, 0xd3, 0xa3, 0x34, 0x36, 0x31, 0x5e, 0x3b, 0x7d, 0xcb, 0x2b, 0x53, 0xa8, 0xb0, 0xde, 0xf3,
+	0xe9, 0x45, 0xe8, 0xd6, 0x1b, 0x33, 0xbb, 0xf5, 0x2b, 0x05, 0xd0, 0xf4, 0x40, 0x8e, 0xb5, 0xf0,
+	0xb5, 0x33, 0x7c, 0xb6, 0x6c, 0xd8, 0xe6, 0x66, 0x6f, 0x6d, 0xce, 0x6a, 0xf6, 0x30, 0x8f, 0x77,
+	0xcf, 0x41, 0xed, 0x78, 0xbd, 0x50, 0xe7, 0x98, 0xaa, 0x27, 0xca, 0x77, 0xf7, 0x25, 0xbd, 0xeb,
+	0x39, 0xa6, 0xdb, 0xad, 0x78, 0x41, 0xb7, 0xda, 0xc5, 0x2e, 0xf7, 0x5d, 0x55, 0x6c, 0x99, 0xbe,
+	0x4d, 0x5e, 0xf3, 0xb7, 0xb8, 0xbb, 0xa3, 0xd5, 0x1f, 0x53, 0xe9, 0xfd, 0xda, 0xee, 0x49, 0x96,
+	0x73, 0xde, 0xfc, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xec, 0x36, 0x27, 0x4f, 0xc4, 0x1b, 0x00,
+	0x00,
 }
diff --git a/googleapis/devtools/clouddebugger/v2/controller.pb.go b/googleapis/devtools/clouddebugger/v2/controller.pb.go
index 4f1a7b5d..1e54c283 100644
--- a/googleapis/devtools/clouddebugger/v2/controller.pb.go
+++ b/googleapis/devtools/clouddebugger/v2/controller.pb.go
@@ -81,6 +81,9 @@ func (m *RegisterDebuggeeRequest) GetDebuggee() *Debuggee {
 type RegisterDebuggeeResponse struct {
 	// Debuggee resource.
 	// The field `id` is guranteed to be set (in addition to the echoed fields).
+	// If the field `is_disabled` is set to `true`, the agent should disable
+	// itself by removing all breakpoints and detaching from the application.
+	// It should however continue to poll `RegisterDebuggee` until reenabled.
 	Debuggee *Debuggee `protobuf:"bytes,1,opt,name=debuggee" json:"debuggee,omitempty"`
 }
 
@@ -100,16 +103,17 @@ func (m *RegisterDebuggeeResponse) GetDebuggee() *Debuggee {
 type ListActiveBreakpointsRequest struct {
 	// Identifies the debuggee.
 	DebuggeeId string `protobuf:"bytes,1,opt,name=debuggee_id,json=debuggeeId" json:"debuggee_id,omitempty"`
-	// A wait token that, if specified, blocks the method call until the list
-	// of active breakpoints has changed, or a server selected timeout has
-	// expired.  The value should be set from the last returned response.
+	// A token that, if specified, blocks the method call until the list
+	// of active breakpoints has changed, or a server-selected timeout has
+	// expired. The value should be set from the `next_wait_token` field in
+	// the last response. The initial value should be set to `"init"`.
 	WaitToken string `protobuf:"bytes,2,opt,name=wait_token,json=waitToken" json:"wait_token,omitempty"`
-	// If set to `true`, returns `google.rpc.Code.OK` status and sets the
-	// `wait_expired` response field to `true` when the server-selected timeout
-	// has expired (recommended).
+	// If set to `true` (recommended), returns `google.rpc.Code.OK` status and
+	// sets the `wait_expired` response field to `true` when the server-selected
+	// timeout has expired.
 	//
-	// If set to `false`, returns `google.rpc.Code.ABORTED` status when the
-	// server-selected timeout has expired (deprecated).
+	// If set to `false` (deprecated), returns `google.rpc.Code.ABORTED` status
+	// when the server-selected timeout has expired.
 	SuccessOnTimeout bool `protobuf:"varint,3,opt,name=success_on_timeout,json=successOnTimeout" json:"success_on_timeout,omitempty"`
 }
 
@@ -144,11 +148,12 @@ type ListActiveBreakpointsResponse struct {
 	// List of all active breakpoints.
 	// The fields `id` and `location` are guaranteed to be set on each breakpoint.
 	Breakpoints []*Breakpoint `protobuf:"bytes,1,rep,name=breakpoints" json:"breakpoints,omitempty"`
-	// A wait token that can be used in the next method call to block until
+	// A token that can be used in the next method call to block until
 	// the list of breakpoints changes.
 	NextWaitToken string `protobuf:"bytes,2,opt,name=next_wait_token,json=nextWaitToken" json:"next_wait_token,omitempty"`
-	// The `wait_expired` field is set to true by the server when the
-	// request times out and the field `success_on_timeout` is set to true.
+	// If set to `true`, indicates that there is no change to the
+	// list of active breakpoints and the server-selected timeout has expired.
+	// The `breakpoints` field would be empty and should be ignored.
 	WaitExpired bool `protobuf:"varint,3,opt,name=wait_expired,json=waitExpired" json:"wait_expired,omitempty"`
 }
 
@@ -183,7 +188,8 @@ type UpdateActiveBreakpointRequest struct {
 	// Identifies the debuggee being debugged.
 	DebuggeeId string `protobuf:"bytes,1,opt,name=debuggee_id,json=debuggeeId" json:"debuggee_id,omitempty"`
 	// Updated breakpoint information.
-	// The field 'id' must be set.
+	// The field `id` must be set.
+	// The agent must echo all Breakpoint specification fields in the update.
 	Breakpoint *Breakpoint `protobuf:"bytes,2,opt,name=breakpoint" json:"breakpoint,omitempty"`
 }
 
@@ -238,18 +244,18 @@ const _ = grpc.SupportPackageIsVersion4
 type Controller2Client interface {
 	// Registers the debuggee with the controller service.
 	//
-	// All agents attached to the same application should call this method with
-	// the same request content to get back the same stable `debuggee_id`. Agents
-	// should call this method again whenever `google.rpc.Code.NOT_FOUND` is
-	// returned from any controller method.
+	// All agents attached to the same application must call this method with
+	// exactly the same request content to get back the same stable `debuggee_id`.
+	// Agents should call this method again whenever `google.rpc.Code.NOT_FOUND`
+	// is returned from any controller method.
 	//
-	// This allows the controller service to disable the agent or recover from any
-	// data loss. If the debuggee is disabled by the server, the response will
-	// have `is_disabled` set to `true`.
+	// This protocol allows the controller service to disable debuggees, recover
+	// from data loss, or change the `debuggee_id` format. Agents must handle
+	// `debuggee_id` value changing upon re-registration.
 	RegisterDebuggee(ctx context.Context, in *RegisterDebuggeeRequest, opts ...grpc.CallOption) (*RegisterDebuggeeResponse, error)
 	// Returns the list of all active breakpoints for the debuggee.
 	//
-	// The breakpoint specification (location, condition, and expression
+	// The breakpoint specification (`location`, `condition`, and `expressions`
 	// fields) is semantically immutable, although the field values may
 	// change. For example, an agent may update the location line number
 	// to reflect the actual line where the breakpoint was set, but this
@@ -262,12 +268,11 @@ type Controller2Client interface {
 	// setting those breakpoints again.
 	ListActiveBreakpoints(ctx context.Context, in *ListActiveBreakpointsRequest, opts ...grpc.CallOption) (*ListActiveBreakpointsResponse, error)
 	// Updates the breakpoint state or mutable fields.
-	// The entire Breakpoint message must be sent back to the controller
-	// service.
+	// The entire Breakpoint message must be sent back to the controller service.
 	//
 	// Updates to active breakpoint fields are only allowed if the new value
 	// does not change the breakpoint specification. Updates to the `location`,
-	// `condition` and `expression` fields should not alter the breakpoint
+	// `condition` and `expressions` fields should not alter the breakpoint
 	// semantics. These may only make changes such as canonicalizing a value
 	// or snapping the location to the correct line of code.
 	UpdateActiveBreakpoint(ctx context.Context, in *UpdateActiveBreakpointRequest, opts ...grpc.CallOption) (*UpdateActiveBreakpointResponse, error)
@@ -313,18 +318,18 @@ func (c *controller2Client) UpdateActiveBreakpoint(ctx context.Context, in *Upda
 type Controller2Server interface {
 	// Registers the debuggee with the controller service.
 	//
-	// All agents attached to the same application should call this method with
-	// the same request content to get back the same stable `debuggee_id`. Agents
-	// should call this method again whenever `google.rpc.Code.NOT_FOUND` is
-	// returned from any controller method.
+	// All agents attached to the same application must call this method with
+	// exactly the same request content to get back the same stable `debuggee_id`.
+	// Agents should call this method again whenever `google.rpc.Code.NOT_FOUND`
+	// is returned from any controller method.
 	//
-	// This allows the controller service to disable the agent or recover from any
-	// data loss. If the debuggee is disabled by the server, the response will
-	// have `is_disabled` set to `true`.
+	// This protocol allows the controller service to disable debuggees, recover
+	// from data loss, or change the `debuggee_id` format. Agents must handle
+	// `debuggee_id` value changing upon re-registration.
 	RegisterDebuggee(context.Context, *RegisterDebuggeeRequest) (*RegisterDebuggeeResponse, error)
 	// Returns the list of all active breakpoints for the debuggee.
 	//
-	// The breakpoint specification (location, condition, and expression
+	// The breakpoint specification (`location`, `condition`, and `expressions`
 	// fields) is semantically immutable, although the field values may
 	// change. For example, an agent may update the location line number
 	// to reflect the actual line where the breakpoint was set, but this
@@ -337,12 +342,11 @@ type Controller2Server interface {
 	// setting those breakpoints again.
 	ListActiveBreakpoints(context.Context, *ListActiveBreakpointsRequest) (*ListActiveBreakpointsResponse, error)
 	// Updates the breakpoint state or mutable fields.
-	// The entire Breakpoint message must be sent back to the controller
-	// service.
+	// The entire Breakpoint message must be sent back to the controller service.
 	//
 	// Updates to active breakpoint fields are only allowed if the new value
 	// does not change the breakpoint specification. Updates to the `location`,
-	// `condition` and `expression` fields should not alter the breakpoint
+	// `condition` and `expressions` fields should not alter the breakpoint
 	// semantics. These may only make changes such as canonicalizing a value
 	// or snapping the location to the correct line of code.
 	UpdateActiveBreakpoint(context.Context, *UpdateActiveBreakpointRequest) (*UpdateActiveBreakpointResponse, error)
@@ -430,41 +434,42 @@ var _Controller2_serviceDesc = grpc.ServiceDesc{
 func init() { proto.RegisterFile("google/devtools/clouddebugger/v2/controller.proto", fileDescriptor0) }
 
 var fileDescriptor0 = []byte{
-	// 572 bytes of a gzipped FileDescriptorProto
+	// 589 bytes of a gzipped FileDescriptorProto
 	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x54, 0xdd, 0x6a, 0xd4, 0x40,
-	0x14, 0x66, 0x5a, 0x94, 0xf6, 0x44, 0x69, 0x19, 0x50, 0x97, 0xd8, 0xea, 0x36, 0x48, 0x29, 0xeb,
-	0x92, 0xc1, 0xe8, 0x8d, 0x2b, 0xf8, 0xb3, 0xfe, 0x21, 0xb4, 0x5a, 0x96, 0x8a, 0xe0, 0xcd, 0x92,
-	0x4d, 0x8e, 0x61, 0x68, 0x76, 0x26, 0x66, 0x26, 0x6b, 0xa5, 0xf4, 0xc6, 0x2b, 0x41, 0xf1, 0xc6,
-	0x87, 0x11, 0x7c, 0x0d, 0x7d, 0x04, 0xaf, 0x7c, 0x0a, 0xd9, 0x64, 0xf6, 0xaf, 0xed, 0x36, 0xed,
-	0xe2, 0x65, 0xbe, 0x73, 0xbe, 0x73, 0xbe, 0x6f, 0x72, 0xce, 0x81, 0x5b, 0x91, 0x94, 0x51, 0x8c,
-	0x2c, 0xc4, 0x9e, 0x96, 0x32, 0x56, 0x2c, 0x88, 0x65, 0x16, 0x86, 0xd8, 0xc9, 0xa2, 0x08, 0x53,
-	0xd6, 0xf3, 0x58, 0x20, 0x85, 0x4e, 0x65, 0x1c, 0x63, 0xea, 0x26, 0xa9, 0xd4, 0x92, 0x56, 0x0b,
-	0x8a, 0x3b, 0xa0, 0xb8, 0x13, 0x14, 0xb7, 0xe7, 0xd9, 0x2b, 0xa6, 0xa8, 0x9f, 0x70, 0xe6, 0x0b,
-	0x21, 0xb5, 0xaf, 0xb9, 0x14, 0xaa, 0xe0, 0xdb, 0x37, 0x4b, 0x5b, 0x86, 0xbe, 0xf6, 0x4d, 0xf2,
-	0x55, 0x93, 0x9c, 0x7f, 0x75, 0xb2, 0x77, 0x0c, 0xbb, 0x89, 0xfe, 0x58, 0x04, 0x1d, 0x1f, 0xae,
-	0xb4, 0x30, 0xe2, 0x4a, 0x63, 0xfa, 0xa4, 0xa0, 0x63, 0x0b, 0xdf, 0x67, 0xa8, 0x34, 0x7d, 0x06,
-	0x0b, 0xa6, 0x22, 0x56, 0x48, 0x95, 0x6c, 0x58, 0x5e, 0xcd, 0x2d, 0xd3, 0xed, 0x0e, 0x8b, 0x0c,
-	0xb9, 0x4e, 0x07, 0x2a, 0x47, 0x5b, 0xa8, 0x44, 0x0a, 0x85, 0xff, 0xad, 0xc7, 0x57, 0x02, 0x2b,
-	0x9b, 0x5c, 0xe9, 0x47, 0x81, 0xe6, 0x3d, 0x6c, 0xa6, 0xe8, 0xef, 0x26, 0x92, 0x0b, 0xad, 0x06,
-	0x66, 0xae, 0x83, 0x35, 0x48, 0x6e, 0xf3, 0x30, 0xef, 0xb5, 0xd8, 0x82, 0x01, 0xf4, 0x22, 0xa4,
-	0xab, 0x00, 0x1f, 0x7c, 0xae, 0xdb, 0x5a, 0xee, 0xa2, 0xa8, 0xcc, 0xe5, 0xf1, 0xc5, 0x3e, 0xb2,
-	0xd3, 0x07, 0x68, 0x1d, 0xa8, 0xca, 0x82, 0x00, 0x95, 0x6a, 0x4b, 0xd1, 0xd6, 0xbc, 0x8b, 0x32,
-	0xd3, 0x95, 0xf9, 0x2a, 0xd9, 0x58, 0x68, 0x2d, 0x9b, 0xc8, 0x2b, 0xb1, 0x53, 0xe0, 0xce, 0x4f,
-	0x02, 0xab, 0x53, 0xe4, 0x18, 0xe3, 0x2f, 0xc1, 0xea, 0x8c, 0xe0, 0x0a, 0xa9, 0xce, 0x6f, 0x58,
-	0x5e, 0xbd, 0xdc, 0xfb, 0xa8, 0x56, 0x6b, 0xbc, 0x00, 0x5d, 0x87, 0x25, 0x81, 0x7b, 0xba, 0x7d,
-	0xc4, 0xc3, 0xc5, 0x3e, 0xfc, 0x66, 0xe8, 0x63, 0x0d, 0x2e, 0xe4, 0x29, 0xb8, 0x97, 0xf0, 0x14,
-	0x43, 0xe3, 0xc0, 0xea, 0x63, 0x4f, 0x0b, 0xc8, 0xf9, 0x46, 0x60, 0xf5, 0x75, 0x12, 0xfa, 0x1a,
-	0x0f, 0xcb, 0x3f, 0xf5, 0x63, 0x6e, 0x02, 0x8c, 0xc4, 0xe5, 0x42, 0xce, 0x6a, 0x6e, 0x8c, 0xef,
-	0x54, 0xe1, 0xda, 0x34, 0x3d, 0xc5, 0x6b, 0x7a, 0x5f, 0xce, 0x81, 0xf5, 0x78, 0xb8, 0x64, 0x1e,
-	0xfd, 0x41, 0x60, 0xf9, 0xf0, 0xcc, 0xd1, 0xbb, 0xe5, 0x02, 0xa6, 0xac, 0x82, 0xdd, 0x98, 0x85,
-	0x5a, 0x68, 0x73, 0xea, 0x9f, 0x7e, 0xfd, 0xf9, 0x3e, 0xb7, 0xee, 0xac, 0x4d, 0x5e, 0x02, 0x36,
-	0x78, 0x2e, 0xc5, 0x52, 0x43, 0x6d, 0x90, 0x1a, 0xfd, 0x4d, 0xe0, 0xd2, 0xb1, 0x93, 0x43, 0xef,
-	0x97, 0x6b, 0x38, 0x69, 0x03, 0xec, 0x07, 0x33, 0xf3, 0x8d, 0x91, 0x46, 0x6e, 0xe4, 0x0e, 0xf5,
-	0xa6, 0x1a, 0xd9, 0x1f, 0x9b, 0x8a, 0x03, 0x36, 0x3e, 0x9e, 0x7f, 0x09, 0x5c, 0x3e, 0xfe, 0x1f,
-	0xd2, 0x53, 0xe8, 0x3a, 0x71, 0x1a, 0xed, 0x87, 0xb3, 0x17, 0x30, 0xce, 0xb6, 0x72, 0x67, 0xcf,
-	0xed, 0xe6, 0xd9, 0x9d, 0xb1, 0xfd, 0xd1, 0x87, 0xcb, 0xc3, 0x83, 0x06, 0xa9, 0x35, 0x3f, 0x13,
-	0xb8, 0x11, 0xc8, 0x6e, 0xa9, 0xac, 0xe6, 0xd2, 0x68, 0x66, 0xb7, 0xfb, 0xd7, 0x78, 0x9b, 0xbc,
-	0xdd, 0x32, 0xa4, 0x48, 0xc6, 0xbe, 0x88, 0x5c, 0x99, 0x46, 0x2c, 0x42, 0x91, 0xdf, 0x6a, 0x56,
-	0x84, 0xfc, 0x84, 0xab, 0xe9, 0x87, 0xff, 0xde, 0x04, 0xd0, 0x39, 0x9f, 0x33, 0x6f, 0xff, 0x0b,
-	0x00, 0x00, 0xff, 0xff, 0xe1, 0x6e, 0xc8, 0x51, 0xa4, 0x06, 0x00, 0x00,
+	0x14, 0x66, 0x5a, 0x94, 0xf6, 0x44, 0x69, 0x19, 0x50, 0x43, 0x6c, 0x75, 0x1b, 0xa4, 0x94, 0x5a,
+	0x32, 0x18, 0xbd, 0x71, 0x05, 0x7f, 0xb6, 0x6a, 0x11, 0x5a, 0x2d, 0x4b, 0x55, 0xf0, 0x66, 0xc9,
+	0x26, 0xc7, 0x30, 0x34, 0x9d, 0x89, 0x99, 0xc9, 0x5a, 0x29, 0xbd, 0xf1, 0x56, 0xf1, 0xc6, 0x47,
+	0xf0, 0xce, 0x17, 0x10, 0x7c, 0x0d, 0x7d, 0x04, 0xaf, 0x7c, 0x0a, 0xc9, 0xdf, 0xee, 0xf6, 0x67,
+	0x9b, 0x76, 0xf1, 0x32, 0xdf, 0x9c, 0xef, 0x3b, 0xdf, 0x37, 0x39, 0x73, 0xe0, 0x56, 0x28, 0x65,
+	0x18, 0x21, 0x0b, 0xb0, 0xa7, 0xa5, 0x8c, 0x14, 0xf3, 0x23, 0x99, 0x06, 0x01, 0x76, 0xd3, 0x30,
+	0xc4, 0x84, 0xf5, 0x5c, 0xe6, 0x4b, 0xa1, 0x13, 0x19, 0x45, 0x98, 0x38, 0x71, 0x22, 0xb5, 0xa4,
+	0x8d, 0x82, 0xe2, 0x54, 0x14, 0xe7, 0x00, 0xc5, 0xe9, 0xb9, 0xd6, 0x5c, 0x29, 0xea, 0xc5, 0x9c,
+	0x79, 0x42, 0x48, 0xed, 0x69, 0x2e, 0x85, 0x2a, 0xf8, 0xd6, 0xcd, 0xda, 0x96, 0x81, 0xa7, 0xbd,
+	0xb2, 0xf8, 0x6a, 0x59, 0x9c, 0x7f, 0x75, 0xd3, 0xb7, 0x0c, 0x77, 0x62, 0xfd, 0xa1, 0x38, 0xb4,
+	0x3d, 0xb8, 0xd2, 0xc6, 0x90, 0x2b, 0x8d, 0xc9, 0xe3, 0x82, 0x8e, 0x6d, 0x7c, 0x97, 0xa2, 0xd2,
+	0xf4, 0x29, 0x4c, 0x95, 0x8a, 0x68, 0x92, 0x06, 0x59, 0x32, 0xdc, 0x65, 0xa7, 0xce, 0xb7, 0xd3,
+	0x17, 0xe9, 0x73, 0xed, 0x2e, 0x98, 0x47, 0x5b, 0xa8, 0x58, 0x0a, 0x85, 0xff, 0xad, 0xc7, 0x67,
+	0x02, 0x73, 0xeb, 0x5c, 0xe9, 0x47, 0xbe, 0xe6, 0x3d, 0x6c, 0x25, 0xe8, 0x6d, 0xc7, 0x92, 0x0b,
+	0xad, 0xaa, 0x30, 0xd7, 0xc1, 0xa8, 0x8a, 0x3b, 0x3c, 0xc8, 0x7b, 0x4d, 0xb7, 0xa1, 0x82, 0x9e,
+	0x05, 0x74, 0x1e, 0xe0, 0xbd, 0xc7, 0x75, 0x47, 0xcb, 0x6d, 0x14, 0xe6, 0x44, 0x7e, 0x3e, 0x9d,
+	0x21, 0x5b, 0x19, 0x40, 0x57, 0x80, 0xaa, 0xd4, 0xf7, 0x51, 0xa9, 0x8e, 0x14, 0x1d, 0xcd, 0x77,
+	0x50, 0xa6, 0xda, 0x9c, 0x6c, 0x90, 0xa5, 0xa9, 0xf6, 0x6c, 0x79, 0xf2, 0x42, 0x6c, 0x15, 0xb8,
+	0xfd, 0x93, 0xc0, 0xfc, 0x08, 0x3b, 0x65, 0xf0, 0xe7, 0x60, 0x74, 0x07, 0xb0, 0x49, 0x1a, 0x93,
+	0x4b, 0x86, 0xbb, 0x52, 0x9f, 0x7d, 0xa0, 0xd5, 0x1e, 0x16, 0xa0, 0x8b, 0x30, 0x23, 0x70, 0x57,
+	0x77, 0x8e, 0x64, 0xb8, 0x98, 0xc1, 0xaf, 0xfb, 0x39, 0x16, 0xe0, 0x42, 0x5e, 0x82, 0xbb, 0x31,
+	0x4f, 0x30, 0x28, 0x13, 0x18, 0x19, 0xf6, 0xa4, 0x80, 0xec, 0x2f, 0x04, 0xe6, 0x5f, 0xc6, 0x81,
+	0xa7, 0xf1, 0xb0, 0xfd, 0x53, 0x5f, 0xe6, 0x3a, 0xc0, 0xc0, 0x5c, 0x6e, 0xe4, 0xac, 0xe1, 0x86,
+	0xf8, 0x76, 0x03, 0xae, 0x8d, 0xf2, 0x53, 0xdc, 0xa6, 0xfb, 0xe9, 0x1c, 0x18, 0xab, 0xfd, 0x47,
+	0xe6, 0xd2, 0x1f, 0x04, 0x66, 0x0f, 0xcf, 0x1c, 0xbd, 0x5b, 0x6f, 0x60, 0xc4, 0x53, 0xb0, 0x9a,
+	0xe3, 0x50, 0x0b, 0x6f, 0xf6, 0xca, 0xc7, 0x5f, 0x7f, 0xbe, 0x4e, 0x2c, 0xda, 0x0b, 0x07, 0x37,
+	0x01, 0xab, 0xae, 0x4b, 0xb1, 0xa4, 0xa4, 0x36, 0xc9, 0x32, 0xfd, 0x4d, 0xe0, 0xd2, 0xb1, 0x93,
+	0x43, 0xef, 0xd7, 0x7b, 0x38, 0xe9, 0x05, 0x58, 0x0f, 0xc6, 0xe6, 0x97, 0x41, 0x9a, 0x79, 0x90,
+	0x3b, 0xd4, 0x1d, 0x19, 0x64, 0x6f, 0x68, 0x2a, 0xf6, 0xd9, 0xf0, 0x78, 0xfe, 0x25, 0x70, 0xf9,
+	0xf8, 0x7f, 0x48, 0x4f, 0xe1, 0xeb, 0xc4, 0x69, 0xb4, 0x1e, 0x8e, 0x2f, 0x50, 0x26, 0xdb, 0xc8,
+	0x93, 0xad, 0x59, 0xad, 0xb3, 0x27, 0x63, 0x7b, 0x83, 0x0f, 0x87, 0x07, 0xfb, 0x4d, 0xb2, 0xdc,
+	0xfa, 0x46, 0xe0, 0x86, 0x2f, 0x77, 0x6a, 0x6d, 0xb5, 0x66, 0x06, 0x33, 0xbb, 0x99, 0x6d, 0xe3,
+	0x4d, 0xf2, 0x66, 0xa3, 0x24, 0x85, 0x32, 0xf2, 0x44, 0xe8, 0xc8, 0x24, 0x64, 0x21, 0x8a, 0x7c,
+	0x57, 0xb3, 0xe2, 0xc8, 0x8b, 0xb9, 0x1a, 0xbd, 0xf8, 0xef, 0x1d, 0x00, 0xbe, 0x4f, 0x98, 0x6b,
+	0x85, 0xde, 0x6a, 0x06, 0x57, 0x9b, 0x33, 0x71, 0x5e, 0xb9, 0xdd, 0xf3, 0xb9, 0xe8, 0xed, 0x7f,
+	0x01, 0x00, 0x00, 0xff, 0xff, 0x05, 0xef, 0x37, 0xb4, 0xbf, 0x06, 0x00, 0x00,
 }
diff --git a/googleapis/devtools/clouddebugger/v2/data.pb.go b/googleapis/devtools/clouddebugger/v2/data.pb.go
index 0235d926..b41e215e 100644
--- a/googleapis/devtools/clouddebugger/v2/data.pb.go
+++ b/googleapis/devtools/clouddebugger/v2/data.pb.go
@@ -659,31 +659,34 @@ func (m *Breakpoint) GetLabels() map[string]string {
 	return nil
 }
 
-// Represents the application to debug. The application may include one or more
+// Represents the debugged application. The application may include one or more
 // replicated processes executing the same code. Each of these processes is
 // attached with a debugger agent, carrying out the debugging commands.
-// The agents attached to the same debuggee are identified by using exactly the
-// same field values when registering.
+// Agents attached to the same debuggee identify themselves as such by using
+// exactly the same Debuggee message value when registering.
 type Debuggee struct {
 	// Unique identifier for the debuggee generated by the controller service.
 	Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"`
 	// Project the debuggee is associated with.
-	// Use the project number when registering a Google Cloud Platform project.
+	// Use project number or id when registering a Google Cloud Platform project.
 	Project string `protobuf:"bytes,2,opt,name=project" json:"project,omitempty"`
-	// Debuggee uniquifier within the project.
-	// Any string that identifies the application within the project can be used.
-	// Including environment and version or build IDs is recommended.
+	// Uniquifier to further distiguish the application.
+	// It is possible that different applications might have identical values in
+	// the debuggee message, thus, incorrectly identified as a single application
+	// by the Controller service. This field adds salt to further distiguish the
+	// application. Agents should consider seeding this field with value that
+	// identifies the code, binary, configuration and environment.
 	Uniquifier string `protobuf:"bytes,3,opt,name=uniquifier" json:"uniquifier,omitempty"`
 	// Human readable description of the debuggee.
 	// Including a human-readable project name, environment name and version
 	// information is recommended.
 	Description string `protobuf:"bytes,4,opt,name=description" json:"description,omitempty"`
-	// If set to `true`, indicates that the debuggee is considered as inactive by
-	// the Controller service.
+	// If set to `true`, indicates that Controller service does not detect any
+	// activity from the debuggee agents and the application is possibly stopped.
 	IsInactive bool `protobuf:"varint,5,opt,name=is_inactive,json=isInactive" json:"is_inactive,omitempty"`
-	// Version ID of the agent release. The version ID is structured as
-	// following: `domain/type/vmajor.minor` (for example
-	// `google.com/gcp-java/v1.1`).
+	// Version ID of the agent.
+	// Schema: `domain/language-platform/vmajor.minor` (for example
+	// `google.com/java-gcp/v1.1`).
 	AgentVersion string `protobuf:"bytes,6,opt,name=agent_version,json=agentVersion" json:"agent_version,omitempty"`
 	// If set to `true`, indicates that the agent should disable itself and
 	// detach from the debuggee.
@@ -694,17 +697,11 @@ type Debuggee struct {
 	Status *StatusMessage `protobuf:"bytes,8,opt,name=status" json:"status,omitempty"`
 	// References to the locations and revisions of the source code used in the
 	// deployed application.
-	//
-	// NOTE: This field is deprecated. Consumers should use
-	// `ext_source_contexts` if it is not empty. Debug agents should populate
-	// both this field and `ext_source_contexts`.
 	SourceContexts []*google_devtools_source_v1.SourceContext `protobuf:"bytes,9,rep,name=source_contexts,json=sourceContexts" json:"source_contexts,omitempty"`
 	// References to the locations and revisions of the source code used in the
 	// deployed application.
 	//
-	// Contexts describing a remote repo related to the source code
-	// have a `category` label of `remote_repo`. Source snapshot source
-	// contexts have a `category` of `snapshot`.
+	// NOTE: this field is experimental and can be ignored.
 	ExtSourceContexts []*google_devtools_source_v1.ExtendedSourceContext `protobuf:"bytes,13,rep,name=ext_source_contexts,json=extSourceContexts" json:"ext_source_contexts,omitempty"`
 	// A set of custom debuggee properties, populated by the agent, to be
 	// displayed to the user.
@@ -809,83 +806,84 @@ func init() {
 func init() { proto.RegisterFile("google/devtools/clouddebugger/v2/data.proto", fileDescriptor1) }
 
 var fileDescriptor1 = []byte{
-	// 1239 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x5f, 0x73, 0xda, 0xc6,
-	0x16, 0x0f, 0x7f, 0x0c, 0xd2, 0xc1, 0x60, 0x65, 0x6f, 0x72, 0x47, 0xf1, 0xcd, 0x75, 0x18, 0x6e,
-	0x1e, 0x3c, 0xb7, 0x19, 0x48, 0xc8, 0xb4, 0x93, 0x34, 0x4f, 0x18, 0xcb, 0x2e, 0x13, 0x02, 0x64,
-	0xb1, 0xdd, 0x4e, 0x5f, 0xd4, 0x35, 0x5a, 0x54, 0x35, 0x42, 0x52, 0x77, 0x17, 0xea, 0xbc, 0x76,
-	0xf2, 0x31, 0xfa, 0x11, 0xfa, 0x9d, 0xfa, 0xd6, 0xcf, 0xd1, 0xd9, 0xd5, 0x8a, 0x88, 0xa4, 0x2d,
-	0x71, 0x93, 0xb7, 0xb3, 0xbf, 0xfd, 0x9d, 0xdf, 0x8a, 0xb3, 0xbf, 0x73, 0x24, 0xe0, 0x33, 0x3f,
-	0x8e, 0xfd, 0x90, 0x76, 0x3c, 0xba, 0x12, 0x71, 0x1c, 0xf2, 0xce, 0x2c, 0x8c, 0x97, 0x9e, 0x47,
-	0x2f, 0x97, 0xbe, 0x4f, 0x59, 0x67, 0xd5, 0xed, 0x78, 0x44, 0x90, 0x76, 0xc2, 0x62, 0x11, 0xa3,
-	0x66, 0x4a, 0x6e, 0x67, 0xe4, 0xf6, 0x06, 0xb9, 0xbd, 0xea, 0xee, 0xdf, 0xd5, 0x72, 0x24, 0x09,
-	0x3a, 0x24, 0x8a, 0x62, 0x41, 0x44, 0x10, 0x47, 0x3c, 0xcd, 0xdf, 0x6f, 0xbf, 0x7b, 0x18, 0x8f,
-	0x97, 0x6c, 0x46, 0x3b, 0xab, 0x47, 0x3a, 0x72, 0x67, 0x71, 0x24, 0xe8, 0x95, 0xd0, 0xfc, 0x7b,
-	0x9a, 0xaf, 0x56, 0x97, 0xcb, 0x79, 0x47, 0x04, 0x0b, 0xca, 0x05, 0x59, 0x24, 0x9a, 0x70, 0xf0,
-	0x2e, 0xe1, 0x27, 0x46, 0x92, 0x84, 0x32, 0x7d, 0x60, 0xeb, 0x14, 0xea, 0x27, 0x31, 0x5b, 0x10,
-	0xf1, 0x82, 0x72, 0x4e, 0x7c, 0x8a, 0xfe, 0x0d, 0x95, 0xb9, 0x02, 0xec, 0x42, 0xb3, 0x70, 0x68,
-	0x62, 0xbd, 0x42, 0x07, 0x00, 0x09, 0x61, 0x64, 0x41, 0x05, 0x65, 0xdc, 0x2e, 0x36, 0x4b, 0x87,
-	0x26, 0xce, 0x21, 0xad, 0x37, 0x25, 0xa8, 0x4f, 0x05, 0x11, 0x4b, 0x9e, 0x29, 0xdd, 0x01, 0x23,
-	0xe0, 0x2e, 0x65, 0x2c, 0x66, 0x4a, 0xcb, 0xc0, 0xd5, 0x80, 0x3b, 0x72, 0x89, 0x2e, 0xc0, 0x64,
-	0x74, 0x4e, 0x19, 0x77, 0x45, 0x6c, 0x17, 0x9b, 0x85, 0xc3, 0x46, 0xf7, 0x69, 0x7b, 0x5b, 0xe9,
-	0xda, 0x1b, 0xf2, 0x6d, 0x2c, 0x05, 0x68, 0x34, 0xa3, 0xd8, 0x48, 0xb5, 0xce, 0x62, 0xf4, 0x12,
-	0x6a, 0x1e, 0xe5, 0x33, 0x16, 0x24, 0xb2, 0xa8, 0x76, 0xa9, 0x59, 0x38, 0xac, 0x75, 0x3b, 0xdb,
-	0x95, 0x37, 0x4a, 0x80, 0xf3, 0x1a, 0xad, 0x5f, 0x0b, 0x60, 0xae, 0x8f, 0x42, 0x7b, 0x50, 0x3b,
-	0x1f, 0x4d, 0x27, 0x4e, 0x7f, 0x70, 0x32, 0x70, 0x8e, 0xad, 0x1b, 0xe8, 0x00, 0xf6, 0x8f, 0xb0,
-	0xd3, 0x7b, 0x3e, 0x19, 0x0f, 0x46, 0x67, 0xee, 0x74, 0x7c, 0x8e, 0xfb, 0x8e, 0x3b, 0x1c, 0xf7,
-	0x7b, 0x67, 0x83, 0xf1, 0xc8, 0x2a, 0x21, 0x1b, 0x6e, 0xe5, 0xf6, 0xfb, 0xe3, 0xd1, 0xf1, 0x40,
-	0xed, 0x94, 0xd1, 0x1d, 0xb8, 0x9d, 0xdb, 0x71, 0xbe, 0x99, 0x60, 0x67, 0x3a, 0x95, 0x5b, 0x55,
-	0x84, 0xa0, 0x91, 0xdb, 0xea, 0x9d, 0x3a, 0x96, 0x81, 0x6e, 0x42, 0xfd, 0xa2, 0x87, 0x07, 0xbd,
-	0xa3, 0xa1, 0xe3, 0x8e, 0x7a, 0x2f, 0x1c, 0x6b, 0x47, 0xd2, 0xd6, 0xd0, 0x45, 0x6f, 0x78, 0xee,
-	0x58, 0x95, 0xd6, 0x13, 0x68, 0x4c, 0x95, 0x51, 0x86, 0xf1, 0x4c, 0x39, 0x0b, 0x21, 0x28, 0x27,
-	0x44, 0x7c, 0xaf, 0xaf, 0x53, 0xc5, 0x12, 0x0b, 0x83, 0x88, 0xaa, 0xd2, 0xef, 0x60, 0x15, 0xb7,
-	0x7e, 0x29, 0x82, 0x71, 0x41, 0x58, 0x40, 0x2e, 0x43, 0x2a, 0x09, 0x11, 0x59, 0xd0, 0x2c, 0x49,
-	0xc6, 0xe8, 0x16, 0xec, 0xac, 0x48, 0xb8, 0x4c, 0xb3, 0x4c, 0x9c, 0x2e, 0x24, 0x53, 0xbc, 0x4e,
-	0xa8, 0x5d, 0x49, 0x99, 0x32, 0x46, 0xc7, 0x50, 0x5d, 0xd0, 0xc5, 0xa5, 0x34, 0x4a, 0xa9, 0x59,
-	0x3a, 0xac, 0x75, 0xff, 0xbf, 0xfd, 0x0a, 0xb2, 0xa3, 0x71, 0x96, 0x8a, 0xfa, 0xb0, 0xb7, 0x22,
-	0xcc, 0x15, 0x12, 0x75, 0x83, 0xc8, 0xa3, 0x57, 0x76, 0x59, 0x5d, 0xe8, 0x7f, 0x32, 0xb5, 0xcc,
-	0xd4, 0xed, 0x41, 0x24, 0x1e, 0x77, 0x2f, 0xe4, 0xf3, 0xe0, 0xfa, 0x8a, 0xb0, 0x33, 0x99, 0x32,
-	0x90, 0x19, 0xe8, 0x14, 0x2a, 0x5c, 0xd9, 0xc6, 0xde, 0xf9, 0x50, 0x33, 0x6c, 0xd8, 0x0c, 0xeb,
-	0xf4, 0xd6, 0x9b, 0x22, 0xc0, 0x54, 0x90, 0xd9, 0xab, 0x13, 0x69, 0x79, 0xb4, 0x0f, 0xc6, 0x7c,
-	0x19, 0xcd, 0x94, 0xcd, 0xd2, 0x22, 0xad, 0xd7, 0x68, 0x08, 0x46, 0xa8, 0xab, 0xaf, 0x6a, 0x55,
-	0xeb, 0x3e, 0xfc, 0x80, 0x53, 0x37, 0x6e, 0x0d, 0xaf, 0x15, 0xd0, 0x57, 0x60, 0x12, 0xe6, 0x2f,
-	0x17, 0x34, 0x12, 0xff, 0xa4, 0x9c, 0x6f, 0x93, 0xd1, 0x11, 0x54, 0xa4, 0x6a, 0xc8, 0xed, 0xf2,
-	0xb5, 0x65, 0x74, 0x66, 0xeb, 0x37, 0x03, 0xe0, 0x88, 0x51, 0xf2, 0x2a, 0x89, 0x83, 0x48, 0xa0,
-	0x06, 0x14, 0x03, 0x4f, 0x17, 0xa0, 0x18, 0x78, 0xe8, 0x39, 0x54, 0x48, 0x5a, 0x94, 0xba, 0xea,
-	0xea, 0xc7, 0xdb, 0x8f, 0x78, 0xab, 0xd6, 0xee, 0xa9, 0x54, 0xac, 0x25, 0x3e, 0x71, 0x1d, 0xef,
-	0x82, 0x39, 0x8b, 0x23, 0x2f, 0x58, 0x4f, 0x06, 0x13, 0xbf, 0x05, 0x50, 0x13, 0x6a, 0xf4, 0x2a,
-	0x61, 0x94, 0x73, 0x39, 0x8d, 0x55, 0x81, 0x4c, 0x9c, 0x87, 0xd0, 0x03, 0x40, 0x61, 0xec, 0xbb,
-	0x8b, 0xd4, 0x17, 0xae, 0x1e, 0x92, 0x0d, 0x25, 0x64, 0x85, 0xb1, 0xaf, 0x0d, 0x93, 0x8e, 0x12,
-	0x84, 0xc1, 0x94, 0xec, 0x90, 0xae, 0x68, 0x68, 0xef, 0xa9, 0x5a, 0x7c, 0x7e, 0xad, 0x5a, 0x0c,
-	0x63, 0x7f, 0x28, 0x93, 0xe5, 0x2f, 0x48, 0x23, 0x74, 0x1f, 0x1a, 0x01, 0x77, 0xe7, 0x41, 0x44,
-	0x42, 0x57, 0xba, 0x92, 0x2a, 0x4f, 0x1b, 0x78, 0x37, 0xe0, 0x27, 0x12, 0x94, 0xc6, 0xa5, 0xe8,
-	0x19, 0xd4, 0x66, 0x8c, 0x12, 0x41, 0x5d, 0xf9, 0x2e, 0xb0, 0x6b, 0xaa, 0x70, 0xfb, 0xef, 0xb5,
-	0xcc, 0x59, 0xf6, 0xa2, 0xc0, 0x90, 0xd2, 0x25, 0x80, 0x9e, 0x02, 0xa4, 0xfa, 0x2a, 0x77, 0x77,
-	0x6b, 0xae, 0xa9, 0xd8, 0x2a, 0xf5, 0xbf, 0x00, 0x4b, 0x4e, 0x99, 0x4b, 0x17, 0x24, 0x08, 0x6d,
-	0x2b, 0x2d, 0xb0, 0x44, 0x1c, 0x09, 0xe4, 0x1a, 0x11, 0x3e, 0xaa, 0x11, 0xd1, 0x18, 0x76, 0xb9,
-	0xec, 0x43, 0x77, 0x2e, 0x1b, 0x91, 0xdb, 0x55, 0xe5, 0xe5, 0x07, 0x1f, 0x24, 0xa7, 0xbb, 0x17,
-	0xd7, 0xf8, 0x3a, 0xe6, 0xc8, 0x85, 0xdb, 0x54, 0xce, 0x32, 0x22, 0xa8, 0xe7, 0xe6, 0x4d, 0x60,
-	0x5c, 0xbb, 0x4b, 0x6e, 0xad, 0x85, 0x9c, 0x9c, 0x73, 0x5e, 0x42, 0x63, 0xa5, 0x19, 0xe9, 0x34,
-	0xb3, 0xcd, 0x6b, 0x2b, 0xd7, 0x33, 0x05, 0x35, 0xdb, 0xd0, 0x04, 0x2a, 0x21, 0xb9, 0xa4, 0x21,
-	0xb7, 0x6f, 0x2a, 0xa9, 0x27, 0xd7, 0xf3, 0x96, 0x4a, 0x75, 0x22, 0xc1, 0x5e, 0x63, 0xad, 0xb3,
-	0xff, 0x14, 0x6a, 0x39, 0x18, 0x59, 0x50, 0x7a, 0x45, 0x5f, 0xeb, 0xce, 0x96, 0xe1, 0x9f, 0x8f,
-	0xff, 0x2f, 0x8b, 0x4f, 0x0a, 0xad, 0x03, 0xa8, 0xa4, 0x9d, 0x8b, 0x6a, 0x50, 0xed, 0xf7, 0x26,
-	0x67, 0xe7, 0xd8, 0xb1, 0x6e, 0xa0, 0x2a, 0x94, 0x86, 0xe3, 0x53, 0xab, 0xd0, 0x7a, 0x00, 0x46,
-	0xe6, 0x66, 0x64, 0x40, 0x79, 0x30, 0x3a, 0x19, 0x5b, 0x37, 0x24, 0xf7, 0xeb, 0x1e, 0x1e, 0x0d,
-	0x46, 0xa7, 0x56, 0x01, 0x99, 0xb0, 0xe3, 0x60, 0x3c, 0xc6, 0x56, 0xb1, 0xf5, 0x7b, 0x19, 0x8c,
-	0xe3, 0xf4, 0xb9, 0xe9, 0x7b, 0xf3, 0xc5, 0x86, 0x6a, 0xc2, 0xe2, 0x1f, 0xe8, 0x4c, 0xe8, 0xc7,
-	0xc8, 0x96, 0xf2, 0xfb, 0x64, 0x19, 0x05, 0x3f, 0x2e, 0x83, 0x79, 0x40, 0x99, 0xee, 0xef, 0x1c,
-	0x22, 0x1b, 0x3c, 0xff, 0x69, 0x50, 0x56, 0x84, 0x3c, 0x84, 0xee, 0x41, 0x2d, 0xe0, 0x6e, 0x10,
-	0xc9, 0xe9, 0xb3, 0xca, 0x7a, 0x0b, 0x02, 0x3e, 0xd0, 0x08, 0xfa, 0x1f, 0xd4, 0x89, 0x4f, 0x23,
-	0xe1, 0xae, 0x28, 0x93, 0x37, 0xab, 0xdf, 0x79, 0xbb, 0x0a, 0xbc, 0x48, 0x31, 0xad, 0xe2, 0x05,
-	0x5c, 0xde, 0x93, 0x67, 0x57, 0x33, 0x95, 0x63, 0x8d, 0xe4, 0x1a, 0xc1, 0xf8, 0xb8, 0x46, 0x78,
-	0x09, 0x7b, 0x9b, 0xdf, 0x84, 0x5c, 0xfb, 0xea, 0xf0, 0x3d, 0xc5, 0x94, 0xd7, 0x5e, 0x3d, 0xd2,
-	0xe3, 0xb1, 0x9f, 0x26, 0xe0, 0x06, 0xcf, 0x2f, 0x39, 0xfa, 0x0e, 0xfe, 0x45, 0xaf, 0x84, 0xfb,
-	0xae, 0x6c, 0x5d, 0xc9, 0x3e, 0xfc, 0x1b, 0x59, 0xe7, 0x4a, 0xd0, 0xc8, 0xa3, 0xde, 0xa6, 0xfc,
-	0x4d, 0x7a, 0x25, 0xa6, 0x9b, 0x27, 0x8c, 0xd6, 0xc6, 0xad, 0x29, 0xd1, 0x2f, 0xb6, 0xff, 0xfa,
-	0xcc, 0x0c, 0x9f, 0xd8, 0xb6, 0x47, 0x3f, 0x17, 0xe0, 0xfe, 0x2c, 0x5e, 0x6c, 0x7d, 0x80, 0x23,
-	0xf3, 0x98, 0x08, 0x32, 0x91, 0xc3, 0x6f, 0x52, 0xf8, 0xf6, 0x85, 0xa6, 0xfb, 0x71, 0x48, 0x22,
-	0xbf, 0x1d, 0x33, 0xbf, 0xe3, 0xd3, 0x48, 0x8d, 0xc6, 0x4e, 0xba, 0x45, 0x92, 0x80, 0xff, 0xf5,
-	0xbf, 0x85, 0x67, 0x1b, 0xc0, 0x65, 0x45, 0x65, 0x3e, 0xfe, 0x23, 0x00, 0x00, 0xff, 0xff, 0x00,
-	0xbf, 0x9b, 0x7e, 0x66, 0x0c, 0x00, 0x00,
+	// 1251 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xdd, 0x72, 0xda, 0x46,
+	0x14, 0x0e, 0x3f, 0x06, 0xe9, 0x60, 0x30, 0xd9, 0x26, 0x1d, 0xc5, 0x4d, 0x1d, 0x86, 0xe6, 0xc2,
+	0xd3, 0x66, 0x20, 0x21, 0xd3, 0x4e, 0xd2, 0x5c, 0x61, 0x2c, 0xbb, 0x4c, 0x08, 0x90, 0xc5, 0xa6,
+	0x9d, 0xde, 0xa8, 0x6b, 0xb4, 0xa8, 0x6a, 0x84, 0xa4, 0xee, 0x2e, 0xd4, 0xb9, 0xcf, 0x63, 0xb4,
+	0x2f, 0xd0, 0xe9, 0x3b, 0xf5, 0xae, 0xcf, 0xd1, 0xd9, 0xd5, 0x8a, 0x88, 0xa4, 0x2d, 0x71, 0x93,
+	0xbb, 0xb3, 0xdf, 0x7e, 0xe7, 0x5b, 0x71, 0xf6, 0x3b, 0x47, 0x02, 0xbe, 0xf0, 0xa2, 0xc8, 0x0b,
+	0x68, 0xdb, 0xa5, 0x2b, 0x11, 0x45, 0x01, 0x6f, 0xcf, 0x82, 0x68, 0xe9, 0xba, 0xf4, 0x62, 0xe9,
+	0x79, 0x94, 0xb5, 0x57, 0x9d, 0xb6, 0x4b, 0x04, 0x69, 0xc5, 0x2c, 0x12, 0x11, 0x6a, 0x24, 0xe4,
+	0x56, 0x4a, 0x6e, 0x6d, 0x90, 0x5b, 0xab, 0xce, 0xfe, 0x6d, 0x2d, 0x47, 0x62, 0xbf, 0x4d, 0xc2,
+	0x30, 0x12, 0x44, 0xf8, 0x51, 0xc8, 0x93, 0xfc, 0xfd, 0xd6, 0x9b, 0x87, 0xf1, 0x68, 0xc9, 0x66,
+	0xb4, 0xbd, 0x7a, 0xa0, 0x23, 0x67, 0x16, 0x85, 0x82, 0x5e, 0x0a, 0xcd, 0xbf, 0xa3, 0xf9, 0x6a,
+	0x75, 0xb1, 0x9c, 0xb7, 0x85, 0xbf, 0xa0, 0x5c, 0x90, 0x45, 0xac, 0x09, 0x07, 0x6f, 0x12, 0x7e,
+	0x61, 0x24, 0x8e, 0x29, 0xd3, 0x07, 0x36, 0x4f, 0xa1, 0x7a, 0x12, 0xb1, 0x05, 0x11, 0xcf, 0x28,
+	0xe7, 0xc4, 0xa3, 0xe8, 0x63, 0x28, 0xcd, 0x15, 0x60, 0xe5, 0x1a, 0xb9, 0x43, 0x13, 0xeb, 0x15,
+	0x3a, 0x00, 0x88, 0x09, 0x23, 0x0b, 0x2a, 0x28, 0xe3, 0x56, 0xbe, 0x51, 0x38, 0x34, 0x71, 0x06,
+	0x69, 0xbe, 0x2a, 0x40, 0x75, 0x22, 0x88, 0x58, 0xf2, 0x54, 0xe9, 0x16, 0x18, 0x3e, 0x77, 0x28,
+	0x63, 0x11, 0x53, 0x5a, 0x06, 0x2e, 0xfb, 0xdc, 0x96, 0x4b, 0x34, 0x05, 0x93, 0xd1, 0x39, 0x65,
+	0xdc, 0x11, 0x91, 0x95, 0x6f, 0xe4, 0x0e, 0x6b, 0x9d, 0xc7, 0xad, 0x6d, 0xa5, 0x6b, 0x6d, 0xc8,
+	0xb7, 0xb0, 0x14, 0xa0, 0xe1, 0x8c, 0x62, 0x23, 0xd1, 0x3a, 0x8b, 0xd0, 0x73, 0xa8, 0xb8, 0x94,
+	0xcf, 0x98, 0x1f, 0xcb, 0xa2, 0x5a, 0x85, 0x46, 0xee, 0xb0, 0xd2, 0x69, 0x6f, 0x57, 0xde, 0x28,
+	0x01, 0xce, 0x6a, 0x34, 0xff, 0xc8, 0x81, 0xb9, 0x3e, 0x0a, 0xed, 0x41, 0xe5, 0x7c, 0x38, 0x19,
+	0xdb, 0xbd, 0xfe, 0x49, 0xdf, 0x3e, 0xae, 0x5f, 0x43, 0x07, 0xb0, 0x7f, 0x84, 0xed, 0xee, 0xd3,
+	0xf1, 0xa8, 0x3f, 0x3c, 0x73, 0x26, 0xa3, 0x73, 0xdc, 0xb3, 0x9d, 0xc1, 0xa8, 0xd7, 0x3d, 0xeb,
+	0x8f, 0x86, 0xf5, 0x02, 0xb2, 0xe0, 0x46, 0x66, 0xbf, 0x37, 0x1a, 0x1e, 0xf7, 0xd5, 0x4e, 0x11,
+	0xdd, 0x82, 0x9b, 0x99, 0x1d, 0xfb, 0xbb, 0x31, 0xb6, 0x27, 0x13, 0xb9, 0x55, 0x46, 0x08, 0x6a,
+	0x99, 0xad, 0xee, 0xa9, 0x5d, 0x37, 0xd0, 0x75, 0xa8, 0x4e, 0xbb, 0xb8, 0xdf, 0x3d, 0x1a, 0xd8,
+	0xce, 0xb0, 0xfb, 0xcc, 0xae, 0xef, 0x48, 0xda, 0x1a, 0x9a, 0x76, 0x07, 0xe7, 0x76, 0xbd, 0xd4,
+	0x7c, 0x04, 0xb5, 0x89, 0x32, 0xca, 0x20, 0x9a, 0x29, 0x67, 0x21, 0x04, 0xc5, 0x98, 0x88, 0x1f,
+	0xf5, 0x75, 0xaa, 0x58, 0x62, 0x81, 0x1f, 0x52, 0x55, 0xfa, 0x1d, 0xac, 0xe2, 0xe6, 0xaf, 0x79,
+	0x30, 0xa6, 0x84, 0xf9, 0xe4, 0x22, 0xa0, 0x92, 0x10, 0x92, 0x05, 0x4d, 0x93, 0x64, 0x8c, 0x6e,
+	0xc0, 0xce, 0x8a, 0x04, 0xcb, 0x24, 0xcb, 0xc4, 0xc9, 0x42, 0x32, 0xc5, 0xcb, 0x98, 0x5a, 0xa5,
+	0x84, 0x29, 0x63, 0x74, 0x0c, 0xe5, 0x05, 0x5d, 0x5c, 0x48, 0xa3, 0x14, 0x1a, 0x85, 0xc3, 0x4a,
+	0xe7, 0xf3, 0xed, 0x57, 0x90, 0x1e, 0x8d, 0xd3, 0x54, 0xd4, 0x83, 0xbd, 0x15, 0x61, 0x8e, 0x90,
+	0xa8, 0xe3, 0x87, 0x2e, 0xbd, 0xb4, 0x8a, 0xea, 0x42, 0x3f, 0x49, 0xd5, 0x52, 0x53, 0xb7, 0xfa,
+	0xa1, 0x78, 0xd8, 0x99, 0xca, 0xe7, 0xc1, 0xd5, 0x15, 0x61, 0x67, 0x32, 0xa5, 0x2f, 0x33, 0xd0,
+	0x29, 0x94, 0xb8, 0xb2, 0x8d, 0xb5, 0xf3, 0xae, 0x66, 0xd8, 0xb0, 0x19, 0xd6, 0xe9, 0xcd, 0x57,
+	0x79, 0x80, 0x89, 0x20, 0xb3, 0x17, 0x27, 0xd2, 0xf2, 0x68, 0x1f, 0x8c, 0xf9, 0x32, 0x9c, 0x29,
+	0x9b, 0x25, 0x45, 0x5a, 0xaf, 0xd1, 0x00, 0x8c, 0x40, 0x57, 0x5f, 0xd5, 0xaa, 0xd2, 0xb9, 0xff,
+	0x0e, 0xa7, 0x6e, 0xdc, 0x1a, 0x5e, 0x2b, 0xa0, 0x6f, 0xc0, 0x24, 0xcc, 0x5b, 0x2e, 0x68, 0x28,
+	0xfe, 0x4f, 0x39, 0x5f, 0x27, 0xa3, 0x23, 0x28, 0x49, 0xd5, 0x80, 0x5b, 0xc5, 0x2b, 0xcb, 0xe8,
+	0xcc, 0xe6, 0x9f, 0x06, 0xc0, 0x11, 0xa3, 0xe4, 0x45, 0x1c, 0xf9, 0xa1, 0x40, 0x35, 0xc8, 0xfb,
+	0xae, 0x2e, 0x40, 0xde, 0x77, 0xd1, 0x53, 0x28, 0x91, 0xa4, 0x28, 0x55, 0xd5, 0xd5, 0x0f, 0xb7,
+	0x1f, 0xf1, 0x5a, 0xad, 0xd5, 0x55, 0xa9, 0x58, 0x4b, 0x7c, 0xe0, 0x3a, 0xde, 0x06, 0x73, 0x16,
+	0x85, 0xae, 0xbf, 0x9e, 0x0c, 0x26, 0x7e, 0x0d, 0xa0, 0x06, 0x54, 0xe8, 0x65, 0xcc, 0x28, 0xe7,
+	0x72, 0x1a, 0xab, 0x02, 0x99, 0x38, 0x0b, 0xa1, 0x7b, 0x80, 0x82, 0xc8, 0x73, 0x16, 0x89, 0x2f,
+	0x1c, 0x3d, 0x24, 0x6b, 0x4a, 0xa8, 0x1e, 0x44, 0x9e, 0x36, 0x4c, 0x32, 0x4a, 0x10, 0x06, 0x53,
+	0xb2, 0x03, 0xba, 0xa2, 0x81, 0xb5, 0xa7, 0x6a, 0xf1, 0xe5, 0x95, 0x6a, 0x31, 0x88, 0xbc, 0x81,
+	0x4c, 0x96, 0xbf, 0x20, 0x89, 0xd0, 0x5d, 0xa8, 0xf9, 0xdc, 0x99, 0xfb, 0x21, 0x09, 0x1c, 0xe9,
+	0x4a, 0xaa, 0x3c, 0x6d, 0xe0, 0x5d, 0x9f, 0x9f, 0x48, 0x50, 0x1a, 0x97, 0xa2, 0x27, 0x50, 0x99,
+	0x31, 0x4a, 0x04, 0x75, 0xe4, 0xbb, 0xc0, 0xaa, 0xa8, 0xc2, 0xed, 0xbf, 0xd5, 0x32, 0x67, 0xe9,
+	0x8b, 0x02, 0x43, 0x42, 0x97, 0x00, 0x7a, 0x0c, 0x90, 0xe8, 0xab, 0xdc, 0xdd, 0xad, 0xb9, 0xa6,
+	0x62, 0xab, 0xd4, 0x4f, 0x01, 0x96, 0x9c, 0x32, 0x87, 0x2e, 0x88, 0x1f, 0x58, 0xf5, 0xa4, 0xc0,
+	0x12, 0xb1, 0x25, 0x90, 0x69, 0x44, 0x78, 0xaf, 0x46, 0x44, 0x23, 0xd8, 0xe5, 0xb2, 0x0f, 0x9d,
+	0xb9, 0x6c, 0x44, 0x6e, 0x95, 0x95, 0x97, 0xef, 0xbd, 0x93, 0x9c, 0xee, 0x5e, 0x5c, 0xe1, 0xeb,
+	0x98, 0x23, 0x07, 0x6e, 0x52, 0x39, 0xcb, 0x88, 0xa0, 0xae, 0x93, 0x35, 0x81, 0x71, 0xe5, 0x2e,
+	0xb9, 0xb1, 0x16, 0xb2, 0x33, 0xce, 0x79, 0x0e, 0xb5, 0x95, 0x66, 0x24, 0xd3, 0xcc, 0x32, 0xaf,
+	0xac, 0x5c, 0x4d, 0x15, 0xd4, 0x6c, 0x43, 0x63, 0x28, 0x05, 0xe4, 0x82, 0x06, 0xdc, 0xba, 0xae,
+	0xa4, 0x1e, 0x5d, 0xcd, 0x5b, 0x2a, 0xd5, 0x0e, 0x05, 0x7b, 0x89, 0xb5, 0xce, 0xfe, 0x63, 0xa8,
+	0x64, 0x60, 0x54, 0x87, 0xc2, 0x0b, 0xfa, 0x52, 0x77, 0xb6, 0x0c, 0xff, 0x79, 0xfc, 0x7f, 0x9d,
+	0x7f, 0x94, 0x6b, 0x1e, 0x40, 0x29, 0xe9, 0x5c, 0x54, 0x81, 0x72, 0xaf, 0x3b, 0x3e, 0x3b, 0xc7,
+	0x76, 0xfd, 0x1a, 0x2a, 0x43, 0x61, 0x30, 0x3a, 0xad, 0xe7, 0x9a, 0xf7, 0xc0, 0x48, 0xdd, 0x8c,
+	0x0c, 0x28, 0xf6, 0x87, 0x27, 0xa3, 0xfa, 0x35, 0xc9, 0xfd, 0xb6, 0x8b, 0x87, 0xfd, 0xe1, 0x69,
+	0x3d, 0x87, 0x4c, 0xd8, 0xb1, 0x31, 0x1e, 0xe1, 0x7a, 0xbe, 0xf9, 0x57, 0x11, 0x8c, 0xe3, 0xe4,
+	0xb9, 0xe9, 0x5b, 0xf3, 0xc5, 0x82, 0x72, 0xcc, 0xa2, 0x9f, 0xe8, 0x4c, 0xe8, 0xc7, 0x48, 0x97,
+	0xf2, 0xfb, 0x64, 0x19, 0xfa, 0x3f, 0x2f, 0xfd, 0xb9, 0x4f, 0x99, 0xee, 0xef, 0x0c, 0x22, 0x1b,
+	0x3c, 0xfb, 0x69, 0x50, 0x54, 0x84, 0x2c, 0x84, 0xee, 0x40, 0xc5, 0xe7, 0x8e, 0x1f, 0xca, 0xe9,
+	0xb3, 0x4a, 0x7b, 0x0b, 0x7c, 0xde, 0xd7, 0x08, 0xfa, 0x0c, 0xaa, 0xc4, 0xa3, 0xa1, 0x70, 0x56,
+	0x94, 0xc9, 0x9b, 0xd5, 0xef, 0xbc, 0x5d, 0x05, 0x4e, 0x13, 0x4c, 0xab, 0xb8, 0x3e, 0x97, 0xf7,
+	0xe4, 0x5a, 0xe5, 0x54, 0xe5, 0x58, 0x23, 0x99, 0x46, 0x30, 0xde, 0xaf, 0x11, 0x9e, 0xc3, 0xde,
+	0xe6, 0x37, 0x21, 0xd7, 0xbe, 0x3a, 0x7c, 0x4b, 0x31, 0xe1, 0xb5, 0x56, 0x0f, 0xf4, 0x78, 0xec,
+	0x25, 0x09, 0xb8, 0xc6, 0xb3, 0x4b, 0x8e, 0x7e, 0x80, 0x8f, 0xe8, 0xa5, 0x70, 0xde, 0x94, 0xad,
+	0x2a, 0xd9, 0xfb, 0xff, 0x21, 0x6b, 0x5f, 0x0a, 0x1a, 0xba, 0xd4, 0xdd, 0x94, 0xbf, 0x4e, 0x2f,
+	0xc5, 0x64, 0xf3, 0x84, 0xe1, 0xda, 0xb8, 0x15, 0x25, 0xfa, 0xd5, 0xf6, 0x5f, 0x9f, 0x9a, 0xe1,
+	0x03, 0xdb, 0xf6, 0xe8, 0xb7, 0x1c, 0xdc, 0x9d, 0x45, 0x8b, 0xad, 0x0f, 0x70, 0x64, 0x1e, 0x13,
+	0x41, 0xc6, 0x72, 0xf8, 0x8d, 0x73, 0xdf, 0x3f, 0xd3, 0x74, 0x2f, 0x0a, 0x48, 0xe8, 0xb5, 0x22,
+	0xe6, 0xb5, 0x3d, 0x1a, 0xaa, 0xd1, 0xd8, 0x4e, 0xb6, 0x48, 0xec, 0xf3, 0x7f, 0xff, 0xb7, 0xf0,
+	0x64, 0x03, 0xf8, 0x3d, 0x6f, 0x9d, 0x26, 0x7a, 0x3d, 0x09, 0xa7, 0xbf, 0x95, 0xb5, 0xa6, 0x9d,
+	0x8b, 0x92, 0x12, 0x7d, 0xf8, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x06, 0xfd, 0x4c, 0xc8, 0x81,
+	0x0c, 0x00, 0x00,
 }
diff --git a/googleapis/devtools/clouddebugger/v2/debugger.pb.go b/googleapis/devtools/clouddebugger/v2/debugger.pb.go
index 35b44e73..7454ee2e 100644
--- a/googleapis/devtools/clouddebugger/v2/debugger.pb.go
+++ b/googleapis/devtools/clouddebugger/v2/debugger.pb.go
@@ -24,10 +24,10 @@ type SetBreakpointRequest struct {
 	// ID of the debuggee where the breakpoint is to be set.
 	DebuggeeId string `protobuf:"bytes,1,opt,name=debuggee_id,json=debuggeeId" json:"debuggee_id,omitempty"`
 	// Breakpoint specification to set.
-	// The field 'location' of the breakpoint must be set.
+	// The field `location` of the breakpoint must be set.
 	Breakpoint *Breakpoint `protobuf:"bytes,2,opt,name=breakpoint" json:"breakpoint,omitempty"`
 	// The client version making the call.
-	// Following: `domain/type/version` (e.g., `google.com/intellij/v1`).
+	// Schema: `domain/type/version` (e.g., `google.com/intellij/v1`).
 	ClientVersion string `protobuf:"bytes,4,opt,name=client_version,json=clientVersion" json:"client_version,omitempty"`
 }
 
@@ -83,7 +83,7 @@ type GetBreakpointRequest struct {
 	// ID of the breakpoint to get.
 	BreakpointId string `protobuf:"bytes,2,opt,name=breakpoint_id,json=breakpointId" json:"breakpoint_id,omitempty"`
 	// The client version making the call.
-	// Following: `domain/type/version` (e.g., `google.com/intellij/v1`).
+	// Schema: `domain/type/version` (e.g., `google.com/intellij/v1`).
 	ClientVersion string `protobuf:"bytes,4,opt,name=client_version,json=clientVersion" json:"client_version,omitempty"`
 }
 
@@ -139,7 +139,7 @@ type DeleteBreakpointRequest struct {
 	// ID of the breakpoint to delete.
 	BreakpointId string `protobuf:"bytes,2,opt,name=breakpoint_id,json=breakpointId" json:"breakpoint_id,omitempty"`
 	// The client version making the call.
-	// Following: `domain/type/version` (e.g., `google.com/intellij/v1`).
+	// Schema: `domain/type/version` (e.g., `google.com/intellij/v1`).
 	ClientVersion string `protobuf:"bytes,3,opt,name=client_version,json=clientVersion" json:"client_version,omitempty"`
 }
 
@@ -191,7 +191,7 @@ type ListBreakpointsRequest struct {
 	// should be called again with the same `wait_token`.
 	WaitToken string `protobuf:"bytes,6,opt,name=wait_token,json=waitToken" json:"wait_token,omitempty"`
 	// The client version making the call.
-	// Following: `domain/type/version` (e.g., `google.com/intellij/v1`).
+	// Schema: `domain/type/version` (e.g., `google.com/intellij/v1`).
 	ClientVersion string `protobuf:"bytes,8,opt,name=client_version,json=clientVersion" json:"client_version,omitempty"`
 }
 
@@ -279,7 +279,7 @@ type ListBreakpointsResponse struct {
 	// List of breakpoints matching the request.
 	// The fields `id` and `location` are guaranteed to be set on each breakpoint.
 	// The fields: `stack_frames`, `evaluated_expressions` and `variable_table`
-	// are cleared on each breakpoint regardless of it's status.
+	// are cleared on each breakpoint regardless of its status.
 	Breakpoints []*Breakpoint `protobuf:"bytes,1,rep,name=breakpoints" json:"breakpoints,omitempty"`
 	// A wait token that can be used in the next call to `list` (REST) or
 	// `ListBreakpoints` (RPC) to block until the list of breakpoints has changes.
@@ -313,7 +313,7 @@ type ListDebuggeesRequest struct {
 	// result includes only debuggees that are active.
 	IncludeInactive bool `protobuf:"varint,3,opt,name=include_inactive,json=includeInactive" json:"include_inactive,omitempty"`
 	// The client version making the call.
-	// Following: `domain/type/version` (e.g., `google.com/intellij/v1`).
+	// Schema: `domain/type/version` (e.g., `google.com/intellij/v1`).
 	ClientVersion string `protobuf:"bytes,4,opt,name=client_version,json=clientVersion" json:"client_version,omitempty"`
 }
 
@@ -346,10 +346,9 @@ func (m *ListDebuggeesRequest) GetClientVersion() string {
 // Response for listing debuggees.
 type ListDebuggeesResponse struct {
 	// List of debuggees accessible to the calling user.
-	// Note that the `description` field is the only human readable field
-	// that should be displayed to the user.
-	// The fields `debuggee.id` and  `description` fields are guaranteed to be
-	// set on each debuggee.
+	// The fields `debuggee.id` and `description` are guaranteed to be set.
+	// The `description` field is a human readable field provided by agents and
+	// can be displayed to users.
 	Debuggees []*Debuggee `protobuf:"bytes,1,rep,name=debuggees" json:"debuggees,omitempty"`
 }
 
@@ -397,7 +396,7 @@ type Debugger2Client interface {
 	DeleteBreakpoint(ctx context.Context, in *DeleteBreakpointRequest, opts ...grpc.CallOption) (*google_protobuf3.Empty, error)
 	// Lists all breakpoints for the debuggee.
 	ListBreakpoints(ctx context.Context, in *ListBreakpointsRequest, opts ...grpc.CallOption) (*ListBreakpointsResponse, error)
-	// Lists all the debuggees that the user can set breakpoints to.
+	// Lists all the debuggees that the user has access to.
 	ListDebuggees(ctx context.Context, in *ListDebuggeesRequest, opts ...grpc.CallOption) (*ListDebuggeesResponse, error)
 }
 
@@ -465,7 +464,7 @@ type Debugger2Server interface {
 	DeleteBreakpoint(context.Context, *DeleteBreakpointRequest) (*google_protobuf3.Empty, error)
 	// Lists all breakpoints for the debuggee.
 	ListBreakpoints(context.Context, *ListBreakpointsRequest) (*ListBreakpointsResponse, error)
-	// Lists all the debuggees that the user can set breakpoints to.
+	// Lists all the debuggees that the user has access to.
 	ListDebuggees(context.Context, *ListDebuggeesRequest) (*ListDebuggeesResponse, error)
 }
 
@@ -595,53 +594,54 @@ var _Debugger2_serviceDesc = grpc.ServiceDesc{
 func init() { proto.RegisterFile("google/devtools/clouddebugger/v2/debugger.proto", fileDescriptor2) }
 
 var fileDescriptor2 = []byte{
-	// 766 bytes of a gzipped FileDescriptorProto
+	// 781 bytes of a gzipped FileDescriptorProto
 	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xcb, 0x6e, 0xd3, 0x4c,
-	0x18, 0xd5, 0xb4, 0x7f, 0x2f, 0xf9, 0xd2, 0xb4, 0xfd, 0x47, 0xbd, 0x58, 0xe1, 0x16, 0x99, 0x8b,
-	0x4a, 0x41, 0x36, 0x72, 0x11, 0xb4, 0xb0, 0xa1, 0x51, 0x51, 0x1a, 0xa9, 0x54, 0x55, 0x80, 0x22,
-	0xb1, 0x89, 0x9c, 0x64, 0x6a, 0x99, 0xba, 0x1e, 0xe3, 0x19, 0x07, 0x50, 0xd5, 0x4d, 0x91, 0xba,
-	0x47, 0xbc, 0x00, 0x0f, 0x80, 0xc4, 0x13, 0x20, 0xb1, 0x43, 0x62, 0xcb, 0x2b, 0xf0, 0x20, 0xc8,
-	0xe3, 0x71, 0xe3, 0x04, 0x43, 0xe2, 0x54, 0xea, 0xce, 0x3e, 0x9e, 0xf3, 0xcd, 0x39, 0x67, 0xbe,
-	0x99, 0x31, 0xe8, 0x16, 0xa5, 0x96, 0x43, 0xf4, 0x16, 0x69, 0x73, 0x4a, 0x1d, 0xa6, 0x37, 0x1d,
-	0x1a, 0xb4, 0x5a, 0xa4, 0x11, 0x58, 0x16, 0xf1, 0xf5, 0xb6, 0xa1, 0xc7, 0xcf, 0x9a, 0xe7, 0x53,
-	0x4e, 0x71, 0x29, 0x22, 0x68, 0x31, 0x41, 0xeb, 0x22, 0x68, 0x6d, 0xa3, 0x78, 0x51, 0x96, 0x34,
-	0x3d, 0x5b, 0x37, 0x5d, 0x97, 0x72, 0x93, 0xdb, 0xd4, 0x65, 0x11, 0xbf, 0x78, 0xab, 0xff, 0x84,
-	0x26, 0x37, 0xe5, 0xe0, 0x0b, 0x72, 0xb0, 0x78, 0x6b, 0x04, 0x7b, 0x3a, 0x39, 0xf0, 0xf8, 0xbb,
-	0xe8, 0xa3, 0xfa, 0x19, 0xc1, 0xdc, 0x53, 0xc2, 0xcb, 0x3e, 0x31, 0xf7, 0x3d, 0x6a, 0xbb, 0xbc,
-	0x46, 0x5e, 0x07, 0x84, 0x71, 0x7c, 0x05, 0xf2, 0xb2, 0x1e, 0xa9, 0xdb, 0x2d, 0x05, 0x95, 0xd0,
-	0x52, 0xae, 0x06, 0x31, 0x54, 0x6d, 0xe1, 0x2d, 0x80, 0xc6, 0x29, 0x4b, 0x19, 0x29, 0xa1, 0xa5,
-	0xbc, 0x71, 0x5b, 0xeb, 0x67, 0x4c, 0x4b, 0xcc, 0x94, 0xe0, 0xe3, 0xeb, 0x30, 0xdd, 0x74, 0x6c,
-	0xe2, 0xf2, 0x7a, 0x9b, 0xf8, 0xcc, 0xa6, 0xae, 0xf2, 0x9f, 0x98, 0xb1, 0x10, 0xa1, 0xbb, 0x11,
-	0xa8, 0x12, 0x98, 0xef, 0x51, 0xcb, 0x3c, 0xea, 0x32, 0xd2, 0xa3, 0x06, 0x9d, 0x4d, 0x8d, 0xfa,
-	0x1e, 0xc1, 0x5c, 0x65, 0xa8, 0x54, 0xae, 0x42, 0xa1, 0x53, 0x27, 0x1c, 0x32, 0x22, 0x86, 0x4c,
-	0x75, 0xc0, 0x6a, 0x2b, 0x83, 0xd9, 0xca, 0x39, 0x98, 0x3d, 0x41, 0xb0, 0xb8, 0x41, 0x1c, 0xc2,
-	0xc9, 0xf9, 0xf9, 0x1d, 0x4d, 0xf3, 0xfb, 0x7d, 0x14, 0x16, 0xb6, 0x6c, 0x96, 0x70, 0xcc, 0x06,
-	0xd6, 0xb1, 0x0c, 0xff, 0xdb, 0x6e, 0xd3, 0x09, 0x5a, 0xa4, 0x6e, 0x3a, 0x4e, 0x3d, 0x60, 0xc4,
-	0x67, 0x42, 0xcb, 0x64, 0x6d, 0x46, 0x7e, 0x58, 0x77, 0x9c, 0xe7, 0x21, 0x8c, 0x6f, 0xc2, 0x6c,
-	0x3c, 0xd6, 0x76, 0xcd, 0x26, 0xb7, 0xdb, 0x44, 0x08, 0xea, 0x0c, 0xad, 0x4a, 0x18, 0xef, 0xc1,
-	0x78, 0xf8, 0x24, 0x57, 0x28, 0x6f, 0x6c, 0xf7, 0x4f, 0x39, 0xdd, 0x41, 0x22, 0xfc, 0x75, 0x51,
-	0x70, 0xd7, 0x74, 0x02, 0x52, 0x93, 0xd5, 0xc3, 0x18, 0x19, 0xf7, 0x6d, 0xaf, 0xee, 0x13, 0x16,
-	0x38, 0x9c, 0x29, 0x63, 0x42, 0xcf, 0x94, 0x00, 0x6b, 0x11, 0x86, 0x2f, 0x01, 0xbc, 0x31, 0x6d,
-	0x5e, 0xe7, 0x74, 0x9f, 0xb8, 0xca, 0xb8, 0xc8, 0x20, 0x17, 0x22, 0xcf, 0x42, 0x20, 0x25, 0xe5,
-	0xc9, 0x94, 0x94, 0x8b, 0x0d, 0x98, 0x4f, 0xd5, 0x82, 0xab, 0x30, 0xd6, 0x0e, 0x1f, 0x44, 0xba,
-	0xd3, 0xc6, 0x4a, 0x96, 0x86, 0xd2, 0xa2, 0x42, 0xb5, 0xa8, 0x82, 0xfa, 0x01, 0xc1, 0xe2, 0x1f,
-	0x39, 0xc8, 0xe6, 0xdd, 0x86, 0x7c, 0xa7, 0x39, 0x98, 0x82, 0x4a, 0xa3, 0x99, 0xbb, 0x37, 0x59,
-	0x00, 0xdf, 0x80, 0x19, 0x97, 0xbc, 0xe5, 0xf5, 0x44, 0x34, 0x51, 0x0f, 0x16, 0x42, 0xf8, 0x45,
-	0x1c, 0x8f, 0x7a, 0x8c, 0x60, 0x2e, 0xd4, 0xb4, 0x21, 0x9b, 0xe6, 0xb4, 0xb7, 0x14, 0x98, 0xf0,
-	0x7c, 0xfa, 0x8a, 0x34, 0xb9, 0x24, 0xc6, 0xaf, 0x59, 0x1a, 0x65, 0xc0, 0x2d, 0x6d, 0xc2, 0x7c,
-	0x8f, 0x06, 0x99, 0xca, 0x26, 0xe4, 0xe2, 0x6e, 0x8e, 0x33, 0x59, 0xee, 0x9f, 0x49, 0x5c, 0xa7,
-	0xd6, 0x21, 0x1b, 0x5f, 0x27, 0x20, 0x27, 0x71, 0xdf, 0xc0, 0x3f, 0x10, 0x14, 0xba, 0x4e, 0x4c,
-	0x7c, 0xaf, 0x7f, 0xd9, 0xb4, 0x0b, 0xa1, 0x78, 0x3f, 0x33, 0x2f, 0xb2, 0xa6, 0x6e, 0x1e, 0xff,
-	0xfc, 0xf5, 0x71, 0xa4, 0xac, 0xde, 0x4d, 0x5e, 0x84, 0xfa, 0xa9, 0x60, 0xfd, 0x30, 0xb1, 0xb3,
-	0x8f, 0xf4, 0xc4, 0xd2, 0xea, 0x8c, 0xf0, 0x07, 0xc9, 0x4b, 0x22, 0x34, 0x53, 0xc9, 0x6a, 0xa6,
-	0x32, 0xa4, 0x99, 0xca, 0xbf, 0xcc, 0xe0, 0x47, 0x99, 0xcd, 0x1c, 0x76, 0x9d, 0x93, 0x47, 0xf8,
-	0x0b, 0x82, 0xd9, 0xde, 0x63, 0x17, 0xaf, 0x0d, 0xb2, 0xe6, 0xa9, 0x47, 0x75, 0x71, 0x21, 0xa6,
-	0xc6, 0xf7, 0xbc, 0xf6, 0x38, 0xbc, 0xe7, 0x63, 0xc5, 0xcb, 0x67, 0x57, 0xfc, 0x0d, 0xc1, 0x4c,
-	0xcf, 0xae, 0xc6, 0xab, 0xc3, 0x1e, 0x88, 0xc5, 0xb5, 0x21, 0x98, 0x72, 0x11, 0x56, 0x85, 0x25,
-	0x03, 0xdf, 0xc9, 0x6a, 0x09, 0x7f, 0x42, 0x50, 0xe8, 0xda, 0x80, 0x83, 0x74, 0x50, 0xda, 0xa9,
-	0x31, 0x48, 0x07, 0xa5, 0xee, 0x74, 0xf5, 0xb2, 0x10, 0xaf, 0xe0, 0x85, 0x74, 0xf1, 0xe5, 0x13,
-	0x04, 0xd7, 0x9a, 0xf4, 0xa0, 0x6f, 0xf9, 0x72, 0x21, 0xde, 0xe5, 0x3b, 0xe1, 0x82, 0xef, 0xa0,
-	0x97, 0x4f, 0x24, 0xc5, 0xa2, 0x8e, 0xe9, 0x5a, 0x1a, 0xf5, 0x2d, 0xdd, 0x22, 0xae, 0x68, 0x07,
-	0xf9, 0x87, 0x6a, 0x7a, 0x36, 0xfb, 0xfb, 0x4f, 0xe3, 0xc3, 0x2e, 0xa0, 0x31, 0x2e, 0x98, 0x2b,
-	0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x7f, 0x55, 0x66, 0x54, 0xde, 0x0a, 0x00, 0x00,
+	0x18, 0xd5, 0xa4, 0x7f, 0x2f, 0xf9, 0xd2, 0xb4, 0xfd, 0x47, 0xbd, 0x58, 0xe1, 0x16, 0x99, 0x8b,
+	0x4a, 0x41, 0x36, 0x72, 0x11, 0xb4, 0xb0, 0xa1, 0xa1, 0x28, 0x8d, 0x54, 0xaa, 0x2a, 0x40, 0x91,
+	0xd8, 0x44, 0x4e, 0x3c, 0xb5, 0x4c, 0x5d, 0x8f, 0xf1, 0x8c, 0x03, 0xa8, 0xea, 0xa6, 0x48, 0xec,
+	0x11, 0x2f, 0x00, 0x5b, 0x84, 0xc4, 0x13, 0x20, 0xb1, 0x43, 0x62, 0xcb, 0x2b, 0xf0, 0x20, 0xc8,
+	0xf6, 0xb8, 0x71, 0x82, 0x21, 0x71, 0x2a, 0x75, 0xe7, 0x9c, 0xcc, 0x77, 0x7c, 0xce, 0x99, 0x6f,
+	0xbe, 0x31, 0xa8, 0x26, 0xa5, 0xa6, 0x4d, 0x54, 0x83, 0xb4, 0x39, 0xa5, 0x36, 0x53, 0x5b, 0x36,
+	0xf5, 0x0d, 0x83, 0x34, 0x7d, 0xd3, 0x24, 0x9e, 0xda, 0xd6, 0xd4, 0xf8, 0x59, 0x71, 0x3d, 0xca,
+	0x29, 0x2e, 0x47, 0x05, 0x4a, 0x5c, 0xa0, 0x74, 0x15, 0x28, 0x6d, 0xad, 0x74, 0x56, 0x50, 0xea,
+	0xae, 0xa5, 0xea, 0x8e, 0x43, 0xb9, 0xce, 0x2d, 0xea, 0xb0, 0xa8, 0xbe, 0x74, 0xad, 0xff, 0x0b,
+	0x75, 0xae, 0x8b, 0xc5, 0x67, 0xc4, 0xe2, 0xf0, 0x57, 0xd3, 0xdf, 0x55, 0xc9, 0xbe, 0xcb, 0x5f,
+	0x47, 0x7f, 0xca, 0x9f, 0x11, 0xcc, 0x3e, 0x22, 0xbc, 0xe2, 0x11, 0x7d, 0xcf, 0xa5, 0x96, 0xc3,
+	0xeb, 0xe4, 0x85, 0x4f, 0x18, 0xc7, 0x17, 0xa0, 0x20, 0xf8, 0x48, 0xc3, 0x32, 0x24, 0x54, 0x46,
+	0x8b, 0xf9, 0x3a, 0xc4, 0x50, 0xcd, 0xc0, 0x9b, 0x00, 0xcd, 0xe3, 0x2a, 0x29, 0x57, 0x46, 0x8b,
+	0x05, 0xed, 0xba, 0xd2, 0xcf, 0x98, 0x92, 0x78, 0x53, 0xa2, 0x1e, 0x5f, 0x86, 0xa9, 0x96, 0x6d,
+	0x11, 0x87, 0x37, 0xda, 0xc4, 0x63, 0x16, 0x75, 0xa4, 0xff, 0xc2, 0x37, 0x16, 0x23, 0x74, 0x27,
+	0x02, 0x65, 0x02, 0x73, 0x3d, 0x6a, 0x99, 0x4b, 0x1d, 0x46, 0x7a, 0xd4, 0xa0, 0x93, 0xa9, 0x91,
+	0xdf, 0x20, 0x98, 0xad, 0x0e, 0x95, 0xca, 0x45, 0x28, 0x76, 0x78, 0x82, 0x25, 0xb9, 0x70, 0xc9,
+	0x64, 0x07, 0xac, 0x19, 0x19, 0xcc, 0x56, 0x4f, 0xc1, 0xec, 0x5b, 0x04, 0x0b, 0xeb, 0xc4, 0x26,
+	0x9c, 0x9c, 0x9e, 0xdf, 0x91, 0x34, 0xbf, 0xdf, 0x47, 0x60, 0x7e, 0xd3, 0x62, 0x09, 0xc7, 0x6c,
+	0x60, 0x1d, 0x4b, 0xf0, 0xbf, 0xe5, 0xb4, 0x6c, 0xdf, 0x20, 0x0d, 0xdd, 0xb6, 0x1b, 0x3e, 0x23,
+	0x1e, 0x0b, 0xb5, 0x4c, 0xd4, 0xa7, 0xc5, 0x1f, 0x6b, 0xb6, 0xfd, 0x24, 0x80, 0xf1, 0x55, 0x98,
+	0x89, 0xd7, 0x5a, 0x8e, 0xde, 0xe2, 0x56, 0x9b, 0x84, 0x82, 0x3a, 0x4b, 0x6b, 0x02, 0xc6, 0xbb,
+	0x30, 0x16, 0x3c, 0x89, 0x1d, 0x2a, 0x68, 0x5b, 0xfd, 0x53, 0x4e, 0x77, 0x90, 0x08, 0x7f, 0x2d,
+	0x24, 0xdc, 0xd1, 0x6d, 0x9f, 0xd4, 0x05, 0x7b, 0x10, 0x23, 0xe3, 0x9e, 0xe5, 0x36, 0x3c, 0xc2,
+	0x7c, 0x9b, 0x33, 0x69, 0x34, 0xd4, 0x33, 0x19, 0x82, 0xf5, 0x08, 0xc3, 0xe7, 0x00, 0x5e, 0xea,
+	0x16, 0x6f, 0x70, 0xba, 0x47, 0x1c, 0x69, 0x2c, 0xcc, 0x20, 0x1f, 0x20, 0x8f, 0x03, 0x20, 0x25,
+	0xe5, 0x89, 0x94, 0x94, 0x4b, 0x4d, 0x98, 0x4b, 0xd5, 0x82, 0x6b, 0x30, 0xda, 0x0e, 0x1e, 0xc2,
+	0x74, 0xa7, 0xb4, 0xe5, 0x2c, 0x0d, 0xa5, 0x44, 0x44, 0xf5, 0x88, 0x41, 0x7e, 0x87, 0x60, 0xe1,
+	0x8f, 0x1c, 0x44, 0xf3, 0x6e, 0x41, 0xa1, 0xd3, 0x1c, 0x4c, 0x42, 0xe5, 0x91, 0xcc, 0xdd, 0x9b,
+	0x24, 0xc0, 0x57, 0x60, 0xda, 0x21, 0xaf, 0x78, 0x23, 0x11, 0x4d, 0xd4, 0x83, 0xc5, 0x00, 0x7e,
+	0x1a, 0xc7, 0x23, 0x1f, 0x21, 0x98, 0x0d, 0x34, 0xad, 0x8b, 0xa6, 0x39, 0xee, 0x2d, 0x09, 0xc6,
+	0x5d, 0x8f, 0x3e, 0x27, 0x2d, 0x2e, 0x0a, 0xe3, 0x9f, 0x59, 0x1a, 0x65, 0xc0, 0x23, 0xad, 0xc3,
+	0x5c, 0x8f, 0x06, 0x91, 0xca, 0x06, 0xe4, 0xe3, 0x6e, 0x8e, 0x33, 0x59, 0xea, 0x9f, 0x49, 0xcc,
+	0x53, 0xef, 0x14, 0x6b, 0x5f, 0xc7, 0x21, 0x2f, 0x70, 0x4f, 0xc3, 0x3f, 0x10, 0x14, 0xbb, 0x26,
+	0x26, 0xbe, 0xd5, 0x9f, 0x36, 0xed, 0x42, 0x28, 0xdd, 0xce, 0x5c, 0x17, 0x59, 0x93, 0x37, 0x8e,
+	0x7e, 0xfe, 0x7a, 0x9f, 0xab, 0xc8, 0x37, 0x93, 0x17, 0xa1, 0x7a, 0x2c, 0x58, 0x3d, 0x48, 0x9c,
+	0xec, 0x43, 0x35, 0xb1, 0xb5, 0x2a, 0x23, 0xfc, 0x4e, 0xf2, 0x92, 0x08, 0xcc, 0x54, 0xb3, 0x9a,
+	0xa9, 0x0e, 0x69, 0xa6, 0xfa, 0x2f, 0x33, 0xf8, 0x5e, 0x66, 0x33, 0x07, 0x5d, 0x73, 0xf2, 0x10,
+	0x7f, 0x41, 0x30, 0xd3, 0x3b, 0x76, 0xf1, 0xea, 0x20, 0x7b, 0x9e, 0x3a, 0xaa, 0x4b, 0xf3, 0x71,
+	0x69, 0x7c, 0xcf, 0x2b, 0x0f, 0x82, 0x7b, 0x3e, 0x56, 0xbc, 0x74, 0x72, 0xc5, 0xdf, 0x10, 0x4c,
+	0xf7, 0x9c, 0x6a, 0xbc, 0x32, 0xec, 0x40, 0x2c, 0xad, 0x0e, 0x51, 0x29, 0x36, 0x61, 0x25, 0xb4,
+	0xa4, 0xe1, 0x1b, 0x59, 0x2d, 0xe1, 0x0f, 0x08, 0x8a, 0x5d, 0x07, 0x70, 0x90, 0x0e, 0x4a, 0x9b,
+	0x1a, 0x83, 0x74, 0x50, 0xea, 0x49, 0x97, 0xcf, 0x87, 0xe2, 0x25, 0x3c, 0x9f, 0x2e, 0xbe, 0xf2,
+	0x11, 0xc1, 0xa5, 0x16, 0xdd, 0xef, 0x4b, 0x5f, 0x29, 0xc6, 0xa7, 0x7c, 0x3b, 0xd8, 0xf0, 0x6d,
+	0xf4, 0xec, 0xa1, 0x28, 0x31, 0xa9, 0xad, 0x3b, 0xa6, 0x42, 0x3d, 0x53, 0x35, 0x89, 0x13, 0xb6,
+	0x83, 0xf8, 0x42, 0xd5, 0x5d, 0x8b, 0xfd, 0xfd, 0xa3, 0xf1, 0x6e, 0x17, 0xf0, 0x29, 0x27, 0x55,
+	0x23, 0xbe, 0xfb, 0x01, 0x1c, 0xcf, 0x1a, 0x4f, 0xd9, 0xd1, 0x9a, 0x63, 0x21, 0xe9, 0xf2, 0xef,
+	0x00, 0x00, 0x00, 0xff, 0xff, 0x66, 0xf8, 0x5d, 0x68, 0xf9, 0x0a, 0x00, 0x00,
 }
diff --git a/googleapis/devtools/cloudprofiler/v2/profiler.pb.go b/googleapis/devtools/cloudprofiler/v2/profiler.pb.go
index 313c884f..205d1a1d 100644
--- a/googleapis/devtools/cloudprofiler/v2/profiler.pb.go
+++ b/googleapis/devtools/cloudprofiler/v2/profiler.pb.go
@@ -20,6 +20,7 @@ import fmt "fmt"
 import math "math"
 import _ "google.golang.org/genproto/googleapis/api/annotations"
 import google_protobuf1 "github.com/golang/protobuf/ptypes/duration"
+import _ "github.com/golang/protobuf/ptypes/timestamp"
 
 import (
 	context "golang.org/x/net/context"
@@ -417,41 +418,47 @@ var _ProfilerService_serviceDesc = grpc.ServiceDesc{
 func init() { proto.RegisterFile("google/devtools/cloudprofiler/v2/profiler.proto", fileDescriptor0) }
 
 var fileDescriptor0 = []byte{
-	// 576 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x54, 0x51, 0x8f, 0xd2, 0x40,
-	0x10, 0xb6, 0x57, 0x0e, 0x8e, 0xe9, 0xdd, 0xd9, 0x6c, 0x88, 0xa9, 0xe4, 0x34, 0x04, 0x5f, 0xd0,
-	0x68, 0x9b, 0xd4, 0x9c, 0x39, 0xf5, 0x89, 0x83, 0x5e, 0x8e, 0x84, 0x83, 0x66, 0x81, 0x18, 0xf5,
-	0x81, 0x14, 0xba, 0xd7, 0x54, 0x7b, 0xdd, 0xba, 0x5d, 0x48, 0xfa, 0x7b, 0xfc, 0x43, 0xfe, 0x1d,
-	0xe3, 0x8b, 0xa1, 0xdd, 0x72, 0x10, 0x31, 0x70, 0x9e, 0x6f, 0x33, 0xb3, 0xf3, 0x7d, 0xb3, 0xf3,
-	0xed, 0xce, 0x80, 0xe1, 0x51, 0xea, 0x05, 0xc4, 0x70, 0xc9, 0x9c, 0x53, 0x1a, 0xc4, 0xc6, 0x34,
-	0xa0, 0x33, 0x37, 0x62, 0xf4, 0xda, 0x0f, 0x08, 0x33, 0xe6, 0xa6, 0x91, 0xdb, 0x7a, 0xc4, 0x28,
-	0xa7, 0xa8, 0x96, 0x01, 0xf4, 0x1c, 0xa0, 0xaf, 0x01, 0xf4, 0xb9, 0x59, 0x3d, 0x11, 0x94, 0x4e,
-	0xe4, 0x1b, 0x4e, 0x18, 0x52, 0xee, 0x70, 0x9f, 0x86, 0x71, 0x86, 0xaf, 0x3e, 0x15, 0xa7, 0xa9,
-	0x37, 0x99, 0x5d, 0x1b, 0xee, 0x8c, 0xa5, 0x09, 0xd9, 0x79, 0xfd, 0x97, 0x04, 0x95, 0x16, 0x23,
-	0x0e, 0x27, 0x76, 0xc6, 0x89, 0xc9, 0xb7, 0x19, 0x89, 0x39, 0xea, 0x02, 0xb8, 0x24, 0x0a, 0x68,
-	0x72, 0x43, 0x42, 0xae, 0x49, 0x35, 0xa9, 0xa1, 0x98, 0x2f, 0xf5, 0x6d, 0xb7, 0xd1, 0xdb, 0x4b,
-	0x0c, 0x5e, 0xc1, 0x23, 0x1b, 0x0e, 0x45, 0xd6, 0x98, 0x27, 0x11, 0xd1, 0xf6, 0x6a, 0x72, 0xe3,
-	0xd8, 0x7c, 0xb5, 0x9d, 0x4f, 0xdc, 0x6a, 0x98, 0x44, 0x04, 0x2b, 0xd1, 0xad, 0x83, 0x5a, 0x50,
-	0x12, 0xae, 0x26, 0xa7, 0x97, 0x7b, 0xbe, 0x33, 0x19, 0xce, 0x91, 0xf5, 0xcf, 0x50, 0x19, 0x45,
-	0xee, 0x9f, 0xcd, 0xaf, 0x90, 0x4b, 0xff, 0x4c, 0xfe, 0x5d, 0x86, 0x92, 0x08, 0x22, 0x04, 0x85,
-	0xd0, 0xb9, 0xc9, 0xd8, 0xca, 0x38, 0xb5, 0x37, 0x68, 0x22, 0xdd, 0x53, 0x93, 0xf5, 0x37, 0x93,
-	0xef, 0xf9, 0x66, 0xa7, 0x70, 0x90, 0x7f, 0x16, 0xad, 0x90, 0x72, 0x3d, 0xce, 0xb9, 0xf2, 0xdf,
-	0xa4, 0xb7, 0x45, 0x02, 0x5e, 0xa6, 0xa2, 0x67, 0x70, 0x94, 0xb7, 0x35, 0x49, 0x38, 0x89, 0xb5,
-	0xfd, 0x9a, 0xd4, 0x38, 0xc4, 0x79, 0xaf, 0xe7, 0x8b, 0x18, 0xba, 0x82, 0x62, 0xe0, 0x4c, 0x48,
-	0x10, 0x6b, 0xc5, 0x9a, 0xdc, 0x50, 0xcc, 0xd3, 0x9d, 0xbb, 0xd6, 0xbb, 0x29, 0xce, 0x0a, 0x39,
-	0x4b, 0xb0, 0x20, 0xa9, 0xbe, 0x05, 0x65, 0x25, 0x8c, 0x54, 0x90, 0xbf, 0x92, 0x44, 0x88, 0xbd,
-	0x30, 0x51, 0x05, 0xf6, 0xe7, 0x4e, 0x30, 0xcb, 0x44, 0x2e, 0xe3, 0xcc, 0x79, 0xb7, 0x77, 0x26,
-	0xd5, 0x7f, 0x48, 0x00, 0xb7, 0x02, 0xa0, 0x27, 0x00, 0x11, 0xa3, 0x5f, 0xc8, 0x94, 0x8f, 0x7d,
-	0x57, 0x30, 0x94, 0x45, 0xa4, 0xe3, 0xa2, 0x47, 0x50, 0xe4, 0x0e, 0xf3, 0x08, 0x17, 0x44, 0xc2,
-	0x43, 0xf6, 0xb2, 0x1f, 0x39, 0xed, 0xe7, 0xec, 0x2e, 0xaa, 0xff, 0xe7, 0x96, 0x5e, 0x10, 0x50,
-	0x56, 0xbe, 0x08, 0x3a, 0x01, 0xcd, 0xc6, 0xfd, 0x8b, 0x4e, 0xd7, 0x1a, 0x0f, 0x3f, 0xda, 0xd6,
-	0x78, 0xd4, 0x1b, 0xd8, 0x56, 0xab, 0x73, 0xd1, 0xb1, 0xda, 0xea, 0x03, 0x54, 0x02, 0xb9, 0x65,
-	0x8f, 0x54, 0x09, 0x1d, 0x40, 0xe1, 0x43, 0xb3, 0xdb, 0x55, 0xf7, 0x16, 0xd6, 0xa5, 0xd5, 0xb4,
-	0x55, 0x19, 0x29, 0x50, 0x1a, 0x5e, 0x62, 0xab, 0xd9, 0x1e, 0xa8, 0x05, 0x74, 0x0c, 0xd0, 0xea,
-	0xf7, 0x86, 0x56, 0x6f, 0xd8, 0xe9, 0xf7, 0xd4, 0x7d, 0xf3, 0xa7, 0x04, 0x0f, 0x45, 0x1d, 0x36,
-	0x20, 0x6c, 0xee, 0x4f, 0x09, 0x62, 0x70, 0xb4, 0xb6, 0x4d, 0xd0, 0x9b, 0xed, 0x42, 0x6c, 0x5a,
-	0x3f, 0xd5, 0xdd, 0x07, 0x6e, 0x51, 0x73, 0x6d, 0x88, 0x77, 0xa9, 0xb9, 0x69, 0xea, 0xef, 0x50,
-	0xf3, 0xbc, 0xff, 0xe9, 0x4a, 0xe4, 0x7a, 0x34, 0x70, 0x42, 0x4f, 0xa7, 0xcc, 0x33, 0x3c, 0x12,
-	0xa6, 0x83, 0x21, 0x96, 0xbc, 0x13, 0xf9, 0xf1, 0xdf, 0x17, 0xfd, 0xfb, 0xb5, 0xc0, 0xa4, 0x98,
-	0x22, 0x5f, 0xff, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x6c, 0x53, 0xd3, 0x90, 0x21, 0x06, 0x00, 0x00,
+	// 661 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0xcd, 0x6e, 0xd3, 0x40,
+	0x10, 0x66, 0xe3, 0x34, 0x69, 0x27, 0x6d, 0xb1, 0x56, 0x15, 0x32, 0x51, 0x81, 0x28, 0x5c, 0x42,
+	0x44, 0x6d, 0xc9, 0x55, 0x51, 0x5b, 0xc4, 0xa1, 0x4d, 0x5c, 0x35, 0x52, 0x9a, 0x58, 0x6e, 0x2a,
+	0x04, 0x1c, 0x22, 0xa7, 0xde, 0x5a, 0x06, 0xc7, 0x6b, 0xec, 0x4d, 0xa4, 0xa8, 0xea, 0x85, 0x57,
+	0xe0, 0x11, 0xb8, 0xc2, 0xbb, 0x20, 0xf1, 0x0a, 0x3c, 0x00, 0x77, 0x2e, 0xc8, 0xf6, 0x3a, 0x3f,
+	0x50, 0x94, 0x94, 0x72, 0xdb, 0x99, 0x9d, 0xef, 0xdb, 0x6f, 0x66, 0xd7, 0x9f, 0x41, 0xb1, 0x29,
+	0xb5, 0x5d, 0xa2, 0x58, 0x64, 0xc8, 0x28, 0x75, 0x43, 0xe5, 0xdc, 0xa5, 0x03, 0xcb, 0x0f, 0xe8,
+	0x85, 0xe3, 0x92, 0x40, 0x19, 0xaa, 0x4a, 0xba, 0x96, 0xfd, 0x80, 0x32, 0x8a, 0x4b, 0x09, 0x40,
+	0x4e, 0x01, 0xf2, 0x0c, 0x40, 0x1e, 0xaa, 0xc5, 0x4d, 0x4e, 0x69, 0xfa, 0x8e, 0x62, 0x7a, 0x1e,
+	0x65, 0x26, 0x73, 0xa8, 0x17, 0x26, 0xf8, 0xe2, 0x43, 0xbe, 0x1b, 0x47, 0xbd, 0xc1, 0x85, 0x62,
+	0x0d, 0x82, 0xb8, 0x80, 0xef, 0x3f, 0xfa, 0x7d, 0x9f, 0x39, 0x7d, 0x12, 0x32, 0xb3, 0xef, 0x27,
+	0x05, 0xe5, 0x9f, 0x08, 0x36, 0x6a, 0x01, 0x31, 0x19, 0xd1, 0x93, 0x43, 0x0d, 0xf2, 0x7e, 0x40,
+	0x42, 0x86, 0x9b, 0x00, 0x16, 0xf1, 0x5d, 0x3a, 0xea, 0x13, 0x8f, 0x49, 0xa8, 0x84, 0x2a, 0x05,
+	0xf5, 0xa9, 0x3c, 0x4f, 0xae, 0x5c, 0x1f, 0x63, 0x8c, 0x29, 0x3c, 0xd6, 0x61, 0x95, 0x57, 0x75,
+	0xd9, 0xc8, 0x27, 0x52, 0xa6, 0x24, 0x54, 0xd6, 0xd5, 0xad, 0xf9, 0x7c, 0x5c, 0x55, 0x67, 0xe4,
+	0x13, 0xa3, 0xe0, 0x4f, 0x02, 0x5c, 0x83, 0x3c, 0x0f, 0x25, 0x21, 0x16, 0xf7, 0x64, 0x61, 0x32,
+	0x23, 0x45, 0x96, 0xdf, 0xc0, 0xc6, 0x99, 0x6f, 0xfd, 0xd9, 0xfc, 0x14, 0x39, 0xfa, 0x67, 0xf2,
+	0x4f, 0x02, 0xe4, 0x79, 0x12, 0x63, 0xc8, 0x7a, 0x66, 0x3f, 0x61, 0x5b, 0x31, 0xe2, 0xf5, 0x35,
+	0x33, 0x41, 0xb7, 0x9c, 0xc9, 0xec, 0x9d, 0x09, 0xb7, 0xbc, 0xb3, 0x1d, 0x58, 0x4e, 0x5f, 0x93,
+	0x94, 0x8d, 0xb9, 0xee, 0xa7, 0x5c, 0xe9, 0x73, 0x92, 0xeb, 0xbc, 0xc0, 0x18, 0x97, 0xe2, 0xc7,
+	0xb0, 0x96, 0xb6, 0xd5, 0x1b, 0x31, 0x12, 0x4a, 0x4b, 0x25, 0x54, 0x59, 0x35, 0xd2, 0x5e, 0x0f,
+	0xa3, 0x1c, 0x3e, 0x81, 0x9c, 0x6b, 0xf6, 0x88, 0x1b, 0x4a, 0xb9, 0x92, 0x50, 0x29, 0xa8, 0x3b,
+	0x0b, 0x77, 0x2d, 0x37, 0x63, 0x9c, 0xe6, 0xb1, 0x60, 0x64, 0x70, 0x92, 0xe2, 0x1e, 0x14, 0xa6,
+	0xd2, 0x58, 0x04, 0xe1, 0x1d, 0x19, 0xf1, 0x61, 0x47, 0x4b, 0xbc, 0x01, 0x4b, 0x43, 0xd3, 0x1d,
+	0x24, 0x43, 0x5e, 0x31, 0x92, 0x60, 0x3f, 0xb3, 0x8b, 0xca, 0x5f, 0x11, 0xc0, 0x64, 0x00, 0xf8,
+	0x01, 0x80, 0x1f, 0xd0, 0xb7, 0xe4, 0x9c, 0x75, 0x1d, 0x8b, 0x33, 0xac, 0xf0, 0x4c, 0xc3, 0xc2,
+	0xf7, 0x20, 0xc7, 0xcc, 0xc0, 0x26, 0x8c, 0x13, 0xf1, 0x08, 0xeb, 0xe3, 0x7e, 0x84, 0xb8, 0x9f,
+	0xdd, 0x9b, 0x4c, 0xfd, 0x3f, 0xb7, 0x54, 0x25, 0x50, 0x98, 0x7a, 0x22, 0x78, 0x13, 0x24, 0xdd,
+	0x68, 0x1f, 0x35, 0x9a, 0x5a, 0xb7, 0xf3, 0x4a, 0xd7, 0xba, 0x67, 0xad, 0x53, 0x5d, 0xab, 0x35,
+	0x8e, 0x1a, 0x5a, 0x5d, 0xbc, 0x83, 0xf3, 0x20, 0xd4, 0xf4, 0x33, 0x11, 0xe1, 0x65, 0xc8, 0xbe,
+	0x3c, 0x68, 0x36, 0xc5, 0x4c, 0xb4, 0x3a, 0xd6, 0x0e, 0x74, 0x51, 0xc0, 0x05, 0xc8, 0x77, 0x8e,
+	0x0d, 0xed, 0xa0, 0x7e, 0x2a, 0x66, 0xf1, 0x3a, 0x40, 0xad, 0xdd, 0xea, 0x68, 0xad, 0x4e, 0xa3,
+	0xdd, 0x12, 0x97, 0xd4, 0x1f, 0x19, 0xb8, 0xcb, 0xcf, 0x09, 0x4e, 0x49, 0x30, 0x74, 0xce, 0x09,
+	0xfe, 0x8c, 0x60, 0x6d, 0xc6, 0x4e, 0xf0, 0xb3, 0xf9, 0x93, 0xb8, 0xce, 0x7f, 0x8a, 0x8b, 0x7f,
+	0x71, 0xe5, 0xdd, 0x0f, 0xdf, 0xbe, 0x7f, 0xcc, 0xa8, 0xe5, 0x2d, 0x6e, 0xb0, 0xd1, 0x5d, 0x85,
+	0xca, 0xe5, 0xe4, 0x29, 0xcb, 0x93, 0x2b, 0xbd, 0x4a, 0x1d, 0x38, 0xdc, 0x47, 0x55, 0xfc, 0x05,
+	0xc1, 0xda, 0x8c, 0x01, 0x2c, 0x22, 0xf7, 0x3a, 0xc7, 0xb8, 0x89, 0xdc, 0xbd, 0x58, 0xee, 0xb6,
+	0x5a, 0x89, 0xe4, 0x5e, 0xf2, 0x0a, 0x39, 0xb2, 0x84, 0x17, 0x63, 0xf1, 0xd5, 0xb1, 0x4c, 0xa5,
+	0x7a, 0xb5, 0x9f, 0x5a, 0xca, 0x61, 0xfb, 0xf5, 0x09, 0x3f, 0xc6, 0xa6, 0xae, 0xe9, 0xd9, 0x32,
+	0x0d, 0x6c, 0xc5, 0x26, 0x5e, 0xfc, 0x3d, 0xf2, 0x9f, 0x8f, 0xe9, 0x3b, 0xe1, 0xdf, 0x7f, 0x40,
+	0xcf, 0x67, 0x12, 0xbd, 0x5c, 0x8c, 0xdc, 0xfe, 0x15, 0x00, 0x00, 0xff, 0xff, 0x83, 0x3f, 0xa6,
+	0xd9, 0xb9, 0x06, 0x00, 0x00,
 }
diff --git a/googleapis/privacy/dlp/v2beta1/dlp.pb.go b/googleapis/privacy/dlp/v2beta1/dlp.pb.go
index 9cd8673b..a1f4dcdb 100644
--- a/googleapis/privacy/dlp/v2beta1/dlp.pb.go
+++ b/googleapis/privacy/dlp/v2beta1/dlp.pb.go
@@ -11,9 +11,11 @@ It is generated from these files:
 It has these top-level messages:
 	InspectConfig
 	ContentItem
+	Table
 	InspectResult
 	Finding
 	Location
+	TableLocation
 	Range
 	ImageLocation
 	RedactContentRequest
@@ -34,6 +36,7 @@ It has these top-level messages:
 	CategoryDescription
 	ListRootCategoriesRequest
 	ListRootCategoriesResponse
+	Value
 	InfoType
 	FieldId
 	PartitionId
@@ -43,11 +46,13 @@ It has these top-level messages:
 	DatastoreOptions
 	CloudStorageOptions
 	CloudStoragePath
+	BigQueryOptions
 	StorageConfig
 	CloudStorageKey
 	DatastoreKey
 	Key
 	RecordKey
+	BigQueryTable
 */
 package dlp
 
@@ -58,8 +63,8 @@ import _ "google.golang.org/genproto/googleapis/api/annotations"
 import google_longrunning "google.golang.org/genproto/googleapis/longrunning"
 import _ "github.com/golang/protobuf/ptypes/empty"
 import google_protobuf3 "github.com/golang/protobuf/ptypes/timestamp"
-import _ "google.golang.org/genproto/googleapis/type/date"
-import _ "google.golang.org/genproto/googleapis/type/timeofday"
+import google_type "google.golang.org/genproto/googleapis/type/date"
+import google_type1 "google.golang.org/genproto/googleapis/type/timeofday"
 
 import (
 	context "golang.org/x/net/context"
@@ -126,7 +131,7 @@ type InspectConfig struct {
 	InfoTypes []*InfoType `protobuf:"bytes,1,rep,name=info_types,json=infoTypes" json:"info_types,omitempty"`
 	// Only returns findings equal or above this threshold.
 	MinLikelihood Likelihood `protobuf:"varint,2,opt,name=min_likelihood,json=minLikelihood,enum=google.privacy.dlp.v2beta1.Likelihood" json:"min_likelihood,omitempty"`
-	// Limits the number of findings per content item.
+	// Limits the number of findings per content item or long running operation.
 	MaxFindings int32 `protobuf:"varint,3,opt,name=max_findings,json=maxFindings" json:"max_findings,omitempty"`
 	// When true, a contextual quote from the data that triggered a finding is
 	// included in the response; see Finding.quote.
@@ -186,6 +191,7 @@ type ContentItem struct {
 	// Types that are valid to be assigned to DataItem:
 	//	*ContentItem_Data
 	//	*ContentItem_Value
+	//	*ContentItem_Table
 	DataItem isContentItem_DataItem `protobuf_oneof:"data_item"`
 }
 
@@ -204,9 +210,13 @@ type ContentItem_Data struct {
 type ContentItem_Value struct {
 	Value string `protobuf:"bytes,3,opt,name=value,oneof"`
 }
+type ContentItem_Table struct {
+	Table *Table `protobuf:"bytes,4,opt,name=table,oneof"`
+}
 
 func (*ContentItem_Data) isContentItem_DataItem()  {}
 func (*ContentItem_Value) isContentItem_DataItem() {}
+func (*ContentItem_Table) isContentItem_DataItem() {}
 
 func (m *ContentItem) GetDataItem() isContentItem_DataItem {
 	if m != nil {
@@ -236,11 +246,19 @@ func (m *ContentItem) GetValue() string {
 	return ""
 }
 
+func (m *ContentItem) GetTable() *Table {
+	if x, ok := m.GetDataItem().(*ContentItem_Table); ok {
+		return x.Table
+	}
+	return nil
+}
+
 // XXX_OneofFuncs is for the internal use of the proto package.
 func (*ContentItem) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
 	return _ContentItem_OneofMarshaler, _ContentItem_OneofUnmarshaler, _ContentItem_OneofSizer, []interface{}{
 		(*ContentItem_Data)(nil),
 		(*ContentItem_Value)(nil),
+		(*ContentItem_Table)(nil),
 	}
 }
 
@@ -254,6 +272,11 @@ func _ContentItem_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
 	case *ContentItem_Value:
 		b.EncodeVarint(3<<3 | proto.WireBytes)
 		b.EncodeStringBytes(x.Value)
+	case *ContentItem_Table:
+		b.EncodeVarint(4<<3 | proto.WireBytes)
+		if err := b.EncodeMessage(x.Table); err != nil {
+			return err
+		}
 	case nil:
 	default:
 		return fmt.Errorf("ContentItem.DataItem has unexpected type %T", x)
@@ -278,6 +301,14 @@ func _ContentItem_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Bu
 		x, err := b.DecodeStringBytes()
 		m.DataItem = &ContentItem_Value{x}
 		return true, err
+	case 4: // data_item.table
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		msg := new(Table)
+		err := b.DecodeMessage(msg)
+		m.DataItem = &ContentItem_Table{msg}
+		return true, err
 	default:
 		return false, nil
 	}
@@ -295,6 +326,11 @@ func _ContentItem_OneofSizer(msg proto.Message) (n int) {
 		n += proto.SizeVarint(3<<3 | proto.WireBytes)
 		n += proto.SizeVarint(uint64(len(x.Value)))
 		n += len(x.Value)
+	case *ContentItem_Table:
+		s := proto.Size(x.Table)
+		n += proto.SizeVarint(4<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(s))
+		n += s
 	case nil:
 	default:
 		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
@@ -302,6 +338,47 @@ func _ContentItem_OneofSizer(msg proto.Message) (n int) {
 	return n
 }
 
+// Structured content to inspect. Up to 50,000 `Value`s per request allowed.
+type Table struct {
+	Headers []*FieldId   `protobuf:"bytes,1,rep,name=headers" json:"headers,omitempty"`
+	Rows    []*Table_Row `protobuf:"bytes,2,rep,name=rows" json:"rows,omitempty"`
+}
+
+func (m *Table) Reset()                    { *m = Table{} }
+func (m *Table) String() string            { return proto.CompactTextString(m) }
+func (*Table) ProtoMessage()               {}
+func (*Table) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
+
+func (m *Table) GetHeaders() []*FieldId {
+	if m != nil {
+		return m.Headers
+	}
+	return nil
+}
+
+func (m *Table) GetRows() []*Table_Row {
+	if m != nil {
+		return m.Rows
+	}
+	return nil
+}
+
+type Table_Row struct {
+	Values []*Value `protobuf:"bytes,1,rep,name=values" json:"values,omitempty"`
+}
+
+func (m *Table_Row) Reset()                    { *m = Table_Row{} }
+func (m *Table_Row) String() string            { return proto.CompactTextString(m) }
+func (*Table_Row) ProtoMessage()               {}
+func (*Table_Row) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2, 0} }
+
+func (m *Table_Row) GetValues() []*Value {
+	if m != nil {
+		return m.Values
+	}
+	return nil
+}
+
 // All the findings for a single scanned item.
 type InspectResult struct {
 	// List of findings for an item.
@@ -318,7 +395,7 @@ type InspectResult struct {
 func (m *InspectResult) Reset()                    { *m = InspectResult{} }
 func (m *InspectResult) String() string            { return proto.CompactTextString(m) }
 func (*InspectResult) ProtoMessage()               {}
-func (*InspectResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
+func (*InspectResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
 
 func (m *InspectResult) GetFindings() []*Finding {
 	if m != nil {
@@ -351,7 +428,7 @@ type Finding struct {
 func (m *Finding) Reset()                    { *m = Finding{} }
 func (m *Finding) String() string            { return proto.CompactTextString(m) }
 func (*Finding) ProtoMessage()               {}
-func (*Finding) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
+func (*Finding) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
 
 func (m *Finding) GetQuote() string {
 	if m != nil {
@@ -401,12 +478,14 @@ type Location struct {
 	RecordKey *RecordKey `protobuf:"bytes,4,opt,name=record_key,json=recordKey" json:"record_key,omitempty"`
 	// Field id of the field containing the finding.
 	FieldId *FieldId `protobuf:"bytes,5,opt,name=field_id,json=fieldId" json:"field_id,omitempty"`
+	// Location within a `ContentItem.Table`.
+	TableLocation *TableLocation `protobuf:"bytes,6,opt,name=table_location,json=tableLocation" json:"table_location,omitempty"`
 }
 
 func (m *Location) Reset()                    { *m = Location{} }
 func (m *Location) String() string            { return proto.CompactTextString(m) }
 func (*Location) ProtoMessage()               {}
-func (*Location) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
+func (*Location) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
 
 func (m *Location) GetByteRange() *Range {
 	if m != nil {
@@ -443,6 +522,31 @@ func (m *Location) GetFieldId() *FieldId {
 	return nil
 }
 
+func (m *Location) GetTableLocation() *TableLocation {
+	if m != nil {
+		return m.TableLocation
+	}
+	return nil
+}
+
+// Location of a finding within a `ContentItem.Table`.
+type TableLocation struct {
+	// The zero-based index of the row where the finding is located.
+	RowIndex int64 `protobuf:"varint,1,opt,name=row_index,json=rowIndex" json:"row_index,omitempty"`
+}
+
+func (m *TableLocation) Reset()                    { *m = TableLocation{} }
+func (m *TableLocation) String() string            { return proto.CompactTextString(m) }
+func (*TableLocation) ProtoMessage()               {}
+func (*TableLocation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
+
+func (m *TableLocation) GetRowIndex() int64 {
+	if m != nil {
+		return m.RowIndex
+	}
+	return 0
+}
+
 // Generic half-open interval [start, end)
 type Range struct {
 	// Index of the first character of the range (inclusive).
@@ -454,7 +558,7 @@ type Range struct {
 func (m *Range) Reset()                    { *m = Range{} }
 func (m *Range) String() string            { return proto.CompactTextString(m) }
 func (*Range) ProtoMessage()               {}
-func (*Range) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
+func (*Range) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
 
 func (m *Range) GetStart() int64 {
 	if m != nil {
@@ -485,7 +589,7 @@ type ImageLocation struct {
 func (m *ImageLocation) Reset()                    { *m = ImageLocation{} }
 func (m *ImageLocation) String() string            { return proto.CompactTextString(m) }
 func (*ImageLocation) ProtoMessage()               {}
-func (*ImageLocation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
+func (*ImageLocation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
 
 func (m *ImageLocation) GetTop() int32 {
 	if m != nil {
@@ -532,7 +636,7 @@ type RedactContentRequest struct {
 func (m *RedactContentRequest) Reset()                    { *m = RedactContentRequest{} }
 func (m *RedactContentRequest) String() string            { return proto.CompactTextString(m) }
 func (*RedactContentRequest) ProtoMessage()               {}
-func (*RedactContentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
+func (*RedactContentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
 
 func (m *RedactContentRequest) GetInspectConfig() *InspectConfig {
 	if m != nil {
@@ -576,7 +680,7 @@ func (m *RedactContentRequest_ReplaceConfig) Reset()         { *m = RedactConten
 func (m *RedactContentRequest_ReplaceConfig) String() string { return proto.CompactTextString(m) }
 func (*RedactContentRequest_ReplaceConfig) ProtoMessage()    {}
 func (*RedactContentRequest_ReplaceConfig) Descriptor() ([]byte, []int) {
-	return fileDescriptor0, []int{7, 0}
+	return fileDescriptor0, []int{9, 0}
 }
 
 func (m *RedactContentRequest_ReplaceConfig) GetInfoType() *InfoType {
@@ -612,7 +716,7 @@ func (m *RedactContentRequest_ImageRedactionConfig) Reset() {
 func (m *RedactContentRequest_ImageRedactionConfig) String() string { return proto.CompactTextString(m) }
 func (*RedactContentRequest_ImageRedactionConfig) ProtoMessage()    {}
 func (*RedactContentRequest_ImageRedactionConfig) Descriptor() ([]byte, []int) {
-	return fileDescriptor0, []int{7, 1}
+	return fileDescriptor0, []int{9, 1}
 }
 
 type isRedactContentRequest_ImageRedactionConfig_Target interface {
@@ -745,7 +849,7 @@ type Color struct {
 func (m *Color) Reset()                    { *m = Color{} }
 func (m *Color) String() string            { return proto.CompactTextString(m) }
 func (*Color) ProtoMessage()               {}
-func (*Color) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
+func (*Color) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
 
 func (m *Color) GetRed() float32 {
 	if m != nil {
@@ -777,7 +881,7 @@ type RedactContentResponse struct {
 func (m *RedactContentResponse) Reset()                    { *m = RedactContentResponse{} }
 func (m *RedactContentResponse) String() string            { return proto.CompactTextString(m) }
 func (*RedactContentResponse) ProtoMessage()               {}
-func (*RedactContentResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
+func (*RedactContentResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
 
 func (m *RedactContentResponse) GetItems() []*ContentItem {
 	if m != nil {
@@ -799,7 +903,7 @@ type InspectContentRequest struct {
 func (m *InspectContentRequest) Reset()                    { *m = InspectContentRequest{} }
 func (m *InspectContentRequest) String() string            { return proto.CompactTextString(m) }
 func (*InspectContentRequest) ProtoMessage()               {}
-func (*InspectContentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
+func (*InspectContentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
 
 func (m *InspectContentRequest) GetInspectConfig() *InspectConfig {
 	if m != nil {
@@ -825,7 +929,7 @@ type InspectContentResponse struct {
 func (m *InspectContentResponse) Reset()                    { *m = InspectContentResponse{} }
 func (m *InspectContentResponse) String() string            { return proto.CompactTextString(m) }
 func (*InspectContentResponse) ProtoMessage()               {}
-func (*InspectContentResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
+func (*InspectContentResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
 
 func (m *InspectContentResponse) GetResults() []*InspectResult {
 	if m != nil {
@@ -850,18 +954,20 @@ type CreateInspectOperationRequest struct {
 	// identifier for the Operation, and the `count` is a counter used for
 	// tracking the number of files written. <p>The CSV file(s) contain the
 	// following columns regardless of storage type scanned: <li>id <li>info_type
-	// <li>likelihood <li>byte size of finding <li>quote <li>time_stamp<br/>
+	// <li>likelihood <li>byte size of finding <li>quote <li>timestamp<br/>
 	// <p>For Cloud Storage the next columns are: <li>file_path
 	// <li>start_offset<br/>
 	// <p>For Cloud Datastore the next columns are: <li>project_id
-	// <li>namespace_id <li>path <li>column_name <li>offset
+	// <li>namespace_id <li>path <li>column_name <li>offset<br/>
+	// <p>For BigQuery the next columns are: <li>row_number <li>project_id
+	// <li>dataset_id <li>table_id
 	OutputConfig *OutputStorageConfig `protobuf:"bytes,3,opt,name=output_config,json=outputConfig" json:"output_config,omitempty"`
 }
 
 func (m *CreateInspectOperationRequest) Reset()                    { *m = CreateInspectOperationRequest{} }
 func (m *CreateInspectOperationRequest) String() string            { return proto.CompactTextString(m) }
 func (*CreateInspectOperationRequest) ProtoMessage()               {}
-func (*CreateInspectOperationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
+func (*CreateInspectOperationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
 
 func (m *CreateInspectOperationRequest) GetInspectConfig() *InspectConfig {
 	if m != nil {
@@ -887,6 +993,7 @@ func (m *CreateInspectOperationRequest) GetOutputConfig() *OutputStorageConfig {
 // Cloud repository for storing output.
 type OutputStorageConfig struct {
 	// Types that are valid to be assigned to Type:
+	//	*OutputStorageConfig_Table
 	//	*OutputStorageConfig_StoragePath
 	Type isOutputStorageConfig_Type `protobuf_oneof:"type"`
 }
@@ -894,16 +1001,20 @@ type OutputStorageConfig struct {
 func (m *OutputStorageConfig) Reset()                    { *m = OutputStorageConfig{} }
 func (m *OutputStorageConfig) String() string            { return proto.CompactTextString(m) }
 func (*OutputStorageConfig) ProtoMessage()               {}
-func (*OutputStorageConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
+func (*OutputStorageConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
 
 type isOutputStorageConfig_Type interface {
 	isOutputStorageConfig_Type()
 }
 
+type OutputStorageConfig_Table struct {
+	Table *BigQueryTable `protobuf:"bytes,1,opt,name=table,oneof"`
+}
 type OutputStorageConfig_StoragePath struct {
 	StoragePath *CloudStoragePath `protobuf:"bytes,2,opt,name=storage_path,json=storagePath,oneof"`
 }
 
+func (*OutputStorageConfig_Table) isOutputStorageConfig_Type()       {}
 func (*OutputStorageConfig_StoragePath) isOutputStorageConfig_Type() {}
 
 func (m *OutputStorageConfig) GetType() isOutputStorageConfig_Type {
@@ -913,6 +1024,13 @@ func (m *OutputStorageConfig) GetType() isOutputStorageConfig_Type {
 	return nil
 }
 
+func (m *OutputStorageConfig) GetTable() *BigQueryTable {
+	if x, ok := m.GetType().(*OutputStorageConfig_Table); ok {
+		return x.Table
+	}
+	return nil
+}
+
 func (m *OutputStorageConfig) GetStoragePath() *CloudStoragePath {
 	if x, ok := m.GetType().(*OutputStorageConfig_StoragePath); ok {
 		return x.StoragePath
@@ -923,6 +1041,7 @@ func (m *OutputStorageConfig) GetStoragePath() *CloudStoragePath {
 // XXX_OneofFuncs is for the internal use of the proto package.
 func (*OutputStorageConfig) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
 	return _OutputStorageConfig_OneofMarshaler, _OutputStorageConfig_OneofUnmarshaler, _OutputStorageConfig_OneofSizer, []interface{}{
+		(*OutputStorageConfig_Table)(nil),
 		(*OutputStorageConfig_StoragePath)(nil),
 	}
 }
@@ -931,6 +1050,11 @@ func _OutputStorageConfig_OneofMarshaler(msg proto.Message, b *proto.Buffer) err
 	m := msg.(*OutputStorageConfig)
 	// type
 	switch x := m.Type.(type) {
+	case *OutputStorageConfig_Table:
+		b.EncodeVarint(1<<3 | proto.WireBytes)
+		if err := b.EncodeMessage(x.Table); err != nil {
+			return err
+		}
 	case *OutputStorageConfig_StoragePath:
 		b.EncodeVarint(2<<3 | proto.WireBytes)
 		if err := b.EncodeMessage(x.StoragePath); err != nil {
@@ -946,6 +1070,14 @@ func _OutputStorageConfig_OneofMarshaler(msg proto.Message, b *proto.Buffer) err
 func _OutputStorageConfig_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
 	m := msg.(*OutputStorageConfig)
 	switch tag {
+	case 1: // type.table
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		msg := new(BigQueryTable)
+		err := b.DecodeMessage(msg)
+		m.Type = &OutputStorageConfig_Table{msg}
+		return true, err
 	case 2: // type.storage_path
 		if wire != proto.WireBytes {
 			return true, proto.ErrInternalBadWireType
@@ -963,6 +1095,11 @@ func _OutputStorageConfig_OneofSizer(msg proto.Message) (n int) {
 	m := msg.(*OutputStorageConfig)
 	// type
 	switch x := m.Type.(type) {
+	case *OutputStorageConfig_Table:
+		s := proto.Size(x.Table)
+		n += proto.SizeVarint(1<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(s))
+		n += s
 	case *OutputStorageConfig_StoragePath:
 		s := proto.Size(x.StoragePath)
 		n += proto.SizeVarint(2<<3 | proto.WireBytes)
@@ -986,7 +1123,7 @@ type InfoTypeStatistics struct {
 func (m *InfoTypeStatistics) Reset()                    { *m = InfoTypeStatistics{} }
 func (m *InfoTypeStatistics) String() string            { return proto.CompactTextString(m) }
 func (*InfoTypeStatistics) ProtoMessage()               {}
-func (*InfoTypeStatistics) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
+func (*InfoTypeStatistics) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
 
 func (m *InfoTypeStatistics) GetInfoType() *InfoType {
 	if m != nil {
@@ -1022,7 +1159,7 @@ type InspectOperationMetadata struct {
 func (m *InspectOperationMetadata) Reset()                    { *m = InspectOperationMetadata{} }
 func (m *InspectOperationMetadata) String() string            { return proto.CompactTextString(m) }
 func (*InspectOperationMetadata) ProtoMessage()               {}
-func (*InspectOperationMetadata) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
+func (*InspectOperationMetadata) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
 
 func (m *InspectOperationMetadata) GetProcessedBytes() int64 {
 	if m != nil {
@@ -1084,7 +1221,7 @@ type InspectOperationResult struct {
 func (m *InspectOperationResult) Reset()                    { *m = InspectOperationResult{} }
 func (m *InspectOperationResult) String() string            { return proto.CompactTextString(m) }
 func (*InspectOperationResult) ProtoMessage()               {}
-func (*InspectOperationResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
+func (*InspectOperationResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
 
 func (m *InspectOperationResult) GetName() string {
 	if m != nil {
@@ -1097,7 +1234,7 @@ func (m *InspectOperationResult) GetName() string {
 type ListInspectFindingsRequest struct {
 	// Identifier of the results set returned as metadata of
 	// the longrunning operation created by a call to CreateInspectOperation.
-	// Should be in the format of `inspect/results/{id}.
+	// Should be in the format of `inspect/results/{id}`.
 	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
 	// Maximum number of results to return.
 	// If 0, the implementation selects a reasonable value.
@@ -1119,7 +1256,7 @@ type ListInspectFindingsRequest struct {
 func (m *ListInspectFindingsRequest) Reset()                    { *m = ListInspectFindingsRequest{} }
 func (m *ListInspectFindingsRequest) String() string            { return proto.CompactTextString(m) }
 func (*ListInspectFindingsRequest) ProtoMessage()               {}
-func (*ListInspectFindingsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
+func (*ListInspectFindingsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
 
 func (m *ListInspectFindingsRequest) GetName() string {
 	if m != nil {
@@ -1161,7 +1298,7 @@ type ListInspectFindingsResponse struct {
 func (m *ListInspectFindingsResponse) Reset()                    { *m = ListInspectFindingsResponse{} }
 func (m *ListInspectFindingsResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListInspectFindingsResponse) ProtoMessage()               {}
-func (*ListInspectFindingsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
+func (*ListInspectFindingsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
 
 func (m *ListInspectFindingsResponse) GetResult() *InspectResult {
 	if m != nil {
@@ -1190,7 +1327,7 @@ type InfoTypeDescription struct {
 func (m *InfoTypeDescription) Reset()                    { *m = InfoTypeDescription{} }
 func (m *InfoTypeDescription) String() string            { return proto.CompactTextString(m) }
 func (*InfoTypeDescription) ProtoMessage()               {}
-func (*InfoTypeDescription) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
+func (*InfoTypeDescription) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
 
 func (m *InfoTypeDescription) GetName() string {
 	if m != nil {
@@ -1227,7 +1364,7 @@ type ListInfoTypesRequest struct {
 func (m *ListInfoTypesRequest) Reset()                    { *m = ListInfoTypesRequest{} }
 func (m *ListInfoTypesRequest) String() string            { return proto.CompactTextString(m) }
 func (*ListInfoTypesRequest) ProtoMessage()               {}
-func (*ListInfoTypesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
+func (*ListInfoTypesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
 
 func (m *ListInfoTypesRequest) GetCategory() string {
 	if m != nil {
@@ -1252,7 +1389,7 @@ type ListInfoTypesResponse struct {
 func (m *ListInfoTypesResponse) Reset()                    { *m = ListInfoTypesResponse{} }
 func (m *ListInfoTypesResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListInfoTypesResponse) ProtoMessage()               {}
-func (*ListInfoTypesResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
+func (*ListInfoTypesResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
 
 func (m *ListInfoTypesResponse) GetInfoTypes() []*InfoTypeDescription {
 	if m != nil {
@@ -1272,7 +1409,7 @@ type CategoryDescription struct {
 func (m *CategoryDescription) Reset()                    { *m = CategoryDescription{} }
 func (m *CategoryDescription) String() string            { return proto.CompactTextString(m) }
 func (*CategoryDescription) ProtoMessage()               {}
-func (*CategoryDescription) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
+func (*CategoryDescription) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} }
 
 func (m *CategoryDescription) GetName() string {
 	if m != nil {
@@ -1300,7 +1437,7 @@ type ListRootCategoriesRequest struct {
 func (m *ListRootCategoriesRequest) Reset()                    { *m = ListRootCategoriesRequest{} }
 func (m *ListRootCategoriesRequest) String() string            { return proto.CompactTextString(m) }
 func (*ListRootCategoriesRequest) ProtoMessage()               {}
-func (*ListRootCategoriesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
+func (*ListRootCategoriesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} }
 
 func (m *ListRootCategoriesRequest) GetLanguageCode() string {
 	if m != nil {
@@ -1318,7 +1455,7 @@ type ListRootCategoriesResponse struct {
 func (m *ListRootCategoriesResponse) Reset()                    { *m = ListRootCategoriesResponse{} }
 func (m *ListRootCategoriesResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListRootCategoriesResponse) ProtoMessage()               {}
-func (*ListRootCategoriesResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} }
+func (*ListRootCategoriesResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} }
 
 func (m *ListRootCategoriesResponse) GetCategories() []*CategoryDescription {
 	if m != nil {
@@ -1327,12 +1464,277 @@ func (m *ListRootCategoriesResponse) GetCategories() []*CategoryDescription {
 	return nil
 }
 
+// Set of primitive values supported by the system.
+type Value struct {
+	// Types that are valid to be assigned to Type:
+	//	*Value_IntegerValue
+	//	*Value_FloatValue
+	//	*Value_StringValue
+	//	*Value_BooleanValue
+	//	*Value_TimestampValue
+	//	*Value_TimeValue
+	//	*Value_DateValue
+	Type isValue_Type `protobuf_oneof:"type"`
+}
+
+func (m *Value) Reset()                    { *m = Value{} }
+func (m *Value) String() string            { return proto.CompactTextString(m) }
+func (*Value) ProtoMessage()               {}
+func (*Value) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{27} }
+
+type isValue_Type interface {
+	isValue_Type()
+}
+
+type Value_IntegerValue struct {
+	IntegerValue int64 `protobuf:"varint,1,opt,name=integer_value,json=integerValue,oneof"`
+}
+type Value_FloatValue struct {
+	FloatValue float64 `protobuf:"fixed64,2,opt,name=float_value,json=floatValue,oneof"`
+}
+type Value_StringValue struct {
+	StringValue string `protobuf:"bytes,3,opt,name=string_value,json=stringValue,oneof"`
+}
+type Value_BooleanValue struct {
+	BooleanValue bool `protobuf:"varint,4,opt,name=boolean_value,json=booleanValue,oneof"`
+}
+type Value_TimestampValue struct {
+	TimestampValue *google_protobuf3.Timestamp `protobuf:"bytes,5,opt,name=timestamp_value,json=timestampValue,oneof"`
+}
+type Value_TimeValue struct {
+	TimeValue *google_type1.TimeOfDay `protobuf:"bytes,6,opt,name=time_value,json=timeValue,oneof"`
+}
+type Value_DateValue struct {
+	DateValue *google_type.Date `protobuf:"bytes,7,opt,name=date_value,json=dateValue,oneof"`
+}
+
+func (*Value_IntegerValue) isValue_Type()   {}
+func (*Value_FloatValue) isValue_Type()     {}
+func (*Value_StringValue) isValue_Type()    {}
+func (*Value_BooleanValue) isValue_Type()   {}
+func (*Value_TimestampValue) isValue_Type() {}
+func (*Value_TimeValue) isValue_Type()      {}
+func (*Value_DateValue) isValue_Type()      {}
+
+func (m *Value) GetType() isValue_Type {
+	if m != nil {
+		return m.Type
+	}
+	return nil
+}
+
+func (m *Value) GetIntegerValue() int64 {
+	if x, ok := m.GetType().(*Value_IntegerValue); ok {
+		return x.IntegerValue
+	}
+	return 0
+}
+
+func (m *Value) GetFloatValue() float64 {
+	if x, ok := m.GetType().(*Value_FloatValue); ok {
+		return x.FloatValue
+	}
+	return 0
+}
+
+func (m *Value) GetStringValue() string {
+	if x, ok := m.GetType().(*Value_StringValue); ok {
+		return x.StringValue
+	}
+	return ""
+}
+
+func (m *Value) GetBooleanValue() bool {
+	if x, ok := m.GetType().(*Value_BooleanValue); ok {
+		return x.BooleanValue
+	}
+	return false
+}
+
+func (m *Value) GetTimestampValue() *google_protobuf3.Timestamp {
+	if x, ok := m.GetType().(*Value_TimestampValue); ok {
+		return x.TimestampValue
+	}
+	return nil
+}
+
+func (m *Value) GetTimeValue() *google_type1.TimeOfDay {
+	if x, ok := m.GetType().(*Value_TimeValue); ok {
+		return x.TimeValue
+	}
+	return nil
+}
+
+func (m *Value) GetDateValue() *google_type.Date {
+	if x, ok := m.GetType().(*Value_DateValue); ok {
+		return x.DateValue
+	}
+	return nil
+}
+
+// XXX_OneofFuncs is for the internal use of the proto package.
+func (*Value) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
+	return _Value_OneofMarshaler, _Value_OneofUnmarshaler, _Value_OneofSizer, []interface{}{
+		(*Value_IntegerValue)(nil),
+		(*Value_FloatValue)(nil),
+		(*Value_StringValue)(nil),
+		(*Value_BooleanValue)(nil),
+		(*Value_TimestampValue)(nil),
+		(*Value_TimeValue)(nil),
+		(*Value_DateValue)(nil),
+	}
+}
+
+func _Value_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
+	m := msg.(*Value)
+	// type
+	switch x := m.Type.(type) {
+	case *Value_IntegerValue:
+		b.EncodeVarint(1<<3 | proto.WireVarint)
+		b.EncodeVarint(uint64(x.IntegerValue))
+	case *Value_FloatValue:
+		b.EncodeVarint(2<<3 | proto.WireFixed64)
+		b.EncodeFixed64(math.Float64bits(x.FloatValue))
+	case *Value_StringValue:
+		b.EncodeVarint(3<<3 | proto.WireBytes)
+		b.EncodeStringBytes(x.StringValue)
+	case *Value_BooleanValue:
+		t := uint64(0)
+		if x.BooleanValue {
+			t = 1
+		}
+		b.EncodeVarint(4<<3 | proto.WireVarint)
+		b.EncodeVarint(t)
+	case *Value_TimestampValue:
+		b.EncodeVarint(5<<3 | proto.WireBytes)
+		if err := b.EncodeMessage(x.TimestampValue); err != nil {
+			return err
+		}
+	case *Value_TimeValue:
+		b.EncodeVarint(6<<3 | proto.WireBytes)
+		if err := b.EncodeMessage(x.TimeValue); err != nil {
+			return err
+		}
+	case *Value_DateValue:
+		b.EncodeVarint(7<<3 | proto.WireBytes)
+		if err := b.EncodeMessage(x.DateValue); err != nil {
+			return err
+		}
+	case nil:
+	default:
+		return fmt.Errorf("Value.Type has unexpected type %T", x)
+	}
+	return nil
+}
+
+func _Value_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
+	m := msg.(*Value)
+	switch tag {
+	case 1: // type.integer_value
+		if wire != proto.WireVarint {
+			return true, proto.ErrInternalBadWireType
+		}
+		x, err := b.DecodeVarint()
+		m.Type = &Value_IntegerValue{int64(x)}
+		return true, err
+	case 2: // type.float_value
+		if wire != proto.WireFixed64 {
+			return true, proto.ErrInternalBadWireType
+		}
+		x, err := b.DecodeFixed64()
+		m.Type = &Value_FloatValue{math.Float64frombits(x)}
+		return true, err
+	case 3: // type.string_value
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		x, err := b.DecodeStringBytes()
+		m.Type = &Value_StringValue{x}
+		return true, err
+	case 4: // type.boolean_value
+		if wire != proto.WireVarint {
+			return true, proto.ErrInternalBadWireType
+		}
+		x, err := b.DecodeVarint()
+		m.Type = &Value_BooleanValue{x != 0}
+		return true, err
+	case 5: // type.timestamp_value
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		msg := new(google_protobuf3.Timestamp)
+		err := b.DecodeMessage(msg)
+		m.Type = &Value_TimestampValue{msg}
+		return true, err
+	case 6: // type.time_value
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		msg := new(google_type1.TimeOfDay)
+		err := b.DecodeMessage(msg)
+		m.Type = &Value_TimeValue{msg}
+		return true, err
+	case 7: // type.date_value
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		msg := new(google_type.Date)
+		err := b.DecodeMessage(msg)
+		m.Type = &Value_DateValue{msg}
+		return true, err
+	default:
+		return false, nil
+	}
+}
+
+func _Value_OneofSizer(msg proto.Message) (n int) {
+	m := msg.(*Value)
+	// type
+	switch x := m.Type.(type) {
+	case *Value_IntegerValue:
+		n += proto.SizeVarint(1<<3 | proto.WireVarint)
+		n += proto.SizeVarint(uint64(x.IntegerValue))
+	case *Value_FloatValue:
+		n += proto.SizeVarint(2<<3 | proto.WireFixed64)
+		n += 8
+	case *Value_StringValue:
+		n += proto.SizeVarint(3<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(len(x.StringValue)))
+		n += len(x.StringValue)
+	case *Value_BooleanValue:
+		n += proto.SizeVarint(4<<3 | proto.WireVarint)
+		n += 1
+	case *Value_TimestampValue:
+		s := proto.Size(x.TimestampValue)
+		n += proto.SizeVarint(5<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(s))
+		n += s
+	case *Value_TimeValue:
+		s := proto.Size(x.TimeValue)
+		n += proto.SizeVarint(6<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(s))
+		n += s
+	case *Value_DateValue:
+		s := proto.Size(x.DateValue)
+		n += proto.SizeVarint(7<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(s))
+		n += s
+	case nil:
+	default:
+		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
+	}
+	return n
+}
+
 func init() {
 	proto.RegisterType((*InspectConfig)(nil), "google.privacy.dlp.v2beta1.InspectConfig")
 	proto.RegisterType((*ContentItem)(nil), "google.privacy.dlp.v2beta1.ContentItem")
+	proto.RegisterType((*Table)(nil), "google.privacy.dlp.v2beta1.Table")
+	proto.RegisterType((*Table_Row)(nil), "google.privacy.dlp.v2beta1.Table.Row")
 	proto.RegisterType((*InspectResult)(nil), "google.privacy.dlp.v2beta1.InspectResult")
 	proto.RegisterType((*Finding)(nil), "google.privacy.dlp.v2beta1.Finding")
 	proto.RegisterType((*Location)(nil), "google.privacy.dlp.v2beta1.Location")
+	proto.RegisterType((*TableLocation)(nil), "google.privacy.dlp.v2beta1.TableLocation")
 	proto.RegisterType((*Range)(nil), "google.privacy.dlp.v2beta1.Range")
 	proto.RegisterType((*ImageLocation)(nil), "google.privacy.dlp.v2beta1.ImageLocation")
 	proto.RegisterType((*RedactContentRequest)(nil), "google.privacy.dlp.v2beta1.RedactContentRequest")
@@ -1355,6 +1757,7 @@ func init() {
 	proto.RegisterType((*CategoryDescription)(nil), "google.privacy.dlp.v2beta1.CategoryDescription")
 	proto.RegisterType((*ListRootCategoriesRequest)(nil), "google.privacy.dlp.v2beta1.ListRootCategoriesRequest")
 	proto.RegisterType((*ListRootCategoriesResponse)(nil), "google.privacy.dlp.v2beta1.ListRootCategoriesResponse")
+	proto.RegisterType((*Value)(nil), "google.privacy.dlp.v2beta1.Value")
 	proto.RegisterEnum("google.privacy.dlp.v2beta1.Likelihood", Likelihood_name, Likelihood_value)
 }
 
@@ -1616,128 +2019,145 @@ var _DlpService_serviceDesc = grpc.ServiceDesc{
 func init() { proto.RegisterFile("google/privacy/dlp/v2beta1/dlp.proto", fileDescriptor0) }
 
 var fileDescriptor0 = []byte{
-	// 1953 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0xcd, 0x6f, 0x23, 0x49,
-	0x15, 0x4f, 0x3b, 0x71, 0x62, 0x3f, 0xc7, 0xc9, 0x6c, 0xe5, 0x63, 0xbc, 0x9e, 0x1d, 0x36, 0xd3,
-	0xb3, 0xcc, 0x86, 0x68, 0xb0, 0x77, 0x8c, 0x18, 0xc4, 0xae, 0x66, 0x99, 0xb1, 0x93, 0x21, 0x66,
-	0xb3, 0x93, 0x6c, 0x25, 0x3b, 0xab, 0x45, 0xa0, 0x56, 0xa7, 0xbb, 0xdc, 0x29, 0x4d, 0xbb, 0xab,
-	0xb7, 0xbb, 0x3c, 0x1b, 0xef, 0x6a, 0x84, 0x84, 0x10, 0xe2, 0x88, 0xc4, 0x05, 0x10, 0xdc, 0x38,
-	0x00, 0xe2, 0xc6, 0x8d, 0x7f, 0x83, 0x23, 0xd7, 0x3d, 0xf1, 0x07, 0x70, 0x46, 0xf5, 0xd1, 0xed,
-	0xb6, 0xc7, 0xd3, 0x89, 0x03, 0x48, 0xdc, 0xaa, 0x5e, 0xbd, 0xf7, 0xfa, 0xf7, 0x3e, 0xfb, 0x55,
-	0xc1, 0x5b, 0x1e, 0x63, 0x9e, 0x4f, 0x9a, 0x61, 0x44, 0x9f, 0xdb, 0xce, 0xb0, 0xe9, 0xfa, 0x61,
-	0xf3, 0x79, 0xeb, 0x94, 0x70, 0xfb, 0x9e, 0x58, 0x37, 0xc2, 0x88, 0x71, 0x86, 0xea, 0x8a, 0xab,
-	0xa1, 0xb9, 0x1a, 0xe2, 0x44, 0x73, 0xd5, 0xdf, 0xd0, 0x1a, 0xec, 0x90, 0x36, 0xed, 0x20, 0x60,
-	0xdc, 0xe6, 0x94, 0x05, 0xb1, 0x92, 0xac, 0xdf, 0xd6, 0xa7, 0x3e, 0x0b, 0xbc, 0x68, 0x10, 0x04,
-	0x34, 0xf0, 0x9a, 0x2c, 0x24, 0xd1, 0x18, 0xd3, 0x76, 0x0e, 0x88, 0x98, 0xb3, 0xc8, 0xf6, 0x88,
-	0xe6, 0xbc, 0x91, 0x72, 0x32, 0xce, 0x4e, 0x07, 0xbd, 0x26, 0xe9, 0x87, 0x7c, 0xa8, 0x0f, 0xdf,
-	0x9c, 0x3c, 0xe4, 0xb4, 0x4f, 0x62, 0x6e, 0xf7, 0xb5, 0x19, 0xf5, 0x4d, 0xcd, 0xc0, 0x87, 0x21,
-	0x69, 0xba, 0x36, 0x9f, 0xd4, 0x2a, 0xe9, 0x42, 0x88, 0xf5, 0x5c, 0x5b, 0x6b, 0x35, 0x7f, 0x59,
-	0x80, 0x6a, 0x37, 0x88, 0x43, 0xe2, 0xf0, 0x0e, 0x0b, 0x7a, 0xd4, 0x43, 0x1d, 0x00, 0x1a, 0xf4,
-	0x98, 0x25, 0xd8, 0xe3, 0x9a, 0xb1, 0x35, 0xbf, 0x5d, 0x69, 0xbd, 0xd5, 0x78, 0xb5, 0x8b, 0x1a,
-	0xdd, 0xa0, 0xc7, 0x4e, 0x86, 0x21, 0xc1, 0x65, 0xaa, 0x57, 0x31, 0xfa, 0x10, 0x56, 0xfa, 0x34,
-	0xb0, 0x7c, 0xfa, 0x8c, 0xf8, 0xf4, 0x8c, 0x31, 0xb7, 0x56, 0xd8, 0x32, 0xb6, 0x57, 0x5a, 0x77,
-	0xf2, 0x14, 0x1d, 0xa4, 0xdc, 0xb8, 0xda, 0xa7, 0xc1, 0x68, 0x8b, 0x6e, 0xc1, 0x72, 0xdf, 0x3e,
-	0xb7, 0x7a, 0x34, 0x70, 0x69, 0xe0, 0xc5, 0xb5, 0xf9, 0x2d, 0x63, 0xbb, 0x88, 0x2b, 0x7d, 0xfb,
-	0xfc, 0xb1, 0x26, 0xa1, 0xdb, 0x50, 0xa5, 0x81, 0xe3, 0x0f, 0x5c, 0x62, 0x7d, 0x36, 0x60, 0x9c,
-	0xd4, 0x16, 0xb6, 0x8c, 0xed, 0x12, 0x5e, 0xd6, 0xc4, 0x8f, 0x04, 0x4d, 0x30, 0x91, 0x73, 0xc5,
-	0xa4, 0xcc, 0x5b, 0x54, 0x4c, 0x9a, 0x28, 0xb1, 0x9b, 0x3f, 0x82, 0x4a, 0x87, 0x05, 0x9c, 0x04,
-	0xbc, 0xcb, 0x49, 0x1f, 0x21, 0x58, 0x10, 0xbc, 0x35, 0x63, 0xcb, 0xd8, 0x2e, 0x63, 0xb9, 0x46,
-	0xeb, 0xb0, 0xe0, 0xda, 0xdc, 0x96, 0x46, 0x2d, 0xef, 0xcf, 0x61, 0xb9, 0x43, 0x9b, 0x50, 0x7c,
-	0x6e, 0xfb, 0x03, 0x22, 0xe1, 0x95, 0xf7, 0xe7, 0xb0, 0xda, 0xb6, 0x2b, 0x50, 0x16, 0xe7, 0x16,
-	0xe5, 0xa4, 0x6f, 0xfe, 0x24, 0xf5, 0x37, 0x26, 0xf1, 0xc0, 0xe7, 0xe8, 0x7b, 0x50, 0x4a, 0xed,
-	0x52, 0xde, 0xbe, 0x9d, 0xe7, 0x24, 0x6d, 0x30, 0x4e, 0x85, 0xd0, 0x37, 0x01, 0x25, 0x6b, 0x8b,
-	0x47, 0x83, 0xc0, 0xb1, 0x39, 0x51, 0xfe, 0x2e, 0xe1, 0xd7, 0x92, 0x93, 0x93, 0xe4, 0xc0, 0xfc,
-	0x53, 0x01, 0x96, 0xb4, 0x12, 0xb4, 0x0e, 0x45, 0xe5, 0x2c, 0x65, 0x9c, 0xda, 0xa0, 0x47, 0x50,
-	0x4e, 0x33, 0x40, 0xea, 0xb9, 0x6c, 0x02, 0x94, 0x92, 0x04, 0x40, 0x8f, 0x01, 0x32, 0xb1, 0x9f,
-	0x9f, 0x29, 0xf6, 0x19, 0x49, 0xf4, 0x10, 0x4a, 0x3e, 0x73, 0x64, 0x39, 0xc9, 0x80, 0x5e, 0x80,
-	0xe4, 0x40, 0xf3, 0xe2, 0x54, 0x0a, 0xbd, 0x07, 0x15, 0x27, 0x22, 0x36, 0x27, 0x96, 0x48, 0x7d,
-	0x19, 0xf0, 0x4a, 0xab, 0x3e, 0x52, 0xa2, 0x8a, 0xa9, 0x71, 0x92, 0x14, 0x13, 0x06, 0xc5, 0x2e,
-	0x08, 0xe6, 0x3f, 0x0b, 0x50, 0x4a, 0x74, 0xa2, 0x87, 0x00, 0xa7, 0x43, 0x4e, 0xac, 0xc8, 0x0e,
-	0x3c, 0xe5, 0xb1, 0x4a, 0xeb, 0x56, 0x1e, 0x1a, 0x2c, 0x18, 0x71, 0x59, 0x08, 0xc9, 0x25, 0xfa,
-	0x01, 0xac, 0x3a, 0xcc, 0x25, 0x21, 0xa3, 0x01, 0xd7, 0x6a, 0x0a, 0x97, 0x55, 0xb3, 0x92, 0x4a,
-	0x26, 0xba, 0x2a, 0xb4, 0x6f, 0x7b, 0xc4, 0x3a, 0x65, 0xe7, 0x44, 0x54, 0x84, 0xc8, 0x9c, 0x6f,
-	0xe4, 0x86, 0x49, 0xb0, 0xa7, 0x1e, 0x02, 0x29, 0xdd, 0x16, 0xc2, 0x68, 0x17, 0x20, 0x22, 0x0e,
-	0x8b, 0x5c, 0xeb, 0x19, 0x19, 0x6a, 0x3f, 0x7f, 0x3d, 0x17, 0x92, 0xe4, 0xfe, 0x80, 0x0c, 0x71,
-	0x39, 0x4a, 0x96, 0xe8, 0x7d, 0x91, 0xc8, 0xc4, 0x77, 0x2d, 0xea, 0xd6, 0x8a, 0x52, 0xc7, 0x05,
-	0x89, 0x4c, 0x7c, 0xb7, 0xeb, 0xe2, 0xa5, 0x9e, 0x5a, 0x98, 0x4d, 0x28, 0x2a, 0xd3, 0xd6, 0xa1,
-	0x18, 0x73, 0x3b, 0xe2, 0xd2, 0xc7, 0xf3, 0x58, 0x6d, 0xd0, 0x35, 0x98, 0x27, 0x81, 0xca, 0xeb,
-	0x79, 0x2c, 0x96, 0xa6, 0x03, 0xd5, 0x31, 0x9b, 0x04, 0x0b, 0x67, 0xa1, 0x14, 0x2b, 0x62, 0xb1,
-	0x14, 0xc5, 0xeb, 0x93, 0x1e, 0x97, 0x52, 0x45, 0x2c, 0xd7, 0x42, 0xfd, 0xe7, 0xd4, 0xe5, 0x67,
-	0xba, 0x8b, 0xa8, 0x0d, 0xda, 0x84, 0xc5, 0x33, 0x42, 0xbd, 0x33, 0x2e, 0xed, 0x2f, 0x62, 0xbd,
-	0x33, 0xbf, 0x2a, 0xc2, 0x3a, 0x26, 0xae, 0x2d, 0xfb, 0xa3, 0x68, 0x0a, 0x98, 0x7c, 0x36, 0x20,
-	0x31, 0x47, 0x47, 0xb0, 0x42, 0x55, 0x21, 0x5b, 0x8e, 0xec, 0x9c, 0x3a, 0x25, 0xf2, 0x63, 0x90,
-	0x6d, 0xb5, 0xb8, 0x4a, 0xc7, 0x3a, 0xef, 0x03, 0x28, 0x8a, 0x16, 0x11, 0xd7, 0x0a, 0x32, 0x98,
-	0x6f, 0xe7, 0x29, 0xca, 0x74, 0x28, 0xac, 0xa4, 0x90, 0x07, 0xab, 0x11, 0x09, 0x7d, 0xdb, 0x21,
-	0x1a, 0x50, 0x92, 0x15, 0xef, 0xe7, 0x87, 0xf2, 0x65, 0xdb, 0x1a, 0x58, 0xe9, 0xd1, 0x30, 0x57,
-	0xa2, 0xec, 0x36, 0x46, 0x2f, 0xe0, 0xba, 0x4a, 0xbd, 0x48, 0xca, 0x52, 0x16, 0xa4, 0x1f, 0x5c,
-	0x90, 0x1f, 0xdc, 0x9b, 0xf9, 0x83, 0x32, 0x8e, 0x38, 0x51, 0xa7, 0xbf, 0xbb, 0x41, 0xa7, 0x50,
-	0xe3, 0xfa, 0x00, 0xaa, 0x63, 0xf8, 0xc6, 0xfb, 0x95, 0x71, 0xa5, 0x7e, 0x75, 0x0b, 0x96, 0x13,
-	0xdf, 0x7d, 0x4e, 0xf9, 0x99, 0xcc, 0x97, 0x32, 0xae, 0x68, 0xda, 0x27, 0x94, 0x9f, 0xd5, 0xff,
-	0x61, 0xc0, 0xfa, 0x34, 0x98, 0xa8, 0x73, 0xc5, 0xcf, 0xef, 0xcf, 0x65, 0x00, 0x6c, 0x8b, 0xe0,
-	0x09, 0xbd, 0x96, 0xed, 0xfb, 0x16, 0x27, 0xe7, 0x2a, 0x67, 0x4b, 0xfb, 0x73, 0xb8, 0xaa, 0x0e,
-	0x1e, 0xf9, 0xfe, 0x09, 0x39, 0xe7, 0xa2, 0x89, 0x64, 0xfd, 0xee, 0xb3, 0x48, 0x26, 0xf2, 0x05,
-	0x4d, 0xa4, 0x23, 0x18, 0x45, 0x24, 0x53, 0xec, 0x3e, 0x8b, 0xda, 0x25, 0x58, 0xe4, 0x76, 0xe4,
-	0x11, 0x6e, 0x76, 0xa0, 0x28, 0x49, 0xa2, 0x86, 0x22, 0xe2, 0x4a, 0x3b, 0x0a, 0x58, 0x2c, 0x45,
-	0xbd, 0x78, 0x11, 0x21, 0x81, 0x04, 0x54, 0xc0, 0x6a, 0x23, 0x2a, 0xeb, 0x34, 0xf9, 0xd7, 0x15,
-	0xb0, 0x5c, 0x9b, 0x4f, 0x61, 0x63, 0x22, 0xba, 0x71, 0xc8, 0x82, 0x98, 0x8c, 0x32, 0xdb, 0xb8,
-	0x4a, 0x66, 0x9b, 0x7f, 0x34, 0x60, 0x63, 0x54, 0x39, 0xff, 0xcf, 0x45, 0x68, 0xfe, 0x18, 0x36,
-	0x27, 0x91, 0x6a, 0x1f, 0x74, 0x60, 0x29, 0x92, 0x7f, 0xfc, 0xc4, 0x0b, 0x97, 0xc1, 0xa8, 0x66,
-	0x04, 0x9c, 0x48, 0x9a, 0xbf, 0x29, 0xc0, 0xcd, 0x8e, 0xfc, 0x3f, 0x69, 0x86, 0xc3, 0x64, 0xda,
-	0xfc, 0xdf, 0x79, 0xe4, 0x08, 0x56, 0xf4, 0x98, 0x9a, 0x68, 0x2c, 0x5c, 0xac, 0xf1, 0x58, 0x49,
-	0x24, 0x1a, 0xe3, 0xec, 0x16, 0x9d, 0x40, 0x95, 0x0d, 0x78, 0x38, 0x48, 0x21, 0xaa, 0x04, 0x6e,
-	0xe6, 0x29, 0x3c, 0x94, 0x02, 0xe3, 0x6a, 0x97, 0x95, 0x16, 0xb5, 0x33, 0x43, 0x58, 0x9b, 0xc2,
-	0x84, 0x3e, 0x82, 0xe5, 0x04, 0x7e, 0x68, 0xeb, 0xd2, 0xae, 0xb4, 0xee, 0xe6, 0xc6, 0xd5, 0x67,
-	0x03, 0x57, 0x6b, 0x39, 0xb2, 0xf9, 0xd9, 0xfe, 0x1c, 0xae, 0xc4, 0xa3, 0x6d, 0x7b, 0x51, 0x8d,
-	0x84, 0x66, 0x1f, 0x50, 0x52, 0xcc, 0xc7, 0xe2, 0x62, 0x10, 0x73, 0xea, 0xc4, 0xff, 0x8d, 0x76,
-	0xb4, 0x0e, 0x45, 0x87, 0x0d, 0x02, 0xae, 0xff, 0x76, 0x6a, 0x63, 0xfe, 0x75, 0x01, 0x6a, 0x93,
-	0x61, 0xff, 0x90, 0x70, 0x5b, 0x0e, 0x9f, 0x6f, 0xc3, 0x6a, 0x18, 0x31, 0x87, 0xc4, 0x31, 0x71,
-	0x2d, 0x31, 0x72, 0xc4, 0xfa, 0xf7, 0xb9, 0x92, 0x92, 0xdb, 0x82, 0x8a, 0x5a, 0xb0, 0xc1, 0x19,
-	0xb7, 0x7d, 0x8b, 0xc4, 0x9c, 0xf6, 0xc5, 0x48, 0xa8, 0xd9, 0x17, 0x24, 0xfb, 0x9a, 0x3c, 0xdc,
-	0x4b, 0xce, 0x94, 0xcc, 0x53, 0x58, 0x4d, 0x4d, 0xb2, 0x62, 0x6e, 0xf3, 0xa4, 0x3c, 0x1a, 0x97,
-	0x31, 0x6c, 0xe4, 0x1b, 0x91, 0x5a, 0x23, 0x5a, 0x3c, 0x39, 0x9c, 0xcd, 0xcf, 0x32, 0x9c, 0x21,
-	0x0b, 0x36, 0x23, 0x95, 0xf4, 0xd6, 0x44, 0xc6, 0x17, 0x67, 0xcd, 0xf8, 0x75, 0xad, 0x68, 0xfc,
-	0x26, 0x94, 0xf9, 0xc0, 0x44, 0x01, 0x2c, 0xce, 0x5a, 0x00, 0xc9, 0x07, 0xc6, 0x53, 0xd3, 0x81,
-	0x8d, 0xe4, 0x03, 0xe3, 0xf5, 0xb0, 0x74, 0xb5, 0x7a, 0x58, 0xd3, 0xda, 0x0e, 0xb3, 0x65, 0x71,
-	0x37, 0xed, 0x48, 0x99, 0x5e, 0x21, 0x6f, 0x1e, 0x08, 0x16, 0x02, 0xbb, 0x9f, 0xde, 0x6c, 0xc4,
-	0xda, 0xfc, 0x99, 0x01, 0xf5, 0x03, 0x9a, 0x7a, 0x22, 0xb9, 0x5e, 0x25, 0xdd, 0x65, 0x8a, 0x08,
-	0xba, 0x01, 0xe5, 0x50, 0xf8, 0x26, 0xa6, 0x5f, 0x10, 0x3d, 0x68, 0x95, 0x04, 0xe1, 0x98, 0x7e,
-	0x41, 0xd0, 0x4d, 0x00, 0x79, 0xc8, 0xd9, 0x33, 0x12, 0xa8, 0x8b, 0x11, 0x96, 0xec, 0x27, 0x82,
-	0x20, 0xa6, 0xae, 0x1e, 0xf5, 0x39, 0x89, 0x64, 0xf6, 0x95, 0xb1, 0xde, 0x99, 0xbf, 0x30, 0xe0,
-	0xc6, 0x54, 0x18, 0xba, 0x99, 0x3e, 0x82, 0x45, 0xd5, 0x12, 0x67, 0xe8, 0x6e, 0xba, 0x97, 0x6a,
-	0x41, 0x74, 0x07, 0x56, 0x03, 0x72, 0xce, 0xad, 0x0c, 0x3c, 0xf5, 0xd7, 0xaf, 0x0a, 0xf2, 0x51,
-	0x02, 0xd1, 0xfc, 0xbd, 0x01, 0x6b, 0x49, 0x26, 0xef, 0x92, 0xd8, 0x89, 0x68, 0x28, 0x87, 0xcd,
-	0x69, 0xae, 0xb8, 0x05, 0xcb, 0x2e, 0x8d, 0x43, 0xdf, 0x1e, 0x5a, 0xf2, 0x4c, 0x8f, 0x11, 0x9a,
-	0xf6, 0x44, 0xb0, 0x1c, 0x02, 0x88, 0x7b, 0x98, 0xc7, 0x22, 0x9a, 0x8e, 0xed, 0xb9, 0x81, 0xee,
-	0x28, 0xee, 0x61, 0xe6, 0xdb, 0x38, 0xa3, 0xc2, 0xfc, 0x04, 0xd6, 0x95, 0xa7, 0xf4, 0xdd, 0x3b,
-	0x09, 0x55, 0x1d, 0x4a, 0x9a, 0x6b, 0xa8, 0x31, 0xa6, 0x7b, 0x71, 0x0f, 0xf6, 0xed, 0xc0, 0x1b,
-	0xa8, 0x94, 0x76, 0x13, 0xa0, 0xcb, 0x09, 0xb1, 0xc3, 0x5c, 0x62, 0x7a, 0xb0, 0x31, 0xa1, 0x58,
-	0x3b, 0xff, 0xc9, 0x94, 0x17, 0x82, 0xe6, 0x65, 0x1a, 0x41, 0xd6, 0x84, 0xd1, 0x63, 0x81, 0x79,
-	0x00, 0x6b, 0x53, 0x8c, 0xbc, 0xa2, 0x83, 0xcd, 0x87, 0xf0, 0xba, 0x80, 0x8d, 0x19, 0xe3, 0x9d,
-	0xd4, 0x4b, 0x89, 0x53, 0x5e, 0x32, 0xdc, 0x98, 0x62, 0x78, 0x5f, 0x95, 0xc0, 0xa4, 0x06, 0x6d,
-	0xfd, 0x78, 0x00, 0x8d, 0xff, 0x38, 0x80, 0x3b, 0x1c, 0x20, 0xf3, 0xd4, 0x51, 0x87, 0xcd, 0x83,
-	0xee, 0x07, 0x7b, 0x07, 0xdd, 0xfd, 0xc3, 0xc3, 0x5d, 0xeb, 0xe3, 0x27, 0xc7, 0x47, 0x7b, 0x9d,
-	0xee, 0xe3, 0xee, 0xde, 0xee, 0xb5, 0x39, 0xf4, 0x1a, 0x54, 0x9f, 0xee, 0xe1, 0x4f, 0xad, 0x8f,
-	0x9f, 0x48, 0x96, 0x4f, 0xaf, 0x19, 0x68, 0x19, 0x4a, 0xe9, 0xae, 0x20, 0x76, 0x47, 0x87, 0xc7,
-	0xc7, 0xdd, 0xf6, 0xc1, 0xde, 0xb5, 0x79, 0x04, 0xb0, 0xa8, 0x4f, 0x16, 0xd0, 0x2a, 0x54, 0xa4,
-	0xa8, 0x26, 0x14, 0x5b, 0xff, 0x5a, 0x02, 0xd8, 0xf5, 0xc3, 0x63, 0x12, 0x3d, 0xa7, 0x0e, 0x41,
-	0xbf, 0x33, 0x60, 0x65, 0x7c, 0x70, 0x41, 0xf7, 0x2e, 0xd7, 0x3f, 0x33, 0xe3, 0x58, 0xbd, 0x35,
-	0x8b, 0x88, 0xf2, 0xa7, 0x79, 0xfb, 0xa7, 0x7f, 0xff, 0xea, 0x57, 0x85, 0x9b, 0x66, 0x2d, 0x7d,
-	0x14, 0x73, 0x14, 0xc7, 0xbb, 0xba, 0xab, 0xbf, 0x6b, 0xec, 0xa0, 0x5f, 0x1b, 0x62, 0xe8, 0xcf,
-	0x8c, 0x96, 0xe8, 0x9d, 0x59, 0xef, 0x18, 0xf5, 0x7b, 0x33, 0x48, 0x68, 0x6c, 0xa6, 0xc4, 0xf6,
-	0x86, 0x79, 0xfd, 0x25, 0x6c, 0x6a, 0x90, 0x16, 0xd0, 0x7e, 0x6b, 0xc0, 0xe6, 0xf4, 0x91, 0x0c,
-	0x7d, 0x37, 0x37, 0x2d, 0xf2, 0xc6, 0xb8, 0xfa, 0xcd, 0x44, 0x34, 0xf3, 0xb4, 0xd8, 0x48, 0xb9,
-	0xcc, 0x3b, 0x12, 0xd8, 0x96, 0x79, 0x23, 0x05, 0xa6, 0x9d, 0x95, 0x79, 0x7e, 0x14, 0xe0, 0xfe,
-	0x66, 0xc0, 0xda, 0x94, 0x3e, 0x8a, 0xee, 0xe7, 0xbf, 0xc5, 0xbc, 0xaa, 0xff, 0xd7, 0xbf, 0x33,
-	0xb3, 0x9c, 0xf6, 0x64, 0x4b, 0x02, 0xbe, 0x8b, 0x76, 0x52, 0xc0, 0x5f, 0x8a, 0x02, 0x7e, 0x90,
-	0xc0, 0xd6, 0x03, 0x6e, 0x73, 0xe7, 0x45, 0x33, 0x7d, 0xd8, 0xfa, 0x8b, 0x01, 0xd5, 0xb1, 0x0e,
-	0x94, 0x1f, 0xf4, 0x69, 0x5d, 0x30, 0x3f, 0xe8, 0x53, 0xdb, 0x9b, 0x79, 0x5f, 0x42, 0x7d, 0x07,
-	0x35, 0x52, 0xa8, 0xd1, 0x58, 0x27, 0x68, 0x7e, 0x99, 0xf4, 0xd1, 0x07, 0x3b, 0x2f, 0x9a, 0xa3,
-	0x37, 0xcf, 0x3f, 0x18, 0x80, 0x5e, 0xee, 0x1b, 0xe8, 0xdb, 0x17, 0x21, 0x98, 0xda, 0xa9, 0xea,
-	0xf7, 0x67, 0x15, 0xd3, 0xe8, 0xdf, 0x94, 0xe8, 0x5f, 0x47, 0xd7, 0x5f, 0x81, 0xbe, 0xfd, 0x73,
-	0x03, 0xbe, 0xe6, 0xb0, 0x7e, 0x8e, 0xfa, 0x76, 0x69, 0xd7, 0x0f, 0x8f, 0xc4, 0xf0, 0x75, 0x64,
-	0xfc, 0xf0, 0x81, 0xe6, 0xf3, 0x98, 0xe8, 0x91, 0x0d, 0x16, 0x79, 0x4d, 0x8f, 0x04, 0x72, 0x34,
-	0x6b, 0xaa, 0x23, 0x3b, 0xa4, 0xf1, 0xb4, 0xc7, 0xed, 0xf7, 0x5c, 0x3f, 0xfc, 0x73, 0xa1, 0xf6,
-	0x7d, 0x25, 0x2f, 0x67, 0xea, 0xc6, 0xae, 0x1f, 0x36, 0x9e, 0xb6, 0xda, 0xe2, 0xf8, 0x74, 0x51,
-	0x2a, 0xf9, 0xd6, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0xb8, 0xdc, 0x04, 0x55, 0xa5, 0x17, 0x00,
-	0x00,
+	// 2232 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0xcd, 0x6f, 0x1b, 0xc7,
+	0x15, 0xd7, 0x52, 0xa2, 0x4c, 0x3e, 0x92, 0x92, 0x3d, 0xfa, 0xb0, 0x42, 0xc7, 0x8d, 0xbc, 0x4a,
+	0x1c, 0xc5, 0x70, 0xc9, 0x98, 0x45, 0x1d, 0x38, 0x81, 0x53, 0x5b, 0x94, 0x5c, 0xa9, 0x51, 0x2c,
+	0x79, 0xa4, 0x38, 0x48, 0x81, 0x62, 0xb1, 0xe2, 0x0e, 0x57, 0x03, 0x2f, 0x77, 0x36, 0xbb, 0x43,
+	0x4b, 0x4c, 0x60, 0x14, 0x28, 0x8a, 0xa2, 0xc7, 0x02, 0x3d, 0xf4, 0x03, 0xed, 0xad, 0x87, 0xb6,
+	0xe8, 0x2d, 0xb7, 0xa2, 0xb7, 0xfe, 0x09, 0x3d, 0x15, 0xbd, 0xe6, 0x6f, 0xe8, 0xb9, 0x98, 0xaf,
+	0xd5, 0x52, 0xa6, 0x57, 0xa2, 0xda, 0x02, 0xb9, 0xcd, 0xbc, 0xf9, 0xbd, 0xb7, 0x6f, 0xde, 0xbc,
+	0xaf, 0x99, 0x85, 0x37, 0x7d, 0xc6, 0xfc, 0x80, 0x34, 0xa3, 0x98, 0x3e, 0x77, 0x3b, 0x83, 0xa6,
+	0x17, 0x44, 0xcd, 0xe7, 0xad, 0x03, 0xc2, 0xdd, 0x3b, 0x62, 0xdc, 0x88, 0x62, 0xc6, 0x19, 0xaa,
+	0x2b, 0x54, 0x43, 0xa3, 0x1a, 0x62, 0x45, 0xa3, 0xea, 0xaf, 0x6b, 0x09, 0x6e, 0x44, 0x9b, 0x6e,
+	0x18, 0x32, 0xee, 0x72, 0xca, 0xc2, 0x44, 0x71, 0xd6, 0x57, 0xf4, 0x6a, 0xc0, 0x42, 0x3f, 0xee,
+	0x87, 0x21, 0x0d, 0xfd, 0x26, 0x8b, 0x48, 0x3c, 0x04, 0x5a, 0xcd, 0x51, 0x22, 0xe1, 0x2c, 0x76,
+	0x7d, 0xa2, 0x91, 0xd7, 0x52, 0x24, 0xe3, 0xec, 0xa0, 0xdf, 0x6d, 0x92, 0x5e, 0xc4, 0x07, 0x7a,
+	0xf1, 0x8d, 0xd3, 0x8b, 0x9c, 0xf6, 0x48, 0xc2, 0xdd, 0x9e, 0xde, 0x46, 0x7d, 0x51, 0x03, 0xf8,
+	0x20, 0x22, 0x4d, 0xcf, 0xe5, 0xa7, 0xa5, 0x4a, 0xba, 0x60, 0x62, 0x5d, 0xcf, 0xd5, 0x52, 0xed,
+	0x5f, 0x14, 0xa0, 0xb6, 0x15, 0x26, 0x11, 0xe9, 0xf0, 0x36, 0x0b, 0xbb, 0xd4, 0x47, 0x6d, 0x00,
+	0x1a, 0x76, 0x99, 0x23, 0xe0, 0xc9, 0x92, 0xb5, 0x3c, 0xb9, 0x5a, 0x69, 0xbd, 0xd9, 0x78, 0xb5,
+	0x89, 0x1a, 0x5b, 0x61, 0x97, 0xed, 0x0f, 0x22, 0x82, 0xcb, 0x54, 0x8f, 0x12, 0xf4, 0x31, 0xcc,
+	0xf4, 0x68, 0xe8, 0x04, 0xf4, 0x19, 0x09, 0xe8, 0x21, 0x63, 0xde, 0x52, 0x61, 0xd9, 0x5a, 0x9d,
+	0x69, 0xdd, 0xcc, 0x13, 0xb4, 0x9d, 0xa2, 0x71, 0xad, 0x47, 0xc3, 0x93, 0x29, 0xba, 0x01, 0xd5,
+	0x9e, 0x7b, 0xec, 0x74, 0x69, 0xe8, 0xd1, 0xd0, 0x4f, 0x96, 0x26, 0x97, 0xad, 0xd5, 0x22, 0xae,
+	0xf4, 0xdc, 0xe3, 0x47, 0x9a, 0x84, 0x56, 0xa0, 0x46, 0xc3, 0x4e, 0xd0, 0xf7, 0x88, 0xf3, 0x79,
+	0x9f, 0x71, 0xb2, 0x34, 0xb5, 0x6c, 0xad, 0x96, 0x70, 0x55, 0x13, 0x9f, 0x08, 0x9a, 0x00, 0x91,
+	0x63, 0x05, 0x52, 0xdb, 0x9b, 0x56, 0x20, 0x4d, 0x94, 0xba, 0xdb, 0xbf, 0xb2, 0xa0, 0xd2, 0x66,
+	0x21, 0x27, 0x21, 0xdf, 0xe2, 0xa4, 0x87, 0x10, 0x4c, 0x09, 0xf0, 0x92, 0xb5, 0x6c, 0xad, 0x96,
+	0xb1, 0x1c, 0xa3, 0x79, 0x98, 0xf2, 0x5c, 0xee, 0xca, 0x5d, 0x55, 0x37, 0x27, 0xb0, 0x9c, 0xa1,
+	0x45, 0x28, 0x3e, 0x77, 0x83, 0x3e, 0x91, 0xfa, 0x95, 0x37, 0x27, 0xb0, 0x9a, 0xa2, 0x7b, 0x50,
+	0xe4, 0xee, 0x41, 0xa0, 0x74, 0xaa, 0xb4, 0x6e, 0xe4, 0x19, 0x61, 0x5f, 0x00, 0x05, 0xab, 0xe4,
+	0x58, 0xab, 0x40, 0x59, 0x88, 0x76, 0x28, 0x27, 0x3d, 0xfb, 0xef, 0x16, 0x14, 0xe5, 0x3a, 0xba,
+	0x0f, 0x97, 0x0e, 0x89, 0xeb, 0x91, 0xd8, 0x9c, 0xd0, 0x4a, 0x9e, 0xcc, 0x47, 0x94, 0x04, 0xde,
+	0x96, 0x87, 0x0d, 0x0f, 0xba, 0x07, 0x53, 0x31, 0x3b, 0x4a, 0x96, 0x0a, 0x92, 0xf7, 0xad, 0x33,
+	0xf5, 0x69, 0x60, 0x76, 0x84, 0x25, 0x4b, 0xfd, 0x01, 0x4c, 0x62, 0x76, 0x84, 0xee, 0xc1, 0xb4,
+	0xdc, 0x9b, 0xf9, 0x7e, 0xee, 0x9e, 0x9e, 0x0a, 0x24, 0xd6, 0x0c, 0xf6, 0x8f, 0x53, 0x8f, 0xc3,
+	0x24, 0xe9, 0x07, 0x1c, 0x7d, 0x0f, 0x4a, 0xe9, 0xc9, 0x9e, 0x6b, 0x37, 0x12, 0x8b, 0x53, 0x26,
+	0xf4, 0x6d, 0x40, 0x66, 0xec, 0xf0, 0xb8, 0x1f, 0x76, 0x5c, 0x4e, 0x94, 0xc7, 0x95, 0xf0, 0x15,
+	0xb3, 0xb2, 0x6f, 0x16, 0xec, 0x3f, 0x15, 0xe0, 0x92, 0x16, 0x82, 0xe6, 0xa1, 0xa8, 0xdc, 0x45,
+	0x9d, 0xae, 0x9a, 0xa0, 0x87, 0x50, 0x4e, 0x63, 0x40, 0xca, 0x39, 0x6f, 0x08, 0x94, 0x4c, 0x08,
+	0xa0, 0x47, 0x00, 0x19, 0xef, 0x9f, 0x1c, 0xcb, 0xfb, 0x33, 0x9c, 0xe8, 0x01, 0x94, 0x02, 0xd6,
+	0x91, 0x09, 0x45, 0xbb, 0x4f, 0xae, 0x26, 0xdb, 0x1a, 0x8b, 0x53, 0x2e, 0xf4, 0x01, 0x54, 0x3a,
+	0x31, 0x71, 0x39, 0x71, 0x44, 0xf0, 0x4b, 0x97, 0xaf, 0xb4, 0xea, 0x27, 0x42, 0x54, 0x3a, 0x69,
+	0xec, 0x9b, 0x74, 0x82, 0x41, 0xc1, 0x05, 0xc1, 0xfe, 0xdb, 0x24, 0x94, 0x8c, 0x4c, 0xf4, 0x00,
+	0xe0, 0x60, 0xc0, 0x89, 0x13, 0xbb, 0xa1, 0xaf, 0x2c, 0x76, 0xc6, 0xc1, 0x63, 0x01, 0xc4, 0x65,
+	0xc1, 0x24, 0x87, 0xe8, 0x07, 0x30, 0xdb, 0x61, 0x1e, 0x89, 0x18, 0x0d, 0xb9, 0x16, 0x53, 0x38,
+	0xaf, 0x98, 0x99, 0x94, 0xd3, 0xc8, 0xaa, 0xd0, 0x9e, 0xeb, 0x13, 0xe7, 0x80, 0x1d, 0x13, 0x91,
+	0x13, 0x84, 0xe7, 0xbc, 0x93, 0x7b, 0x4c, 0x02, 0x9e, 0x5a, 0x08, 0x24, 0xf7, 0x9a, 0x60, 0x46,
+	0xeb, 0x00, 0x31, 0xe9, 0xb0, 0xd8, 0x73, 0x9e, 0x91, 0x81, 0xb6, 0x73, 0x6e, 0x58, 0x60, 0x89,
+	0xfe, 0x88, 0x0c, 0x70, 0x39, 0x36, 0x43, 0xf4, 0xa1, 0x70, 0x64, 0x12, 0x78, 0x0e, 0xf5, 0x96,
+	0x8a, 0x52, 0xc6, 0xf9, 0xc2, 0xb2, 0xab, 0x06, 0x68, 0x17, 0x66, 0x64, 0xd4, 0x3b, 0xe9, 0x89,
+	0xab, 0xc3, 0x7a, 0xe7, 0xcc, 0x00, 0x4d, 0x37, 0x55, 0xe3, 0xd9, 0xa9, 0x7d, 0x1b, 0x6a, 0x43,
+	0xeb, 0xe8, 0x1a, 0x94, 0x63, 0x76, 0xe4, 0xd0, 0xd0, 0x23, 0xc7, 0xf2, 0x04, 0x27, 0x71, 0x29,
+	0x66, 0x47, 0x5b, 0x62, 0x6e, 0x37, 0xa1, 0xa8, 0x4c, 0x3b, 0x0f, 0xc5, 0x84, 0xbb, 0x31, 0xd7,
+	0x08, 0x35, 0x41, 0x97, 0x61, 0x92, 0x84, 0x2a, 0xae, 0x26, 0xb1, 0x18, 0xda, 0x1d, 0xa8, 0x0d,
+	0xd9, 0x54, 0x40, 0x38, 0x8b, 0x24, 0x5b, 0x11, 0x8b, 0xa1, 0xc8, 0x9e, 0x01, 0xe9, 0x72, 0xc9,
+	0x55, 0xc4, 0x72, 0x2c, 0xc4, 0x1f, 0x51, 0x8f, 0x1f, 0xea, 0x3c, 0xae, 0x26, 0x68, 0x11, 0xa6,
+	0x0f, 0x09, 0xf5, 0x0f, 0xb9, 0xb4, 0x7f, 0x11, 0xeb, 0x99, 0xfd, 0x75, 0x11, 0xe6, 0x31, 0xf1,
+	0x5c, 0x59, 0xa1, 0x44, 0x56, 0xc6, 0xe4, 0xf3, 0x3e, 0x49, 0xb8, 0x30, 0x17, 0x55, 0x89, 0xc4,
+	0xe9, 0xc8, 0xda, 0xa5, 0x5d, 0x32, 0xdf, 0x07, 0xb2, 0xc5, 0x0e, 0xd7, 0xe8, 0x50, 0xed, 0xbb,
+	0x0f, 0x45, 0x91, 0x68, 0x4d, 0x62, 0x7c, 0x3b, 0x4f, 0x50, 0xa6, 0x44, 0x60, 0xc5, 0x85, 0x7c,
+	0x98, 0x8d, 0x49, 0x14, 0xb8, 0x1d, 0xa2, 0x15, 0x32, 0x5e, 0xf9, 0x61, 0xbe, 0x2b, 0xbd, 0xbc,
+	0xb7, 0x06, 0x56, 0x72, 0xb4, 0x9a, 0x33, 0x71, 0x76, 0x9a, 0xa0, 0x17, 0x70, 0x55, 0xb9, 0x7e,
+	0x2c, 0x79, 0x29, 0x0b, 0xd3, 0x0f, 0x4e, 0xc9, 0x0f, 0x6e, 0x8c, 0xfd, 0x41, 0x79, 0x8e, 0xd8,
+	0x88, 0xd3, 0xdf, 0x5d, 0xa0, 0x23, 0xa8, 0x49, 0xbd, 0x0f, 0xb5, 0x21, 0xfd, 0x86, 0xf3, 0xa5,
+	0x75, 0xa1, 0x7c, 0x79, 0x03, 0xaa, 0xc6, 0x76, 0x47, 0x94, 0x1f, 0x4a, 0x7f, 0x29, 0xe3, 0x8a,
+	0xa6, 0x7d, 0x4a, 0xf9, 0x61, 0xfd, 0x5f, 0x16, 0xcc, 0x8f, 0x52, 0x13, 0xb5, 0x2f, 0xf8, 0xf9,
+	0xcd, 0x89, 0x8c, 0x02, 0xab, 0xe2, 0xf0, 0x84, 0x5c, 0xc7, 0x0d, 0x02, 0x87, 0x93, 0x63, 0xe5,
+	0xb3, 0xa5, 0xcd, 0x09, 0x5c, 0x53, 0x0b, 0x0f, 0x83, 0x60, 0x9f, 0x1c, 0x73, 0x91, 0xc4, 0xb2,
+	0x76, 0x0f, 0x58, 0x2c, 0x1d, 0xf9, 0x8c, 0x24, 0xd6, 0x16, 0x40, 0x71, 0x92, 0xa9, 0xee, 0x01,
+	0x8b, 0xd7, 0x4a, 0x30, 0xcd, 0xdd, 0xd8, 0x27, 0xdc, 0x6e, 0x43, 0x51, 0x92, 0x44, 0x0c, 0xc5,
+	0xc4, 0x93, 0xfb, 0x28, 0x60, 0x31, 0x14, 0xf1, 0xe2, 0xc7, 0x84, 0x84, 0x52, 0xa1, 0x02, 0x56,
+	0x13, 0x11, 0x59, 0x07, 0xa6, 0xd9, 0x28, 0x60, 0x39, 0xb6, 0x9f, 0xc2, 0xc2, 0xa9, 0xd3, 0x4d,
+	0x22, 0x16, 0x26, 0xe4, 0xc4, 0xb3, 0xad, 0x8b, 0x78, 0xb6, 0xfd, 0x47, 0x0b, 0x16, 0x4e, 0x22,
+	0xe7, 0x9b, 0x1c, 0x84, 0xf6, 0x8f, 0x60, 0xf1, 0xb4, 0xa6, 0xda, 0x06, 0x6d, 0xb8, 0x14, 0xcb,
+	0x8e, 0xc3, 0x58, 0xe1, 0x3c, 0x3a, 0xaa, 0x1e, 0x05, 0x1b, 0x4e, 0xfb, 0x37, 0x05, 0xb8, 0xde,
+	0x96, 0xf5, 0x51, 0x03, 0x76, 0x4c, 0xbf, 0xff, 0xff, 0xb3, 0xc8, 0x2e, 0xcc, 0xe8, 0x8b, 0x82,
+	0x91, 0x58, 0x38, 0x5b, 0xe2, 0x9e, 0xe2, 0x30, 0x12, 0x93, 0xec, 0x14, 0xed, 0x43, 0x8d, 0xf5,
+	0x79, 0xd4, 0x4f, 0x55, 0x54, 0x0e, 0xdc, 0xcc, 0x13, 0xb8, 0x23, 0x19, 0x86, 0xc5, 0x56, 0x95,
+	0x14, 0x35, 0xb3, 0xbf, 0xb2, 0x60, 0x6e, 0x04, 0x0a, 0x3d, 0x34, 0xfd, 0xef, 0x39, 0x0c, 0xb1,
+	0x46, 0xfd, 0x27, 0x7d, 0x12, 0x0f, 0x86, 0xfb, 0x60, 0xf4, 0x04, 0xaa, 0xc6, 0x04, 0x91, 0xab,
+	0xd3, 0x43, 0xa5, 0x75, 0x3b, 0xd7, 0x37, 0x02, 0xd6, 0xf7, 0xb4, 0x22, 0xbb, 0x2e, 0x3f, 0xdc,
+	0x9c, 0xc0, 0x95, 0xe4, 0x64, 0xba, 0x36, 0xad, 0xfa, 0x7a, 0xbb, 0x07, 0xc8, 0x24, 0x84, 0x3d,
+	0x71, 0xbd, 0x4b, 0x38, 0xed, 0x24, 0xff, 0x8b, 0x94, 0x36, 0x0f, 0xc5, 0x0e, 0xeb, 0x87, 0x5c,
+	0x57, 0x4c, 0x35, 0xb1, 0xbf, 0x9a, 0x82, 0xa5, 0xd3, 0xae, 0xf3, 0x31, 0xe1, 0xae, 0xbc, 0x41,
+	0xbc, 0x0d, 0xb3, 0x51, 0xcc, 0x3a, 0x24, 0x49, 0x88, 0xe7, 0x88, 0xb6, 0x29, 0xd1, 0x25, 0x78,
+	0x26, 0x25, 0xaf, 0x09, 0x2a, 0x6a, 0xc1, 0x02, 0x67, 0xdc, 0x0d, 0x1c, 0x92, 0x70, 0xda, 0x13,
+	0x6d, 0xad, 0x86, 0x4f, 0x49, 0xf8, 0x9c, 0x5c, 0xdc, 0x30, 0x6b, 0x8a, 0xe7, 0x29, 0xcc, 0xa6,
+	0x5b, 0x72, 0x12, 0xee, 0x72, 0x13, 0x62, 0x8d, 0xf3, 0x6c, 0xec, 0xc4, 0x36, 0xc2, 0x3d, 0x4f,
+	0x68, 0xc9, 0xe9, 0x06, 0x73, 0x72, 0x9c, 0x06, 0x13, 0x39, 0xb0, 0x18, 0xab, 0xc0, 0x71, 0x4e,
+	0x45, 0x4d, 0x71, 0xdc, 0xa8, 0x99, 0xd7, 0x82, 0x86, 0xef, 0xb3, 0x99, 0x0f, 0x9c, 0x0a, 0xa2,
+	0xe9, 0x71, 0x83, 0xc8, 0x7c, 0x60, 0xd8, 0xbb, 0x3b, 0xb0, 0x60, 0x3e, 0x30, 0x1c, 0x53, 0x97,
+	0x2e, 0x16, 0x53, 0x73, 0x5a, 0xda, 0x4e, 0x36, 0xb4, 0x6e, 0xa7, 0x59, 0x2d, 0x93, 0x6f, 0xe4,
+	0xed, 0x09, 0xc1, 0x54, 0xe8, 0xf6, 0xd2, 0xeb, 0xa9, 0x18, 0xdb, 0x3f, 0xb5, 0xa0, 0xbe, 0x4d,
+	0x53, 0x4b, 0x98, 0x4b, 0xb2, 0xc9, 0x50, 0x23, 0x58, 0x44, 0x63, 0x18, 0x09, 0xdb, 0x24, 0xf4,
+	0x0b, 0xa2, 0x9b, 0xb5, 0x92, 0x20, 0xec, 0xd1, 0x2f, 0x08, 0xba, 0x0e, 0x20, 0x17, 0x39, 0x7b,
+	0x46, 0x42, 0x75, 0xbb, 0xc5, 0x12, 0xbe, 0x2f, 0x08, 0xa2, 0x73, 0xeb, 0xd2, 0x80, 0x93, 0x58,
+	0x7a, 0x5f, 0x19, 0xeb, 0x99, 0xfd, 0x73, 0x0b, 0xae, 0x8d, 0x54, 0x43, 0x27, 0xe4, 0x87, 0x30,
+	0xad, 0xd2, 0xea, 0x18, 0x19, 0x52, 0xe7, 0x63, 0xcd, 0x88, 0x6e, 0xc2, 0x6c, 0x48, 0x8e, 0xb9,
+	0x93, 0x51, 0x4f, 0x75, 0x0e, 0x35, 0x41, 0xde, 0x35, 0x2a, 0xda, 0xbf, 0xb7, 0x60, 0xce, 0x78,
+	0xf2, 0x3a, 0x49, 0x3a, 0x31, 0x8d, 0x64, 0xc3, 0x3a, 0xca, 0x14, 0x37, 0xa0, 0xea, 0xd1, 0x24,
+	0x0a, 0xdc, 0x81, 0x23, 0xd7, 0x74, 0x2b, 0xa2, 0x69, 0x8f, 0x05, 0x64, 0x07, 0x40, 0xdc, 0x25,
+	0x7d, 0x16, 0xd3, 0xf4, 0xea, 0x91, 0x7b, 0xd0, 0x6d, 0x85, 0x1e, 0x64, 0xbe, 0x8d, 0x33, 0x22,
+	0xec, 0x4f, 0x61, 0x5e, 0x59, 0x4a, 0xbf, 0xa0, 0x98, 0xa3, 0xaa, 0x43, 0x49, 0xa3, 0x06, 0x5a,
+	0xc7, 0x74, 0x8e, 0x56, 0xa0, 0x16, 0xb8, 0xa1, 0xdf, 0x57, 0x2e, 0xed, 0x19, 0x45, 0xab, 0x86,
+	0xd8, 0x66, 0x1e, 0xb1, 0x7d, 0x58, 0x38, 0x25, 0x58, 0x1b, 0xff, 0xf1, 0x88, 0x77, 0x9e, 0xe6,
+	0x79, 0x12, 0x41, 0x76, 0x0b, 0x27, 0x4f, 0x3e, 0xf6, 0x36, 0xcc, 0x8d, 0xd8, 0xe4, 0x05, 0x0d,
+	0x6c, 0x3f, 0x80, 0xd7, 0x84, 0xda, 0x98, 0x31, 0xde, 0x4e, 0xad, 0x64, 0x8c, 0xf2, 0xd2, 0xc6,
+	0xad, 0x11, 0x1b, 0xef, 0xa9, 0x10, 0x38, 0x2d, 0x41, 0xef, 0x7e, 0xf8, 0x00, 0xad, 0xff, 0xfe,
+	0x00, 0xff, 0x59, 0x80, 0xa2, 0x7c, 0xe7, 0x40, 0x6f, 0x41, 0x8d, 0x86, 0x9c, 0xf8, 0x24, 0x76,
+	0xd4, 0x6b, 0x90, 0xcc, 0xe0, 0x9b, 0x13, 0xb8, 0xaa, 0xc9, 0x0a, 0x76, 0x03, 0x2a, 0xdd, 0x80,
+	0xb9, 0x5c, 0x83, 0x84, 0x0d, 0xac, 0xcd, 0x09, 0x0c, 0x92, 0xa8, 0x20, 0x2b, 0xa2, 0xe8, 0xc5,
+	0x34, 0xf4, 0x9d, 0xe1, 0x67, 0xa5, 0x8a, 0xa2, 0xa6, 0x9f, 0x3b, 0x60, 0x2c, 0x20, 0x6e, 0xa8,
+	0x51, 0x53, 0xba, 0x6b, 0xad, 0x6a, 0xb2, 0x82, 0x6d, 0xc0, 0x6c, 0xfa, 0x60, 0xa8, 0x81, 0xc5,
+	0xb3, 0x12, 0xf5, 0xe6, 0x04, 0x9e, 0x49, 0x99, 0x94, 0x98, 0xf7, 0x00, 0x04, 0x45, 0x4b, 0x50,
+	0x19, 0x74, 0xd1, 0x48, 0x10, 0xae, 0x24, 0xb9, 0x77, 0xba, 0xeb, 0xee, 0x60, 0x73, 0x02, 0x97,
+	0x05, 0x56, 0x31, 0xb6, 0x00, 0x3c, 0x51, 0x22, 0x14, 0xa3, 0x4a, 0x8d, 0x57, 0x86, 0x18, 0xd7,
+	0x5d, 0x2e, 0x0a, 0x7e, 0x59, 0xc0, 0x24, 0x8f, 0xa9, 0xd0, 0xb7, 0x38, 0x40, 0xe6, 0x31, 0xb0,
+	0x0e, 0x8b, 0xdb, 0x5b, 0x1f, 0x6d, 0x6c, 0x6f, 0x6d, 0xee, 0xec, 0xac, 0x3b, 0x9f, 0x3c, 0xde,
+	0xdb, 0xdd, 0x68, 0x6f, 0x3d, 0xda, 0xda, 0x58, 0xbf, 0x3c, 0x81, 0xae, 0x40, 0xed, 0xe9, 0x06,
+	0xfe, 0xcc, 0xf9, 0xe4, 0xb1, 0x84, 0x7c, 0x76, 0xd9, 0x42, 0x55, 0x28, 0xa5, 0xb3, 0x82, 0x98,
+	0xed, 0xee, 0xec, 0xed, 0x6d, 0xad, 0x6d, 0x6f, 0x5c, 0x9e, 0x44, 0x00, 0xd3, 0x7a, 0x65, 0x0a,
+	0xcd, 0x42, 0x45, 0xb2, 0x6a, 0x42, 0xb1, 0xf5, 0xef, 0x4b, 0x00, 0xeb, 0x41, 0xb4, 0x47, 0xe2,
+	0xe7, 0xb4, 0x43, 0xd0, 0xef, 0x2c, 0x98, 0x19, 0x6e, 0x2c, 0xd1, 0x9d, 0xf3, 0xd5, 0xa6, 0x4c,
+	0xbb, 0x5c, 0x6f, 0x8d, 0xc3, 0xa2, 0x7c, 0xd5, 0x5e, 0xf9, 0xc9, 0x3f, 0xbe, 0xfe, 0x65, 0xe1,
+	0xba, 0xbd, 0x94, 0x3e, 0x1b, 0x77, 0x14, 0xe2, 0x7d, 0x5d, 0x31, 0xdf, 0xb7, 0x6e, 0xa1, 0x5f,
+	0x5b, 0xe2, 0x52, 0x96, 0x69, 0xfd, 0xd1, 0xbb, 0xe3, 0xde, 0x01, 0xeb, 0x77, 0xc6, 0xe0, 0xd0,
+	0xba, 0xd9, 0x52, 0xb7, 0xd7, 0xed, 0xab, 0x2f, 0xe9, 0xa6, 0x2e, 0x3a, 0x42, 0xb5, 0xdf, 0x5a,
+	0xb0, 0x38, 0xba, 0x65, 0x46, 0xf7, 0x72, 0x43, 0x2e, 0xaf, 0xcd, 0xae, 0x5f, 0x37, 0xac, 0x99,
+	0xc7, 0xf7, 0x46, 0x8a, 0xb2, 0x6f, 0x4a, 0xc5, 0x96, 0xed, 0x6b, 0xa9, 0x62, 0xda, 0x58, 0x99,
+	0x07, 0x7a, 0xa1, 0xdc, 0x5f, 0x2d, 0x98, 0x1b, 0x51, 0xa3, 0xd0, 0xdd, 0xfc, 0xb7, 0xba, 0x57,
+	0xd5, 0xd6, 0xfa, 0x7b, 0x63, 0xf3, 0x69, 0x4b, 0xb6, 0xa4, 0xc2, 0xb7, 0xd1, 0xad, 0x54, 0xe1,
+	0x2f, 0x45, 0x72, 0xbc, 0x6f, 0xd4, 0xd6, 0x17, 0x90, 0xe6, 0xad, 0x17, 0xcd, 0xf4, 0xe1, 0xf3,
+	0x2f, 0x16, 0xd4, 0x86, 0xb2, 0x7b, 0xfe, 0xa1, 0x8f, 0xaa, 0x30, 0xf9, 0x87, 0x3e, 0xb2, 0x74,
+	0xd8, 0x77, 0xa5, 0xaa, 0xef, 0xa2, 0x46, 0xaa, 0x6a, 0x3c, 0x94, 0x65, 0x9b, 0x5f, 0x9a, 0x1a,
+	0x75, 0xff, 0xd6, 0x8b, 0xe6, 0xc9, 0x5f, 0x81, 0x3f, 0x58, 0x80, 0x5e, 0xce, 0xc9, 0xe8, 0xbb,
+	0x67, 0x69, 0x30, 0xb2, 0x0a, 0xd4, 0xef, 0x8e, 0xcb, 0xa6, 0xb5, 0x7f, 0x43, 0x6a, 0xff, 0x1a,
+	0xba, 0xfa, 0x0a, 0xed, 0xd7, 0x7e, 0x66, 0xc1, 0xb7, 0x3a, 0xac, 0x97, 0x23, 0x7e, 0xad, 0xb4,
+	0x1e, 0x44, 0xbb, 0x22, 0x5f, 0xee, 0x5a, 0x3f, 0xbc, 0xaf, 0x71, 0x3e, 0x13, 0xf5, 0xa7, 0xc1,
+	0x62, 0xbf, 0xe9, 0x93, 0x50, 0x66, 0xd3, 0xa6, 0x5a, 0x72, 0x23, 0x9a, 0x8c, 0xfa, 0xfd, 0xf3,
+	0x81, 0x17, 0x44, 0x7f, 0x2e, 0x2c, 0x7d, 0x5f, 0xf1, 0xcb, 0xfb, 0x4a, 0x63, 0x3d, 0x88, 0x1a,
+	0x4f, 0x5b, 0x6b, 0x62, 0xf9, 0x60, 0x5a, 0x0a, 0xf9, 0xce, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff,
+	0xdb, 0xce, 0x36, 0xff, 0xc7, 0x1a, 0x00, 0x00,
 }
diff --git a/googleapis/privacy/dlp/v2beta1/storage.pb.go b/googleapis/privacy/dlp/v2beta1/storage.pb.go
index 63558571..043ba03f 100644
--- a/googleapis/privacy/dlp/v2beta1/storage.pb.go
+++ b/googleapis/privacy/dlp/v2beta1/storage.pb.go
@@ -7,6 +7,7 @@ import proto "github.com/golang/protobuf/proto"
 import fmt "fmt"
 import math "math"
 import _ "google.golang.org/genproto/googleapis/api/annotations"
+import _ "github.com/golang/protobuf/ptypes/timestamp"
 
 // Reference imports to suppress errors if they are not otherwise used.
 var _ = proto.Marshal
@@ -15,10 +16,7 @@ var _ = math.Inf
 
 // Type of information detected by the API.
 type InfoType struct {
-	// Name of the information type. For built-in info types, this is provided by
-	// the API call ListInfoTypes. For user-defined info types, this is
-	// provided by the user. All user-defined info types must have unique names,
-	// and cannot conflict with built-in info type names.
+	// Name of the information type.
 	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
 }
 
@@ -36,7 +34,7 @@ func (m *InfoType) GetName() string {
 
 // General identifier of a data field in a storage service.
 type FieldId struct {
-	// Column name describing the field.
+	// Name describing the field.
 	ColumnName string `protobuf:"bytes,1,opt,name=column_name,json=columnName" json:"column_name,omitempty"`
 }
 
@@ -232,18 +230,47 @@ func (m *CloudStoragePath) GetPath() string {
 	return ""
 }
 
+// Options defining BigQuery table and row identifiers.
+type BigQueryOptions struct {
+	// Complete BigQuery table reference.
+	TableReference *BigQueryTable `protobuf:"bytes,1,opt,name=table_reference,json=tableReference" json:"table_reference,omitempty"`
+	// References to fields uniquely identifying rows within the table.
+	// Nested fields in the format, like `person.birthdate.year`, are allowed.
+	IdentifyingFields []*FieldId `protobuf:"bytes,2,rep,name=identifying_fields,json=identifyingFields" json:"identifying_fields,omitempty"`
+}
+
+func (m *BigQueryOptions) Reset()                    { *m = BigQueryOptions{} }
+func (m *BigQueryOptions) String() string            { return proto.CompactTextString(m) }
+func (*BigQueryOptions) ProtoMessage()               {}
+func (*BigQueryOptions) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{9} }
+
+func (m *BigQueryOptions) GetTableReference() *BigQueryTable {
+	if m != nil {
+		return m.TableReference
+	}
+	return nil
+}
+
+func (m *BigQueryOptions) GetIdentifyingFields() []*FieldId {
+	if m != nil {
+		return m.IdentifyingFields
+	}
+	return nil
+}
+
 // Shared message indicating Cloud storage type.
 type StorageConfig struct {
 	// Types that are valid to be assigned to Type:
 	//	*StorageConfig_DatastoreOptions
 	//	*StorageConfig_CloudStorageOptions
+	//	*StorageConfig_BigQueryOptions
 	Type isStorageConfig_Type `protobuf_oneof:"type"`
 }
 
 func (m *StorageConfig) Reset()                    { *m = StorageConfig{} }
 func (m *StorageConfig) String() string            { return proto.CompactTextString(m) }
 func (*StorageConfig) ProtoMessage()               {}
-func (*StorageConfig) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{9} }
+func (*StorageConfig) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{10} }
 
 type isStorageConfig_Type interface {
 	isStorageConfig_Type()
@@ -255,9 +282,13 @@ type StorageConfig_DatastoreOptions struct {
 type StorageConfig_CloudStorageOptions struct {
 	CloudStorageOptions *CloudStorageOptions `protobuf:"bytes,3,opt,name=cloud_storage_options,json=cloudStorageOptions,oneof"`
 }
+type StorageConfig_BigQueryOptions struct {
+	BigQueryOptions *BigQueryOptions `protobuf:"bytes,4,opt,name=big_query_options,json=bigQueryOptions,oneof"`
+}
 
 func (*StorageConfig_DatastoreOptions) isStorageConfig_Type()    {}
 func (*StorageConfig_CloudStorageOptions) isStorageConfig_Type() {}
+func (*StorageConfig_BigQueryOptions) isStorageConfig_Type()     {}
 
 func (m *StorageConfig) GetType() isStorageConfig_Type {
 	if m != nil {
@@ -280,11 +311,19 @@ func (m *StorageConfig) GetCloudStorageOptions() *CloudStorageOptions {
 	return nil
 }
 
+func (m *StorageConfig) GetBigQueryOptions() *BigQueryOptions {
+	if x, ok := m.GetType().(*StorageConfig_BigQueryOptions); ok {
+		return x.BigQueryOptions
+	}
+	return nil
+}
+
 // XXX_OneofFuncs is for the internal use of the proto package.
 func (*StorageConfig) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
 	return _StorageConfig_OneofMarshaler, _StorageConfig_OneofUnmarshaler, _StorageConfig_OneofSizer, []interface{}{
 		(*StorageConfig_DatastoreOptions)(nil),
 		(*StorageConfig_CloudStorageOptions)(nil),
+		(*StorageConfig_BigQueryOptions)(nil),
 	}
 }
 
@@ -302,6 +341,11 @@ func _StorageConfig_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
 		if err := b.EncodeMessage(x.CloudStorageOptions); err != nil {
 			return err
 		}
+	case *StorageConfig_BigQueryOptions:
+		b.EncodeVarint(4<<3 | proto.WireBytes)
+		if err := b.EncodeMessage(x.BigQueryOptions); err != nil {
+			return err
+		}
 	case nil:
 	default:
 		return fmt.Errorf("StorageConfig.Type has unexpected type %T", x)
@@ -328,6 +372,14 @@ func _StorageConfig_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.
 		err := b.DecodeMessage(msg)
 		m.Type = &StorageConfig_CloudStorageOptions{msg}
 		return true, err
+	case 4: // type.big_query_options
+		if wire != proto.WireBytes {
+			return true, proto.ErrInternalBadWireType
+		}
+		msg := new(BigQueryOptions)
+		err := b.DecodeMessage(msg)
+		m.Type = &StorageConfig_BigQueryOptions{msg}
+		return true, err
 	default:
 		return false, nil
 	}
@@ -347,6 +399,11 @@ func _StorageConfig_OneofSizer(msg proto.Message) (n int) {
 		n += proto.SizeVarint(3<<3 | proto.WireBytes)
 		n += proto.SizeVarint(uint64(s))
 		n += s
+	case *StorageConfig_BigQueryOptions:
+		s := proto.Size(x.BigQueryOptions)
+		n += proto.SizeVarint(4<<3 | proto.WireBytes)
+		n += proto.SizeVarint(uint64(s))
+		n += s
 	case nil:
 	default:
 		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
@@ -365,7 +422,7 @@ type CloudStorageKey struct {
 func (m *CloudStorageKey) Reset()                    { *m = CloudStorageKey{} }
 func (m *CloudStorageKey) String() string            { return proto.CompactTextString(m) }
 func (*CloudStorageKey) ProtoMessage()               {}
-func (*CloudStorageKey) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{10} }
+func (*CloudStorageKey) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{11} }
 
 func (m *CloudStorageKey) GetFilePath() string {
 	if m != nil {
@@ -390,7 +447,7 @@ type DatastoreKey struct {
 func (m *DatastoreKey) Reset()                    { *m = DatastoreKey{} }
 func (m *DatastoreKey) String() string            { return proto.CompactTextString(m) }
 func (*DatastoreKey) ProtoMessage()               {}
-func (*DatastoreKey) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{11} }
+func (*DatastoreKey) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{12} }
 
 func (m *DatastoreKey) GetEntityKey() *Key {
 	if m != nil {
@@ -423,7 +480,7 @@ type Key struct {
 func (m *Key) Reset()                    { *m = Key{} }
 func (m *Key) String() string            { return proto.CompactTextString(m) }
 func (*Key) ProtoMessage()               {}
-func (*Key) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{12} }
+func (*Key) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{13} }
 
 func (m *Key) GetPartitionId() *PartitionId {
 	if m != nil {
@@ -460,7 +517,7 @@ type Key_PathElement struct {
 func (m *Key_PathElement) Reset()                    { *m = Key_PathElement{} }
 func (m *Key_PathElement) String() string            { return proto.CompactTextString(m) }
 func (*Key_PathElement) ProtoMessage()               {}
-func (*Key_PathElement) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{12, 0} }
+func (*Key_PathElement) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{13, 0} }
 
 type isKey_PathElement_IdType interface {
 	isKey_PathElement_IdType()
@@ -580,7 +637,7 @@ type RecordKey struct {
 func (m *RecordKey) Reset()                    { *m = RecordKey{} }
 func (m *RecordKey) String() string            { return proto.CompactTextString(m) }
 func (*RecordKey) ProtoMessage()               {}
-func (*RecordKey) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{13} }
+func (*RecordKey) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{14} }
 
 type isRecordKey_Type interface {
 	isRecordKey_Type()
@@ -691,6 +748,47 @@ func _RecordKey_OneofSizer(msg proto.Message) (n int) {
 	return n
 }
 
+// Message defining the location of a BigQuery table. A table is uniquely
+// identified  by its project_id, dataset_id, and table_name. Within a query
+// a table is often referenced with a string in the format of:
+// `<project_id>:<dataset_id>.<table_id>` or
+// `<project_id>.<dataset_id>.<table_id>`.
+type BigQueryTable struct {
+	// The Google Cloud Platform project ID of the project containing the table.
+	// If omitted, project ID is inferred from the API call.
+	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
+	// Dataset ID of the table.
+	DatasetId string `protobuf:"bytes,2,opt,name=dataset_id,json=datasetId" json:"dataset_id,omitempty"`
+	// Name of the table.
+	TableId string `protobuf:"bytes,3,opt,name=table_id,json=tableId" json:"table_id,omitempty"`
+}
+
+func (m *BigQueryTable) Reset()                    { *m = BigQueryTable{} }
+func (m *BigQueryTable) String() string            { return proto.CompactTextString(m) }
+func (*BigQueryTable) ProtoMessage()               {}
+func (*BigQueryTable) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{15} }
+
+func (m *BigQueryTable) GetProjectId() string {
+	if m != nil {
+		return m.ProjectId
+	}
+	return ""
+}
+
+func (m *BigQueryTable) GetDatasetId() string {
+	if m != nil {
+		return m.DatasetId
+	}
+	return ""
+}
+
+func (m *BigQueryTable) GetTableId() string {
+	if m != nil {
+		return m.TableId
+	}
+	return ""
+}
+
 func init() {
 	proto.RegisterType((*InfoType)(nil), "google.privacy.dlp.v2beta1.InfoType")
 	proto.RegisterType((*FieldId)(nil), "google.privacy.dlp.v2beta1.FieldId")
@@ -702,64 +800,75 @@ func init() {
 	proto.RegisterType((*CloudStorageOptions)(nil), "google.privacy.dlp.v2beta1.CloudStorageOptions")
 	proto.RegisterType((*CloudStorageOptions_FileSet)(nil), "google.privacy.dlp.v2beta1.CloudStorageOptions.FileSet")
 	proto.RegisterType((*CloudStoragePath)(nil), "google.privacy.dlp.v2beta1.CloudStoragePath")
+	proto.RegisterType((*BigQueryOptions)(nil), "google.privacy.dlp.v2beta1.BigQueryOptions")
 	proto.RegisterType((*StorageConfig)(nil), "google.privacy.dlp.v2beta1.StorageConfig")
 	proto.RegisterType((*CloudStorageKey)(nil), "google.privacy.dlp.v2beta1.CloudStorageKey")
 	proto.RegisterType((*DatastoreKey)(nil), "google.privacy.dlp.v2beta1.DatastoreKey")
 	proto.RegisterType((*Key)(nil), "google.privacy.dlp.v2beta1.Key")
 	proto.RegisterType((*Key_PathElement)(nil), "google.privacy.dlp.v2beta1.Key.PathElement")
 	proto.RegisterType((*RecordKey)(nil), "google.privacy.dlp.v2beta1.RecordKey")
+	proto.RegisterType((*BigQueryTable)(nil), "google.privacy.dlp.v2beta1.BigQueryTable")
 }
 
 func init() { proto.RegisterFile("google/privacy/dlp/v2beta1/storage.proto", fileDescriptor1) }
 
 var fileDescriptor1 = []byte{
-	// 762 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0xdd, 0x6e, 0xe3, 0x44,
-	0x14, 0x8e, 0x93, 0x68, 0xdb, 0x1c, 0x67, 0xd9, 0xd4, 0x0b, 0x52, 0x94, 0x85, 0xfd, 0xb1, 0xd0,
-	0x6e, 0xb4, 0x05, 0x5b, 0x84, 0x0b, 0x2e, 0x10, 0x45, 0x4a, 0x7f, 0x48, 0x88, 0xd4, 0x04, 0xb7,
-	0x02, 0x01, 0x17, 0xd6, 0xd4, 0x33, 0x71, 0x87, 0x3a, 0x33, 0x23, 0x7b, 0x5a, 0xe1, 0x17, 0x40,
-	0x3c, 0x0b, 0x2f, 0xc1, 0x83, 0x70, 0x8f, 0x78, 0x0c, 0x34, 0x3f, 0x49, 0xdc, 0x1f, 0xd2, 0x22,
-	0xed, 0xdd, 0xe4, 0xe4, 0x9c, 0xef, 0xcc, 0xf9, 0xbe, 0xef, 0x8c, 0xa1, 0x9f, 0x72, 0x9e, 0x66,
-	0x24, 0x14, 0x39, 0xbd, 0x42, 0x49, 0x19, 0xe2, 0x4c, 0x84, 0x57, 0x83, 0x33, 0x22, 0xd1, 0x67,
-	0x61, 0x21, 0x79, 0x8e, 0x52, 0x12, 0x88, 0x9c, 0x4b, 0xee, 0xf5, 0x4c, 0x66, 0x60, 0x33, 0x03,
-	0x9c, 0x89, 0xc0, 0x66, 0xf6, 0x3e, 0xb4, 0x28, 0x48, 0xd0, 0x10, 0x31, 0xc6, 0x25, 0x92, 0x94,
-	0xb3, 0xc2, 0x54, 0xfa, 0xcf, 0x61, 0x7b, 0xcc, 0xe6, 0xfc, 0xb4, 0x14, 0xc4, 0xf3, 0xa0, 0xc9,
-	0xd0, 0x82, 0x74, 0x9d, 0x97, 0x4e, 0xbf, 0x15, 0xe9, 0xb3, 0xff, 0x16, 0xb6, 0x8e, 0x28, 0xc9,
-	0xf0, 0x18, 0x7b, 0x2f, 0xc0, 0x4d, 0x78, 0x76, 0xb9, 0x60, 0x71, 0x25, 0x0b, 0x4c, 0xe8, 0x58,
-	0xe5, 0x4e, 0xc1, 0x9d, 0xa1, 0x5c, 0x52, 0x85, 0x3f, 0xc6, 0xde, 0x47, 0x00, 0x22, 0xe7, 0xbf,
-	0x90, 0x44, 0xc6, 0x14, 0x77, 0xeb, 0x3a, 0xbd, 0x65, 0x23, 0x63, 0xec, 0xbd, 0x82, 0xb6, 0xc2,
-	0x29, 0x04, 0x4a, 0x88, 0x4a, 0x68, 0xea, 0x04, 0x77, 0x15, 0x1b, 0x63, 0xff, 0x63, 0x78, 0x6f,
-	0x42, 0x19, 0x3e, 0xfc, 0x55, 0xe4, 0xa4, 0x28, 0x28, 0x67, 0x77, 0x5e, 0xf1, 0x0d, 0xec, 0xcc,
-	0x72, 0x2e, 0x48, 0x2e, 0xcb, 0x88, 0xcc, 0x49, 0x4e, 0x58, 0xb2, 0x9e, 0xa5, 0x5e, 0x49, 0xfc,
-	0x01, 0x60, 0x66, 0xda, 0x2b, 0xa8, 0x31, 0x6c, 0x0b, 0x5b, 0xa6, 0xe1, 0xdc, 0xc1, 0xa7, 0xc1,
-	0x7f, 0xd3, 0x18, 0xdc, 0x6a, 0x11, 0xad, 0xca, 0xfd, 0xbf, 0x1d, 0xe8, 0x1c, 0x20, 0x89, 0x94,
-	0x28, 0x64, 0x2a, 0x34, 0xbf, 0xde, 0xb7, 0xd0, 0x16, 0x4b, 0x36, 0xd4, 0x7c, 0xa6, 0xc7, 0x9b,
-	0x8d, 0x3d, 0xd6, 0xec, 0x45, 0xae, 0xa8, 0x50, 0xb9, 0x07, 0xcd, 0x0b, 0xca, 0x0c, 0x89, 0xee,
-	0xe0, 0xed, 0x26, 0x8c, 0xeb, 0x84, 0x45, 0xba, 0xce, 0x3b, 0x5a, 0x49, 0x41, 0x39, 0xeb, 0x36,
-	0x5e, 0x36, 0xfa, 0xee, 0xe0, 0xf5, 0x3d, 0xd3, 0xda, 0xec, 0xa8, 0x52, 0xe9, 0xff, 0xe6, 0xc0,
-	0xd3, 0xfd, 0x8c, 0x5f, 0xe2, 0x13, 0x63, 0xbf, 0xe5, 0xac, 0x11, 0x6c, 0xcf, 0x69, 0x46, 0xe2,
-	0x82, 0x48, 0x3b, 0xe7, 0x17, 0x9b, 0xd0, 0xef, 0x80, 0x08, 0x8e, 0x68, 0x46, 0x4e, 0x88, 0x8c,
-	0xb6, 0xe6, 0xe6, 0xd0, 0x7b, 0xa6, 0x9c, 0xa7, 0x8f, 0x5e, 0x07, 0x1a, 0x97, 0x79, 0x66, 0x45,
-	0x57, 0x47, 0xff, 0x35, 0x74, 0xaa, 0x20, 0x33, 0x24, 0xcf, 0x95, 0xe4, 0x02, 0xc9, 0xf3, 0xa5,
-	0x37, 0xd4, 0xd9, 0xff, 0xcb, 0x81, 0xc7, 0x36, 0x67, 0x9f, 0xb3, 0x39, 0x4d, 0xbd, 0x9f, 0x61,
-	0x07, 0x2f, 0xa5, 0x8a, 0xb9, 0x69, 0x6e, 0x79, 0xfd, 0x64, 0xd3, 0x9d, 0x6f, 0xea, 0x3b, 0xaa,
-	0x45, 0x1d, 0x7c, 0x53, 0x73, 0x02, 0x1f, 0x24, 0xea, 0x5a, 0xb1, 0x5d, 0xcf, 0x55, 0x83, 0x86,
-	0x6e, 0x10, 0xfe, 0x4f, 0x52, 0x46, 0xb5, 0xe8, 0x69, 0x72, 0x3b, 0x3c, 0x7c, 0x04, 0x4d, 0x59,
-	0x0a, 0xe2, 0x7f, 0x07, 0x4f, 0xaa, 0x55, 0x13, 0x52, 0x7a, 0xcf, 0xa0, 0xa5, 0x95, 0xa8, 0x30,
-	0xa1, 0xa5, 0xd1, 0x0c, 0xbd, 0x82, 0x76, 0x21, 0x51, 0x2e, 0x63, 0x3e, 0x9f, 0x2b, 0xa9, 0xd4,
-	0xd8, 0x8d, 0xc8, 0xd5, 0xb1, 0xa9, 0x0e, 0xf9, 0xc7, 0xd0, 0x5e, 0x4d, 0xaa, 0xf0, 0xf6, 0x00,
-	0x08, 0x93, 0x54, 0x96, 0xf1, 0x05, 0x59, 0xee, 0xc9, 0x8b, 0x8d, 0xfe, 0x23, 0x65, 0xd4, 0x32,
-	0x25, 0x13, 0x52, 0xfa, 0xff, 0x38, 0xd0, 0x50, 0x38, 0xef, 0x72, 0x1b, 0xbe, 0xb6, 0x42, 0xd7,
-	0xb5, 0x8f, 0x77, 0xef, 0xb9, 0x4d, 0xa0, 0x46, 0x3f, 0xcc, 0xc8, 0x82, 0x30, 0x69, 0x5c, 0xd1,
-	0x3b, 0x55, 0x0f, 0xd5, 0x2a, 0xa8, 0x8c, 0xa3, 0xb7, 0xcb, 0x1a, 0x47, 0x6f, 0x4c, 0x07, 0xea,
-	0xf6, 0xd1, 0x6a, 0x8c, 0x6a, 0x51, 0x9d, 0x62, 0xef, 0x7d, 0xfb, 0xa2, 0x28, 0x29, 0x5b, 0xa3,
-	0x9a, 0x79, 0x53, 0x86, 0x2d, 0xd8, 0xa2, 0x38, 0xd6, 0x6a, 0xfc, 0xe9, 0x40, 0x2b, 0x22, 0x09,
-	0xcf, 0xb1, 0x1a, 0xf8, 0x47, 0xd8, 0xb9, 0x6e, 0x85, 0x35, 0x7f, 0xbb, 0x0f, 0xb5, 0xc1, 0x84,
-	0x94, 0xa3, 0x5a, 0xf4, 0x24, 0xb9, 0xa1, 0xf1, 0x14, 0x1e, 0xaf, 0x2d, 0xac, 0x60, 0x8d, 0x7d,
-	0xfb, 0x0f, 0xb2, 0xaf, 0xc1, 0x6c, 0xe3, 0xca, 0xef, 0xa5, 0x9f, 0x86, 0xbf, 0x3b, 0xf0, 0x3c,
-	0xe1, 0x8b, 0x0d, 0x38, 0x43, 0x38, 0xc8, 0xc4, 0x72, 0xe9, 0x9c, 0x9f, 0xbe, 0xb2, 0x99, 0x29,
-	0xcf, 0x10, 0x4b, 0x03, 0x9e, 0xa7, 0x61, 0x4a, 0x98, 0xfe, 0xb2, 0x84, 0xe6, 0x2f, 0x24, 0x68,
-	0x71, 0xd7, 0x07, 0xec, 0x4b, 0x9c, 0x89, 0x3f, 0xea, 0xdd, 0x6f, 0x4c, 0xbd, 0x1e, 0x3a, 0x38,
-	0xc8, 0x44, 0xf0, 0xfd, 0x60, 0xa8, 0xfe, 0x3e, 0x7b, 0xa4, 0x41, 0x3e, 0xff, 0x37, 0x00, 0x00,
-	0xff, 0xff, 0x86, 0xa8, 0xf9, 0x3f, 0x04, 0x07, 0x00, 0x00,
+	// 909 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xef, 0x6e, 0x1b, 0x45,
+	0x10, 0xcf, 0xd9, 0x56, 0x13, 0x8f, 0x9d, 0xc6, 0xbe, 0x82, 0x64, 0x5c, 0xda, 0xb4, 0x07, 0x6a,
+	0x43, 0x03, 0x77, 0xc2, 0x7c, 0xe0, 0x03, 0xa2, 0x48, 0x6e, 0x1a, 0x62, 0x22, 0x35, 0xe9, 0x36,
+	0x02, 0x15, 0x3e, 0x9c, 0xd6, 0xb7, 0x7b, 0x97, 0xa5, 0xe7, 0xdb, 0xe5, 0x6e, 0x5d, 0x71, 0x2f,
+	0x80, 0x78, 0x16, 0x1e, 0x00, 0x89, 0x4f, 0xbc, 0x0d, 0xe2, 0x31, 0xd0, 0xfe, 0xf1, 0xf9, 0x62,
+	0x8c, 0x1b, 0xa4, 0x7e, 0x5b, 0xcf, 0xcd, 0xfc, 0x66, 0xe7, 0x37, 0xbf, 0x99, 0x35, 0x1c, 0x24,
+	0x9c, 0x27, 0x29, 0x0d, 0x44, 0xce, 0x5e, 0xe3, 0xa8, 0x0c, 0x48, 0x2a, 0x82, 0xd7, 0xa3, 0x29,
+	0x95, 0xf8, 0xd3, 0xa0, 0x90, 0x3c, 0xc7, 0x09, 0xf5, 0x45, 0xce, 0x25, 0x77, 0x87, 0xc6, 0xd3,
+	0xb7, 0x9e, 0x3e, 0x49, 0x85, 0x6f, 0x3d, 0x87, 0xef, 0x5b, 0x14, 0x2c, 0x58, 0x80, 0xb3, 0x8c,
+	0x4b, 0x2c, 0x19, 0xcf, 0x0a, 0x13, 0x39, 0xdc, 0xaf, 0x72, 0x70, 0xc9, 0xa7, 0xf3, 0x38, 0x90,
+	0x6c, 0x46, 0x0b, 0x89, 0x67, 0xc2, 0x38, 0x78, 0x77, 0x61, 0x67, 0x92, 0xc5, 0xfc, 0xa2, 0x14,
+	0xd4, 0x75, 0xa1, 0x95, 0xe1, 0x19, 0x1d, 0x38, 0xf7, 0x9c, 0x83, 0x36, 0xd2, 0x67, 0xef, 0x11,
+	0x6c, 0x1f, 0x33, 0x9a, 0x92, 0x09, 0x71, 0xf7, 0xa1, 0x13, 0xf1, 0x74, 0x3e, 0xcb, 0xc2, 0x9a,
+	0x17, 0x18, 0xd3, 0x33, 0xe5, 0x7b, 0x06, 0x9d, 0x73, 0x9c, 0x4b, 0xa6, 0x2e, 0x30, 0x21, 0xee,
+	0x1d, 0x00, 0x91, 0xf3, 0x1f, 0x69, 0x24, 0x43, 0x46, 0x06, 0x0d, 0xed, 0xde, 0xb6, 0x96, 0x09,
+	0x71, 0xef, 0x43, 0x57, 0xe1, 0x14, 0x02, 0x47, 0x54, 0x39, 0xb4, 0xb4, 0x43, 0xa7, 0xb2, 0x4d,
+	0x88, 0xf7, 0x21, 0xdc, 0x3c, 0x65, 0x19, 0x79, 0xfa, 0xb3, 0xc8, 0x69, 0x51, 0x30, 0x9e, 0xad,
+	0xbd, 0xe2, 0x43, 0xe8, 0x9f, 0xe7, 0x5c, 0xd0, 0x5c, 0x96, 0x88, 0xc6, 0x34, 0xa7, 0x59, 0xb4,
+	0xac, 0xa5, 0x51, 0x73, 0xfc, 0x0e, 0xe0, 0xdc, 0xa4, 0x57, 0x50, 0x13, 0xd8, 0x11, 0x36, 0x4c,
+	0xc3, 0x75, 0x46, 0x9f, 0xf8, 0xff, 0xcd, 0xb3, 0xff, 0xaf, 0x14, 0xa8, 0x0a, 0xf7, 0xfe, 0x72,
+	0xa0, 0x77, 0x84, 0x25, 0x56, 0x5d, 0xa3, 0x67, 0x42, 0x37, 0xc0, 0xfd, 0x06, 0xba, 0x62, 0xc1,
+	0x86, 0xaa, 0xcf, 0xe4, 0x78, 0xb8, 0x31, 0xc7, 0x92, 0x3d, 0xd4, 0x11, 0x35, 0x2a, 0x1f, 0x43,
+	0xeb, 0x15, 0xcb, 0x0c, 0x89, 0x9d, 0xd1, 0xa3, 0x4d, 0x18, 0x57, 0x09, 0x43, 0x3a, 0xce, 0x3d,
+	0xae, 0x5a, 0xc1, 0x78, 0x36, 0x68, 0xde, 0x6b, 0x1e, 0x74, 0x46, 0x0f, 0xde, 0x50, 0xad, 0xf5,
+	0x46, 0xb5, 0x48, 0xef, 0x17, 0x07, 0x6e, 0x3d, 0x49, 0xf9, 0x9c, 0xbc, 0x30, 0xfa, 0x5c, 0xd4,
+	0x8a, 0x60, 0x27, 0x66, 0x29, 0x0d, 0x0b, 0x2a, 0x6d, 0x9d, 0x9f, 0x6f, 0x42, 0x5f, 0x03, 0xe1,
+	0x1f, 0xb3, 0x94, 0xbe, 0xa0, 0x12, 0x6d, 0xc7, 0xe6, 0x30, 0xbc, 0xad, 0x94, 0xa7, 0x8f, 0x6e,
+	0x0f, 0x9a, 0xf3, 0x3c, 0xb5, 0x4d, 0x57, 0x47, 0xef, 0x01, 0xf4, 0xea, 0x20, 0xe7, 0x58, 0x5e,
+	0xaa, 0x96, 0x0b, 0x2c, 0x2f, 0x17, 0xda, 0x50, 0x67, 0xef, 0x0f, 0x07, 0xf6, 0xc6, 0x2c, 0x79,
+	0x3e, 0xa7, 0x79, 0xb9, 0xbc, 0xec, 0x9e, 0xc4, 0xd3, 0x94, 0x86, 0xf9, 0xa2, 0x95, 0xf6, 0xce,
+	0x1f, 0x6d, 0xba, 0xf3, 0x02, 0xe5, 0x42, 0x85, 0xa2, 0x9b, 0x1a, 0x61, 0x29, 0x37, 0x04, 0x2e,
+	0x23, 0x34, 0x93, 0x2c, 0x2e, 0x59, 0x96, 0x84, 0xb1, 0x1a, 0x99, 0x62, 0xd0, 0xd0, 0x44, 0x7f,
+	0xb0, 0x09, 0xd6, 0x0e, 0x17, 0xea, 0xd7, 0xc2, 0xb5, 0xad, 0xf0, 0x7e, 0x6f, 0xc0, 0xae, 0xad,
+	0xef, 0x09, 0xcf, 0x62, 0x96, 0xb8, 0x3f, 0x40, 0x9f, 0x2c, 0x64, 0x16, 0x72, 0x53, 0x8e, 0xd5,
+	0xc4, 0xc7, 0x9b, 0x92, 0xac, 0x6a, 0xf3, 0x64, 0x0b, 0xf5, 0xc8, 0xaa, 0x5e, 0x29, 0xbc, 0x1b,
+	0x29, 0x4a, 0x43, 0xbb, 0x7b, 0xaa, 0x04, 0x4d, 0x9d, 0x20, 0xf8, 0x9f, 0x0d, 0x3d, 0xd9, 0x42,
+	0xb7, 0xa2, 0x35, 0x52, 0x79, 0x09, 0xfd, 0x29, 0x4b, 0xc2, 0x9f, 0x14, 0x97, 0x55, 0x8a, 0x96,
+	0x4e, 0x71, 0x78, 0x1d, 0xfe, 0x97, 0xf0, 0x7b, 0xd3, 0xab, 0xa6, 0xf1, 0x0d, 0x68, 0xc9, 0x52,
+	0x50, 0xef, 0x39, 0xec, 0xd5, 0x2f, 0x74, 0x4a, 0x4b, 0xf7, 0x36, 0xb4, 0xb5, 0x40, 0x6b, 0x02,
+	0xd1, 0x8a, 0xd5, 0xc2, 0xb9, 0x0f, 0xdd, 0x42, 0xe2, 0x5c, 0x86, 0x3c, 0x8e, 0x95, 0x82, 0x15,
+	0xa3, 0x4d, 0xd4, 0xd1, 0xb6, 0x33, 0x6d, 0xf2, 0x9e, 0x41, 0xb7, 0x22, 0x51, 0xe1, 0x3d, 0x06,
+	0x50, 0xed, 0x92, 0x65, 0xf8, 0x8a, 0x2e, 0xd6, 0xc7, 0xfe, 0xc6, 0xb1, 0xa4, 0x25, 0x6a, 0x9b,
+	0x90, 0x53, 0x5a, 0x7a, 0x7f, 0x3b, 0xd0, 0x54, 0x38, 0x6f, 0x73, 0x49, 0x7c, 0x65, 0xf5, 0x6f,
+	0x54, 0x77, 0xf8, 0x86, 0xdb, 0xf8, 0xaa, 0xf4, 0xa7, 0x29, 0x9d, 0xd1, 0x4c, 0x9a, 0x61, 0x19,
+	0x5e, 0xa8, 0xfd, 0x5d, 0x19, 0xd5, 0x3c, 0xe9, 0xa5, 0x63, 0xe7, 0x49, 0x2f, 0x92, 0x1e, 0x34,
+	0xec, 0x2e, 0x6f, 0x9e, 0x6c, 0xa1, 0x06, 0x23, 0xee, 0x3b, 0x76, 0xd1, 0x2a, 0x95, 0xb4, 0x4f,
+	0xb6, 0xcc, 0xaa, 0x1d, 0xb7, 0x61, 0x9b, 0x91, 0x50, 0x77, 0xe3, 0x4f, 0x07, 0xda, 0x88, 0x46,
+	0x3c, 0x27, 0xaa, 0xe0, 0x97, 0xd0, 0xbf, 0xaa, 0xb2, 0x25, 0x7f, 0x87, 0xd7, 0x55, 0xd8, 0x29,
+	0x2d, 0x55, 0xfb, 0xa3, 0x95, 0x1e, 0x9f, 0xc1, 0xee, 0x72, 0x3a, 0x14, 0xac, 0x99, 0x8c, 0x83,
+	0x6b, 0x4d, 0x86, 0xc1, 0xec, 0x92, 0xda, 0xef, 0x4a, 0x4f, 0x97, 0xb0, 0x7b, 0x65, 0xfa, 0x57,
+	0x5e, 0x36, 0x67, 0xf5, 0x65, 0xbb, 0x03, 0xa0, 0x71, 0x68, 0xfd, 0xe1, 0xb3, 0x96, 0x09, 0x71,
+	0xdf, 0x83, 0x1d, 0xb3, 0x7f, 0x18, 0x31, 0xac, 0xa1, 0x6d, 0xfd, 0x7b, 0x42, 0xc6, 0xbf, 0x3a,
+	0x70, 0x37, 0xe2, 0xb3, 0x0d, 0x37, 0x1e, 0xc3, 0x51, 0x2a, 0x16, 0x5b, 0xcf, 0xf9, 0xfe, 0x4b,
+	0xeb, 0x99, 0xf0, 0x14, 0x67, 0x89, 0xcf, 0xf3, 0x24, 0x48, 0x68, 0xa6, 0x9f, 0xf6, 0xc0, 0x7c,
+	0xc2, 0x82, 0x15, 0xeb, 0xfe, 0x62, 0x7c, 0x41, 0x52, 0xf1, 0x5b, 0x63, 0xf0, 0xb5, 0x89, 0xd7,
+	0xf4, 0xfa, 0x47, 0xa9, 0xf0, 0xbf, 0x1d, 0x8d, 0xd5, 0xe7, 0xe9, 0x0d, 0x0d, 0xf2, 0xd9, 0x3f,
+	0x01, 0x00, 0x00, 0xff, 0xff, 0x8c, 0xe7, 0xe9, 0x4f, 0xa6, 0x08, 0x00, 0x00,
 }
diff --git a/googleapis/pubsub/v1/pubsub.pb.go b/googleapis/pubsub/v1/pubsub.pb.go
index 519c9434..ab4768df 100644
--- a/googleapis/pubsub/v1/pubsub.pb.go
+++ b/googleapis/pubsub/v1/pubsub.pb.go
@@ -11,6 +11,7 @@ It has these top-level messages:
 	Topic
 	PubsubMessage
 	GetTopicRequest
+	UpdateTopicRequest
 	PublishRequest
 	PublishResponse
 	ListTopicsRequest
@@ -34,6 +35,7 @@ It has these top-level messages:
 	StreamingPullRequest
 	StreamingPullResponse
 	CreateSnapshotRequest
+	UpdateSnapshotRequest
 	Snapshot
 	ListSnapshotsRequest
 	ListSnapshotsResponse
@@ -77,6 +79,8 @@ type Topic struct {
 	// signs (`%`). It must be between 3 and 255 characters in length, and it
 	// must not start with `"goog"`.
 	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
+	// User labels.
+	Labels map[string]string `protobuf:"bytes,2,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
 }
 
 func (m *Topic) Reset()                    { *m = Topic{} }
@@ -91,6 +95,13 @@ func (m *Topic) GetName() string {
 	return ""
 }
 
+func (m *Topic) GetLabels() map[string]string {
+	if m != nil {
+		return m.Labels
+	}
+	return nil
+}
+
 // A message data and its attributes. The message payload must not be empty;
 // it must contain either a non-empty data field, or at least one attribute.
 type PubsubMessage struct {
@@ -161,6 +172,34 @@ func (m *GetTopicRequest) GetTopic() string {
 	return ""
 }
 
+// Request for the UpdateTopic method.
+type UpdateTopicRequest struct {
+	// The topic to update.
+	Topic *Topic `protobuf:"bytes,1,opt,name=topic" json:"topic,omitempty"`
+	// Indicates which fields in the provided topic to update.
+	// Must be specified and non-empty.
+	UpdateMask *google_protobuf3.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask" json:"update_mask,omitempty"`
+}
+
+func (m *UpdateTopicRequest) Reset()                    { *m = UpdateTopicRequest{} }
+func (m *UpdateTopicRequest) String() string            { return proto.CompactTextString(m) }
+func (*UpdateTopicRequest) ProtoMessage()               {}
+func (*UpdateTopicRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
+
+func (m *UpdateTopicRequest) GetTopic() *Topic {
+	if m != nil {
+		return m.Topic
+	}
+	return nil
+}
+
+func (m *UpdateTopicRequest) GetUpdateMask() *google_protobuf3.FieldMask {
+	if m != nil {
+		return m.UpdateMask
+	}
+	return nil
+}
+
 // Request for the Publish method.
 type PublishRequest struct {
 	// The messages in the request will be published on this topic.
@@ -173,7 +212,7 @@ type PublishRequest struct {
 func (m *PublishRequest) Reset()                    { *m = PublishRequest{} }
 func (m *PublishRequest) String() string            { return proto.CompactTextString(m) }
 func (*PublishRequest) ProtoMessage()               {}
-func (*PublishRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
+func (*PublishRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
 
 func (m *PublishRequest) GetTopic() string {
 	if m != nil {
@@ -200,7 +239,7 @@ type PublishResponse struct {
 func (m *PublishResponse) Reset()                    { *m = PublishResponse{} }
 func (m *PublishResponse) String() string            { return proto.CompactTextString(m) }
 func (*PublishResponse) ProtoMessage()               {}
-func (*PublishResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
+func (*PublishResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
 
 func (m *PublishResponse) GetMessageIds() []string {
 	if m != nil {
@@ -225,7 +264,7 @@ type ListTopicsRequest struct {
 func (m *ListTopicsRequest) Reset()                    { *m = ListTopicsRequest{} }
 func (m *ListTopicsRequest) String() string            { return proto.CompactTextString(m) }
 func (*ListTopicsRequest) ProtoMessage()               {}
-func (*ListTopicsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
+func (*ListTopicsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
 
 func (m *ListTopicsRequest) GetProject() string {
 	if m != nil {
@@ -260,7 +299,7 @@ type ListTopicsResponse struct {
 func (m *ListTopicsResponse) Reset()                    { *m = ListTopicsResponse{} }
 func (m *ListTopicsResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListTopicsResponse) ProtoMessage()               {}
-func (*ListTopicsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
+func (*ListTopicsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
 
 func (m *ListTopicsResponse) GetTopics() []*Topic {
 	if m != nil {
@@ -292,7 +331,7 @@ type ListTopicSubscriptionsRequest struct {
 func (m *ListTopicSubscriptionsRequest) Reset()                    { *m = ListTopicSubscriptionsRequest{} }
 func (m *ListTopicSubscriptionsRequest) String() string            { return proto.CompactTextString(m) }
 func (*ListTopicSubscriptionsRequest) ProtoMessage()               {}
-func (*ListTopicSubscriptionsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
+func (*ListTopicSubscriptionsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
 
 func (m *ListTopicSubscriptionsRequest) GetTopic() string {
 	if m != nil {
@@ -328,7 +367,7 @@ type ListTopicSubscriptionsResponse struct {
 func (m *ListTopicSubscriptionsResponse) Reset()                    { *m = ListTopicSubscriptionsResponse{} }
 func (m *ListTopicSubscriptionsResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListTopicSubscriptionsResponse) ProtoMessage()               {}
-func (*ListTopicSubscriptionsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
+func (*ListTopicSubscriptionsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
 
 func (m *ListTopicSubscriptionsResponse) GetSubscriptions() []string {
 	if m != nil {
@@ -354,7 +393,7 @@ type DeleteTopicRequest struct {
 func (m *DeleteTopicRequest) Reset()                    { *m = DeleteTopicRequest{} }
 func (m *DeleteTopicRequest) String() string            { return proto.CompactTextString(m) }
 func (*DeleteTopicRequest) ProtoMessage()               {}
-func (*DeleteTopicRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
+func (*DeleteTopicRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
 
 func (m *DeleteTopicRequest) GetTopic() string {
 	if m != nil {
@@ -413,12 +452,14 @@ type Subscription struct {
 	// can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
 	// minutes.
 	MessageRetentionDuration *google_protobuf1.Duration `protobuf:"bytes,8,opt,name=message_retention_duration,json=messageRetentionDuration" json:"message_retention_duration,omitempty"`
+	// User labels.
+	Labels map[string]string `protobuf:"bytes,9,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
 }
 
 func (m *Subscription) Reset()                    { *m = Subscription{} }
 func (m *Subscription) String() string            { return proto.CompactTextString(m) }
 func (*Subscription) ProtoMessage()               {}
-func (*Subscription) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
+func (*Subscription) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
 
 func (m *Subscription) GetName() string {
 	if m != nil {
@@ -462,6 +503,13 @@ func (m *Subscription) GetMessageRetentionDuration() *google_protobuf1.Duration
 	return nil
 }
 
+func (m *Subscription) GetLabels() map[string]string {
+	if m != nil {
+		return m.Labels
+	}
+	return nil
+}
+
 // Configuration for a push delivery endpoint.
 type PushConfig struct {
 	// A URL locating the endpoint to which messages should be pushed.
@@ -494,7 +542,7 @@ type PushConfig struct {
 func (m *PushConfig) Reset()                    { *m = PushConfig{} }
 func (m *PushConfig) String() string            { return proto.CompactTextString(m) }
 func (*PushConfig) ProtoMessage()               {}
-func (*PushConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
+func (*PushConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
 
 func (m *PushConfig) GetPushEndpoint() string {
 	if m != nil {
@@ -521,7 +569,7 @@ type ReceivedMessage struct {
 func (m *ReceivedMessage) Reset()                    { *m = ReceivedMessage{} }
 func (m *ReceivedMessage) String() string            { return proto.CompactTextString(m) }
 func (*ReceivedMessage) ProtoMessage()               {}
-func (*ReceivedMessage) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
+func (*ReceivedMessage) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
 
 func (m *ReceivedMessage) GetAckId() string {
 	if m != nil {
@@ -547,7 +595,7 @@ type GetSubscriptionRequest struct {
 func (m *GetSubscriptionRequest) Reset()                    { *m = GetSubscriptionRequest{} }
 func (m *GetSubscriptionRequest) String() string            { return proto.CompactTextString(m) }
 func (*GetSubscriptionRequest) ProtoMessage()               {}
-func (*GetSubscriptionRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
+func (*GetSubscriptionRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
 
 func (m *GetSubscriptionRequest) GetSubscription() string {
 	if m != nil {
@@ -568,7 +616,7 @@ type UpdateSubscriptionRequest struct {
 func (m *UpdateSubscriptionRequest) Reset()                    { *m = UpdateSubscriptionRequest{} }
 func (m *UpdateSubscriptionRequest) String() string            { return proto.CompactTextString(m) }
 func (*UpdateSubscriptionRequest) ProtoMessage()               {}
-func (*UpdateSubscriptionRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
+func (*UpdateSubscriptionRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
 
 func (m *UpdateSubscriptionRequest) GetSubscription() *Subscription {
 	if m != nil {
@@ -600,7 +648,7 @@ type ListSubscriptionsRequest struct {
 func (m *ListSubscriptionsRequest) Reset()                    { *m = ListSubscriptionsRequest{} }
 func (m *ListSubscriptionsRequest) String() string            { return proto.CompactTextString(m) }
 func (*ListSubscriptionsRequest) ProtoMessage()               {}
-func (*ListSubscriptionsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
+func (*ListSubscriptionsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
 
 func (m *ListSubscriptionsRequest) GetProject() string {
 	if m != nil {
@@ -636,7 +684,7 @@ type ListSubscriptionsResponse struct {
 func (m *ListSubscriptionsResponse) Reset()                    { *m = ListSubscriptionsResponse{} }
 func (m *ListSubscriptionsResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListSubscriptionsResponse) ProtoMessage()               {}
-func (*ListSubscriptionsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
+func (*ListSubscriptionsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
 
 func (m *ListSubscriptionsResponse) GetSubscriptions() []*Subscription {
 	if m != nil {
@@ -662,7 +710,7 @@ type DeleteSubscriptionRequest struct {
 func (m *DeleteSubscriptionRequest) Reset()                    { *m = DeleteSubscriptionRequest{} }
 func (m *DeleteSubscriptionRequest) String() string            { return proto.CompactTextString(m) }
 func (*DeleteSubscriptionRequest) ProtoMessage()               {}
-func (*DeleteSubscriptionRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
+func (*DeleteSubscriptionRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
 
 func (m *DeleteSubscriptionRequest) GetSubscription() string {
 	if m != nil {
@@ -688,7 +736,7 @@ type ModifyPushConfigRequest struct {
 func (m *ModifyPushConfigRequest) Reset()                    { *m = ModifyPushConfigRequest{} }
 func (m *ModifyPushConfigRequest) String() string            { return proto.CompactTextString(m) }
 func (*ModifyPushConfigRequest) ProtoMessage()               {}
-func (*ModifyPushConfigRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
+func (*ModifyPushConfigRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
 
 func (m *ModifyPushConfigRequest) GetSubscription() string {
 	if m != nil {
@@ -724,7 +772,7 @@ type PullRequest struct {
 func (m *PullRequest) Reset()                    { *m = PullRequest{} }
 func (m *PullRequest) String() string            { return proto.CompactTextString(m) }
 func (*PullRequest) ProtoMessage()               {}
-func (*PullRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
+func (*PullRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
 
 func (m *PullRequest) GetSubscription() string {
 	if m != nil {
@@ -759,7 +807,7 @@ type PullResponse struct {
 func (m *PullResponse) Reset()                    { *m = PullResponse{} }
 func (m *PullResponse) String() string            { return proto.CompactTextString(m) }
 func (*PullResponse) ProtoMessage()               {}
-func (*PullResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
+func (*PullResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
 
 func (m *PullResponse) GetReceivedMessages() []*ReceivedMessage {
 	if m != nil {
@@ -788,7 +836,7 @@ type ModifyAckDeadlineRequest struct {
 func (m *ModifyAckDeadlineRequest) Reset()                    { *m = ModifyAckDeadlineRequest{} }
 func (m *ModifyAckDeadlineRequest) String() string            { return proto.CompactTextString(m) }
 func (*ModifyAckDeadlineRequest) ProtoMessage()               {}
-func (*ModifyAckDeadlineRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
+func (*ModifyAckDeadlineRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
 
 func (m *ModifyAckDeadlineRequest) GetSubscription() string {
 	if m != nil {
@@ -824,7 +872,7 @@ type AcknowledgeRequest struct {
 func (m *AcknowledgeRequest) Reset()                    { *m = AcknowledgeRequest{} }
 func (m *AcknowledgeRequest) String() string            { return proto.CompactTextString(m) }
 func (*AcknowledgeRequest) ProtoMessage()               {}
-func (*AcknowledgeRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
+func (*AcknowledgeRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
 
 func (m *AcknowledgeRequest) GetSubscription() string {
 	if m != nil {
@@ -883,7 +931,7 @@ type StreamingPullRequest struct {
 func (m *StreamingPullRequest) Reset()                    { *m = StreamingPullRequest{} }
 func (m *StreamingPullRequest) String() string            { return proto.CompactTextString(m) }
 func (*StreamingPullRequest) ProtoMessage()               {}
-func (*StreamingPullRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
+func (*StreamingPullRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} }
 
 func (m *StreamingPullRequest) GetSubscription() string {
 	if m != nil {
@@ -930,7 +978,7 @@ type StreamingPullResponse struct {
 func (m *StreamingPullResponse) Reset()                    { *m = StreamingPullResponse{} }
 func (m *StreamingPullResponse) String() string            { return proto.CompactTextString(m) }
 func (*StreamingPullResponse) ProtoMessage()               {}
-func (*StreamingPullResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} }
+func (*StreamingPullResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} }
 
 func (m *StreamingPullResponse) GetReceivedMessages() []*ReceivedMessage {
 	if m != nil {
@@ -962,7 +1010,7 @@ type CreateSnapshotRequest struct {
 func (m *CreateSnapshotRequest) Reset()                    { *m = CreateSnapshotRequest{} }
 func (m *CreateSnapshotRequest) String() string            { return proto.CompactTextString(m) }
 func (*CreateSnapshotRequest) ProtoMessage()               {}
-func (*CreateSnapshotRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} }
+func (*CreateSnapshotRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} }
 
 func (m *CreateSnapshotRequest) GetName() string {
 	if m != nil {
@@ -978,6 +1026,34 @@ func (m *CreateSnapshotRequest) GetSubscription() string {
 	return ""
 }
 
+// Request for the UpdateSnapshot method.
+type UpdateSnapshotRequest struct {
+	// The updated snpashot object.
+	Snapshot *Snapshot `protobuf:"bytes,1,opt,name=snapshot" json:"snapshot,omitempty"`
+	// Indicates which fields in the provided snapshot to update.
+	// Must be specified and non-empty.
+	UpdateMask *google_protobuf3.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask" json:"update_mask,omitempty"`
+}
+
+func (m *UpdateSnapshotRequest) Reset()                    { *m = UpdateSnapshotRequest{} }
+func (m *UpdateSnapshotRequest) String() string            { return proto.CompactTextString(m) }
+func (*UpdateSnapshotRequest) ProtoMessage()               {}
+func (*UpdateSnapshotRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{27} }
+
+func (m *UpdateSnapshotRequest) GetSnapshot() *Snapshot {
+	if m != nil {
+		return m.Snapshot
+	}
+	return nil
+}
+
+func (m *UpdateSnapshotRequest) GetUpdateMask() *google_protobuf3.FieldMask {
+	if m != nil {
+		return m.UpdateMask
+	}
+	return nil
+}
+
 // A snapshot resource.
 type Snapshot struct {
 	// The name of the snapshot.
@@ -994,12 +1070,14 @@ type Snapshot struct {
 	// will always capture this 3-day-old backlog as long as the snapshot
 	// exists -- will expire in 4 days.
 	ExpireTime *google_protobuf4.Timestamp `protobuf:"bytes,3,opt,name=expire_time,json=expireTime" json:"expire_time,omitempty"`
+	// User labels.
+	Labels map[string]string `protobuf:"bytes,4,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
 }
 
 func (m *Snapshot) Reset()                    { *m = Snapshot{} }
 func (m *Snapshot) String() string            { return proto.CompactTextString(m) }
 func (*Snapshot) ProtoMessage()               {}
-func (*Snapshot) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} }
+func (*Snapshot) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{28} }
 
 func (m *Snapshot) GetName() string {
 	if m != nil {
@@ -1022,6 +1100,13 @@ func (m *Snapshot) GetExpireTime() *google_protobuf4.Timestamp {
 	return nil
 }
 
+func (m *Snapshot) GetLabels() map[string]string {
+	if m != nil {
+		return m.Labels
+	}
+	return nil
+}
+
 // Request for the `ListSnapshots` method.
 type ListSnapshotsRequest struct {
 	// The name of the cloud project that snapshots belong to.
@@ -1038,7 +1123,7 @@ type ListSnapshotsRequest struct {
 func (m *ListSnapshotsRequest) Reset()                    { *m = ListSnapshotsRequest{} }
 func (m *ListSnapshotsRequest) String() string            { return proto.CompactTextString(m) }
 func (*ListSnapshotsRequest) ProtoMessage()               {}
-func (*ListSnapshotsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{27} }
+func (*ListSnapshotsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{29} }
 
 func (m *ListSnapshotsRequest) GetProject() string {
 	if m != nil {
@@ -1073,7 +1158,7 @@ type ListSnapshotsResponse struct {
 func (m *ListSnapshotsResponse) Reset()                    { *m = ListSnapshotsResponse{} }
 func (m *ListSnapshotsResponse) String() string            { return proto.CompactTextString(m) }
 func (*ListSnapshotsResponse) ProtoMessage()               {}
-func (*ListSnapshotsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{28} }
+func (*ListSnapshotsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{30} }
 
 func (m *ListSnapshotsResponse) GetSnapshots() []*Snapshot {
 	if m != nil {
@@ -1099,7 +1184,7 @@ type DeleteSnapshotRequest struct {
 func (m *DeleteSnapshotRequest) Reset()                    { *m = DeleteSnapshotRequest{} }
 func (m *DeleteSnapshotRequest) String() string            { return proto.CompactTextString(m) }
 func (*DeleteSnapshotRequest) ProtoMessage()               {}
-func (*DeleteSnapshotRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{29} }
+func (*DeleteSnapshotRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{31} }
 
 func (m *DeleteSnapshotRequest) GetSnapshot() string {
 	if m != nil {
@@ -1121,7 +1206,7 @@ type SeekRequest struct {
 func (m *SeekRequest) Reset()                    { *m = SeekRequest{} }
 func (m *SeekRequest) String() string            { return proto.CompactTextString(m) }
 func (*SeekRequest) ProtoMessage()               {}
-func (*SeekRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{30} }
+func (*SeekRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{32} }
 
 type isSeekRequest_Target interface {
 	isSeekRequest_Target()
@@ -1241,12 +1326,13 @@ type SeekResponse struct {
 func (m *SeekResponse) Reset()                    { *m = SeekResponse{} }
 func (m *SeekResponse) String() string            { return proto.CompactTextString(m) }
 func (*SeekResponse) ProtoMessage()               {}
-func (*SeekResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{31} }
+func (*SeekResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{33} }
 
 func init() {
 	proto.RegisterType((*Topic)(nil), "google.pubsub.v1.Topic")
 	proto.RegisterType((*PubsubMessage)(nil), "google.pubsub.v1.PubsubMessage")
 	proto.RegisterType((*GetTopicRequest)(nil), "google.pubsub.v1.GetTopicRequest")
+	proto.RegisterType((*UpdateTopicRequest)(nil), "google.pubsub.v1.UpdateTopicRequest")
 	proto.RegisterType((*PublishRequest)(nil), "google.pubsub.v1.PublishRequest")
 	proto.RegisterType((*PublishResponse)(nil), "google.pubsub.v1.PublishResponse")
 	proto.RegisterType((*ListTopicsRequest)(nil), "google.pubsub.v1.ListTopicsRequest")
@@ -1270,6 +1356,7 @@ func init() {
 	proto.RegisterType((*StreamingPullRequest)(nil), "google.pubsub.v1.StreamingPullRequest")
 	proto.RegisterType((*StreamingPullResponse)(nil), "google.pubsub.v1.StreamingPullResponse")
 	proto.RegisterType((*CreateSnapshotRequest)(nil), "google.pubsub.v1.CreateSnapshotRequest")
+	proto.RegisterType((*UpdateSnapshotRequest)(nil), "google.pubsub.v1.UpdateSnapshotRequest")
 	proto.RegisterType((*Snapshot)(nil), "google.pubsub.v1.Snapshot")
 	proto.RegisterType((*ListSnapshotsRequest)(nil), "google.pubsub.v1.ListSnapshotsRequest")
 	proto.RegisterType((*ListSnapshotsResponse)(nil), "google.pubsub.v1.ListSnapshotsResponse")
@@ -1304,6 +1391,10 @@ type SubscriberClient interface {
 	GetSubscription(ctx context.Context, in *GetSubscriptionRequest, opts ...grpc.CallOption) (*Subscription, error)
 	// Updates an existing subscription. Note that certain properties of a
 	// subscription, such as its topic, are not modifiable.
+	// NOTE:  The style guide requires body: "subscription" instead of body: "*".
+	// Keeping the latter for internal consistency in V1, however it should be
+	// corrected in V2.  See
+	// https://cloud.google.com/apis/design/standard_methods#update for details.
 	UpdateSubscription(ctx context.Context, in *UpdateSubscriptionRequest, opts ...grpc.CallOption) (*Subscription, error)
 	// Lists matching subscriptions.
 	ListSubscriptions(ctx context.Context, in *ListSubscriptionsRequest, opts ...grpc.CallOption) (*ListSubscriptionsResponse, error)
@@ -1365,6 +1456,13 @@ type SubscriberClient interface {
 	// The generated name is populated in the returned Snapshot object.
 	// Note that for REST API requests, you must specify a name in the request.
 	CreateSnapshot(ctx context.Context, in *CreateSnapshotRequest, opts ...grpc.CallOption) (*Snapshot, error)
+	// Updates an existing snapshot. Note that certain properties of a snapshot
+	// are not modifiable.
+	// NOTE:  The style guide requires body: "snapshot" instead of body: "*".
+	// Keeping the latter for internal consistency in V1, however it should be
+	// corrected in V2.  See
+	// https://cloud.google.com/apis/design/standard_methods#update for details.
+	UpdateSnapshot(ctx context.Context, in *UpdateSnapshotRequest, opts ...grpc.CallOption) (*Snapshot, error)
 	// Removes an existing snapshot. All messages retained in the snapshot
 	// are immediately dropped. After a snapshot is deleted, a new one may be
 	// created with the same name, but the new one has no association with the old
@@ -1513,6 +1611,15 @@ func (c *subscriberClient) CreateSnapshot(ctx context.Context, in *CreateSnapsho
 	return out, nil
 }
 
+func (c *subscriberClient) UpdateSnapshot(ctx context.Context, in *UpdateSnapshotRequest, opts ...grpc.CallOption) (*Snapshot, error) {
+	out := new(Snapshot)
+	err := grpc.Invoke(ctx, "/google.pubsub.v1.Subscriber/UpdateSnapshot", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 func (c *subscriberClient) DeleteSnapshot(ctx context.Context, in *DeleteSnapshotRequest, opts ...grpc.CallOption) (*google_protobuf2.Empty, error) {
 	out := new(google_protobuf2.Empty)
 	err := grpc.Invoke(ctx, "/google.pubsub.v1.Subscriber/DeleteSnapshot", in, out, c.cc, opts...)
@@ -1549,6 +1656,10 @@ type SubscriberServer interface {
 	GetSubscription(context.Context, *GetSubscriptionRequest) (*Subscription, error)
 	// Updates an existing subscription. Note that certain properties of a
 	// subscription, such as its topic, are not modifiable.
+	// NOTE:  The style guide requires body: "subscription" instead of body: "*".
+	// Keeping the latter for internal consistency in V1, however it should be
+	// corrected in V2.  See
+	// https://cloud.google.com/apis/design/standard_methods#update for details.
 	UpdateSubscription(context.Context, *UpdateSubscriptionRequest) (*Subscription, error)
 	// Lists matching subscriptions.
 	ListSubscriptions(context.Context, *ListSubscriptionsRequest) (*ListSubscriptionsResponse, error)
@@ -1610,6 +1721,13 @@ type SubscriberServer interface {
 	// The generated name is populated in the returned Snapshot object.
 	// Note that for REST API requests, you must specify a name in the request.
 	CreateSnapshot(context.Context, *CreateSnapshotRequest) (*Snapshot, error)
+	// Updates an existing snapshot. Note that certain properties of a snapshot
+	// are not modifiable.
+	// NOTE:  The style guide requires body: "snapshot" instead of body: "*".
+	// Keeping the latter for internal consistency in V1, however it should be
+	// corrected in V2.  See
+	// https://cloud.google.com/apis/design/standard_methods#update for details.
+	UpdateSnapshot(context.Context, *UpdateSnapshotRequest) (*Snapshot, error)
 	// Removes an existing snapshot. All messages retained in the snapshot
 	// are immediately dropped. After a snapshot is deleted, a new one may be
 	// created with the same name, but the new one has no association with the old
@@ -1848,6 +1966,24 @@ func _Subscriber_CreateSnapshot_Handler(srv interface{}, ctx context.Context, de
 	return interceptor(ctx, in, info, handler)
 }
 
+func _Subscriber_UpdateSnapshot_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(UpdateSnapshotRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(SubscriberServer).UpdateSnapshot(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.pubsub.v1.Subscriber/UpdateSnapshot",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(SubscriberServer).UpdateSnapshot(ctx, req.(*UpdateSnapshotRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 func _Subscriber_DeleteSnapshot_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 	in := new(DeleteSnapshotRequest)
 	if err := dec(in); err != nil {
@@ -1932,6 +2068,10 @@ var _Subscriber_serviceDesc = grpc.ServiceDesc{
 			MethodName: "CreateSnapshot",
 			Handler:    _Subscriber_CreateSnapshot_Handler,
 		},
+		{
+			MethodName: "UpdateSnapshot",
+			Handler:    _Subscriber_UpdateSnapshot_Handler,
+		},
 		{
 			MethodName: "DeleteSnapshot",
 			Handler:    _Subscriber_DeleteSnapshot_Handler,
@@ -1957,6 +2097,13 @@ var _Subscriber_serviceDesc = grpc.ServiceDesc{
 type PublisherClient interface {
 	// Creates the given topic with the given name.
 	CreateTopic(ctx context.Context, in *Topic, opts ...grpc.CallOption) (*Topic, error)
+	// Updates an existing topic. Note that certain properties of a topic are not
+	// modifiable.  Options settings follow the style guide:
+	// NOTE:  The style guide requires body: "topic" instead of body: "*".
+	// Keeping the latter for internal consistency in V1, however it should be
+	// corrected in V2.  See
+	// https://cloud.google.com/apis/design/standard_methods#update for details.
+	UpdateTopic(ctx context.Context, in *UpdateTopicRequest, opts ...grpc.CallOption) (*Topic, error)
 	// Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic
 	// does not exist. The message payload must not be empty; it must contain
 	//  either a non-empty data field, or at least one attribute.
@@ -1992,6 +2139,15 @@ func (c *publisherClient) CreateTopic(ctx context.Context, in *Topic, opts ...gr
 	return out, nil
 }
 
+func (c *publisherClient) UpdateTopic(ctx context.Context, in *UpdateTopicRequest, opts ...grpc.CallOption) (*Topic, error) {
+	out := new(Topic)
+	err := grpc.Invoke(ctx, "/google.pubsub.v1.Publisher/UpdateTopic", in, out, c.cc, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 func (c *publisherClient) Publish(ctx context.Context, in *PublishRequest, opts ...grpc.CallOption) (*PublishResponse, error) {
 	out := new(PublishResponse)
 	err := grpc.Invoke(ctx, "/google.pubsub.v1.Publisher/Publish", in, out, c.cc, opts...)
@@ -2042,6 +2198,13 @@ func (c *publisherClient) DeleteTopic(ctx context.Context, in *DeleteTopicReques
 type PublisherServer interface {
 	// Creates the given topic with the given name.
 	CreateTopic(context.Context, *Topic) (*Topic, error)
+	// Updates an existing topic. Note that certain properties of a topic are not
+	// modifiable.  Options settings follow the style guide:
+	// NOTE:  The style guide requires body: "topic" instead of body: "*".
+	// Keeping the latter for internal consistency in V1, however it should be
+	// corrected in V2.  See
+	// https://cloud.google.com/apis/design/standard_methods#update for details.
+	UpdateTopic(context.Context, *UpdateTopicRequest) (*Topic, error)
 	// Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic
 	// does not exist. The message payload must not be empty; it must contain
 	//  either a non-empty data field, or at least one attribute.
@@ -2082,6 +2245,24 @@ func _Publisher_CreateTopic_Handler(srv interface{}, ctx context.Context, dec fu
 	return interceptor(ctx, in, info, handler)
 }
 
+func _Publisher_UpdateTopic_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(UpdateTopicRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(PublisherServer).UpdateTopic(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/google.pubsub.v1.Publisher/UpdateTopic",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(PublisherServer).UpdateTopic(ctx, req.(*UpdateTopicRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 func _Publisher_Publish_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 	in := new(PublishRequest)
 	if err := dec(in); err != nil {
@@ -2180,6 +2361,10 @@ var _Publisher_serviceDesc = grpc.ServiceDesc{
 			MethodName: "CreateTopic",
 			Handler:    _Publisher_CreateTopic_Handler,
 		},
+		{
+			MethodName: "UpdateTopic",
+			Handler:    _Publisher_UpdateTopic_Handler,
+		},
 		{
 			MethodName: "Publish",
 			Handler:    _Publisher_Publish_Handler,
@@ -2208,122 +2393,131 @@ var _Publisher_serviceDesc = grpc.ServiceDesc{
 func init() { proto.RegisterFile("google/pubsub/v1/pubsub.proto", fileDescriptor0) }
 
 var fileDescriptor0 = []byte{
-	// 1867 bytes of a gzipped FileDescriptorProto
+	// 2011 bytes of a gzipped FileDescriptorProto
 	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x59, 0xcb, 0x73, 0xdb, 0xc6,
-	0x19, 0x0f, 0x48, 0x3d, 0xa8, 0x0f, 0x94, 0x65, 0x6f, 0x25, 0x9b, 0x86, 0x5f, 0x12, 0xec, 0x5a,
-	0x0c, 0x63, 0x93, 0x32, 0x33, 0x49, 0x13, 0xbb, 0x4a, 0x46, 0x96, 0x5c, 0x47, 0x9d, 0xb8, 0x51,
-	0x21, 0xb7, 0x9d, 0xe9, 0xa1, 0x1c, 0x90, 0x58, 0x51, 0x08, 0x89, 0x87, 0xb1, 0x80, 0x2a, 0xa6,
-	0xcd, 0x4c, 0x9b, 0x74, 0x3a, 0xd3, 0x69, 0x0f, 0x4d, 0x7b, 0x6c, 0x0e, 0x9d, 0xe9, 0xad, 0xc7,
-	0x1e, 0x7a, 0xec, 0x3f, 0xd1, 0x7f, 0xa1, 0x87, 0xfe, 0x09, 0x3d, 0x76, 0xf6, 0x01, 0x12, 0x20,
-	0x16, 0x7c, 0x28, 0xe3, 0x1b, 0xb8, 0xfb, 0xed, 0xfe, 0x7e, 0xdf, 0xfb, 0xd3, 0x0a, 0x6e, 0x75,
-	0x3d, 0xaf, 0xdb, 0xc7, 0x0d, 0x3f, 0x6a, 0x93, 0xa8, 0xdd, 0x38, 0x7b, 0x24, 0xbe, 0xea, 0x7e,
-	0xe0, 0x85, 0x1e, 0xba, 0xcc, 0xb7, 0xeb, 0x62, 0xf1, 0xec, 0x91, 0x76, 0x53, 0x1c, 0x30, 0x7d,
-	0xbb, 0x61, 0xba, 0xae, 0x17, 0x9a, 0xa1, 0xed, 0xb9, 0x84, 0xcb, 0x6b, 0xb7, 0xe3, 0xeb, 0xe8,
-	0xaf, 0x76, 0x74, 0xd2, 0xb0, 0xa2, 0x80, 0x09, 0x88, 0xfd, 0x1b, 0xe3, 0xfb, 0xd8, 0xf1, 0xc3,
-	0x81, 0xd8, 0xdc, 0x1c, 0xdf, 0x3c, 0xb1, 0x71, 0xdf, 0x6a, 0x39, 0x26, 0xe9, 0x09, 0x89, 0x3b,
-	0xe3, 0x12, 0xa1, 0xed, 0x60, 0x12, 0x9a, 0x8e, 0xcf, 0x05, 0xf4, 0x1b, 0xb0, 0xf8, 0xd2, 0xf3,
-	0xed, 0x0e, 0x42, 0xb0, 0xe0, 0x9a, 0x0e, 0xae, 0x28, 0x9b, 0x4a, 0x75, 0xc5, 0x60, 0xdf, 0xfa,
-	0x57, 0x05, 0x58, 0x3d, 0x62, 0x8a, 0xbc, 0xc0, 0x84, 0x98, 0x5d, 0x4c, 0xa5, 0x2c, 0x33, 0x34,
-	0x99, 0x54, 0xd9, 0x60, 0xdf, 0xe8, 0x13, 0x00, 0x33, 0x0c, 0x03, 0xbb, 0x1d, 0x85, 0x98, 0x54,
-	0x0a, 0x9b, 0xc5, 0xaa, 0xda, 0x6c, 0xd4, 0xc7, 0xed, 0x50, 0x4f, 0x5d, 0x54, 0xdf, 0x1b, 0x9e,
-	0x78, 0xe6, 0x86, 0xc1, 0xc0, 0x48, 0x5c, 0x81, 0x6e, 0x01, 0x38, 0x5c, 0xac, 0x65, 0x5b, 0x95,
-	0x22, 0x23, 0xb4, 0x22, 0x56, 0x0e, 0x2d, 0xb4, 0x0b, 0x65, 0x3f, 0x6a, 0xf7, 0x6d, 0x72, 0xda,
-	0xa2, 0xda, 0x54, 0x16, 0x36, 0x95, 0xaa, 0xda, 0xd4, 0x86, 0x88, 0x42, 0xd5, 0xfa, 0xcb, 0x58,
-	0x55, 0x43, 0x15, 0xf2, 0x74, 0x45, 0xdb, 0x85, 0xb5, 0x31, 0x70, 0x74, 0x19, 0x8a, 0x3d, 0x3c,
-	0x10, 0xaa, 0xd3, 0x4f, 0xb4, 0x0e, 0x8b, 0x67, 0x66, 0x3f, 0xc2, 0x95, 0x02, 0x5b, 0xe3, 0x3f,
-	0x1e, 0x17, 0xde, 0x53, 0xf4, 0x6d, 0x58, 0x7b, 0x8e, 0x43, 0x66, 0x33, 0x03, 0xbf, 0x8a, 0x30,
-	0x09, 0xa9, 0x70, 0x48, 0x7f, 0x8b, 0x0b, 0xf8, 0x0f, 0xbd, 0x03, 0x97, 0x8e, 0x38, 0xec, 0x44,
-	0x39, 0xf4, 0x04, 0x4a, 0x42, 0xb7, 0xd8, 0x78, 0x77, 0xa6, 0x18, 0xcf, 0x18, 0x1e, 0xd0, 0x9b,
-	0xb0, 0x36, 0x04, 0x21, 0xbe, 0xe7, 0x12, 0x8c, 0xee, 0x80, 0x3a, 0xb2, 0x1e, 0xa9, 0x28, 0x9b,
-	0xc5, 0xea, 0x8a, 0x01, 0x43, 0xf3, 0x11, 0xdd, 0x86, 0x2b, 0x1f, 0xdb, 0x84, 0xab, 0x40, 0x62,
-	0x6e, 0x15, 0x58, 0xf6, 0x03, 0xef, 0x53, 0xdc, 0x09, 0x05, 0xbb, 0xf8, 0x27, 0xba, 0x01, 0x2b,
-	0x3e, 0xbd, 0x8c, 0xd8, 0x9f, 0x71, 0x73, 0x2c, 0x1a, 0x25, 0xba, 0x70, 0x6c, 0x7f, 0x86, 0xa9,
-	0xab, 0xd8, 0x66, 0xe8, 0xf5, 0xb0, 0x1b, 0xbb, 0x8a, 0xae, 0xbc, 0xa4, 0x0b, 0xba, 0x03, 0x28,
-	0x09, 0x25, 0x18, 0x36, 0x60, 0x89, 0xa9, 0xce, 0xc9, 0xa9, 0xcd, 0x6b, 0x59, 0x7d, 0xb9, 0x7d,
-	0x85, 0x18, 0xba, 0x0f, 0x6b, 0x2e, 0x3e, 0x0f, 0x5b, 0x09, 0x28, 0xee, 0x97, 0x55, 0xba, 0x7c,
-	0x34, 0x84, 0x7b, 0x05, 0xb7, 0x86, 0x70, 0xc7, 0x51, 0x9b, 0x74, 0x02, 0xdb, 0x67, 0xc9, 0x36,
-	0xd9, 0x03, 0xdf, 0x44, 0x43, 0x17, 0x6e, 0xe7, 0x41, 0x0a, 0x6d, 0xef, 0xc1, 0x2a, 0x49, 0x6e,
-	0x08, 0x8f, 0xa4, 0x17, 0x67, 0x56, 0xb1, 0x06, 0xe8, 0x00, 0xf7, 0x71, 0x88, 0x67, 0x88, 0xc0,
-	0x7f, 0x16, 0xa0, 0x9c, 0xe4, 0x24, 0xcb, 0xf1, 0xd1, 0xd1, 0x42, 0xd2, 0x24, 0xbb, 0xa0, 0xfa,
-	0x11, 0x39, 0x6d, 0x75, 0x3c, 0xf7, 0xc4, 0xee, 0x8a, 0x14, 0xbb, 0x29, 0x8b, 0x4b, 0x72, 0xba,
-	0xcf, 0x64, 0x0c, 0xf0, 0x87, 0xdf, 0x68, 0x07, 0xd6, 0xcd, 0x4e, 0xaf, 0x65, 0x61, 0xd3, 0xea,
-	0xdb, 0x2e, 0x6e, 0x11, 0xdc, 0xf1, 0x5c, 0x8b, 0x54, 0x16, 0x99, 0x71, 0x91, 0xd9, 0xe9, 0x1d,
-	0x88, 0xad, 0x63, 0xbe, 0x83, 0x9a, 0xb0, 0x11, 0xe0, 0xd0, 0xb4, 0xdd, 0x96, 0xd9, 0xe9, 0x61,
-	0xab, 0x35, 0x4c, 0x89, 0xe5, 0x4d, 0xa5, 0x5a, 0x32, 0xbe, 0xc5, 0x37, 0xf7, 0xe8, 0x9e, 0xc8,
-	0x02, 0x82, 0x7e, 0x02, 0x5a, 0x1c, 0xe9, 0x01, 0x0e, 0xb1, 0x4b, 0x75, 0x6c, 0xc5, 0xf5, 0xb3,
-	0x52, 0x62, 0x9c, 0xaf, 0x67, 0xca, 0xc2, 0x81, 0x10, 0x30, 0x2a, 0xe2, 0xb0, 0x11, 0x9f, 0x8d,
-	0x77, 0xf4, 0x7f, 0x29, 0x00, 0x23, 0xcd, 0xd0, 0x5d, 0x58, 0x65, 0xc6, 0xc0, 0xae, 0xe5, 0x7b,
-	0xb6, 0x1b, 0x67, 0x48, 0x99, 0x2e, 0x3e, 0x13, 0x6b, 0xe8, 0x63, 0x49, 0x15, 0x7c, 0x30, 0xc9,
-	0x60, 0x93, 0x4a, 0xe0, 0x37, 0x2d, 0x52, 0x1d, 0x58, 0x33, 0x70, 0x07, 0xdb, 0x67, 0x43, 0x6b,
-	0xa1, 0x0d, 0x58, 0xa2, 0x2e, 0xb1, 0xad, 0x38, 0x46, 0xcc, 0x4e, 0xef, 0xd0, 0x42, 0xef, 0xc3,
-	0xb2, 0x30, 0x03, 0xbb, 0x65, 0x86, 0xe2, 0x13, 0xcb, 0xeb, 0xdf, 0x85, 0xab, 0xcf, 0x71, 0x98,
-	0x0c, 0xb0, 0x38, 0x1c, 0x75, 0x28, 0x27, 0xa3, 0x3b, 0xb6, 0x57, 0x72, 0x4d, 0xff, 0x5a, 0x81,
-	0xeb, 0x3f, 0xf2, 0x2d, 0x33, 0xc4, 0xb2, 0x1b, 0x9e, 0x4a, 0x6e, 0x50, 0x9b, 0xb7, 0xb3, 0xdc,
-	0x52, 0x87, 0x53, 0x67, 0xd0, 0x13, 0x50, 0x23, 0x06, 0xc0, 0x1a, 0xa2, 0x50, 0x2f, 0xdb, 0x26,
-	0xbe, 0x47, 0x7b, 0xe6, 0x0b, 0x93, 0xf4, 0x0c, 0xe0, 0xe2, 0xf4, 0x5b, 0xf7, 0xa1, 0x42, 0xf3,
-	0x5a, 0x5a, 0x45, 0x5e, 0x4f, 0xad, 0xfc, 0x9d, 0x02, 0xd7, 0x25, 0x90, 0xa2, 0x8a, 0x1c, 0xc8,
-	0xaa, 0xc8, 0x74, 0x8b, 0x5c, 0xb0, 0xca, 0x7c, 0x08, 0xd7, 0x79, 0x95, 0xb9, 0xa8, 0x77, 0x7f,
-	0x09, 0xd7, 0x5e, 0x78, 0x96, 0x7d, 0x32, 0x48, 0x14, 0x88, 0xd9, 0x8f, 0x8f, 0x97, 0x9f, 0xc2,
-	0x7c, 0xe5, 0x47, 0xff, 0x52, 0x01, 0xf5, 0x28, 0xea, 0xf7, 0xe7, 0x81, 0x7c, 0x08, 0x28, 0xc0,
-	0x61, 0x14, 0xb8, 0x2d, 0xdb, 0x71, 0xb0, 0x65, 0x9b, 0x21, 0xee, 0x0f, 0x18, 0x72, 0xc9, 0xb8,
-	0xc2, 0x77, 0x0e, 0x47, 0x1b, 0x68, 0x0b, 0xca, 0x8e, 0x79, 0x3e, 0x2a, 0x53, 0x45, 0xe6, 0x6c,
-	0xd5, 0x31, 0xcf, 0xe3, 0xf2, 0xa4, 0xff, 0x0c, 0xca, 0x9c, 0x84, 0x70, 0xe1, 0x0f, 0xe0, 0x4a,
-	0x20, 0x92, 0x72, 0x74, 0x8e, 0xbb, 0x71, 0x2b, 0xab, 0xda, 0x58, 0xfe, 0x1a, 0x97, 0x83, 0xf4,
-	0x02, 0xa1, 0x01, 0x53, 0xe1, 0x46, 0xde, 0x1b, 0xd5, 0xd3, 0x79, 0x54, 0xbe, 0x06, 0xcb, 0xbc,
-	0x24, 0x90, 0xca, 0x02, 0xeb, 0x49, 0x4b, 0xac, 0x26, 0x90, 0xdc, 0xf2, 0x5d, 0xcc, 0x2b, 0xdf,
-	0xfa, 0x0f, 0x01, 0xed, 0x75, 0x7a, 0xae, 0xf7, 0xf3, 0x3e, 0xb6, 0xba, 0x17, 0x25, 0x51, 0x48,
-	0x92, 0xd0, 0x7f, 0x5d, 0x80, 0xf5, 0xe3, 0x30, 0xc0, 0xa6, 0x63, 0xbb, 0xdd, 0x79, 0xbd, 0x99,
-	0x77, 0x2b, 0x7a, 0x17, 0xae, 0x39, 0xcc, 0x66, 0x32, 0xed, 0x8a, 0xd5, 0x45, 0x63, 0x83, 0x6f,
-	0x8f, 0xf7, 0xa7, 0x77, 0xb2, 0xe7, 0xd2, 0xb6, 0x5b, 0x4f, 0x9f, 0xdb, 0xe3, 0x70, 0xbb, 0x70,
-	0x83, 0x30, 0x1d, 0x5a, 0x13, 0xfa, 0x61, 0x85, 0x8b, 0xec, 0x65, 0xcd, 0xda, 0x85, 0x8d, 0x31,
-	0x13, 0xbc, 0xa6, 0x58, 0xfa, 0x04, 0x36, 0xf6, 0x03, 0x4c, 0x8b, 0xb1, 0x6b, 0xfa, 0xe4, 0xd4,
-	0x0b, 0x63, 0x63, 0xcb, 0x46, 0x86, 0x71, 0x07, 0x14, 0x24, 0x05, 0xe0, 0x15, 0x94, 0xe2, 0xab,
-	0xe6, 0x18, 0x3b, 0x9e, 0x80, 0x8a, 0xcf, 0x7d, 0x3b, 0xc0, 0x7c, 0xb2, 0x2f, 0x4e, 0x9d, 0xec,
-	0x81, 0x8b, 0xd3, 0x05, 0xbd, 0x0f, 0xeb, 0xac, 0x7e, 0x0a, 0xd8, 0xd7, 0x5c, 0xae, 0x07, 0xb0,
-	0x31, 0x86, 0x26, 0x5c, 0xf3, 0x1e, 0xac, 0x90, 0x78, 0x51, 0xb8, 0x44, 0x93, 0x54, 0xe9, 0xd8,
-	0xce, 0x23, 0xe1, 0x99, 0xab, 0xf3, 0xdb, 0xb0, 0x21, 0xaa, 0xf3, 0x98, 0xb3, 0x34, 0x28, 0xc5,
-	0xb7, 0x09, 0x55, 0x87, 0xbf, 0xf5, 0xdf, 0x2b, 0xa0, 0x1e, 0x63, 0xdc, 0x9b, 0x27, 0x8b, 0x76,
-	0x60, 0x81, 0xf9, 0xa1, 0x30, 0xcd, 0x0f, 0x1f, 0xbd, 0x61, 0x30, 0x49, 0x74, 0x33, 0xc1, 0x80,
-	0x99, 0xec, 0xa3, 0x37, 0x46, 0x1c, 0x9e, 0x96, 0x60, 0x29, 0x34, 0x83, 0x2e, 0x0e, 0xf5, 0x4b,
-	0x50, 0xe6, 0x64, 0xb8, 0xd1, 0x9a, 0xff, 0x5d, 0x03, 0x10, 0xbd, 0xa6, 0x8d, 0x03, 0xf4, 0x5b,
-	0x05, 0x90, 0x88, 0xc7, 0x24, 0x9f, 0x29, 0xdd, 0x4e, 0x9b, 0xb2, 0xaf, 0xef, 0x7c, 0xf1, 0xef,
-	0xff, 0xfc, 0xb9, 0x50, 0xd3, 0xbe, 0x4d, 0xff, 0x6c, 0xff, 0x05, 0x8d, 0xc3, 0x5d, 0x11, 0x0a,
-	0xa4, 0x51, 0x6b, 0xa4, 0x5a, 0x65, 0xa3, 0xf6, 0xf9, 0x63, 0xa5, 0x86, 0xfe, 0xa4, 0xb0, 0x3f,
-	0xf7, 0x52, 0x2c, 0xaa, 0x59, 0x14, 0xf9, 0x1c, 0x34, 0x95, 0xcf, 0x3b, 0x8c, 0x4f, 0x03, 0x3d,
-	0x64, 0x7c, 0x92, 0xf8, 0x93, 0x78, 0xa1, 0xbf, 0x2a, 0x80, 0xb2, 0xa3, 0x13, 0x7a, 0x2b, 0x8b,
-	0x96, 0x3b, 0x60, 0x4d, 0xa5, 0xb6, 0xcb, 0xa8, 0x7d, 0xa7, 0xd9, 0xcc, 0x50, 0xab, 0xcf, 0x62,
-	0xb7, 0xaf, 0x15, 0xfe, 0x47, 0x66, 0x6a, 0x98, 0x41, 0xb5, 0x2c, 0x68, 0xde, 0x90, 0xa5, 0xbd,
-	0x35, 0x93, 0x2c, 0x0f, 0x1f, 0xbd, 0xce, 0xd8, 0x56, 0xd1, 0x7d, 0xc6, 0x56, 0x70, 0x4b, 0x70,
-	0xfc, 0x3c, 0x4d, 0x12, 0xfd, 0x51, 0x89, 0xff, 0x8c, 0x9a, 0x66, 0xc1, 0xdc, 0x31, 0x48, 0xbb,
-	0x9a, 0x49, 0x87, 0x67, 0x8e, 0x1f, 0x0e, 0x62, 0xa7, 0xd6, 0xe6, 0x74, 0xea, 0xdf, 0x14, 0xb8,
-	0x92, 0xe9, 0xe6, 0x32, 0x8b, 0xe5, 0xb5, 0xfc, 0x5c, 0x42, 0xdf, 0x67, 0x84, 0x0e, 0xf4, 0x0f,
-	0xe7, 0x22, 0xf4, 0xd8, 0x19, 0xc7, 0xa1, 0x7e, 0xfd, 0x4a, 0x01, 0x35, 0xd1, 0xe8, 0xd1, 0xbd,
-	0x2c, 0xbf, 0xec, 0x1c, 0x90, 0xcb, 0xec, 0x80, 0x31, 0xfb, 0x40, 0x7f, 0x7f, 0x3e, 0x66, 0xe6,
-	0x08, 0x81, 0x72, 0xfa, 0x8d, 0x02, 0x0b, 0xb4, 0x39, 0xa2, 0x5b, 0xb2, 0x01, 0x71, 0x38, 0x37,
-	0xc8, 0x42, 0x3e, 0xd9, 0x53, 0xe3, 0x90, 0xd7, 0x9b, 0xf3, 0xb1, 0xf1, 0xa3, 0x7e, 0x9f, 0xd2,
-	0xb0, 0x60, 0x35, 0xd5, 0xab, 0xd1, 0x7d, 0x49, 0x8a, 0x49, 0xe6, 0x19, 0x6d, 0x7b, 0xaa, 0x1c,
-	0x27, 0x58, 0x55, 0x76, 0x14, 0x9a, 0xfb, 0x97, 0xc7, 0x27, 0x6b, 0xf4, 0x66, 0x5e, 0x94, 0x64,
-	0xa6, 0xef, 0x5c, 0x57, 0x1c, 0x32, 0xe5, 0xf7, 0xf5, 0x0f, 0x2e, 0x12, 0x24, 0x23, 0x18, 0x6a,
-	0x88, 0x3f, 0x28, 0xb0, 0x9a, 0x6a, 0x8d, 0x32, 0x4b, 0xc8, 0x3a, 0xb5, 0xcc, 0x12, 0xd2, 0x1e,
-	0xab, 0xd7, 0x18, 0xdb, 0x7b, 0x48, 0xcf, 0xcf, 0xf7, 0x21, 0xf8, 0x97, 0x0a, 0x5c, 0x4a, 0xcf,
-	0x36, 0x48, 0x82, 0x23, 0x9d, 0x7e, 0xb4, 0x09, 0x8d, 0x5b, 0x7f, 0xc0, 0x38, 0xdc, 0xd7, 0xb6,
-	0xe4, 0xcd, 0x24, 0xc6, 0x17, 0x05, 0xf1, 0x57, 0x0a, 0x5c, 0x4a, 0x37, 0x6d, 0x19, 0x0b, 0x69,
-	0x5b, 0xcf, 0xf5, 0xd9, 0x43, 0xc6, 0x60, 0xbb, 0xc6, 0xdb, 0x59, 0x8c, 0x98, 0xc7, 0x82, 0xe5,
-	0x09, 0x6d, 0xba, 0xb2, 0x3c, 0x49, 0x4c, 0x06, 0xd2, 0xd6, 0x90, 0xe8, 0xd5, 0x17, 0xcd, 0x13,
-	0x82, 0x71, 0xef, 0xb1, 0x52, 0x6b, 0xfe, 0x65, 0x09, 0x56, 0xc4, 0x9b, 0x25, 0x0e, 0xd0, 0xa7,
-	0xa0, 0x72, 0xd3, 0xf3, 0x57, 0xe8, 0xbc, 0xa7, 0x40, 0x2d, 0x6f, 0x43, 0x7f, 0x93, 0xb1, 0xb9,
-	0xab, 0xdd, 0x96, 0xba, 0x81, 0x3f, 0x20, 0x0a, 0x1f, 0x7c, 0xa1, 0xc0, 0xb2, 0x40, 0x46, 0x9b,
-	0xd2, 0x67, 0x8e, 0xc4, 0x6b, 0xad, 0xb6, 0x35, 0x41, 0x42, 0x58, 0xa2, 0xc9, 0xb0, 0x1f, 0xe8,
-	0xdb, 0x0c, 0x9b, 0x61, 0xc9, 0xc1, 0xc5, 0xfb, 0x33, 0x25, 0xe1, 0x41, 0x29, 0x7e, 0x3f, 0x46,
-	0x5b, 0xd2, 0x49, 0x22, 0xf9, 0xb2, 0x97, 0xaf, 0xf7, 0x36, 0xc3, 0xde, 0x42, 0x77, 0xa6, 0x60,
-	0xd3, 0xc8, 0x83, 0xd1, 0x23, 0x2c, 0xba, 0x2b, 0xcf, 0xb1, 0xd4, 0x6b, 0xb0, 0x76, 0x6f, 0xb2,
-	0x90, 0x50, 0x3f, 0x4d, 0x41, 0x96, 0x85, 0xe2, 0xfd, 0xf6, 0x1f, 0x0a, 0x5c, 0x95, 0xbf, 0x92,
-	0xa2, 0xc6, 0x04, 0x24, 0xe9, 0x5c, 0xb0, 0x33, 0xfb, 0x01, 0x41, 0x33, 0x3d, 0x65, 0xe5, 0x5b,
-	0x6a, 0x6c, 0x46, 0x08, 0x41, 0x4d, 0xbc, 0xb4, 0xca, 0x3a, 0x5d, 0xf6, 0x21, 0x36, 0x37, 0x55,
-	0x85, 0xa9, 0x6a, 0xd3, 0xbc, 0xf5, 0x74, 0x00, 0xeb, 0x1d, 0xcf, 0xc9, 0x60, 0x3d, 0x55, 0xf9,
-	0x23, 0xdc, 0x11, 0xbd, 0xf6, 0x48, 0xf9, 0xe9, 0xbb, 0x42, 0xa0, 0xeb, 0xf5, 0x4d, 0xb7, 0x5b,
-	0xf7, 0x82, 0x6e, 0xa3, 0x8b, 0x5d, 0x06, 0xda, 0xe0, 0x5b, 0xa6, 0x6f, 0x93, 0xd1, 0x3f, 0xa9,
-	0x9e, 0xf0, 0xaf, 0xff, 0x29, 0xca, 0xdf, 0x0b, 0x57, 0x9f, 0xf3, 0xb3, 0xfb, 0x7d, 0x2f, 0xb2,
-	0x68, 0x4c, 0x1f, 0x47, 0xed, 0xfa, 0x8f, 0x1f, 0xb5, 0x97, 0xd8, 0xf1, 0xb7, 0xff, 0x1f, 0x00,
-	0x00, 0xff, 0xff, 0x93, 0x6b, 0x90, 0xee, 0xe2, 0x1a, 0x00, 0x00,
+	0x19, 0xcf, 0x92, 0x7a, 0x50, 0x1f, 0xf4, 0xf2, 0x56, 0xb2, 0x69, 0xf8, 0x25, 0xc1, 0x8a, 0x45,
+	0x33, 0x36, 0x29, 0x33, 0x13, 0x37, 0xb6, 0x2a, 0x67, 0x24, 0xcb, 0x75, 0xdc, 0xb1, 0x1b, 0x15,
+	0x72, 0xdb, 0x99, 0x1e, 0xca, 0x01, 0x89, 0x35, 0x8d, 0x90, 0x04, 0x10, 0x00, 0x54, 0xad, 0xb4,
+	0x9e, 0x49, 0x93, 0x4e, 0x67, 0x3a, 0xf5, 0xa1, 0x69, 0x6e, 0x9d, 0x1c, 0x3a, 0xd3, 0x5b, 0x8f,
+	0x9d, 0xe9, 0xb5, 0xff, 0x44, 0xff, 0x85, 0x1e, 0x7b, 0x6f, 0x8f, 0x99, 0x7d, 0x00, 0xc4, 0x63,
+	0x41, 0x8a, 0xb2, 0x7d, 0x03, 0xf6, 0xfb, 0x76, 0xbf, 0xdf, 0xf7, 0xfe, 0x80, 0x85, 0x4b, 0x1d,
+	0xc7, 0xe9, 0xf4, 0x48, 0xdd, 0x1d, 0xb4, 0xfc, 0x41, 0xab, 0x7e, 0x74, 0x4b, 0x3c, 0xd5, 0x5c,
+	0xcf, 0x09, 0x1c, 0xbc, 0xcc, 0xc9, 0x35, 0xb1, 0x78, 0x74, 0x4b, 0xbd, 0x28, 0x36, 0x18, 0xae,
+	0x55, 0x37, 0x6c, 0xdb, 0x09, 0x8c, 0xc0, 0x72, 0x6c, 0x9f, 0xf3, 0xab, 0x97, 0xc3, 0xe3, 0xe8,
+	0x5b, 0x6b, 0xf0, 0xac, 0x6e, 0x0e, 0x3c, 0xc6, 0x20, 0xe8, 0x17, 0xd2, 0x74, 0xd2, 0x77, 0x83,
+	0x63, 0x41, 0x5c, 0x4b, 0x13, 0x9f, 0x59, 0xa4, 0x67, 0x36, 0xfb, 0x86, 0xdf, 0x15, 0x1c, 0x57,
+	0xd2, 0x1c, 0x81, 0xd5, 0x27, 0x7e, 0x60, 0xf4, 0x5d, 0xce, 0xa0, 0x7d, 0x83, 0x60, 0xfa, 0xa9,
+	0xe3, 0x5a, 0x6d, 0x8c, 0x61, 0xca, 0x36, 0xfa, 0xa4, 0x8c, 0xd6, 0x50, 0x65, 0x4e, 0x67, 0xcf,
+	0x78, 0x1b, 0x66, 0x7a, 0x46, 0x8b, 0xf4, 0xfc, 0x72, 0x61, 0xad, 0x58, 0x51, 0x1a, 0x57, 0x6b,
+	0x69, 0xf5, 0x6a, 0x6c, 0x73, 0xed, 0x31, 0xe3, 0x7a, 0x60, 0x07, 0xde, 0xb1, 0x2e, 0xb6, 0xa8,
+	0x77, 0x40, 0x89, 0x2d, 0xe3, 0x65, 0x28, 0x76, 0xc9, 0xb1, 0x38, 0x9e, 0x3e, 0xe2, 0x15, 0x98,
+	0x3e, 0x32, 0x7a, 0x03, 0x52, 0x2e, 0xb0, 0x35, 0xfe, 0x72, 0xb7, 0xf0, 0x21, 0xd2, 0xbe, 0x2e,
+	0xc0, 0xc2, 0x01, 0x13, 0xf1, 0x84, 0xf8, 0xbe, 0xd1, 0x21, 0x14, 0x9d, 0x69, 0x04, 0x06, 0xdb,
+	0x3e, 0xaf, 0xb3, 0x67, 0xfc, 0x09, 0x80, 0x11, 0x04, 0x9e, 0xd5, 0x1a, 0x04, 0x24, 0x44, 0x58,
+	0xcf, 0x22, 0x4c, 0x1c, 0x54, 0xdb, 0x8d, 0x76, 0x70, 0xb4, 0xb1, 0x23, 0xf0, 0x25, 0x80, 0x3e,
+	0x67, 0x6b, 0x5a, 0x66, 0xb9, 0xc8, 0x50, 0xcd, 0x89, 0x95, 0x47, 0x26, 0xde, 0x81, 0x79, 0x77,
+	0xd0, 0xea, 0x59, 0xfe, 0xf3, 0x26, 0x35, 0x63, 0x79, 0x6a, 0x0d, 0x55, 0x94, 0x86, 0x1a, 0x49,
+	0x14, 0x36, 0xae, 0x3d, 0x0d, 0x6d, 0xac, 0x2b, 0x82, 0x9f, 0xae, 0xa8, 0x3b, 0xb0, 0x94, 0x12,
+	0x3e, 0x91, 0x4d, 0x36, 0x61, 0xe9, 0x21, 0x09, 0x98, 0xb9, 0x75, 0xf2, 0xd9, 0x80, 0xf8, 0x01,
+	0x65, 0x0e, 0xe8, 0xbb, 0x38, 0x80, 0xbf, 0x68, 0x5f, 0x20, 0xc0, 0x3f, 0x75, 0x4d, 0x23, 0x20,
+	0x09, 0xe6, 0x9b, 0x71, 0x66, 0xa5, 0x71, 0x2e, 0xc7, 0x95, 0xe2, 0x14, 0xbc, 0x0d, 0xca, 0x80,
+	0x1d, 0xc2, 0xc2, 0x89, 0xc1, 0x91, 0xe9, 0xfa, 0x43, 0x1a, 0x71, 0x4f, 0x0c, 0xbf, 0xab, 0x03,
+	0x67, 0xa7, 0xcf, 0x5a, 0x1b, 0x16, 0x0f, 0xb8, 0xe6, 0x23, 0xa1, 0xe2, 0x6d, 0x28, 0x09, 0xf3,
+	0x86, 0xfe, 0xbb, 0x32, 0xc6, 0x7f, 0x7a, 0xb4, 0x41, 0x6b, 0xc0, 0x52, 0x24, 0xc4, 0x77, 0x1d,
+	0xdb, 0x27, 0xf8, 0x0a, 0x28, 0x43, 0x07, 0xfa, 0x65, 0xb4, 0x56, 0xac, 0xcc, 0xe9, 0x10, 0x79,
+	0xd0, 0xd7, 0x2c, 0x38, 0xf3, 0xd8, 0xf2, 0xb9, 0x15, 0xfd, 0x10, 0x5b, 0x19, 0x66, 0x5d, 0xcf,
+	0xf9, 0x94, 0xb4, 0x03, 0x81, 0x2e, 0x7c, 0xc5, 0x17, 0x60, 0xce, 0xa5, 0x87, 0xf9, 0xd6, 0xe7,
+	0xdc, 0x23, 0xd3, 0x7a, 0x89, 0x2e, 0x1c, 0x5a, 0x9f, 0x13, 0x1a, 0x2d, 0x8c, 0x18, 0x38, 0x5d,
+	0x62, 0x87, 0xd1, 0x42, 0x57, 0x9e, 0xd2, 0x05, 0xad, 0x0f, 0x38, 0x2e, 0x4a, 0x20, 0xac, 0xc3,
+	0x0c, 0x53, 0x9d, 0x83, 0x1b, 0xe1, 0x06, 0xc1, 0x86, 0xaf, 0xc1, 0x92, 0x4d, 0x5e, 0x04, 0xcd,
+	0x98, 0x28, 0x1e, 0x1a, 0x0b, 0x74, 0xf9, 0x20, 0x12, 0xf7, 0x19, 0x5c, 0x8a, 0xc4, 0x1d, 0x0e,
+	0x5a, 0x7e, 0xdb, 0xb3, 0x5c, 0x56, 0x68, 0x46, 0x7b, 0xe0, 0x75, 0x34, 0xb4, 0xe1, 0x72, 0x9e,
+	0x48, 0xa1, 0xed, 0x06, 0x2c, 0xf8, 0x71, 0x82, 0xf0, 0x48, 0x72, 0xf1, 0xc4, 0x2a, 0x56, 0x01,
+	0xef, 0x93, 0x1e, 0x49, 0xc5, 0xb5, 0x3c, 0x09, 0xfe, 0x59, 0x84, 0xf9, 0x38, 0x26, 0x69, 0x79,
+	0x8b, 0xb6, 0x16, 0xe2, 0x26, 0xd9, 0x01, 0xc5, 0x1d, 0xf8, 0xcf, 0x9b, 0x6d, 0xc7, 0x7e, 0x66,
+	0x75, 0x44, 0x96, 0x5f, 0x94, 0xc5, 0xa5, 0xff, 0xfc, 0x3e, 0xe3, 0xd1, 0xc1, 0x8d, 0x9e, 0xf1,
+	0x16, 0xac, 0x18, 0xed, 0x6e, 0xd3, 0x24, 0x86, 0xd9, 0xb3, 0x6c, 0xd2, 0xf4, 0x49, 0xdb, 0xb1,
+	0x4d, 0xbf, 0x3c, 0xcd, 0x8c, 0x8b, 0x8d, 0x76, 0x77, 0x5f, 0x90, 0x0e, 0x39, 0x05, 0x37, 0x60,
+	0xd5, 0x23, 0x81, 0x61, 0xd9, 0x4d, 0xa3, 0xdd, 0x25, 0x66, 0x33, 0x4a, 0x89, 0xd9, 0x35, 0x54,
+	0x29, 0xe9, 0xdf, 0xe3, 0xc4, 0x5d, 0x4a, 0x13, 0x59, 0xe0, 0xe3, 0x9f, 0x83, 0x1a, 0x46, 0xba,
+	0x47, 0x02, 0x62, 0x53, 0x1d, 0x9b, 0x61, 0xef, 0x28, 0x97, 0x18, 0xe6, 0xf3, 0x99, 0x6c, 0xdd,
+	0x17, 0x0c, 0x7a, 0x59, 0x6c, 0xd6, 0xc3, 0xbd, 0x21, 0x05, 0xef, 0x45, 0x25, 0x7f, 0x8e, 0x05,
+	0x68, 0x35, 0xab, 0x78, 0xdc, 0xae, 0x6f, 0xba, 0xf2, 0xff, 0x0b, 0x01, 0x0c, 0x0d, 0x8b, 0xaf,
+	0xc2, 0x02, 0xf3, 0x05, 0xb1, 0x4d, 0xd7, 0xb1, 0xec, 0x30, 0x41, 0xe7, 0xe9, 0xe2, 0x03, 0xb1,
+	0x86, 0x1f, 0x4b, 0xfa, 0xc0, 0x8d, 0x51, 0xfe, 0x1a, 0xd5, 0x04, 0x5e, 0xb7, 0x4c, 0xb7, 0x61,
+	0x49, 0x27, 0x6d, 0x62, 0x1d, 0x45, 0xce, 0xc2, 0xab, 0x30, 0x43, 0x23, 0xc2, 0x32, 0xc3, 0x10,
+	0x35, 0xda, 0xdd, 0x47, 0x26, 0xbe, 0x03, 0xb3, 0xc2, 0x0b, 0xa2, 0xba, 0x8e, 0xad, 0x7d, 0x21,
+	0xbf, 0xf6, 0x03, 0x38, 0xfb, 0x90, 0x04, 0x71, 0x3f, 0x84, 0xd9, 0xa0, 0xc1, 0x7c, 0x3c, 0xb9,
+	0x42, 0x7b, 0xc5, 0xd7, 0xb4, 0x6f, 0x11, 0x9c, 0xe7, 0x0d, 0x42, 0x76, 0xc2, 0x9e, 0xe4, 0x04,
+	0xa5, 0x71, 0x79, 0x74, 0x18, 0x24, 0x25, 0xbc, 0x5e, 0xf3, 0x70, 0xa1, 0x4c, 0xcb, 0x8a, 0xb4,
+	0x88, 0xbd, 0x9d, 0x52, 0xfd, 0x07, 0x04, 0xe7, 0x25, 0x22, 0x45, 0x11, 0xdb, 0x97, 0x15, 0xb1,
+	0xf1, 0x16, 0x39, 0x65, 0x91, 0xfb, 0x08, 0xce, 0xf3, 0x22, 0x77, 0x5a, 0xef, 0xfe, 0x06, 0xce,
+	0x3d, 0x71, 0x4c, 0xeb, 0xd9, 0x71, 0xac, 0x3e, 0x9d, 0x7c, 0x7b, 0xba, 0xfa, 0x15, 0x26, 0xab,
+	0x7e, 0xda, 0x57, 0x08, 0x94, 0x83, 0x41, 0xaf, 0x37, 0x89, 0xc8, 0x9b, 0x80, 0x3d, 0x12, 0x0c,
+	0x3c, 0xbb, 0x69, 0xf5, 0xfb, 0xc4, 0xb4, 0x8c, 0x80, 0xf4, 0x8e, 0x99, 0xe4, 0x92, 0x7e, 0x86,
+	0x53, 0x1e, 0x0d, 0x09, 0x78, 0x1d, 0xe6, 0xfb, 0xc6, 0x8b, 0x61, 0x95, 0x2c, 0x32, 0x67, 0x2b,
+	0x7d, 0xe3, 0x45, 0x58, 0x1d, 0xb5, 0x5f, 0xc2, 0x3c, 0x07, 0x21, 0x5c, 0xf8, 0x63, 0x38, 0xe3,
+	0x89, 0xa4, 0x1c, 0xee, 0xe3, 0x6e, 0x5c, 0xcf, 0xaa, 0x96, 0xca, 0x5f, 0x7d, 0xd9, 0x4b, 0x2e,
+	0xf8, 0x34, 0x60, 0xca, 0xdc, 0xc8, 0xbb, 0xc3, 0x72, 0x3e, 0x89, 0xca, 0xe7, 0x60, 0x96, 0x97,
+	0x04, 0xbf, 0x3c, 0xc5, 0x5a, 0xe2, 0x0c, 0xab, 0x09, 0x7e, 0x6e, 0xf7, 0x28, 0xe6, 0x75, 0x0f,
+	0xed, 0x27, 0x80, 0x77, 0xdb, 0x5d, 0xdb, 0xf9, 0x55, 0x8f, 0x98, 0x9d, 0xd3, 0x82, 0x28, 0xc4,
+	0x41, 0x68, 0xbf, 0x2d, 0xc0, 0xca, 0x61, 0xe0, 0x11, 0xa3, 0x6f, 0xd9, 0x9d, 0x49, 0xbd, 0x99,
+	0x77, 0x2a, 0xbe, 0x0d, 0xe7, 0xfa, 0xcc, 0x66, 0x32, 0xed, 0x8a, 0x95, 0x69, 0x7d, 0x95, 0x93,
+	0xd3, 0xed, 0xf1, 0x83, 0xec, 0xbe, 0xa4, 0xed, 0x56, 0x92, 0xfb, 0x76, 0xb9, 0xb8, 0x1d, 0xb8,
+	0xe0, 0x33, 0x1d, 0x9a, 0x23, 0xda, 0x71, 0x99, 0xb3, 0xec, 0x66, 0xcd, 0xda, 0x81, 0xd5, 0x94,
+	0x09, 0xde, 0x52, 0x2c, 0x7d, 0x02, 0xab, 0xf7, 0x3d, 0x42, 0x8b, 0xb1, 0x6d, 0xb8, 0xfe, 0x73,
+	0x27, 0x08, 0x8d, 0x2d, 0x9b, 0x58, 0xd2, 0x0e, 0x28, 0x48, 0x0a, 0xc0, 0x2b, 0x04, 0xab, 0xa2,
+	0xbc, 0xa7, 0x4e, 0xbc, 0x0d, 0x25, 0x5f, 0x2c, 0x89, 0xb2, 0xae, 0x4a, 0x8a, 0x58, 0xb8, 0x29,
+	0xe2, 0x7d, 0xbd, 0x72, 0xfe, 0x5f, 0x04, 0xa5, 0xf0, 0xcc, 0x09, 0xa6, 0xb0, 0x6d, 0x50, 0xc8,
+	0x0b, 0xd7, 0xf2, 0x08, 0xff, 0xd6, 0x2a, 0x8e, 0xfd, 0xd6, 0x02, 0xce, 0x4e, 0x17, 0xf0, 0xbd,
+	0x68, 0x88, 0x99, 0x62, 0x8e, 0xb9, 0x96, 0xaf, 0xe6, 0x9b, 0x1e, 0x60, 0x7a, 0xb0, 0xc2, 0x5a,
+	0x89, 0x38, 0xfe, 0x2d, 0x77, 0xae, 0x63, 0x58, 0x4d, 0x49, 0x13, 0x51, 0xfa, 0x21, 0xcc, 0x85,
+	0xee, 0x0b, 0xa3, 0x73, 0x94, 0xaf, 0x87, 0xcc, 0x27, 0x6e, 0x54, 0xef, 0xc3, 0xaa, 0x68, 0x54,
+	0xa9, 0x28, 0x53, 0x53, 0x51, 0x36, 0x37, 0x8c, 0x24, 0xed, 0x8f, 0x08, 0x94, 0x43, 0x42, 0xba,
+	0x93, 0x14, 0x94, 0x2d, 0x98, 0x62, 0x21, 0x50, 0x18, 0x17, 0x02, 0x1f, 0xbf, 0xa3, 0x33, 0x4e,
+	0x7c, 0x31, 0x86, 0x80, 0x99, 0xec, 0xe3, 0x77, 0x86, 0x18, 0xf6, 0x4a, 0x30, 0x13, 0x18, 0x5e,
+	0x87, 0x04, 0xda, 0x22, 0xcc, 0x73, 0x30, 0xdc, 0x68, 0x8d, 0xff, 0x2d, 0x03, 0x88, 0xb6, 0xdb,
+	0x22, 0x1e, 0xfe, 0x3d, 0x02, 0x2c, 0x52, 0x33, 0x8e, 0x67, 0x4c, 0xe3, 0x57, 0xc7, 0xd0, 0xb5,
+	0xad, 0x2f, 0xff, 0xfd, 0x9f, 0x6f, 0x0a, 0x55, 0xf5, 0xdd, 0xfa, 0xd1, 0xad, 0xfa, 0xaf, 0x69,
+	0x0a, 0xec, 0x88, 0x50, 0xf0, 0xeb, 0xd5, 0x7a, 0x62, 0x6a, 0xa8, 0x57, 0x5f, 0xde, 0x45, 0x55,
+	0xfc, 0x67, 0xc4, 0xbe, 0xfd, 0x13, 0x28, 0x2a, 0x59, 0x29, 0xf2, 0x91, 0x70, 0x2c, 0x9e, 0x0f,
+	0x18, 0x9e, 0x3a, 0xbe, 0xc9, 0xf0, 0xc4, 0xe5, 0x8f, 0xc2, 0x85, 0xff, 0x1a, 0xfd, 0x66, 0x48,
+	0xe0, 0x7a, 0x2f, 0x2b, 0x2d, 0x77, 0xd6, 0x1c, 0x0b, 0x6d, 0x87, 0x41, 0xfb, 0x7e, 0xa3, 0x91,
+	0x81, 0x56, 0x3b, 0x89, 0xdd, 0xbe, 0x45, 0xfc, 0x73, 0x3f, 0x31, 0xd7, 0x61, 0xc9, 0x17, 0x4d,
+	0xde, 0xbc, 0xa9, 0xbe, 0x77, 0x22, 0x5e, 0x1e, 0x3e, 0x5a, 0x8d, 0xa1, 0xad, 0xe0, 0x6b, 0x0c,
+	0xad, 0xc0, 0x16, 0xc3, 0xf8, 0x32, 0x09, 0x12, 0xff, 0x09, 0x85, 0x1f, 0xb4, 0xe3, 0x2c, 0x98,
+	0x3b, 0x11, 0xaa, 0x67, 0x33, 0xe9, 0xf0, 0xa0, 0xef, 0x06, 0xc7, 0xa1, 0x53, 0xab, 0x13, 0x3a,
+	0xf5, 0x6f, 0x08, 0xce, 0x64, 0x06, 0x1b, 0x99, 0xc5, 0xf2, 0xa6, 0x9f, 0x5c, 0x40, 0x3f, 0x62,
+	0x80, 0xf6, 0xb5, 0x8f, 0x26, 0x02, 0x74, 0xb7, 0x9f, 0x96, 0x43, 0xfd, 0xfa, 0x35, 0x02, 0x25,
+	0x36, 0xf3, 0xe0, 0x8d, 0x2c, 0xbe, 0xec, 0x48, 0x94, 0x8b, 0x6c, 0x9f, 0x21, 0xbb, 0xa7, 0xdd,
+	0x99, 0x0c, 0x99, 0x31, 0x94, 0x40, 0x31, 0xfd, 0x0e, 0xc1, 0x14, 0x9d, 0x13, 0xf0, 0x25, 0xd9,
+	0xac, 0x1c, 0x8d, 0x50, 0xb2, 0x90, 0x8f, 0x8f, 0x17, 0x61, 0xc8, 0x6b, 0x8d, 0xc9, 0xd0, 0xb8,
+	0x83, 0x5e, 0x8f, 0xc2, 0x30, 0x61, 0x21, 0x31, 0xb6, 0x60, 0x59, 0xeb, 0x93, 0x8c, 0x76, 0xea,
+	0xe6, 0x58, 0x3e, 0x0e, 0xb0, 0x82, 0xb6, 0x10, 0xcd, 0xfd, 0xe5, 0xf4, 0x47, 0x06, 0xbe, 0x9e,
+	0x17, 0x25, 0x99, 0x0f, 0x91, 0x5c, 0x57, 0x3c, 0x62, 0xca, 0xdf, 0xd7, 0xee, 0x9d, 0x26, 0x48,
+	0x86, 0x62, 0xa8, 0x21, 0x5e, 0x21, 0x58, 0x48, 0xb4, 0x46, 0x99, 0x25, 0x64, 0x9d, 0x5a, 0x66,
+	0x09, 0x69, 0x8f, 0xd5, 0xaa, 0x0c, 0xed, 0x06, 0xd6, 0xf2, 0xf3, 0x3d, 0x12, 0xfe, 0x15, 0x82,
+	0xc5, 0xe4, 0x98, 0x87, 0x25, 0x72, 0xa4, 0x83, 0xa0, 0x3a, 0xa2, 0x71, 0x6b, 0x37, 0x18, 0x86,
+	0x6b, 0xea, 0xba, 0xbc, 0x99, 0x84, 0xf2, 0x45, 0x41, 0x7c, 0x85, 0x60, 0x31, 0x39, 0x1a, 0xca,
+	0x50, 0x48, 0x87, 0xc7, 0x91, 0x28, 0x44, 0xb5, 0x69, 0x54, 0xb9, 0xdf, 0xc2, 0xd1, 0x6a, 0x1c,
+	0x9c, 0x2f, 0x10, 0x2c, 0x26, 0x67, 0x08, 0x19, 0x1c, 0xe9, 0x94, 0x91, 0x1b, 0x42, 0x37, 0x19,
+	0x94, 0xcd, 0xea, 0xbb, 0x09, 0x28, 0x79, 0x28, 0x58, 0xda, 0xd2, 0x19, 0x40, 0x96, 0xb6, 0xb1,
+	0x41, 0x45, 0xda, 0xa9, 0x62, 0xa3, 0xc3, 0x69, 0xd3, 0xd6, 0x27, 0xa4, 0x7b, 0x17, 0x55, 0x1b,
+	0x7f, 0x99, 0x85, 0x39, 0xf1, 0x33, 0x9b, 0x78, 0xf8, 0x53, 0x50, 0x78, 0x24, 0xf0, 0x9b, 0x99,
+	0xbc, 0x7f, 0xc4, 0x6a, 0x1e, 0x41, 0xbb, 0xce, 0xd0, 0x5c, 0x55, 0x2f, 0x4b, 0xa3, 0x82, 0xff,
+	0x59, 0x16, 0x3e, 0x78, 0x09, 0x4a, 0xec, 0xb2, 0x40, 0x56, 0x4a, 0xb3, 0x77, 0x09, 0xf9, 0x82,
+	0xeb, 0x4c, 0xf0, 0xf5, 0xc6, 0x06, 0x13, 0xcc, 0x04, 0xd5, 0x46, 0x8a, 0xff, 0x12, 0xc1, 0xac,
+	0x50, 0x1c, 0xaf, 0x49, 0xff, 0x7f, 0xc5, 0x6e, 0x11, 0xd4, 0xf5, 0x11, 0x1c, 0xc2, 0x11, 0x0d,
+	0x86, 0xe0, 0x86, 0xb6, 0x39, 0x44, 0x20, 0x17, 0x2e, 0xae, 0x66, 0x28, 0x08, 0x07, 0x4a, 0xe1,
+	0xd5, 0x0a, 0x5e, 0x97, 0xce, 0x55, 0x27, 0xd3, 0x7e, 0x93, 0xc9, 0x5e, 0xc7, 0x57, 0xc6, 0xc8,
+	0xa6, 0x81, 0x0f, 0xc3, 0xcb, 0x01, 0x7c, 0x55, 0x5e, 0x71, 0x12, 0xb7, 0x14, 0xea, 0xc6, 0x68,
+	0x26, 0xa1, 0x7e, 0x12, 0x82, 0xac, 0x26, 0x89, 0x7b, 0x85, 0x7f, 0x20, 0x38, 0x2b, 0xff, 0x7b,
+	0x8f, 0xeb, 0x23, 0x24, 0x49, 0xa7, 0xa4, 0xad, 0x93, 0x6f, 0x10, 0x30, 0x93, 0x33, 0x67, 0xbe,
+	0xa5, 0x52, 0x13, 0x53, 0x00, 0x4a, 0xec, 0x06, 0x40, 0x16, 0xac, 0xd9, 0x0b, 0x82, 0xdc, 0x4a,
+	0x21, 0x4c, 0x55, 0x1d, 0xe7, 0xad, 0xbd, 0x63, 0x58, 0x69, 0x3b, 0xfd, 0x8c, 0xac, 0x3d, 0x85,
+	0xff, 0x9d, 0x3d, 0xa0, 0xc7, 0x1e, 0xa0, 0x5f, 0xdc, 0x16, 0x0c, 0x1d, 0xa7, 0x67, 0xd8, 0x9d,
+	0x9a, 0xe3, 0x75, 0xea, 0x1d, 0x62, 0x33, 0xa1, 0x75, 0x4e, 0x32, 0x5c, 0xcb, 0x1f, 0x5e, 0x1c,
+	0x6f, 0xf3, 0xa7, 0xff, 0x23, 0xf4, 0xf7, 0xc2, 0xd9, 0x87, 0x7c, 0xef, 0xfd, 0x9e, 0x33, 0x30,
+	0x69, 0x4c, 0x1f, 0x0e, 0x5a, 0xb5, 0x9f, 0xdd, 0x6a, 0xcd, 0xb0, 0xed, 0xef, 0x7f, 0x17, 0x00,
+	0x00, 0xff, 0xff, 0x68, 0xa2, 0x62, 0x98, 0x76, 0x1e, 0x00, 0x00,
 }
-- 
GitLab