diff --git a/googleapis/cloud/dialogflow/v2/environment.pb.go b/googleapis/cloud/dialogflow/v2/environment.pb.go
index 507181b..c4a7136 100644
--- a/googleapis/cloud/dialogflow/v2/environment.pb.go
+++ b/googleapis/cloud/dialogflow/v2/environment.pb.go
@@ -48,7 +48,7 @@
 // of the legacy proto package is being used.
 const _ = proto.ProtoPackageIsVersion4
 
-// Represents an environment state. When a environment is pointed to a new
+// Represents an environment state. When an environment is pointed to a new
 // agent version, the environment is temporarily set to the `LOADING` state.
 // During that time, the environment keeps on serving the previous version of
 // the agent. After the new agent version is done loading, the environment is
diff --git a/googleapis/cloud/dialogflow/v2/intent.pb.go b/googleapis/cloud/dialogflow/v2/intent.pb.go
index 63887c1..6a1f237 100644
--- a/googleapis/cloud/dialogflow/v2/intent.pb.go
+++ b/googleapis/cloud/dialogflow/v2/intent.pb.go
@@ -1602,6 +1602,7 @@
 	// Required. The name of the parameter.
 	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
 	// Optional. The definition of the parameter value. It can be:
+	//
 	// - a constant string,
 	// - a parameter value defined as `$parameter_name`,
 	// - an original parameter value defined as `$parameter_name.original`,
diff --git a/googleapis/cloud/dialogflow/v2/session.pb.go b/googleapis/cloud/dialogflow/v2/session.pb.go
index 732553f..9b38738 100644
--- a/googleapis/cloud/dialogflow/v2/session.pb.go
+++ b/googleapis/cloud/dialogflow/v2/session.pb.go
@@ -247,6 +247,10 @@
 	// multiple default text responses exist, they will be concatenated when
 	// generating audio. If no default platform text responses exist, the
 	// generated audio content will be empty.
+	//
+	// In some scenarios, multiple output audio fields may be present in the
+	// response structure. In these cases, only the top-most-level audio output
+	// has content.
 	OutputAudio []byte `protobuf:"bytes,4,opt,name=output_audio,json=outputAudio,proto3" json:"output_audio,omitempty"`
 	// The config used by the speech synthesizer to generate the output audio.
 	OutputAudioConfig *OutputAudioConfig `protobuf:"bytes,6,opt,name=output_audio_config,json=outputAudioConfig,proto3" json:"output_audio_config,omitempty"`
@@ -975,6 +979,10 @@
 	// multiple default text responses exist, they will be concatenated when
 	// generating audio. If no default platform text responses exist, the
 	// generated audio content will be empty.
+	//
+	// In some scenarios, multiple output audio fields may be present in the
+	// response structure. In these cases, only the top-most-level audio output
+	// has content.
 	OutputAudio []byte `protobuf:"bytes,5,opt,name=output_audio,json=outputAudio,proto3" json:"output_audio,omitempty"`
 	// The config used by the speech synthesizer to generate the output audio.
 	OutputAudioConfig *OutputAudioConfig `protobuf:"bytes,6,opt,name=output_audio_config,json=outputAudioConfig,proto3" json:"output_audio_config,omitempty"`
diff --git a/googleapis/cloud/videointelligence/v1p3beta1/video_intelligence.pb.go b/googleapis/cloud/videointelligence/v1p3beta1/video_intelligence.pb.go
index 7fa0283..ce73db6 100644
--- a/googleapis/cloud/videointelligence/v1p3beta1/video_intelligence.pb.go
+++ b/googleapis/cloud/videointelligence/v1p3beta1/video_intelligence.pb.go
@@ -1,4 +1,4 @@
-// Copyright 2020 Google LLC.
+// Copyright 2020 Google LLC
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -11,7 +11,6 @@
 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 // See the License for the specific language governing permissions and
 // limitations under the License.
-//
 
 // Code generated by protoc-gen-go. DO NOT EDIT.
 // versions:
@@ -50,6 +49,201 @@
 // of the legacy proto package is being used.
 const _ = proto.ProtoPackageIsVersion4
 
+// Label detection mode.
+type LabelDetectionMode int32
+
+const (
+	// Unspecified.
+	LabelDetectionMode_LABEL_DETECTION_MODE_UNSPECIFIED LabelDetectionMode = 0
+	// Detect shot-level labels.
+	LabelDetectionMode_SHOT_MODE LabelDetectionMode = 1
+	// Detect frame-level labels.
+	LabelDetectionMode_FRAME_MODE LabelDetectionMode = 2
+	// Detect both shot-level and frame-level labels.
+	LabelDetectionMode_SHOT_AND_FRAME_MODE LabelDetectionMode = 3
+)
+
+// Enum value maps for LabelDetectionMode.
+var (
+	LabelDetectionMode_name = map[int32]string{
+		0: "LABEL_DETECTION_MODE_UNSPECIFIED",
+		1: "SHOT_MODE",
+		2: "FRAME_MODE",
+		3: "SHOT_AND_FRAME_MODE",
+	}
+	LabelDetectionMode_value = map[string]int32{
+		"LABEL_DETECTION_MODE_UNSPECIFIED": 0,
+		"SHOT_MODE":                        1,
+		"FRAME_MODE":                       2,
+		"SHOT_AND_FRAME_MODE":              3,
+	}
+)
+
+func (x LabelDetectionMode) Enum() *LabelDetectionMode {
+	p := new(LabelDetectionMode)
+	*p = x
+	return p
+}
+
+func (x LabelDetectionMode) String() string {
+	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (LabelDetectionMode) Descriptor() protoreflect.EnumDescriptor {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[0].Descriptor()
+}
+
+func (LabelDetectionMode) Type() protoreflect.EnumType {
+	return &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[0]
+}
+
+func (x LabelDetectionMode) Number() protoreflect.EnumNumber {
+	return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use LabelDetectionMode.Descriptor instead.
+func (LabelDetectionMode) EnumDescriptor() ([]byte, []int) {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{0}
+}
+
+// Bucketized representation of likelihood.
+type Likelihood int32
+
+const (
+	// Unspecified likelihood.
+	Likelihood_LIKELIHOOD_UNSPECIFIED Likelihood = 0
+	// Very unlikely.
+	Likelihood_VERY_UNLIKELY Likelihood = 1
+	// Unlikely.
+	Likelihood_UNLIKELY Likelihood = 2
+	// Possible.
+	Likelihood_POSSIBLE Likelihood = 3
+	// Likely.
+	Likelihood_LIKELY Likelihood = 4
+	// Very likely.
+	Likelihood_VERY_LIKELY Likelihood = 5
+)
+
+// Enum value maps for Likelihood.
+var (
+	Likelihood_name = map[int32]string{
+		0: "LIKELIHOOD_UNSPECIFIED",
+		1: "VERY_UNLIKELY",
+		2: "UNLIKELY",
+		3: "POSSIBLE",
+		4: "LIKELY",
+		5: "VERY_LIKELY",
+	}
+	Likelihood_value = map[string]int32{
+		"LIKELIHOOD_UNSPECIFIED": 0,
+		"VERY_UNLIKELY":          1,
+		"UNLIKELY":               2,
+		"POSSIBLE":               3,
+		"LIKELY":                 4,
+		"VERY_LIKELY":            5,
+	}
+)
+
+func (x Likelihood) Enum() *Likelihood {
+	p := new(Likelihood)
+	*p = x
+	return p
+}
+
+func (x Likelihood) String() string {
+	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Likelihood) Descriptor() protoreflect.EnumDescriptor {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[1].Descriptor()
+}
+
+func (Likelihood) Type() protoreflect.EnumType {
+	return &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[1]
+}
+
+func (x Likelihood) Number() protoreflect.EnumNumber {
+	return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Likelihood.Descriptor instead.
+func (Likelihood) EnumDescriptor() ([]byte, []int) {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{1}
+}
+
+// Streaming video annotation feature.
+type StreamingFeature int32
+
+const (
+	// Unspecified.
+	StreamingFeature_STREAMING_FEATURE_UNSPECIFIED StreamingFeature = 0
+	// Label detection. Detect objects, such as dog or flower.
+	StreamingFeature_STREAMING_LABEL_DETECTION StreamingFeature = 1
+	// Shot change detection.
+	StreamingFeature_STREAMING_SHOT_CHANGE_DETECTION StreamingFeature = 2
+	// Explicit content detection.
+	StreamingFeature_STREAMING_EXPLICIT_CONTENT_DETECTION StreamingFeature = 3
+	// Object detection and tracking.
+	StreamingFeature_STREAMING_OBJECT_TRACKING StreamingFeature = 4
+	// Action recognition based on AutoML model.
+	StreamingFeature_STREAMING_AUTOML_ACTION_RECOGNITION StreamingFeature = 23
+	// Video classification based on AutoML model.
+	StreamingFeature_STREAMING_AUTOML_CLASSIFICATION StreamingFeature = 21
+	// Object detection and tracking based on AutoML model.
+	StreamingFeature_STREAMING_AUTOML_OBJECT_TRACKING StreamingFeature = 22
+)
+
+// Enum value maps for StreamingFeature.
+var (
+	StreamingFeature_name = map[int32]string{
+		0:  "STREAMING_FEATURE_UNSPECIFIED",
+		1:  "STREAMING_LABEL_DETECTION",
+		2:  "STREAMING_SHOT_CHANGE_DETECTION",
+		3:  "STREAMING_EXPLICIT_CONTENT_DETECTION",
+		4:  "STREAMING_OBJECT_TRACKING",
+		23: "STREAMING_AUTOML_ACTION_RECOGNITION",
+		21: "STREAMING_AUTOML_CLASSIFICATION",
+		22: "STREAMING_AUTOML_OBJECT_TRACKING",
+	}
+	StreamingFeature_value = map[string]int32{
+		"STREAMING_FEATURE_UNSPECIFIED":        0,
+		"STREAMING_LABEL_DETECTION":            1,
+		"STREAMING_SHOT_CHANGE_DETECTION":      2,
+		"STREAMING_EXPLICIT_CONTENT_DETECTION": 3,
+		"STREAMING_OBJECT_TRACKING":            4,
+		"STREAMING_AUTOML_ACTION_RECOGNITION":  23,
+		"STREAMING_AUTOML_CLASSIFICATION":      21,
+		"STREAMING_AUTOML_OBJECT_TRACKING":     22,
+	}
+)
+
+func (x StreamingFeature) Enum() *StreamingFeature {
+	p := new(StreamingFeature)
+	*p = x
+	return p
+}
+
+func (x StreamingFeature) String() string {
+	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (StreamingFeature) Descriptor() protoreflect.EnumDescriptor {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[2].Descriptor()
+}
+
+func (StreamingFeature) Type() protoreflect.EnumType {
+	return &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[2]
+}
+
+func (x StreamingFeature) Number() protoreflect.EnumNumber {
+	return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use StreamingFeature.Descriptor instead.
+func (StreamingFeature) EnumDescriptor() ([]byte, []int) {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{2}
+}
+
 // Video annotation feature.
 type Feature int32
 
@@ -119,11 +313,11 @@
 }
 
 func (Feature) Descriptor() protoreflect.EnumDescriptor {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[0].Descriptor()
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[3].Descriptor()
 }
 
 func (Feature) Type() protoreflect.EnumType {
-	return &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[0]
+	return &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[3]
 }
 
 func (x Feature) Number() protoreflect.EnumNumber {
@@ -132,197 +326,6 @@
 
 // Deprecated: Use Feature.Descriptor instead.
 func (Feature) EnumDescriptor() ([]byte, []int) {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{0}
-}
-
-// Label detection mode.
-type LabelDetectionMode int32
-
-const (
-	// Unspecified.
-	LabelDetectionMode_LABEL_DETECTION_MODE_UNSPECIFIED LabelDetectionMode = 0
-	// Detect shot-level labels.
-	LabelDetectionMode_SHOT_MODE LabelDetectionMode = 1
-	// Detect frame-level labels.
-	LabelDetectionMode_FRAME_MODE LabelDetectionMode = 2
-	// Detect both shot-level and frame-level labels.
-	LabelDetectionMode_SHOT_AND_FRAME_MODE LabelDetectionMode = 3
-)
-
-// Enum value maps for LabelDetectionMode.
-var (
-	LabelDetectionMode_name = map[int32]string{
-		0: "LABEL_DETECTION_MODE_UNSPECIFIED",
-		1: "SHOT_MODE",
-		2: "FRAME_MODE",
-		3: "SHOT_AND_FRAME_MODE",
-	}
-	LabelDetectionMode_value = map[string]int32{
-		"LABEL_DETECTION_MODE_UNSPECIFIED": 0,
-		"SHOT_MODE":                        1,
-		"FRAME_MODE":                       2,
-		"SHOT_AND_FRAME_MODE":              3,
-	}
-)
-
-func (x LabelDetectionMode) Enum() *LabelDetectionMode {
-	p := new(LabelDetectionMode)
-	*p = x
-	return p
-}
-
-func (x LabelDetectionMode) String() string {
-	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
-}
-
-func (LabelDetectionMode) Descriptor() protoreflect.EnumDescriptor {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[1].Descriptor()
-}
-
-func (LabelDetectionMode) Type() protoreflect.EnumType {
-	return &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[1]
-}
-
-func (x LabelDetectionMode) Number() protoreflect.EnumNumber {
-	return protoreflect.EnumNumber(x)
-}
-
-// Deprecated: Use LabelDetectionMode.Descriptor instead.
-func (LabelDetectionMode) EnumDescriptor() ([]byte, []int) {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{1}
-}
-
-// Bucketized representation of likelihood.
-type Likelihood int32
-
-const (
-	// Unspecified likelihood.
-	Likelihood_LIKELIHOOD_UNSPECIFIED Likelihood = 0
-	// Very unlikely.
-	Likelihood_VERY_UNLIKELY Likelihood = 1
-	// Unlikely.
-	Likelihood_UNLIKELY Likelihood = 2
-	// Possible.
-	Likelihood_POSSIBLE Likelihood = 3
-	// Likely.
-	Likelihood_LIKELY Likelihood = 4
-	// Very likely.
-	Likelihood_VERY_LIKELY Likelihood = 5
-)
-
-// Enum value maps for Likelihood.
-var (
-	Likelihood_name = map[int32]string{
-		0: "LIKELIHOOD_UNSPECIFIED",
-		1: "VERY_UNLIKELY",
-		2: "UNLIKELY",
-		3: "POSSIBLE",
-		4: "LIKELY",
-		5: "VERY_LIKELY",
-	}
-	Likelihood_value = map[string]int32{
-		"LIKELIHOOD_UNSPECIFIED": 0,
-		"VERY_UNLIKELY":          1,
-		"UNLIKELY":               2,
-		"POSSIBLE":               3,
-		"LIKELY":                 4,
-		"VERY_LIKELY":            5,
-	}
-)
-
-func (x Likelihood) Enum() *Likelihood {
-	p := new(Likelihood)
-	*p = x
-	return p
-}
-
-func (x Likelihood) String() string {
-	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
-}
-
-func (Likelihood) Descriptor() protoreflect.EnumDescriptor {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[2].Descriptor()
-}
-
-func (Likelihood) Type() protoreflect.EnumType {
-	return &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[2]
-}
-
-func (x Likelihood) Number() protoreflect.EnumNumber {
-	return protoreflect.EnumNumber(x)
-}
-
-// Deprecated: Use Likelihood.Descriptor instead.
-func (Likelihood) EnumDescriptor() ([]byte, []int) {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{2}
-}
-
-// Streaming video annotation feature.
-type StreamingFeature int32
-
-const (
-	// Unspecified.
-	StreamingFeature_STREAMING_FEATURE_UNSPECIFIED StreamingFeature = 0
-	// Label detection. Detect objects, such as dog or flower.
-	StreamingFeature_STREAMING_LABEL_DETECTION StreamingFeature = 1
-	// Shot change detection.
-	StreamingFeature_STREAMING_SHOT_CHANGE_DETECTION StreamingFeature = 2
-	// Explicit content detection.
-	StreamingFeature_STREAMING_EXPLICIT_CONTENT_DETECTION StreamingFeature = 3
-	// Object detection and tracking.
-	StreamingFeature_STREAMING_OBJECT_TRACKING StreamingFeature = 4
-	// Video classification based on AutoML model.
-	StreamingFeature_STREAMING_AUTOML_CLASSIFICATION StreamingFeature = 21
-	// Object detection and tracking based on AutoML model.
-	StreamingFeature_STREAMING_AUTOML_OBJECT_TRACKING StreamingFeature = 22
-)
-
-// Enum value maps for StreamingFeature.
-var (
-	StreamingFeature_name = map[int32]string{
-		0:  "STREAMING_FEATURE_UNSPECIFIED",
-		1:  "STREAMING_LABEL_DETECTION",
-		2:  "STREAMING_SHOT_CHANGE_DETECTION",
-		3:  "STREAMING_EXPLICIT_CONTENT_DETECTION",
-		4:  "STREAMING_OBJECT_TRACKING",
-		21: "STREAMING_AUTOML_CLASSIFICATION",
-		22: "STREAMING_AUTOML_OBJECT_TRACKING",
-	}
-	StreamingFeature_value = map[string]int32{
-		"STREAMING_FEATURE_UNSPECIFIED":        0,
-		"STREAMING_LABEL_DETECTION":            1,
-		"STREAMING_SHOT_CHANGE_DETECTION":      2,
-		"STREAMING_EXPLICIT_CONTENT_DETECTION": 3,
-		"STREAMING_OBJECT_TRACKING":            4,
-		"STREAMING_AUTOML_CLASSIFICATION":      21,
-		"STREAMING_AUTOML_OBJECT_TRACKING":     22,
-	}
-)
-
-func (x StreamingFeature) Enum() *StreamingFeature {
-	p := new(StreamingFeature)
-	*p = x
-	return p
-}
-
-func (x StreamingFeature) String() string {
-	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
-}
-
-func (StreamingFeature) Descriptor() protoreflect.EnumDescriptor {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[3].Descriptor()
-}
-
-func (StreamingFeature) Type() protoreflect.EnumType {
-	return &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes[3]
-}
-
-func (x StreamingFeature) Number() protoreflect.EnumNumber {
-	return protoreflect.EnumNumber(x)
-}
-
-// Deprecated: Use StreamingFeature.Descriptor instead.
-func (StreamingFeature) EnumDescriptor() ([]byte, []int) {
 	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{3}
 }
 
@@ -333,34 +336,37 @@
 	unknownFields protoimpl.UnknownFields
 
 	// Input video location. Currently, only
-	// [Google Cloud Storage](https://cloud.google.com/storage/) URIs are
-	// supported, which must be specified in the following format:
+	// [Cloud Storage](https://cloud.google.com/storage/) URIs are
+	// supported. URIs must be specified in the following format:
 	// `gs://bucket-id/object-id` (other URI formats return
 	// [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]). For
-	// more information, see [Request URIs](https://cloud.google.com/storage/docs/request-endpoints). A video
-	// URI may include wildcards in `object-id`, and thus identify multiple
-	// videos. Supported wildcards: '*' to match 0 or more characters;
+	// more information, see [Request
+	// URIs](https://cloud.google.com/storage/docs/request-endpoints). To identify
+	// multiple videos, a video URI may include wildcards in the `object-id`.
+	// Supported wildcards: '*' to match 0 or more characters;
 	// '?' to match 1 character. If unset, the input video should be embedded
-	// in the request as `input_content`. If set, `input_content` should be unset.
+	// in the request as `input_content`. If set, `input_content` must be unset.
 	InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"`
 	// The video data bytes.
-	// If unset, the input video(s) should be specified via `input_uri`.
-	// If set, `input_uri` should be unset.
+	// If unset, the input video(s) should be specified via the `input_uri`.
+	// If set, `input_uri` must be unset.
 	InputContent []byte `protobuf:"bytes,6,opt,name=input_content,json=inputContent,proto3" json:"input_content,omitempty"`
 	// Required. Requested video annotation features.
 	Features []Feature `protobuf:"varint,2,rep,packed,name=features,proto3,enum=google.cloud.videointelligence.v1p3beta1.Feature" json:"features,omitempty"`
 	// Additional video context and/or feature-specific parameters.
 	VideoContext *VideoContext `protobuf:"bytes,3,opt,name=video_context,json=videoContext,proto3" json:"video_context,omitempty"`
 	// Optional. Location where the output (in JSON format) should be stored.
-	// Currently, only [Google Cloud Storage](https://cloud.google.com/storage/)
-	// URIs are supported, which must be specified in the following format:
+	// Currently, only [Cloud Storage](https://cloud.google.com/storage/)
+	// URIs are supported. These must be specified in the following format:
 	// `gs://bucket-id/object-id` (other URI formats return
 	// [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]). For
-	// more information, see [Request URIs](https://cloud.google.com/storage/docs/request-endpoints).
+	// more information, see [Request
+	// URIs](https://cloud.google.com/storage/docs/request-endpoints).
 	OutputUri string `protobuf:"bytes,4,opt,name=output_uri,json=outputUri,proto3" json:"output_uri,omitempty"`
 	// Optional. Cloud region where annotation should take place. Supported cloud
-	// regions: `us-east1`, `us-west1`, `europe-west1`, `asia-east1`. If no region
-	// is specified, a region will be determined based on video file location.
+	// regions are: `us-east1`, `us-west1`, `europe-west1`, `asia-east1`. If no
+	// region is specified, the region will be determined based on video file
+	// location.
 	LocationId string `protobuf:"bytes,5,opt,name=location_id,json=locationId,proto3" json:"location_id,omitempty"`
 }
 
@@ -571,9 +577,9 @@
 	// video-level labels or segment-level labels.
 	// If unspecified, defaults to `SHOT_MODE`.
 	LabelDetectionMode LabelDetectionMode `protobuf:"varint,1,opt,name=label_detection_mode,json=labelDetectionMode,proto3,enum=google.cloud.videointelligence.v1p3beta1.LabelDetectionMode" json:"label_detection_mode,omitempty"`
-	// Whether the video has been shot from a stationary (i.e. non-moving) camera.
-	// When set to true, might improve detection accuracy for moving objects.
-	// Should be used with `SHOT_AND_FRAME_MODE` enabled.
+	// Whether the video has been shot from a stationary (i.e., non-moving)
+	// camera. When set to true, might improve detection accuracy for moving
+	// objects. Should be used with `SHOT_AND_FRAME_MODE` enabled.
 	StationaryCamera bool `protobuf:"varint,2,opt,name=stationary_camera,json=stationaryCamera,proto3" json:"stationary_camera,omitempty"`
 	// Model to use for label detection.
 	// Supported values: "builtin/stable" (the default if unset) and
@@ -583,14 +589,14 @@
 	// frame-level detection. If not set, it is set to 0.4 by default. The valid
 	// range for this threshold is [0.1, 0.9]. Any value set outside of this
 	// range will be clipped.
-	// Note: for best results please follow the default threshold. We will update
+	// Note: For best results, follow the default threshold. We will update
 	// the default threshold everytime when we release a new model.
 	FrameConfidenceThreshold float32 `protobuf:"fixed32,4,opt,name=frame_confidence_threshold,json=frameConfidenceThreshold,proto3" json:"frame_confidence_threshold,omitempty"`
 	// The confidence threshold we perform filtering on the labels from
-	// video-level and shot-level detections. If not set, it is set to 0.3 by
+	// video-level and shot-level detections. If not set, it's set to 0.3 by
 	// default. The valid range for this threshold is [0.1, 0.9]. Any value set
 	// outside of this range will be clipped.
-	// Note: for best results please follow the default threshold. We will update
+	// Note: For best results, follow the default threshold. We will update
 	// the default threshold everytime when we release a new model.
 	VideoConfidenceThreshold float32 `protobuf:"fixed32,5,opt,name=video_confidence_threshold,json=videoConfidenceThreshold,proto3" json:"video_confidence_threshold,omitempty"`
 }
@@ -825,10 +831,10 @@
 	// Supported values: "builtin/stable" (the default if unset) and
 	// "builtin/latest".
 	Model string `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"`
-	// Whether bounding boxes be included in the face annotation output.
+	// Whether bounding boxes are included in the face annotation output.
 	IncludeBoundingBoxes bool `protobuf:"varint,2,opt,name=include_bounding_boxes,json=includeBoundingBoxes,proto3" json:"include_bounding_boxes,omitempty"`
 	// Whether to enable face attributes detection, such as glasses, dark_glasses,
-	// mouth_open etc. Ignored if 'include_bounding_boxes' is false.
+	// mouth_open etc. Ignored if 'include_bounding_boxes' is set to false.
 	IncludeAttributes bool `protobuf:"varint,5,opt,name=include_attributes,json=includeAttributes,proto3" json:"include_attributes,omitempty"`
 }
 
@@ -891,16 +897,16 @@
 	sizeCache     protoimpl.SizeCache
 	unknownFields protoimpl.UnknownFields
 
-	// Whether bounding boxes be included in the person detection annotation
+	// Whether bounding boxes are included in the person detection annotation
 	// output.
 	IncludeBoundingBoxes bool `protobuf:"varint,1,opt,name=include_bounding_boxes,json=includeBoundingBoxes,proto3" json:"include_bounding_boxes,omitempty"`
 	// Whether to enable pose landmarks detection. Ignored if
-	// 'include_bounding_boxes' is false.
+	// 'include_bounding_boxes' is set to false.
 	IncludePoseLandmarks bool `protobuf:"varint,2,opt,name=include_pose_landmarks,json=includePoseLandmarks,proto3" json:"include_pose_landmarks,omitempty"`
 	// Whether to enable person attributes detection, such as cloth color (black,
-	// blue, etc), type (coat, dress, etc), pattern (plain, floral, etc), hair
-	// color (black, blonde, etc), hair length (long, short, bald), etc.
-	// Ignored if 'include_bounding_boxes' is false.
+	// blue, etc), type (coat, dress, etc), pattern (plain, floral, etc), hair,
+	// etc.
+	// Ignored if 'include_bounding_boxes' is set to false.
 	IncludeAttributes bool `protobuf:"varint,3,opt,name=include_attributes,json=includeAttributes,proto3" json:"include_attributes,omitempty"`
 }
 
@@ -1208,7 +1214,7 @@
 	// [Google Knowledge Graph Search
 	// API](https://developers.google.com/knowledge-graph/).
 	EntityId string `protobuf:"bytes,1,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
-	// Textual description, e.g. `Fixed-gear bicycle`.
+	// Textual description, e.g., `Fixed-gear bicycle`.
 	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
 	// Language code for `description` in BCP-47 format.
 	LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
@@ -1276,9 +1282,9 @@
 	// Detected entity.
 	Entity *Entity `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"`
 	// Common categories for the detected entity.
-	// E.g. when the label is `Terrier` the category is likely `dog`. And in some
-	// cases there might be more than one categories e.g. `Terrier` could also be
-	// a `pet`.
+	// For example, when the label is `Terrier`, the category is likely `dog`. And
+	// in some cases there might be more than one categories e.g., `Terrier` could
+	// also be a `pet`.
 	CategoryEntities []*Entity `protobuf:"bytes,2,rep,name=category_entities,json=categoryEntities,proto3" json:"category_entities,omitempty"`
 	// All video segments where a label was detected.
 	Segments []*LabelSegment `protobuf:"bytes,3,rep,name=segments,proto3" json:"segments,omitempty"`
@@ -1695,7 +1701,7 @@
 	sizeCache     protoimpl.SizeCache
 	unknownFields protoimpl.UnknownFields
 
-	// The name of the attribute, i.e. glasses, dark_glasses, mouth_open etc.
+	// The name of the attribute, for example, glasses, dark_glasses, mouth_open.
 	// A full list of supported type names will be provided in the document.
 	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
 	// Detected attribute confidence. Range [0, 1].
@@ -1945,7 +1951,7 @@
 	sizeCache     protoimpl.SizeCache
 	unknownFields protoimpl.UnknownFields
 
-	// The name of this landmark, i.e. left_hand, right_shoulder.
+	// The name of this landmark, for example, left_hand, right_shoulder.
 	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
 	// The 2D point of the detected landmark using the normalized image
 	// coordindate system. The normalized coordinates have the range from 0 to 1.
@@ -2071,7 +2077,7 @@
 	sizeCache     protoimpl.SizeCache
 	unknownFields protoimpl.UnknownFields
 
-	// The trackes that a person is detected.
+	// The detected tracks of a person.
 	Tracks []*Track `protobuf:"bytes,1,rep,name=tracks,proto3" json:"tracks,omitempty"`
 }
 
@@ -2121,14 +2127,14 @@
 	unknownFields protoimpl.UnknownFields
 
 	// Video file location in
-	// [Google Cloud Storage](https://cloud.google.com/storage/).
+	// [Cloud Storage](https://cloud.google.com/storage/).
 	InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"`
 	// Video segment on which the annotation is run.
 	Segment *VideoSegment `protobuf:"bytes,10,opt,name=segment,proto3" json:"segment,omitempty"`
-	// Topical label annotations on video level or user specified segment level.
+	// Topical label annotations on video level or user-specified segment level.
 	// There is exactly one element for each unique label.
 	SegmentLabelAnnotations []*LabelAnnotation `protobuf:"bytes,2,rep,name=segment_label_annotations,json=segmentLabelAnnotations,proto3" json:"segment_label_annotations,omitempty"`
-	// Presence label annotations on video level or user specified segment level.
+	// Presence label annotations on video level or user-specified segment level.
 	// There is exactly one element for each unique label. Compared to the
 	// existing topical `segment_label_annotations`, this field presents more
 	// fine-grained, segment-level labels detected in video content and is made
@@ -2381,7 +2387,7 @@
 	unknownFields protoimpl.UnknownFields
 
 	// Video file location in
-	// [Google Cloud Storage](https://cloud.google.com/storage/).
+	// [Cloud Storage](https://cloud.google.com/storage/).
 	InputUri string `protobuf:"bytes,1,opt,name=input_uri,json=inputUri,proto3" json:"input_uri,omitempty"`
 	// Approximate percentage processed thus far. Guaranteed to be
 	// 100 when fully processed.
@@ -2391,10 +2397,10 @@
 	// Time of the most recent update.
 	UpdateTime *timestamp.Timestamp `protobuf:"bytes,4,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
 	// Specifies which feature is being tracked if the request contains more than
-	// one features.
+	// one feature.
 	Feature Feature `protobuf:"varint,5,opt,name=feature,proto3,enum=google.cloud.videointelligence.v1p3beta1.Feature" json:"feature,omitempty"`
 	// Specifies which segment is being tracked if the request contains more than
-	// one segments.
+	// one segment.
 	Segment *VideoSegment `protobuf:"bytes,6,opt,name=segment,proto3" json:"segment,omitempty"`
 }
 
@@ -2562,7 +2568,7 @@
 	// the top alternative of the recognition result using a speaker_tag provided
 	// in the WordInfo.
 	// Note: When this is true, we send all the words from the beginning of the
-	// audio for the top alternative in every consecutive responses.
+	// audio for the top alternative in every consecutive response.
 	// This is done in order to improve our speaker tags as our models learn to
 	// identify the speakers in the conversation over time.
 	EnableSpeakerDiarization bool `protobuf:"varint,7,opt,name=enable_speaker_diarization,json=enableSpeakerDiarization,proto3" json:"enable_speaker_diarization,omitempty"`
@@ -2805,8 +2811,8 @@
 	// The default of 0.0 is a sentinel value indicating `confidence` was not set.
 	Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
 	// Output only. A list of word-specific information for each recognized word.
-	// Note: When `enable_speaker_diarization` is true, you will see all the words
-	// from the beginning of the audio.
+	// Note: When `enable_speaker_diarization` is set to true, you will see all
+	// the words from the beginning of the audio.
 	Words []*WordInfo `protobuf:"bytes,3,rep,name=words,proto3" json:"words,omitempty"`
 }
 
@@ -3342,6 +3348,13 @@
 	sizeCache     protoimpl.SizeCache
 	unknownFields protoimpl.UnknownFields
 
+	// Different representation of tracking info in non-streaming batch
+	// and streaming modes.
+	//
+	// Types that are assignable to TrackInfo:
+	//	*ObjectTrackingAnnotation_Segment
+	//	*ObjectTrackingAnnotation_TrackId
+	TrackInfo isObjectTrackingAnnotation_TrackInfo `protobuf_oneof:"track_info"`
 	// Entity to specify the object category that this track is labeled as.
 	Entity *Entity `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"`
 	// Object category's labeling confidence of this track.
@@ -3351,13 +3364,6 @@
 	// messages in frames.
 	// Streaming mode: it can only be one ObjectTrackingFrame message in frames.
 	Frames []*ObjectTrackingFrame `protobuf:"bytes,2,rep,name=frames,proto3" json:"frames,omitempty"`
-	// Different representation of tracking info in non-streaming batch
-	// and streaming modes.
-	//
-	// Types that are assignable to TrackInfo:
-	//	*ObjectTrackingAnnotation_Segment
-	//	*ObjectTrackingAnnotation_TrackId
-	TrackInfo isObjectTrackingAnnotation_TrackInfo `protobuf_oneof:"track_info"`
 }
 
 func (x *ObjectTrackingAnnotation) Reset() {
@@ -3392,27 +3398,6 @@
 	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{41}
 }
 
-func (x *ObjectTrackingAnnotation) GetEntity() *Entity {
-	if x != nil {
-		return x.Entity
-	}
-	return nil
-}
-
-func (x *ObjectTrackingAnnotation) GetConfidence() float32 {
-	if x != nil {
-		return x.Confidence
-	}
-	return 0
-}
-
-func (x *ObjectTrackingAnnotation) GetFrames() []*ObjectTrackingFrame {
-	if x != nil {
-		return x.Frames
-	}
-	return nil
-}
-
 func (m *ObjectTrackingAnnotation) GetTrackInfo() isObjectTrackingAnnotation_TrackInfo {
 	if m != nil {
 		return m.TrackInfo
@@ -3434,6 +3419,27 @@
 	return 0
 }
 
+func (x *ObjectTrackingAnnotation) GetEntity() *Entity {
+	if x != nil {
+		return x.Entity
+	}
+	return nil
+}
+
+func (x *ObjectTrackingAnnotation) GetConfidence() float32 {
+	if x != nil {
+		return x.Confidence
+	}
+	return 0
+}
+
+func (x *ObjectTrackingAnnotation) GetFrames() []*ObjectTrackingFrame {
+	if x != nil {
+		return x.Frames
+	}
+	return nil
+}
+
 type isObjectTrackingAnnotation_TrackInfo interface {
 	isObjectTrackingAnnotation_TrackInfo()
 }
@@ -3626,6 +3632,185 @@
 func (*StreamingAnnotateVideoRequest_InputContent) isStreamingAnnotateVideoRequest_StreamingRequest() {
 }
 
+// Provides information to the annotator that specifies how to process the
+// request.
+type StreamingVideoConfig struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	// Config for requested annotation feature.
+	//
+	// Types that are assignable to StreamingConfig:
+	//	*StreamingVideoConfig_ShotChangeDetectionConfig
+	//	*StreamingVideoConfig_LabelDetectionConfig
+	//	*StreamingVideoConfig_ExplicitContentDetectionConfig
+	//	*StreamingVideoConfig_ObjectTrackingConfig
+	//	*StreamingVideoConfig_AutomlActionRecognitionConfig
+	//	*StreamingVideoConfig_AutomlClassificationConfig
+	//	*StreamingVideoConfig_AutomlObjectTrackingConfig
+	StreamingConfig isStreamingVideoConfig_StreamingConfig `protobuf_oneof:"streaming_config"`
+	// Requested annotation feature.
+	Feature StreamingFeature `protobuf:"varint,1,opt,name=feature,proto3,enum=google.cloud.videointelligence.v1p3beta1.StreamingFeature" json:"feature,omitempty"`
+	// Streaming storage option. By default: storage is disabled.
+	StorageConfig *StreamingStorageConfig `protobuf:"bytes,30,opt,name=storage_config,json=storageConfig,proto3" json:"storage_config,omitempty"`
+}
+
+func (x *StreamingVideoConfig) Reset() {
+	*x = StreamingVideoConfig{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[44]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *StreamingVideoConfig) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamingVideoConfig) ProtoMessage() {}
+
+func (x *StreamingVideoConfig) ProtoReflect() protoreflect.Message {
+	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[44]
+	if protoimpl.UnsafeEnabled && x != nil {
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		if ms.LoadMessageInfo() == nil {
+			ms.StoreMessageInfo(mi)
+		}
+		return ms
+	}
+	return mi.MessageOf(x)
+}
+
+// Deprecated: Use StreamingVideoConfig.ProtoReflect.Descriptor instead.
+func (*StreamingVideoConfig) Descriptor() ([]byte, []int) {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{44}
+}
+
+func (m *StreamingVideoConfig) GetStreamingConfig() isStreamingVideoConfig_StreamingConfig {
+	if m != nil {
+		return m.StreamingConfig
+	}
+	return nil
+}
+
+func (x *StreamingVideoConfig) GetShotChangeDetectionConfig() *StreamingShotChangeDetectionConfig {
+	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_ShotChangeDetectionConfig); ok {
+		return x.ShotChangeDetectionConfig
+	}
+	return nil
+}
+
+func (x *StreamingVideoConfig) GetLabelDetectionConfig() *StreamingLabelDetectionConfig {
+	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_LabelDetectionConfig); ok {
+		return x.LabelDetectionConfig
+	}
+	return nil
+}
+
+func (x *StreamingVideoConfig) GetExplicitContentDetectionConfig() *StreamingExplicitContentDetectionConfig {
+	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_ExplicitContentDetectionConfig); ok {
+		return x.ExplicitContentDetectionConfig
+	}
+	return nil
+}
+
+func (x *StreamingVideoConfig) GetObjectTrackingConfig() *StreamingObjectTrackingConfig {
+	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_ObjectTrackingConfig); ok {
+		return x.ObjectTrackingConfig
+	}
+	return nil
+}
+
+func (x *StreamingVideoConfig) GetAutomlActionRecognitionConfig() *StreamingAutomlActionRecognitionConfig {
+	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_AutomlActionRecognitionConfig); ok {
+		return x.AutomlActionRecognitionConfig
+	}
+	return nil
+}
+
+func (x *StreamingVideoConfig) GetAutomlClassificationConfig() *StreamingAutomlClassificationConfig {
+	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_AutomlClassificationConfig); ok {
+		return x.AutomlClassificationConfig
+	}
+	return nil
+}
+
+func (x *StreamingVideoConfig) GetAutomlObjectTrackingConfig() *StreamingAutomlObjectTrackingConfig {
+	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_AutomlObjectTrackingConfig); ok {
+		return x.AutomlObjectTrackingConfig
+	}
+	return nil
+}
+
+func (x *StreamingVideoConfig) GetFeature() StreamingFeature {
+	if x != nil {
+		return x.Feature
+	}
+	return StreamingFeature_STREAMING_FEATURE_UNSPECIFIED
+}
+
+func (x *StreamingVideoConfig) GetStorageConfig() *StreamingStorageConfig {
+	if x != nil {
+		return x.StorageConfig
+	}
+	return nil
+}
+
+type isStreamingVideoConfig_StreamingConfig interface {
+	isStreamingVideoConfig_StreamingConfig()
+}
+
+type StreamingVideoConfig_ShotChangeDetectionConfig struct {
+	// Config for STREAMING_SHOT_CHANGE_DETECTION.
+	ShotChangeDetectionConfig *StreamingShotChangeDetectionConfig `protobuf:"bytes,2,opt,name=shot_change_detection_config,json=shotChangeDetectionConfig,proto3,oneof"`
+}
+
+type StreamingVideoConfig_LabelDetectionConfig struct {
+	// Config for STREAMING_LABEL_DETECTION.
+	LabelDetectionConfig *StreamingLabelDetectionConfig `protobuf:"bytes,3,opt,name=label_detection_config,json=labelDetectionConfig,proto3,oneof"`
+}
+
+type StreamingVideoConfig_ExplicitContentDetectionConfig struct {
+	// Config for STREAMING_EXPLICIT_CONTENT_DETECTION.
+	ExplicitContentDetectionConfig *StreamingExplicitContentDetectionConfig `protobuf:"bytes,4,opt,name=explicit_content_detection_config,json=explicitContentDetectionConfig,proto3,oneof"`
+}
+
+type StreamingVideoConfig_ObjectTrackingConfig struct {
+	// Config for STREAMING_OBJECT_TRACKING.
+	ObjectTrackingConfig *StreamingObjectTrackingConfig `protobuf:"bytes,5,opt,name=object_tracking_config,json=objectTrackingConfig,proto3,oneof"`
+}
+
+type StreamingVideoConfig_AutomlActionRecognitionConfig struct {
+	// Config for STREAMING_AUTOML_ACTION_RECOGNITION.
+	AutomlActionRecognitionConfig *StreamingAutomlActionRecognitionConfig `protobuf:"bytes,23,opt,name=automl_action_recognition_config,json=automlActionRecognitionConfig,proto3,oneof"`
+}
+
+type StreamingVideoConfig_AutomlClassificationConfig struct {
+	// Config for STREAMING_AUTOML_CLASSIFICATION.
+	AutomlClassificationConfig *StreamingAutomlClassificationConfig `protobuf:"bytes,21,opt,name=automl_classification_config,json=automlClassificationConfig,proto3,oneof"`
+}
+
+type StreamingVideoConfig_AutomlObjectTrackingConfig struct {
+	// Config for STREAMING_AUTOML_OBJECT_TRACKING.
+	AutomlObjectTrackingConfig *StreamingAutomlObjectTrackingConfig `protobuf:"bytes,22,opt,name=automl_object_tracking_config,json=automlObjectTrackingConfig,proto3,oneof"`
+}
+
+func (*StreamingVideoConfig_ShotChangeDetectionConfig) isStreamingVideoConfig_StreamingConfig() {}
+
+func (*StreamingVideoConfig_LabelDetectionConfig) isStreamingVideoConfig_StreamingConfig() {}
+
+func (*StreamingVideoConfig_ExplicitContentDetectionConfig) isStreamingVideoConfig_StreamingConfig() {}
+
+func (*StreamingVideoConfig_ObjectTrackingConfig) isStreamingVideoConfig_StreamingConfig() {}
+
+func (*StreamingVideoConfig_AutomlActionRecognitionConfig) isStreamingVideoConfig_StreamingConfig() {}
+
+func (*StreamingVideoConfig_AutomlClassificationConfig) isStreamingVideoConfig_StreamingConfig() {}
+
+func (*StreamingVideoConfig_AutomlObjectTrackingConfig) isStreamingVideoConfig_StreamingConfig() {}
+
 // `StreamingAnnotateVideoResponse` is the only message returned to the client
 // by `StreamingAnnotateVideo`. A series of zero or more
 // `StreamingAnnotateVideoResponse` messages are streamed back to the client.
@@ -3639,17 +3824,17 @@
 	Error *status.Status `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"`
 	// Streaming annotation results.
 	AnnotationResults *StreamingVideoAnnotationResults `protobuf:"bytes,2,opt,name=annotation_results,json=annotationResults,proto3" json:"annotation_results,omitempty"`
-	// GCS URI that stores annotation results of one streaming session.
-	// It is a directory that can hold multiple files in JSON format.
-	// Example uri format:
-	// gs://bucket_id/object_id/cloud_project_name-session_id
+	// Google Cloud Storage(GCS) URI that stores annotation results of one
+	// streaming session in JSON format.
+	// It is the annotation_result_storage_directory
+	// from the request followed by '/cloud_project_number-session_id'.
 	AnnotationResultsUri string `protobuf:"bytes,3,opt,name=annotation_results_uri,json=annotationResultsUri,proto3" json:"annotation_results_uri,omitempty"`
 }
 
 func (x *StreamingAnnotateVideoResponse) Reset() {
 	*x = StreamingAnnotateVideoResponse{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[44]
+		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[45]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -3662,7 +3847,7 @@
 func (*StreamingAnnotateVideoResponse) ProtoMessage() {}
 
 func (x *StreamingAnnotateVideoResponse) ProtoReflect() protoreflect.Message {
-	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[44]
+	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[45]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -3675,7 +3860,7 @@
 
 // Deprecated: Use StreamingAnnotateVideoResponse.ProtoReflect.Descriptor instead.
 func (*StreamingAnnotateVideoResponse) Descriptor() ([]byte, []int) {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{44}
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{45}
 }
 
 func (x *StreamingAnnotateVideoResponse) GetError() *status.Status {
@@ -3699,69 +3884,25 @@
 	return ""
 }
 
-// Config for STREAMING_AUTOML_CLASSIFICATION.
-type StreamingAutomlClassificationConfig struct {
+// Streaming annotation results corresponding to a portion of the video
+// that is currently being processed.
+type StreamingVideoAnnotationResults struct {
 	state         protoimpl.MessageState
 	sizeCache     protoimpl.SizeCache
 	unknownFields protoimpl.UnknownFields
 
-	// Resource name of AutoML model.
-	// Format: `projects/{project_id}/locations/{location_id}/models/{model_id}`
-	ModelName string `protobuf:"bytes,1,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"`
+	// Shot annotation results. Each shot is represented as a video segment.
+	ShotAnnotations []*VideoSegment `protobuf:"bytes,1,rep,name=shot_annotations,json=shotAnnotations,proto3" json:"shot_annotations,omitempty"`
+	// Label annotation results.
+	LabelAnnotations []*LabelAnnotation `protobuf:"bytes,2,rep,name=label_annotations,json=labelAnnotations,proto3" json:"label_annotations,omitempty"`
+	// Explicit content annotation results.
+	ExplicitAnnotation *ExplicitContentAnnotation `protobuf:"bytes,3,opt,name=explicit_annotation,json=explicitAnnotation,proto3" json:"explicit_annotation,omitempty"`
+	// Object tracking results.
+	ObjectAnnotations []*ObjectTrackingAnnotation `protobuf:"bytes,4,rep,name=object_annotations,json=objectAnnotations,proto3" json:"object_annotations,omitempty"`
 }
 
-func (x *StreamingAutomlClassificationConfig) Reset() {
-	*x = StreamingAutomlClassificationConfig{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[45]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *StreamingAutomlClassificationConfig) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*StreamingAutomlClassificationConfig) ProtoMessage() {}
-
-func (x *StreamingAutomlClassificationConfig) ProtoReflect() protoreflect.Message {
-	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[45]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use StreamingAutomlClassificationConfig.ProtoReflect.Descriptor instead.
-func (*StreamingAutomlClassificationConfig) Descriptor() ([]byte, []int) {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{45}
-}
-
-func (x *StreamingAutomlClassificationConfig) GetModelName() string {
-	if x != nil {
-		return x.ModelName
-	}
-	return ""
-}
-
-// Config for STREAMING_AUTOML_OBJECT_TRACKING.
-type StreamingAutomlObjectTrackingConfig struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	// Resource name of AutoML model.
-	// Format: `projects/{project_id}/locations/{location_id}/models/{model_id}`
-	ModelName string `protobuf:"bytes,1,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"`
-}
-
-func (x *StreamingAutomlObjectTrackingConfig) Reset() {
-	*x = StreamingAutomlObjectTrackingConfig{}
+func (x *StreamingVideoAnnotationResults) Reset() {
+	*x = StreamingVideoAnnotationResults{}
 	if protoimpl.UnsafeEnabled {
 		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[46]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -3769,13 +3910,13 @@
 	}
 }
 
-func (x *StreamingAutomlObjectTrackingConfig) String() string {
+func (x *StreamingVideoAnnotationResults) String() string {
 	return protoimpl.X.MessageStringOf(x)
 }
 
-func (*StreamingAutomlObjectTrackingConfig) ProtoMessage() {}
+func (*StreamingVideoAnnotationResults) ProtoMessage() {}
 
-func (x *StreamingAutomlObjectTrackingConfig) ProtoReflect() protoreflect.Message {
+func (x *StreamingVideoAnnotationResults) ProtoReflect() protoreflect.Message {
 	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[46]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -3787,27 +3928,48 @@
 	return mi.MessageOf(x)
 }
 
-// Deprecated: Use StreamingAutomlObjectTrackingConfig.ProtoReflect.Descriptor instead.
-func (*StreamingAutomlObjectTrackingConfig) Descriptor() ([]byte, []int) {
+// Deprecated: Use StreamingVideoAnnotationResults.ProtoReflect.Descriptor instead.
+func (*StreamingVideoAnnotationResults) Descriptor() ([]byte, []int) {
 	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{46}
 }
 
-func (x *StreamingAutomlObjectTrackingConfig) GetModelName() string {
+func (x *StreamingVideoAnnotationResults) GetShotAnnotations() []*VideoSegment {
 	if x != nil {
-		return x.ModelName
+		return x.ShotAnnotations
 	}
-	return ""
+	return nil
 }
 
-// Config for STREAMING_EXPLICIT_CONTENT_DETECTION.
-type StreamingExplicitContentDetectionConfig struct {
+func (x *StreamingVideoAnnotationResults) GetLabelAnnotations() []*LabelAnnotation {
+	if x != nil {
+		return x.LabelAnnotations
+	}
+	return nil
+}
+
+func (x *StreamingVideoAnnotationResults) GetExplicitAnnotation() *ExplicitContentAnnotation {
+	if x != nil {
+		return x.ExplicitAnnotation
+	}
+	return nil
+}
+
+func (x *StreamingVideoAnnotationResults) GetObjectAnnotations() []*ObjectTrackingAnnotation {
+	if x != nil {
+		return x.ObjectAnnotations
+	}
+	return nil
+}
+
+// Config for STREAMING_SHOT_CHANGE_DETECTION.
+type StreamingShotChangeDetectionConfig struct {
 	state         protoimpl.MessageState
 	sizeCache     protoimpl.SizeCache
 	unknownFields protoimpl.UnknownFields
 }
 
-func (x *StreamingExplicitContentDetectionConfig) Reset() {
-	*x = StreamingExplicitContentDetectionConfig{}
+func (x *StreamingShotChangeDetectionConfig) Reset() {
+	*x = StreamingShotChangeDetectionConfig{}
 	if protoimpl.UnsafeEnabled {
 		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[47]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -3815,13 +3977,13 @@
 	}
 }
 
-func (x *StreamingExplicitContentDetectionConfig) String() string {
+func (x *StreamingShotChangeDetectionConfig) String() string {
 	return protoimpl.X.MessageStringOf(x)
 }
 
-func (*StreamingExplicitContentDetectionConfig) ProtoMessage() {}
+func (*StreamingShotChangeDetectionConfig) ProtoMessage() {}
 
-func (x *StreamingExplicitContentDetectionConfig) ProtoReflect() protoreflect.Message {
+func (x *StreamingShotChangeDetectionConfig) ProtoReflect() protoreflect.Message {
 	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[47]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -3833,8 +3995,8 @@
 	return mi.MessageOf(x)
 }
 
-// Deprecated: Use StreamingExplicitContentDetectionConfig.ProtoReflect.Descriptor instead.
-func (*StreamingExplicitContentDetectionConfig) Descriptor() ([]byte, []int) {
+// Deprecated: Use StreamingShotChangeDetectionConfig.ProtoReflect.Descriptor instead.
+func (*StreamingShotChangeDetectionConfig) Descriptor() ([]byte, []int) {
 	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{47}
 }
 
@@ -3889,6 +4051,45 @@
 	return false
 }
 
+// Config for STREAMING_EXPLICIT_CONTENT_DETECTION.
+type StreamingExplicitContentDetectionConfig struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+}
+
+func (x *StreamingExplicitContentDetectionConfig) Reset() {
+	*x = StreamingExplicitContentDetectionConfig{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[49]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *StreamingExplicitContentDetectionConfig) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamingExplicitContentDetectionConfig) ProtoMessage() {}
+
+func (x *StreamingExplicitContentDetectionConfig) ProtoReflect() protoreflect.Message {
+	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[49]
+	if protoimpl.UnsafeEnabled && x != nil {
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		if ms.LoadMessageInfo() == nil {
+			ms.StoreMessageInfo(mi)
+		}
+		return ms
+	}
+	return mi.MessageOf(x)
+}
+
+// Deprecated: Use StreamingExplicitContentDetectionConfig.ProtoReflect.Descriptor instead.
+func (*StreamingExplicitContentDetectionConfig) Descriptor() ([]byte, []int) {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{49}
+}
+
 // Config for STREAMING_OBJECT_TRACKING.
 type StreamingObjectTrackingConfig struct {
 	state         protoimpl.MessageState
@@ -3899,7 +4100,7 @@
 func (x *StreamingObjectTrackingConfig) Reset() {
 	*x = StreamingObjectTrackingConfig{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[49]
+		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[50]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -3912,7 +4113,7 @@
 func (*StreamingObjectTrackingConfig) ProtoMessage() {}
 
 func (x *StreamingObjectTrackingConfig) ProtoReflect() protoreflect.Message {
-	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[49]
+	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[50]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -3925,33 +4126,37 @@
 
 // Deprecated: Use StreamingObjectTrackingConfig.ProtoReflect.Descriptor instead.
 func (*StreamingObjectTrackingConfig) Descriptor() ([]byte, []int) {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{49}
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{50}
 }
 
-// Config for STREAMING_SHOT_CHANGE_DETECTION.
-type StreamingShotChangeDetectionConfig struct {
+// Config for STREAMING_AUTOML_ACTION_RECOGNITION.
+type StreamingAutomlActionRecognitionConfig struct {
 	state         protoimpl.MessageState
 	sizeCache     protoimpl.SizeCache
 	unknownFields protoimpl.UnknownFields
+
+	// Resource name of AutoML model.
+	// Format: `projects/{project_id}/locations/{location_id}/models/{model_id}`
+	ModelName string `protobuf:"bytes,1,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"`
 }
 
-func (x *StreamingShotChangeDetectionConfig) Reset() {
-	*x = StreamingShotChangeDetectionConfig{}
+func (x *StreamingAutomlActionRecognitionConfig) Reset() {
+	*x = StreamingAutomlActionRecognitionConfig{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[50]
+		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[51]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
 }
 
-func (x *StreamingShotChangeDetectionConfig) String() string {
+func (x *StreamingAutomlActionRecognitionConfig) String() string {
 	return protoimpl.X.MessageStringOf(x)
 }
 
-func (*StreamingShotChangeDetectionConfig) ProtoMessage() {}
+func (*StreamingAutomlActionRecognitionConfig) ProtoMessage() {}
 
-func (x *StreamingShotChangeDetectionConfig) ProtoReflect() protoreflect.Message {
-	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[50]
+func (x *StreamingAutomlActionRecognitionConfig) ProtoReflect() protoreflect.Message {
+	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[51]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -3962,9 +4167,117 @@
 	return mi.MessageOf(x)
 }
 
-// Deprecated: Use StreamingShotChangeDetectionConfig.ProtoReflect.Descriptor instead.
-func (*StreamingShotChangeDetectionConfig) Descriptor() ([]byte, []int) {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{50}
+// Deprecated: Use StreamingAutomlActionRecognitionConfig.ProtoReflect.Descriptor instead.
+func (*StreamingAutomlActionRecognitionConfig) Descriptor() ([]byte, []int) {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{51}
+}
+
+func (x *StreamingAutomlActionRecognitionConfig) GetModelName() string {
+	if x != nil {
+		return x.ModelName
+	}
+	return ""
+}
+
+// Config for STREAMING_AUTOML_CLASSIFICATION.
+type StreamingAutomlClassificationConfig struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	// Resource name of AutoML model.
+	// Format:
+	// `projects/{project_number}/locations/{location_id}/models/{model_id}`
+	ModelName string `protobuf:"bytes,1,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"`
+}
+
+func (x *StreamingAutomlClassificationConfig) Reset() {
+	*x = StreamingAutomlClassificationConfig{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[52]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *StreamingAutomlClassificationConfig) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamingAutomlClassificationConfig) ProtoMessage() {}
+
+func (x *StreamingAutomlClassificationConfig) ProtoReflect() protoreflect.Message {
+	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[52]
+	if protoimpl.UnsafeEnabled && x != nil {
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		if ms.LoadMessageInfo() == nil {
+			ms.StoreMessageInfo(mi)
+		}
+		return ms
+	}
+	return mi.MessageOf(x)
+}
+
+// Deprecated: Use StreamingAutomlClassificationConfig.ProtoReflect.Descriptor instead.
+func (*StreamingAutomlClassificationConfig) Descriptor() ([]byte, []int) {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{52}
+}
+
+func (x *StreamingAutomlClassificationConfig) GetModelName() string {
+	if x != nil {
+		return x.ModelName
+	}
+	return ""
+}
+
+// Config for STREAMING_AUTOML_OBJECT_TRACKING.
+type StreamingAutomlObjectTrackingConfig struct {
+	state         protoimpl.MessageState
+	sizeCache     protoimpl.SizeCache
+	unknownFields protoimpl.UnknownFields
+
+	// Resource name of AutoML model.
+	// Format: `projects/{project_id}/locations/{location_id}/models/{model_id}`
+	ModelName string `protobuf:"bytes,1,opt,name=model_name,json=modelName,proto3" json:"model_name,omitempty"`
+}
+
+func (x *StreamingAutomlObjectTrackingConfig) Reset() {
+	*x = StreamingAutomlObjectTrackingConfig{}
+	if protoimpl.UnsafeEnabled {
+		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[53]
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		ms.StoreMessageInfo(mi)
+	}
+}
+
+func (x *StreamingAutomlObjectTrackingConfig) String() string {
+	return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamingAutomlObjectTrackingConfig) ProtoMessage() {}
+
+func (x *StreamingAutomlObjectTrackingConfig) ProtoReflect() protoreflect.Message {
+	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[53]
+	if protoimpl.UnsafeEnabled && x != nil {
+		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+		if ms.LoadMessageInfo() == nil {
+			ms.StoreMessageInfo(mi)
+		}
+		return ms
+	}
+	return mi.MessageOf(x)
+}
+
+// Deprecated: Use StreamingAutomlObjectTrackingConfig.ProtoReflect.Descriptor instead.
+func (*StreamingAutomlObjectTrackingConfig) Descriptor() ([]byte, []int) {
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{53}
+}
+
+func (x *StreamingAutomlObjectTrackingConfig) GetModelName() string {
+	if x != nil {
+		return x.ModelName
+	}
+	return ""
 }
 
 // Config for streaming storage option.
@@ -3975,23 +4288,23 @@
 
 	// Enable streaming storage. Default: false.
 	EnableStorageAnnotationResult bool `protobuf:"varint,1,opt,name=enable_storage_annotation_result,json=enableStorageAnnotationResult,proto3" json:"enable_storage_annotation_result,omitempty"`
-	// GCS URI to store all annotation results for one client. Client should
-	// specify this field as the top-level storage directory. Annotation results
-	// of different sessions will be put into different sub-directories denoted
-	// by project_name and session_id. All sub-directories will be auto generated
-	// by program and will be made accessible to client in response proto.
-	// URIs must be specified in the following format: `gs://bucket-id/object-id`
-	// `bucket-id` should be a valid GCS bucket created by client and bucket
-	// permission shall also be configured properly. `object-id` can be arbitrary
-	// string that make sense to client. Other URI formats will return error and
-	// cause GCS write failure.
+	// Cloud Storage URI to store all annotation results for one client. Client
+	// should specify this field as the top-level storage directory. Annotation
+	// results of different sessions will be put into different sub-directories
+	// denoted by project_name and session_id. All sub-directories will be auto
+	// generated by program and will be made accessible to client in response
+	// proto. URIs must be specified in the following format:
+	// `gs://bucket-id/object-id` `bucket-id` should be a valid Cloud Storage
+	// bucket created by client and bucket permission shall also be configured
+	// properly. `object-id` can be arbitrary string that make sense to client.
+	// Other URI formats will return error and cause Cloud Storage write failure.
 	AnnotationResultStorageDirectory string `protobuf:"bytes,3,opt,name=annotation_result_storage_directory,json=annotationResultStorageDirectory,proto3" json:"annotation_result_storage_directory,omitempty"`
 }
 
 func (x *StreamingStorageConfig) Reset() {
 	*x = StreamingStorageConfig{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[51]
+		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[54]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -4004,7 +4317,7 @@
 func (*StreamingStorageConfig) ProtoMessage() {}
 
 func (x *StreamingStorageConfig) ProtoReflect() protoreflect.Message {
-	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[51]
+	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[54]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -4017,7 +4330,7 @@
 
 // Deprecated: Use StreamingStorageConfig.ProtoReflect.Descriptor instead.
 func (*StreamingStorageConfig) Descriptor() ([]byte, []int) {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{51}
+	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{54}
 }
 
 func (x *StreamingStorageConfig) GetEnableStorageAnnotationResult() bool {
@@ -4034,247 +4347,6 @@
 	return ""
 }
 
-// Streaming annotation results corresponding to a portion of the video
-// that is currently being processed.
-type StreamingVideoAnnotationResults struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	// Shot annotation results. Each shot is represented as a video segment.
-	ShotAnnotations []*VideoSegment `protobuf:"bytes,1,rep,name=shot_annotations,json=shotAnnotations,proto3" json:"shot_annotations,omitempty"`
-	// Label annotation results.
-	LabelAnnotations []*LabelAnnotation `protobuf:"bytes,2,rep,name=label_annotations,json=labelAnnotations,proto3" json:"label_annotations,omitempty"`
-	// Explicit content annotation results.
-	ExplicitAnnotation *ExplicitContentAnnotation `protobuf:"bytes,3,opt,name=explicit_annotation,json=explicitAnnotation,proto3" json:"explicit_annotation,omitempty"`
-	// Object tracking results.
-	ObjectAnnotations []*ObjectTrackingAnnotation `protobuf:"bytes,4,rep,name=object_annotations,json=objectAnnotations,proto3" json:"object_annotations,omitempty"`
-}
-
-func (x *StreamingVideoAnnotationResults) Reset() {
-	*x = StreamingVideoAnnotationResults{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[52]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *StreamingVideoAnnotationResults) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*StreamingVideoAnnotationResults) ProtoMessage() {}
-
-func (x *StreamingVideoAnnotationResults) ProtoReflect() protoreflect.Message {
-	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[52]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use StreamingVideoAnnotationResults.ProtoReflect.Descriptor instead.
-func (*StreamingVideoAnnotationResults) Descriptor() ([]byte, []int) {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{52}
-}
-
-func (x *StreamingVideoAnnotationResults) GetShotAnnotations() []*VideoSegment {
-	if x != nil {
-		return x.ShotAnnotations
-	}
-	return nil
-}
-
-func (x *StreamingVideoAnnotationResults) GetLabelAnnotations() []*LabelAnnotation {
-	if x != nil {
-		return x.LabelAnnotations
-	}
-	return nil
-}
-
-func (x *StreamingVideoAnnotationResults) GetExplicitAnnotation() *ExplicitContentAnnotation {
-	if x != nil {
-		return x.ExplicitAnnotation
-	}
-	return nil
-}
-
-func (x *StreamingVideoAnnotationResults) GetObjectAnnotations() []*ObjectTrackingAnnotation {
-	if x != nil {
-		return x.ObjectAnnotations
-	}
-	return nil
-}
-
-// Provides information to the annotator that specifies how to process the
-// request.
-type StreamingVideoConfig struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	// Requested annotation feature.
-	Feature StreamingFeature `protobuf:"varint,1,opt,name=feature,proto3,enum=google.cloud.videointelligence.v1p3beta1.StreamingFeature" json:"feature,omitempty"`
-	// Config for requested annotation feature.
-	//
-	// Types that are assignable to StreamingConfig:
-	//	*StreamingVideoConfig_ShotChangeDetectionConfig
-	//	*StreamingVideoConfig_LabelDetectionConfig
-	//	*StreamingVideoConfig_ExplicitContentDetectionConfig
-	//	*StreamingVideoConfig_ObjectTrackingConfig
-	//	*StreamingVideoConfig_AutomlClassificationConfig
-	//	*StreamingVideoConfig_AutomlObjectTrackingConfig
-	StreamingConfig isStreamingVideoConfig_StreamingConfig `protobuf_oneof:"streaming_config"`
-	// Streaming storage option. By default: storage is disabled.
-	StorageConfig *StreamingStorageConfig `protobuf:"bytes,30,opt,name=storage_config,json=storageConfig,proto3" json:"storage_config,omitempty"`
-}
-
-func (x *StreamingVideoConfig) Reset() {
-	*x = StreamingVideoConfig{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[53]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *StreamingVideoConfig) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*StreamingVideoConfig) ProtoMessage() {}
-
-func (x *StreamingVideoConfig) ProtoReflect() protoreflect.Message {
-	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[53]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use StreamingVideoConfig.ProtoReflect.Descriptor instead.
-func (*StreamingVideoConfig) Descriptor() ([]byte, []int) {
-	return file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDescGZIP(), []int{53}
-}
-
-func (x *StreamingVideoConfig) GetFeature() StreamingFeature {
-	if x != nil {
-		return x.Feature
-	}
-	return StreamingFeature_STREAMING_FEATURE_UNSPECIFIED
-}
-
-func (m *StreamingVideoConfig) GetStreamingConfig() isStreamingVideoConfig_StreamingConfig {
-	if m != nil {
-		return m.StreamingConfig
-	}
-	return nil
-}
-
-func (x *StreamingVideoConfig) GetShotChangeDetectionConfig() *StreamingShotChangeDetectionConfig {
-	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_ShotChangeDetectionConfig); ok {
-		return x.ShotChangeDetectionConfig
-	}
-	return nil
-}
-
-func (x *StreamingVideoConfig) GetLabelDetectionConfig() *StreamingLabelDetectionConfig {
-	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_LabelDetectionConfig); ok {
-		return x.LabelDetectionConfig
-	}
-	return nil
-}
-
-func (x *StreamingVideoConfig) GetExplicitContentDetectionConfig() *StreamingExplicitContentDetectionConfig {
-	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_ExplicitContentDetectionConfig); ok {
-		return x.ExplicitContentDetectionConfig
-	}
-	return nil
-}
-
-func (x *StreamingVideoConfig) GetObjectTrackingConfig() *StreamingObjectTrackingConfig {
-	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_ObjectTrackingConfig); ok {
-		return x.ObjectTrackingConfig
-	}
-	return nil
-}
-
-func (x *StreamingVideoConfig) GetAutomlClassificationConfig() *StreamingAutomlClassificationConfig {
-	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_AutomlClassificationConfig); ok {
-		return x.AutomlClassificationConfig
-	}
-	return nil
-}
-
-func (x *StreamingVideoConfig) GetAutomlObjectTrackingConfig() *StreamingAutomlObjectTrackingConfig {
-	if x, ok := x.GetStreamingConfig().(*StreamingVideoConfig_AutomlObjectTrackingConfig); ok {
-		return x.AutomlObjectTrackingConfig
-	}
-	return nil
-}
-
-func (x *StreamingVideoConfig) GetStorageConfig() *StreamingStorageConfig {
-	if x != nil {
-		return x.StorageConfig
-	}
-	return nil
-}
-
-type isStreamingVideoConfig_StreamingConfig interface {
-	isStreamingVideoConfig_StreamingConfig()
-}
-
-type StreamingVideoConfig_ShotChangeDetectionConfig struct {
-	// Config for STREAMING_SHOT_CHANGE_DETECTION.
-	ShotChangeDetectionConfig *StreamingShotChangeDetectionConfig `protobuf:"bytes,2,opt,name=shot_change_detection_config,json=shotChangeDetectionConfig,proto3,oneof"`
-}
-
-type StreamingVideoConfig_LabelDetectionConfig struct {
-	// Config for STREAMING_LABEL_DETECTION.
-	LabelDetectionConfig *StreamingLabelDetectionConfig `protobuf:"bytes,3,opt,name=label_detection_config,json=labelDetectionConfig,proto3,oneof"`
-}
-
-type StreamingVideoConfig_ExplicitContentDetectionConfig struct {
-	// Config for STREAMING_EXPLICIT_CONTENT_DETECTION.
-	ExplicitContentDetectionConfig *StreamingExplicitContentDetectionConfig `protobuf:"bytes,4,opt,name=explicit_content_detection_config,json=explicitContentDetectionConfig,proto3,oneof"`
-}
-
-type StreamingVideoConfig_ObjectTrackingConfig struct {
-	// Config for STREAMING_OBJECT_TRACKING.
-	ObjectTrackingConfig *StreamingObjectTrackingConfig `protobuf:"bytes,5,opt,name=object_tracking_config,json=objectTrackingConfig,proto3,oneof"`
-}
-
-type StreamingVideoConfig_AutomlClassificationConfig struct {
-	// Config for STREAMING_AUTOML_CLASSIFICATION.
-	AutomlClassificationConfig *StreamingAutomlClassificationConfig `protobuf:"bytes,21,opt,name=automl_classification_config,json=automlClassificationConfig,proto3,oneof"`
-}
-
-type StreamingVideoConfig_AutomlObjectTrackingConfig struct {
-	// Config for STREAMING_AUTOML_OBJECT_TRACKING.
-	AutomlObjectTrackingConfig *StreamingAutomlObjectTrackingConfig `protobuf:"bytes,22,opt,name=automl_object_tracking_config,json=automlObjectTrackingConfig,proto3,oneof"`
-}
-
-func (*StreamingVideoConfig_ShotChangeDetectionConfig) isStreamingVideoConfig_StreamingConfig() {}
-
-func (*StreamingVideoConfig_LabelDetectionConfig) isStreamingVideoConfig_StreamingConfig() {}
-
-func (*StreamingVideoConfig_ExplicitContentDetectionConfig) isStreamingVideoConfig_StreamingConfig() {}
-
-func (*StreamingVideoConfig_ObjectTrackingConfig) isStreamingVideoConfig_StreamingConfig() {}
-
-func (*StreamingVideoConfig_AutomlClassificationConfig) isStreamingVideoConfig_StreamingConfig() {}
-
-func (*StreamingVideoConfig_AutomlObjectTrackingConfig) isStreamingVideoConfig_StreamingConfig() {}
-
 // The recognized celebrity with confidence score.
 type CelebrityTrack_RecognizedCelebrity struct {
 	state         protoimpl.MessageState
@@ -4290,7 +4362,7 @@
 func (x *CelebrityTrack_RecognizedCelebrity) Reset() {
 	*x = CelebrityTrack_RecognizedCelebrity{}
 	if protoimpl.UnsafeEnabled {
-		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[54]
+		mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[55]
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		ms.StoreMessageInfo(mi)
 	}
@@ -4303,7 +4375,7 @@
 func (*CelebrityTrack_RecognizedCelebrity) ProtoMessage() {}
 
 func (x *CelebrityTrack_RecognizedCelebrity) ProtoReflect() protoreflect.Message {
-	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[54]
+	mi := &file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[55]
 	if protoimpl.UnsafeEnabled && x != nil {
 		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 		if ms.LoadMessageInfo() == nil {
@@ -4986,26 +5058,26 @@
 	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
 	0x52, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0xda, 0x02, 0x0a,
 	0x18, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x41,
-	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x06, 0x65, 0x6e, 0x74,
-	0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
-	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e,
-	0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62,
-	0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x06, 0x65, 0x6e, 0x74,
-	0x69, 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63,
-	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65,
-	0x6e, 0x63, 0x65, 0x12, 0x55, 0x0a, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20,
-	0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
-	0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67,
-	0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f,
-	0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x61,
-	0x6d, 0x65, 0x52, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x52, 0x0a, 0x07, 0x73, 0x65,
-	0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f,
-	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f,
-	0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70,
-	0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x65, 0x67, 0x6d,
-	0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b,
-	0x0a, 0x08, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03,
-	0x48, 0x00, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x74,
+	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x52, 0x0a, 0x07, 0x73, 0x65, 0x67,
+	0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f,
+	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69,
+	0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33,
+	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x65, 0x67, 0x6d, 0x65,
+	0x6e, 0x74, 0x48, 0x00, 0x52, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a,
+	0x08, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x48,
+	0x00, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x06, 0x65, 0x6e,
+	0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f,
+	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69,
+	0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33,
+	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x06, 0x65, 0x6e,
+	0x74, 0x69, 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e,
+	0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64,
+	0x65, 0x6e, 0x63, 0x65, 0x12, 0x55, 0x0a, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02,
+	0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+	0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69,
+	0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+	0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x46, 0x72,
+	0x61, 0x6d, 0x65, 0x52, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x74,
 	0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x82, 0x02, 0x0a, 0x19, 0x4c, 0x6f,
 	0x67, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x6e,
 	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74,
@@ -5035,201 +5107,218 @@
 	0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0c,
 	0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x13, 0x0a, 0x11,
 	0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
-	0x74, 0x22, 0xfa, 0x01, 0x0a, 0x1e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41,
-	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70,
-	0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20,
-	0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63,
-	0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x78,
-	0x0a, 0x12, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73,
-	0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x67, 0x6f, 0x6f,
-	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69,
-	0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33,
-	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x56,
-	0x69, 0x64, 0x65, 0x6f, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
-	0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x11, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
-	0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x61, 0x6e, 0x6e, 0x6f,
-	0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x5f, 0x75,
-	0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
-	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x55, 0x72, 0x69, 0x22, 0x44,
-	0x0a, 0x23, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x75, 0x74, 0x6f, 0x6d,
-	0x6c, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43,
-	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e,
-	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
-	0x4e, 0x61, 0x6d, 0x65, 0x22, 0x44, 0x0a, 0x23, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e,
-	0x67, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61,
-	0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x6d,
-	0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
-	0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x29, 0x0a, 0x27, 0x53, 0x74,
-	0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43,
-	0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43,
-	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x4c, 0x0a, 0x1d, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69,
-	0x6e, 0x67, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
-	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f,
-	0x6e, 0x61, 0x72, 0x79, 0x5f, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28,
-	0x08, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x61, 0x6d,
-	0x65, 0x72, 0x61, 0x22, 0x1f, 0x0a, 0x1d, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67,
-	0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6f,
-	0x6e, 0x66, 0x69, 0x67, 0x22, 0x24, 0x0a, 0x22, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e,
-	0x67, 0x53, 0x68, 0x6f, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74, 0x65, 0x63,
-	0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xb0, 0x01, 0x0a, 0x16, 0x53,
-	0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43,
-	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x47, 0x0a, 0x20, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f,
-	0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
-	0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
-	0x1d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e,
-	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x4d,
-	0x0a, 0x23, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73,
-	0x75, 0x6c, 0x74, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65,
-	0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x20, 0x61, 0x6e, 0x6e,
-	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x53, 0x74, 0x6f,
-	0x72, 0x61, 0x67, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x22, 0xd5, 0x03,
-	0x0a, 0x1f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x56, 0x69, 0x64, 0x65, 0x6f,
-	0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
-	0x73, 0x12, 0x61, 0x0a, 0x10, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
-	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f,
-	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f,
-	0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70,
-	0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x65, 0x67, 0x6d,
-	0x65, 0x6e, 0x74, 0x52, 0x0f, 0x73, 0x68, 0x6f, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
-	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x66, 0x0a, 0x11, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x61, 0x6e,
-	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
-	0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
-	0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65,
-	0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c,
-	0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x6c, 0x61, 0x62, 0x65,
-	0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x74, 0x0a, 0x13,
-	0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
-	0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+	0x74, 0x22, 0xe5, 0x09, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x56,
+	0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x8f, 0x01, 0x0a, 0x1c, 0x73,
+	0x68, 0x6f, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63,
+	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
+	0x0b, 0x32, 0x4c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+	0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e,
+	0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72,
+	0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x53, 0x68, 0x6f, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
+	0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48,
+	0x00, 0x52, 0x19, 0x73, 0x68, 0x6f, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74,
+	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7f, 0x0a, 0x16,
+	0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
+	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67,
+	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65,
+	0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31,
+	0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e,
+	0x67, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43,
+	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x14, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65,
+	0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x9e, 0x01,
+	0x0a, 0x21, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65,
+	0x6e, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e,
+	0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
 	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e,
 	0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62,
-	0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43, 0x6f, 0x6e,
-	0x74, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12,
-	0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
-	0x6f, 0x6e, 0x12, 0x71, 0x0a, 0x12, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x6e, 0x6e,
-	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42,
+	0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x45, 0x78,
+	0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74,
+	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x1e,
+	0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x44,
+	0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7f,
+	0x0a, 0x16, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e,
+	0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47,
 	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69,
 	0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e,
-	0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
-	0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
-	0x6f, 0x6e, 0x52, 0x11, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
-	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xc7, 0x08, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
-	0x69, 0x6e, 0x67, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x54,
-	0x0a, 0x07, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
-	0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76,
-	0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65,
-	0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61,
-	0x6d, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x07, 0x66, 0x65, 0x61,
-	0x74, 0x75, 0x72, 0x65, 0x12, 0x8f, 0x01, 0x0a, 0x1c, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x63, 0x68,
-	0x61, 0x6e, 0x67, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63,
-	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x67, 0x6f,
-	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f,
-	0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70,
-	0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67,
-	0x53, 0x68, 0x6f, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74,
-	0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x19, 0x73, 0x68, 0x6f,
-	0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
-	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7f, 0x0a, 0x16, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f,
-	0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
-	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
-	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c,
-	0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61,
-	0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x4c, 0x61, 0x62, 0x65, 0x6c,
-	0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48,
-	0x00, 0x52, 0x14, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f,
-	0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x9e, 0x01, 0x0a, 0x21, 0x65, 0x78, 0x70, 0x6c,
-	0x69, 0x63, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x74,
-	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20,
-	0x01, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
-	0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67,
-	0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53,
-	0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74,
-	0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
-	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x1e, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63,
-	0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69,
-	0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7f, 0x0a, 0x16, 0x6f, 0x62, 0x6a, 0x65,
-	0x63, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
-	0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
-	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74,
-	0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65,
-	0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a,
-	0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69,
-	0x67, 0x48, 0x00, 0x52, 0x14, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b,
-	0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x91, 0x01, 0x0a, 0x1c, 0x61, 0x75,
-	0x74, 0x6f, 0x6d, 0x6c, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
-	0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b,
-	0x32, 0x4d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
-	0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63,
-	0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
-	0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x43, 0x6c, 0x61, 0x73, 0x73,
-	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48,
-	0x00, 0x52, 0x1a, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66,
-	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x92, 0x01,
-	0x0a, 0x1d, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f,
-	0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18,
-	0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
-	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c,
-	0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31,
-	0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x6c,
-	0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6f,
-	0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x1a, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x4f, 0x62,
-	0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66,
-	0x69, 0x67, 0x12, 0x67, 0x0a, 0x0e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f,
-	0x6e, 0x66, 0x69, 0x67, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f,
+	0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
+	0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e,
+	0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x14, 0x6f, 0x62, 0x6a, 0x65, 0x63,
+	0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
+	0x9b, 0x01, 0x0a, 0x20, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f,
+	0x6e, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f,
+	0x6e, 0x66, 0x69, 0x67, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x67, 0x6f, 0x6f,
 	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69,
 	0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33,
-	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x53,
-	0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x73, 0x74,
-	0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x12, 0x0a, 0x10, 0x73,
-	0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2a,
-	0x90, 0x02, 0x0a, 0x07, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x46,
-	0x45, 0x41, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
-	0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x44, 0x45,
-	0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x48, 0x4f,
-	0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49,
-	0x4f, 0x4e, 0x10, 0x02, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54,
-	0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49,
-	0x4f, 0x4e, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x41, 0x43, 0x45, 0x5f, 0x44, 0x45, 0x54,
-	0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x50, 0x45, 0x45,
-	0x43, 0x48, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e,
-	0x10, 0x06, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43,
-	0x54, 0x49, 0x4f, 0x4e, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54,
-	0x5f, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x49, 0x4e, 0x47, 0x10, 0x09, 0x12, 0x14, 0x0a, 0x10, 0x4c,
-	0x4f, 0x47, 0x4f, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x47, 0x4e, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10,
-	0x0c, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x45, 0x4c, 0x45, 0x42, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x52,
-	0x45, 0x43, 0x4f, 0x47, 0x4e, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10,
-	0x50, 0x45, 0x52, 0x53, 0x4f, 0x4e, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e,
-	0x10, 0x0e, 0x2a, 0x72, 0x0a, 0x12, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x74, 0x65, 0x63,
-	0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x24, 0x0a, 0x20, 0x4c, 0x41, 0x42, 0x45,
-	0x4c, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x45,
-	0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d,
-	0x0a, 0x09, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x10, 0x01, 0x12, 0x0e, 0x0a,
-	0x0a, 0x46, 0x52, 0x41, 0x4d, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x10, 0x02, 0x12, 0x17, 0x0a,
-	0x13, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x41, 0x4e, 0x44, 0x5f, 0x46, 0x52, 0x41, 0x4d, 0x45, 0x5f,
-	0x4d, 0x4f, 0x44, 0x45, 0x10, 0x03, 0x2a, 0x74, 0x0a, 0x0a, 0x4c, 0x69, 0x6b, 0x65, 0x6c, 0x69,
-	0x68, 0x6f, 0x6f, 0x64, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x49, 0x48, 0x4f,
-	0x4f, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
-	0x12, 0x11, 0x0a, 0x0d, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x55, 0x4e, 0x4c, 0x49, 0x4b, 0x45, 0x4c,
-	0x59, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x4e, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10,
-	0x02, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x4f, 0x53, 0x53, 0x49, 0x42, 0x4c, 0x45, 0x10, 0x03, 0x12,
-	0x0a, 0x0a, 0x06, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x56,
-	0x45, 0x52, 0x59, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10, 0x05, 0x2a, 0x8d, 0x02, 0x0a,
-	0x10, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
-	0x65, 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x46,
-	0x45, 0x41, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
-	0x45, 0x44, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e,
-	0x47, 0x5f, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f,
-	0x4e, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47,
-	0x5f, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x44, 0x45, 0x54,
-	0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x28, 0x0a, 0x24, 0x53, 0x54, 0x52, 0x45,
-	0x41, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x5f, 0x43,
-	0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e,
-	0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47, 0x5f,
-	0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x49, 0x4e, 0x47, 0x10,
-	0x04, 0x12, 0x23, 0x0a, 0x1f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x41,
-	0x55, 0x54, 0x4f, 0x4d, 0x4c, 0x5f, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x49, 0x46, 0x49, 0x43, 0x41,
-	0x54, 0x49, 0x4f, 0x4e, 0x10, 0x15, 0x12, 0x24, 0x0a, 0x20, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d,
-	0x49, 0x4e, 0x47, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x4d, 0x4c, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43,
-	0x54, 0x5f, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x49, 0x4e, 0x47, 0x10, 0x16, 0x32, 0xce, 0x02, 0x0a,
+	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41,
+	0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x67,
+	0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x1d,
+	0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f,
+	0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x91, 0x01,
+	0x0a, 0x1c, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66,
+	0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x15,
+	0x20, 0x01, 0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+	0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69,
+	0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+	0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x43,
+	0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
+	0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x1a, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x43, 0x6c, 0x61,
+	0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+	0x67, 0x12, 0x92, 0x01, 0x0a, 0x1d, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x5f, 0x6f, 0x62, 0x6a,
+	0x65, 0x63, 0x74, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e,
+	0x66, 0x69, 0x67, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e,
+	0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62,
+	0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x75,
+	0x74, 0x6f, 0x6d, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69,
+	0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x1a, 0x61, 0x75, 0x74, 0x6f,
+	0x6d, 0x6c, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67,
+	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x54, 0x0a, 0x07, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
+	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65,
+	0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74,
+	0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x46, 0x65, 0x61, 0x74,
+	0x75, 0x72, 0x65, 0x52, 0x07, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x67, 0x0a, 0x0e,
+	0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x1e,
+	0x20, 0x01, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+	0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69,
+	0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+	0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
+	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43,
+	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x12, 0x0a, 0x10, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69,
+	0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xfa, 0x01, 0x0a, 0x1e, 0x53, 0x74,
+	0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x56,
+	0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x05,
+	0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f,
+	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
+	0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x78, 0x0a, 0x12, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
+	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01,
+	0x28, 0x0b, 0x32, 0x49, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+	0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65,
+	0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74,
+	0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x41, 0x6e, 0x6e, 0x6f,
+	0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x11, 0x61,
+	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73,
+	0x12, 0x34, 0x0a, 0x16, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72,
+	0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+	0x52, 0x14, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75,
+	0x6c, 0x74, 0x73, 0x55, 0x72, 0x69, 0x22, 0xd5, 0x03, 0x0a, 0x1f, 0x53, 0x74, 0x72, 0x65, 0x61,
+	0x6d, 0x69, 0x6e, 0x67, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
+	0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x61, 0x0a, 0x10, 0x73, 0x68,
+	0x6f, 0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01,
+	0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+	0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69,
+	0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+	0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0f, 0x73, 0x68,
+	0x6f, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x66, 0x0a,
+	0x11, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
+	0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74,
+	0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65,
+	0x74, 0x61, 0x31, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
+	0x69, 0x6f, 0x6e, 0x52, 0x10, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
+	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x74, 0x0a, 0x13, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69,
+	0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01,
+	0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+	0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65,
+	0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78,
+	0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x6e,
+	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, 0x69,
+	0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x71, 0x0a, 0x12, 0x6f,
+	0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+	0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x69, 0x6e, 0x74, 0x65,
+	0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x76, 0x31, 0x70, 0x33, 0x62, 0x65, 0x74,
+	0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e,
+	0x67, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x6f, 0x62, 0x6a,
+	0x65, 0x63, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x24,
+	0x0a, 0x22, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x53, 0x68, 0x6f, 0x74, 0x43,
+	0x68, 0x61, 0x6e, 0x67, 0x65, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f,
+	0x6e, 0x66, 0x69, 0x67, 0x22, 0x4c, 0x0a, 0x1d, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e,
+	0x67, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43,
+	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+	0x61, 0x72, 0x79, 0x5f, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
+	0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x43, 0x61, 0x6d, 0x65,
+	0x72, 0x61, 0x22, 0x29, 0x0a, 0x27, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x45,
+	0x78, 0x70, 0x6c, 0x69, 0x63, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x44, 0x65,
+	0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x1f, 0x0a,
+	0x1d, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
+	0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x47,
+	0x0a, 0x26, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x75, 0x74, 0x6f, 0x6d,
+	0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69,
+	0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x65,
+	0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f,
+	0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x44, 0x0a, 0x23, 0x53, 0x74, 0x72, 0x65, 0x61,
+	0x6d, 0x69, 0x6e, 0x67, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69,
+	0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1d,
+	0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
+	0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x44, 0x0a,
+	0x23, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x6c,
+	0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x43, 0x6f,
+	0x6e, 0x66, 0x69, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x61,
+	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x4e,
+	0x61, 0x6d, 0x65, 0x22, 0xb0, 0x01, 0x0a, 0x16, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e,
+	0x67, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x47,
+	0x0a, 0x20, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
+	0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75,
+	0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+	0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
+	0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x4d, 0x0a, 0x23, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
+	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x74, 0x6f,
+	0x72, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x03,
+	0x20, 0x01, 0x28, 0x09, 0x52, 0x20, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x44, 0x69, 0x72,
+	0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x2a, 0x72, 0x0a, 0x12, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x44,
+	0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x24, 0x0a, 0x20,
+	0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
+	0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
+	0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x10,
+	0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x46, 0x52, 0x41, 0x4d, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x10,
+	0x02, 0x12, 0x17, 0x0a, 0x13, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x41, 0x4e, 0x44, 0x5f, 0x46, 0x52,
+	0x41, 0x4d, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x10, 0x03, 0x2a, 0x74, 0x0a, 0x0a, 0x4c, 0x69,
+	0x6b, 0x65, 0x6c, 0x69, 0x68, 0x6f, 0x6f, 0x64, 0x12, 0x1a, 0x0a, 0x16, 0x4c, 0x49, 0x4b, 0x45,
+	0x4c, 0x49, 0x48, 0x4f, 0x4f, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
+	0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x55, 0x4e, 0x4c,
+	0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x4e, 0x4c, 0x49, 0x4b,
+	0x45, 0x4c, 0x59, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x4f, 0x53, 0x53, 0x49, 0x42, 0x4c,
+	0x45, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10, 0x04, 0x12,
+	0x0f, 0x0a, 0x0b, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x4c, 0x49, 0x4b, 0x45, 0x4c, 0x59, 0x10, 0x05,
+	0x2a, 0xb6, 0x02, 0x0a, 0x10, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x46, 0x65,
+	0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49,
+	0x4e, 0x47, 0x5f, 0x46, 0x45, 0x41, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
+	0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x54, 0x52, 0x45,
+	0x41, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x44, 0x45, 0x54, 0x45,
+	0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x53, 0x54, 0x52, 0x45, 0x41,
+	0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45,
+	0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x28, 0x0a, 0x24,
+	0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43,
+	0x49, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43,
+	0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d,
+	0x49, 0x4e, 0x47, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x52, 0x41, 0x43, 0x4b,
+	0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x27, 0x0a, 0x23, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49,
+	0x4e, 0x47, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x4d, 0x4c, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e,
+	0x5f, 0x52, 0x45, 0x43, 0x4f, 0x47, 0x4e, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x17, 0x12, 0x23,
+	0x0a, 0x1f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47, 0x5f, 0x41, 0x55, 0x54, 0x4f,
+	0x4d, 0x4c, 0x5f, 0x43, 0x4c, 0x41, 0x53, 0x53, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f,
+	0x4e, 0x10, 0x15, 0x12, 0x24, 0x0a, 0x20, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47,
+	0x5f, 0x41, 0x55, 0x54, 0x4f, 0x4d, 0x4c, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54,
+	0x52, 0x41, 0x43, 0x4b, 0x49, 0x4e, 0x47, 0x10, 0x16, 0x2a, 0x90, 0x02, 0x0a, 0x07, 0x46, 0x65,
+	0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x17, 0x0a, 0x13, 0x46, 0x45, 0x41, 0x54, 0x55, 0x52, 0x45,
+	0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13,
+	0x0a, 0x0f, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f,
+	0x4e, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x48, 0x4f, 0x54, 0x5f, 0x43, 0x48, 0x41, 0x4e,
+	0x47, 0x45, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x1e,
+	0x0a, 0x1a, 0x45, 0x58, 0x50, 0x4c, 0x49, 0x43, 0x49, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45,
+	0x4e, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x12,
+	0x0a, 0x0e, 0x46, 0x41, 0x43, 0x45, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e,
+	0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x50, 0x45, 0x45, 0x43, 0x48, 0x5f, 0x54, 0x52, 0x41,
+	0x4e, 0x53, 0x43, 0x52, 0x49, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x06, 0x12, 0x12, 0x0a, 0x0e,
+	0x54, 0x45, 0x58, 0x54, 0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x07,
+	0x12, 0x13, 0x0a, 0x0f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x54, 0x52, 0x41, 0x43, 0x4b,
+	0x49, 0x4e, 0x47, 0x10, 0x09, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x4f, 0x47, 0x4f, 0x5f, 0x52, 0x45,
+	0x43, 0x4f, 0x47, 0x4e, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x0c, 0x12, 0x19, 0x0a, 0x15, 0x43,
+	0x45, 0x4c, 0x45, 0x42, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x52, 0x45, 0x43, 0x4f, 0x47, 0x4e, 0x49,
+	0x54, 0x49, 0x4f, 0x4e, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x45, 0x52, 0x53, 0x4f, 0x4e,
+	0x5f, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x0e, 0x32, 0xce, 0x02, 0x0a,
 	0x18, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e,
 	0x63, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xdb, 0x01, 0x0a, 0x0d, 0x41, 0x6e,
 	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x12, 0x3e, 0x2e, 0x67, 0x6f,
@@ -5302,12 +5391,12 @@
 }
 
 var file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
-var file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes = make([]protoimpl.MessageInfo, 55)
+var file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes = make([]protoimpl.MessageInfo, 56)
 var file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_goTypes = []interface{}{
-	(Feature)(0),                                    // 0: google.cloud.videointelligence.v1p3beta1.Feature
-	(LabelDetectionMode)(0),                         // 1: google.cloud.videointelligence.v1p3beta1.LabelDetectionMode
-	(Likelihood)(0),                                 // 2: google.cloud.videointelligence.v1p3beta1.Likelihood
-	(StreamingFeature)(0),                           // 3: google.cloud.videointelligence.v1p3beta1.StreamingFeature
+	(LabelDetectionMode)(0),                         // 0: google.cloud.videointelligence.v1p3beta1.LabelDetectionMode
+	(Likelihood)(0),                                 // 1: google.cloud.videointelligence.v1p3beta1.Likelihood
+	(StreamingFeature)(0),                           // 2: google.cloud.videointelligence.v1p3beta1.StreamingFeature
+	(Feature)(0),                                    // 3: google.cloud.videointelligence.v1p3beta1.Feature
 	(*AnnotateVideoRequest)(nil),                    // 4: google.cloud.videointelligence.v1p3beta1.AnnotateVideoRequest
 	(*VideoContext)(nil),                            // 5: google.cloud.videointelligence.v1p3beta1.VideoContext
 	(*LabelDetectionConfig)(nil),                    // 6: google.cloud.videointelligence.v1p3beta1.LabelDetectionConfig
@@ -5352,24 +5441,25 @@
 	(*ObjectTrackingAnnotation)(nil),                // 45: google.cloud.videointelligence.v1p3beta1.ObjectTrackingAnnotation
 	(*LogoRecognitionAnnotation)(nil),               // 46: google.cloud.videointelligence.v1p3beta1.LogoRecognitionAnnotation
 	(*StreamingAnnotateVideoRequest)(nil),           // 47: google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoRequest
-	(*StreamingAnnotateVideoResponse)(nil),          // 48: google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoResponse
-	(*StreamingAutomlClassificationConfig)(nil),     // 49: google.cloud.videointelligence.v1p3beta1.StreamingAutomlClassificationConfig
-	(*StreamingAutomlObjectTrackingConfig)(nil),     // 50: google.cloud.videointelligence.v1p3beta1.StreamingAutomlObjectTrackingConfig
-	(*StreamingExplicitContentDetectionConfig)(nil), // 51: google.cloud.videointelligence.v1p3beta1.StreamingExplicitContentDetectionConfig
+	(*StreamingVideoConfig)(nil),                    // 48: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig
+	(*StreamingAnnotateVideoResponse)(nil),          // 49: google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoResponse
+	(*StreamingVideoAnnotationResults)(nil),         // 50: google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults
+	(*StreamingShotChangeDetectionConfig)(nil),      // 51: google.cloud.videointelligence.v1p3beta1.StreamingShotChangeDetectionConfig
 	(*StreamingLabelDetectionConfig)(nil),           // 52: google.cloud.videointelligence.v1p3beta1.StreamingLabelDetectionConfig
-	(*StreamingObjectTrackingConfig)(nil),           // 53: google.cloud.videointelligence.v1p3beta1.StreamingObjectTrackingConfig
-	(*StreamingShotChangeDetectionConfig)(nil),      // 54: google.cloud.videointelligence.v1p3beta1.StreamingShotChangeDetectionConfig
-	(*StreamingStorageConfig)(nil),                  // 55: google.cloud.videointelligence.v1p3beta1.StreamingStorageConfig
-	(*StreamingVideoAnnotationResults)(nil),         // 56: google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults
-	(*StreamingVideoConfig)(nil),                    // 57: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig
-	(*CelebrityTrack_RecognizedCelebrity)(nil),      // 58: google.cloud.videointelligence.v1p3beta1.CelebrityTrack.RecognizedCelebrity
-	(*duration.Duration)(nil),                       // 59: google.protobuf.Duration
-	(*status.Status)(nil),                           // 60: google.rpc.Status
-	(*timestamp.Timestamp)(nil),                     // 61: google.protobuf.Timestamp
-	(*longrunning.Operation)(nil),                   // 62: google.longrunning.Operation
+	(*StreamingExplicitContentDetectionConfig)(nil), // 53: google.cloud.videointelligence.v1p3beta1.StreamingExplicitContentDetectionConfig
+	(*StreamingObjectTrackingConfig)(nil),           // 54: google.cloud.videointelligence.v1p3beta1.StreamingObjectTrackingConfig
+	(*StreamingAutomlActionRecognitionConfig)(nil),  // 55: google.cloud.videointelligence.v1p3beta1.StreamingAutomlActionRecognitionConfig
+	(*StreamingAutomlClassificationConfig)(nil),     // 56: google.cloud.videointelligence.v1p3beta1.StreamingAutomlClassificationConfig
+	(*StreamingAutomlObjectTrackingConfig)(nil),     // 57: google.cloud.videointelligence.v1p3beta1.StreamingAutomlObjectTrackingConfig
+	(*StreamingStorageConfig)(nil),                  // 58: google.cloud.videointelligence.v1p3beta1.StreamingStorageConfig
+	(*CelebrityTrack_RecognizedCelebrity)(nil),      // 59: google.cloud.videointelligence.v1p3beta1.CelebrityTrack.RecognizedCelebrity
+	(*duration.Duration)(nil),                       // 60: google.protobuf.Duration
+	(*status.Status)(nil),                           // 61: google.rpc.Status
+	(*timestamp.Timestamp)(nil),                     // 62: google.protobuf.Timestamp
+	(*longrunning.Operation)(nil),                   // 63: google.longrunning.Operation
 }
 var file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_depIdxs = []int32{
-	0,  // 0: google.cloud.videointelligence.v1p3beta1.AnnotateVideoRequest.features:type_name -> google.cloud.videointelligence.v1p3beta1.Feature
+	3,  // 0: google.cloud.videointelligence.v1p3beta1.AnnotateVideoRequest.features:type_name -> google.cloud.videointelligence.v1p3beta1.Feature
 	5,  // 1: google.cloud.videointelligence.v1p3beta1.AnnotateVideoRequest.video_context:type_name -> google.cloud.videointelligence.v1p3beta1.VideoContext
 	13, // 2: google.cloud.videointelligence.v1p3beta1.VideoContext.segments:type_name -> google.cloud.videointelligence.v1p3beta1.VideoSegment
 	6,  // 3: google.cloud.videointelligence.v1p3beta1.VideoContext.label_detection_config:type_name -> google.cloud.videointelligence.v1p3beta1.LabelDetectionConfig
@@ -5380,26 +5470,26 @@
 	12, // 8: google.cloud.videointelligence.v1p3beta1.VideoContext.text_detection_config:type_name -> google.cloud.videointelligence.v1p3beta1.TextDetectionConfig
 	11, // 9: google.cloud.videointelligence.v1p3beta1.VideoContext.person_detection_config:type_name -> google.cloud.videointelligence.v1p3beta1.PersonDetectionConfig
 	8,  // 10: google.cloud.videointelligence.v1p3beta1.VideoContext.object_tracking_config:type_name -> google.cloud.videointelligence.v1p3beta1.ObjectTrackingConfig
-	1,  // 11: google.cloud.videointelligence.v1p3beta1.LabelDetectionConfig.label_detection_mode:type_name -> google.cloud.videointelligence.v1p3beta1.LabelDetectionMode
-	59, // 12: google.cloud.videointelligence.v1p3beta1.VideoSegment.start_time_offset:type_name -> google.protobuf.Duration
-	59, // 13: google.cloud.videointelligence.v1p3beta1.VideoSegment.end_time_offset:type_name -> google.protobuf.Duration
+	0,  // 11: google.cloud.videointelligence.v1p3beta1.LabelDetectionConfig.label_detection_mode:type_name -> google.cloud.videointelligence.v1p3beta1.LabelDetectionMode
+	60, // 12: google.cloud.videointelligence.v1p3beta1.VideoSegment.start_time_offset:type_name -> google.protobuf.Duration
+	60, // 13: google.cloud.videointelligence.v1p3beta1.VideoSegment.end_time_offset:type_name -> google.protobuf.Duration
 	13, // 14: google.cloud.videointelligence.v1p3beta1.LabelSegment.segment:type_name -> google.cloud.videointelligence.v1p3beta1.VideoSegment
-	59, // 15: google.cloud.videointelligence.v1p3beta1.LabelFrame.time_offset:type_name -> google.protobuf.Duration
+	60, // 15: google.cloud.videointelligence.v1p3beta1.LabelFrame.time_offset:type_name -> google.protobuf.Duration
 	16, // 16: google.cloud.videointelligence.v1p3beta1.LabelAnnotation.entity:type_name -> google.cloud.videointelligence.v1p3beta1.Entity
 	16, // 17: google.cloud.videointelligence.v1p3beta1.LabelAnnotation.category_entities:type_name -> google.cloud.videointelligence.v1p3beta1.Entity
 	14, // 18: google.cloud.videointelligence.v1p3beta1.LabelAnnotation.segments:type_name -> google.cloud.videointelligence.v1p3beta1.LabelSegment
 	15, // 19: google.cloud.videointelligence.v1p3beta1.LabelAnnotation.frames:type_name -> google.cloud.videointelligence.v1p3beta1.LabelFrame
-	59, // 20: google.cloud.videointelligence.v1p3beta1.ExplicitContentFrame.time_offset:type_name -> google.protobuf.Duration
-	2,  // 21: google.cloud.videointelligence.v1p3beta1.ExplicitContentFrame.pornography_likelihood:type_name -> google.cloud.videointelligence.v1p3beta1.Likelihood
+	60, // 20: google.cloud.videointelligence.v1p3beta1.ExplicitContentFrame.time_offset:type_name -> google.protobuf.Duration
+	1,  // 21: google.cloud.videointelligence.v1p3beta1.ExplicitContentFrame.pornography_likelihood:type_name -> google.cloud.videointelligence.v1p3beta1.Likelihood
 	18, // 22: google.cloud.videointelligence.v1p3beta1.ExplicitContentAnnotation.frames:type_name -> google.cloud.videointelligence.v1p3beta1.ExplicitContentFrame
 	20, // 23: google.cloud.videointelligence.v1p3beta1.TimestampedObject.normalized_bounding_box:type_name -> google.cloud.videointelligence.v1p3beta1.NormalizedBoundingBox
-	59, // 24: google.cloud.videointelligence.v1p3beta1.TimestampedObject.time_offset:type_name -> google.protobuf.Duration
+	60, // 24: google.cloud.videointelligence.v1p3beta1.TimestampedObject.time_offset:type_name -> google.protobuf.Duration
 	23, // 25: google.cloud.videointelligence.v1p3beta1.TimestampedObject.attributes:type_name -> google.cloud.videointelligence.v1p3beta1.DetectedAttribute
 	27, // 26: google.cloud.videointelligence.v1p3beta1.TimestampedObject.landmarks:type_name -> google.cloud.videointelligence.v1p3beta1.DetectedLandmark
 	13, // 27: google.cloud.videointelligence.v1p3beta1.Track.segment:type_name -> google.cloud.videointelligence.v1p3beta1.VideoSegment
 	21, // 28: google.cloud.videointelligence.v1p3beta1.Track.timestamped_objects:type_name -> google.cloud.videointelligence.v1p3beta1.TimestampedObject
 	23, // 29: google.cloud.videointelligence.v1p3beta1.Track.attributes:type_name -> google.cloud.videointelligence.v1p3beta1.DetectedAttribute
-	58, // 30: google.cloud.videointelligence.v1p3beta1.CelebrityTrack.celebrities:type_name -> google.cloud.videointelligence.v1p3beta1.CelebrityTrack.RecognizedCelebrity
+	59, // 30: google.cloud.videointelligence.v1p3beta1.CelebrityTrack.celebrities:type_name -> google.cloud.videointelligence.v1p3beta1.CelebrityTrack.RecognizedCelebrity
 	22, // 31: google.cloud.videointelligence.v1p3beta1.CelebrityTrack.face_track:type_name -> google.cloud.videointelligence.v1p3beta1.Track
 	25, // 32: google.cloud.videointelligence.v1p3beta1.CelebrityRecognitionAnnotation.celebrity_tracks:type_name -> google.cloud.videointelligence.v1p3beta1.CelebrityTrack
 	39, // 33: google.cloud.videointelligence.v1p3beta1.DetectedLandmark.point:type_name -> google.cloud.videointelligence.v1p3beta1.NormalizedVertex
@@ -5420,57 +5510,58 @@
 	46, // 48: google.cloud.videointelligence.v1p3beta1.VideoAnnotationResults.logo_recognition_annotations:type_name -> google.cloud.videointelligence.v1p3beta1.LogoRecognitionAnnotation
 	29, // 49: google.cloud.videointelligence.v1p3beta1.VideoAnnotationResults.person_detection_annotations:type_name -> google.cloud.videointelligence.v1p3beta1.PersonDetectionAnnotation
 	26, // 50: google.cloud.videointelligence.v1p3beta1.VideoAnnotationResults.celebrity_recognition_annotations:type_name -> google.cloud.videointelligence.v1p3beta1.CelebrityRecognitionAnnotation
-	60, // 51: google.cloud.videointelligence.v1p3beta1.VideoAnnotationResults.error:type_name -> google.rpc.Status
+	61, // 51: google.cloud.videointelligence.v1p3beta1.VideoAnnotationResults.error:type_name -> google.rpc.Status
 	30, // 52: google.cloud.videointelligence.v1p3beta1.AnnotateVideoResponse.annotation_results:type_name -> google.cloud.videointelligence.v1p3beta1.VideoAnnotationResults
-	61, // 53: google.cloud.videointelligence.v1p3beta1.VideoAnnotationProgress.start_time:type_name -> google.protobuf.Timestamp
-	61, // 54: google.cloud.videointelligence.v1p3beta1.VideoAnnotationProgress.update_time:type_name -> google.protobuf.Timestamp
-	0,  // 55: google.cloud.videointelligence.v1p3beta1.VideoAnnotationProgress.feature:type_name -> google.cloud.videointelligence.v1p3beta1.Feature
+	62, // 53: google.cloud.videointelligence.v1p3beta1.VideoAnnotationProgress.start_time:type_name -> google.protobuf.Timestamp
+	62, // 54: google.cloud.videointelligence.v1p3beta1.VideoAnnotationProgress.update_time:type_name -> google.protobuf.Timestamp
+	3,  // 55: google.cloud.videointelligence.v1p3beta1.VideoAnnotationProgress.feature:type_name -> google.cloud.videointelligence.v1p3beta1.Feature
 	13, // 56: google.cloud.videointelligence.v1p3beta1.VideoAnnotationProgress.segment:type_name -> google.cloud.videointelligence.v1p3beta1.VideoSegment
 	32, // 57: google.cloud.videointelligence.v1p3beta1.AnnotateVideoProgress.annotation_progress:type_name -> google.cloud.videointelligence.v1p3beta1.VideoAnnotationProgress
 	35, // 58: google.cloud.videointelligence.v1p3beta1.SpeechTranscriptionConfig.speech_contexts:type_name -> google.cloud.videointelligence.v1p3beta1.SpeechContext
 	37, // 59: google.cloud.videointelligence.v1p3beta1.SpeechTranscription.alternatives:type_name -> google.cloud.videointelligence.v1p3beta1.SpeechRecognitionAlternative
 	38, // 60: google.cloud.videointelligence.v1p3beta1.SpeechRecognitionAlternative.words:type_name -> google.cloud.videointelligence.v1p3beta1.WordInfo
-	59, // 61: google.cloud.videointelligence.v1p3beta1.WordInfo.start_time:type_name -> google.protobuf.Duration
-	59, // 62: google.cloud.videointelligence.v1p3beta1.WordInfo.end_time:type_name -> google.protobuf.Duration
+	60, // 61: google.cloud.videointelligence.v1p3beta1.WordInfo.start_time:type_name -> google.protobuf.Duration
+	60, // 62: google.cloud.videointelligence.v1p3beta1.WordInfo.end_time:type_name -> google.protobuf.Duration
 	39, // 63: google.cloud.videointelligence.v1p3beta1.NormalizedBoundingPoly.vertices:type_name -> google.cloud.videointelligence.v1p3beta1.NormalizedVertex
 	13, // 64: google.cloud.videointelligence.v1p3beta1.TextSegment.segment:type_name -> google.cloud.videointelligence.v1p3beta1.VideoSegment
 	42, // 65: google.cloud.videointelligence.v1p3beta1.TextSegment.frames:type_name -> google.cloud.videointelligence.v1p3beta1.TextFrame
 	40, // 66: google.cloud.videointelligence.v1p3beta1.TextFrame.rotated_bounding_box:type_name -> google.cloud.videointelligence.v1p3beta1.NormalizedBoundingPoly
-	59, // 67: google.cloud.videointelligence.v1p3beta1.TextFrame.time_offset:type_name -> google.protobuf.Duration
+	60, // 67: google.cloud.videointelligence.v1p3beta1.TextFrame.time_offset:type_name -> google.protobuf.Duration
 	41, // 68: google.cloud.videointelligence.v1p3beta1.TextAnnotation.segments:type_name -> google.cloud.videointelligence.v1p3beta1.TextSegment
 	20, // 69: google.cloud.videointelligence.v1p3beta1.ObjectTrackingFrame.normalized_bounding_box:type_name -> google.cloud.videointelligence.v1p3beta1.NormalizedBoundingBox
-	59, // 70: google.cloud.videointelligence.v1p3beta1.ObjectTrackingFrame.time_offset:type_name -> google.protobuf.Duration
-	16, // 71: google.cloud.videointelligence.v1p3beta1.ObjectTrackingAnnotation.entity:type_name -> google.cloud.videointelligence.v1p3beta1.Entity
-	44, // 72: google.cloud.videointelligence.v1p3beta1.ObjectTrackingAnnotation.frames:type_name -> google.cloud.videointelligence.v1p3beta1.ObjectTrackingFrame
-	13, // 73: google.cloud.videointelligence.v1p3beta1.ObjectTrackingAnnotation.segment:type_name -> google.cloud.videointelligence.v1p3beta1.VideoSegment
+	60, // 70: google.cloud.videointelligence.v1p3beta1.ObjectTrackingFrame.time_offset:type_name -> google.protobuf.Duration
+	13, // 71: google.cloud.videointelligence.v1p3beta1.ObjectTrackingAnnotation.segment:type_name -> google.cloud.videointelligence.v1p3beta1.VideoSegment
+	16, // 72: google.cloud.videointelligence.v1p3beta1.ObjectTrackingAnnotation.entity:type_name -> google.cloud.videointelligence.v1p3beta1.Entity
+	44, // 73: google.cloud.videointelligence.v1p3beta1.ObjectTrackingAnnotation.frames:type_name -> google.cloud.videointelligence.v1p3beta1.ObjectTrackingFrame
 	16, // 74: google.cloud.videointelligence.v1p3beta1.LogoRecognitionAnnotation.entity:type_name -> google.cloud.videointelligence.v1p3beta1.Entity
 	22, // 75: google.cloud.videointelligence.v1p3beta1.LogoRecognitionAnnotation.tracks:type_name -> google.cloud.videointelligence.v1p3beta1.Track
 	13, // 76: google.cloud.videointelligence.v1p3beta1.LogoRecognitionAnnotation.segments:type_name -> google.cloud.videointelligence.v1p3beta1.VideoSegment
-	57, // 77: google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoRequest.video_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig
-	60, // 78: google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoResponse.error:type_name -> google.rpc.Status
-	56, // 79: google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoResponse.annotation_results:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults
-	13, // 80: google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults.shot_annotations:type_name -> google.cloud.videointelligence.v1p3beta1.VideoSegment
-	17, // 81: google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults.label_annotations:type_name -> google.cloud.videointelligence.v1p3beta1.LabelAnnotation
-	19, // 82: google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults.explicit_annotation:type_name -> google.cloud.videointelligence.v1p3beta1.ExplicitContentAnnotation
-	45, // 83: google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults.object_annotations:type_name -> google.cloud.videointelligence.v1p3beta1.ObjectTrackingAnnotation
-	3,  // 84: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.feature:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingFeature
-	54, // 85: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.shot_change_detection_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingShotChangeDetectionConfig
-	52, // 86: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.label_detection_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingLabelDetectionConfig
-	51, // 87: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.explicit_content_detection_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingExplicitContentDetectionConfig
-	53, // 88: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.object_tracking_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingObjectTrackingConfig
-	49, // 89: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.automl_classification_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingAutomlClassificationConfig
-	50, // 90: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.automl_object_tracking_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingAutomlObjectTrackingConfig
-	55, // 91: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.storage_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingStorageConfig
-	24, // 92: google.cloud.videointelligence.v1p3beta1.CelebrityTrack.RecognizedCelebrity.celebrity:type_name -> google.cloud.videointelligence.v1p3beta1.Celebrity
-	4,  // 93: google.cloud.videointelligence.v1p3beta1.VideoIntelligenceService.AnnotateVideo:input_type -> google.cloud.videointelligence.v1p3beta1.AnnotateVideoRequest
-	47, // 94: google.cloud.videointelligence.v1p3beta1.StreamingVideoIntelligenceService.StreamingAnnotateVideo:input_type -> google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoRequest
-	62, // 95: google.cloud.videointelligence.v1p3beta1.VideoIntelligenceService.AnnotateVideo:output_type -> google.longrunning.Operation
-	48, // 96: google.cloud.videointelligence.v1p3beta1.StreamingVideoIntelligenceService.StreamingAnnotateVideo:output_type -> google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoResponse
-	95, // [95:97] is the sub-list for method output_type
-	93, // [93:95] is the sub-list for method input_type
-	93, // [93:93] is the sub-list for extension type_name
-	93, // [93:93] is the sub-list for extension extendee
-	0,  // [0:93] is the sub-list for field type_name
+	48, // 77: google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoRequest.video_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig
+	51, // 78: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.shot_change_detection_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingShotChangeDetectionConfig
+	52, // 79: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.label_detection_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingLabelDetectionConfig
+	53, // 80: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.explicit_content_detection_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingExplicitContentDetectionConfig
+	54, // 81: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.object_tracking_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingObjectTrackingConfig
+	55, // 82: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.automl_action_recognition_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingAutomlActionRecognitionConfig
+	56, // 83: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.automl_classification_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingAutomlClassificationConfig
+	57, // 84: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.automl_object_tracking_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingAutomlObjectTrackingConfig
+	2,  // 85: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.feature:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingFeature
+	58, // 86: google.cloud.videointelligence.v1p3beta1.StreamingVideoConfig.storage_config:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingStorageConfig
+	61, // 87: google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoResponse.error:type_name -> google.rpc.Status
+	50, // 88: google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoResponse.annotation_results:type_name -> google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults
+	13, // 89: google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults.shot_annotations:type_name -> google.cloud.videointelligence.v1p3beta1.VideoSegment
+	17, // 90: google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults.label_annotations:type_name -> google.cloud.videointelligence.v1p3beta1.LabelAnnotation
+	19, // 91: google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults.explicit_annotation:type_name -> google.cloud.videointelligence.v1p3beta1.ExplicitContentAnnotation
+	45, // 92: google.cloud.videointelligence.v1p3beta1.StreamingVideoAnnotationResults.object_annotations:type_name -> google.cloud.videointelligence.v1p3beta1.ObjectTrackingAnnotation
+	24, // 93: google.cloud.videointelligence.v1p3beta1.CelebrityTrack.RecognizedCelebrity.celebrity:type_name -> google.cloud.videointelligence.v1p3beta1.Celebrity
+	4,  // 94: google.cloud.videointelligence.v1p3beta1.VideoIntelligenceService.AnnotateVideo:input_type -> google.cloud.videointelligence.v1p3beta1.AnnotateVideoRequest
+	47, // 95: google.cloud.videointelligence.v1p3beta1.StreamingVideoIntelligenceService.StreamingAnnotateVideo:input_type -> google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoRequest
+	63, // 96: google.cloud.videointelligence.v1p3beta1.VideoIntelligenceService.AnnotateVideo:output_type -> google.longrunning.Operation
+	49, // 97: google.cloud.videointelligence.v1p3beta1.StreamingVideoIntelligenceService.StreamingAnnotateVideo:output_type -> google.cloud.videointelligence.v1p3beta1.StreamingAnnotateVideoResponse
+	96, // [96:98] is the sub-list for method output_type
+	94, // [94:96] is the sub-list for method input_type
+	94, // [94:94] is the sub-list for extension type_name
+	94, // [94:94] is the sub-list for extension extendee
+	0,  // [0:94] is the sub-list for field type_name
 }
 
 func init() { file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_init() }
@@ -6008,7 +6099,7 @@
 			}
 		}
 		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*StreamingAnnotateVideoResponse); i {
+			switch v := v.(*StreamingVideoConfig); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -6020,7 +6111,7 @@
 			}
 		}
 		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*StreamingAutomlClassificationConfig); i {
+			switch v := v.(*StreamingAnnotateVideoResponse); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -6032,7 +6123,7 @@
 			}
 		}
 		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*StreamingAutomlObjectTrackingConfig); i {
+			switch v := v.(*StreamingVideoAnnotationResults); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -6044,7 +6135,7 @@
 			}
 		}
 		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*StreamingExplicitContentDetectionConfig); i {
+			switch v := v.(*StreamingShotChangeDetectionConfig); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -6068,7 +6159,7 @@
 			}
 		}
 		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*StreamingObjectTrackingConfig); i {
+			switch v := v.(*StreamingExplicitContentDetectionConfig); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -6080,7 +6171,7 @@
 			}
 		}
 		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*StreamingShotChangeDetectionConfig); i {
+			switch v := v.(*StreamingObjectTrackingConfig); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -6092,7 +6183,7 @@
 			}
 		}
 		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*StreamingStorageConfig); i {
+			switch v := v.(*StreamingAutomlActionRecognitionConfig); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -6104,7 +6195,7 @@
 			}
 		}
 		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*StreamingVideoAnnotationResults); i {
+			switch v := v.(*StreamingAutomlClassificationConfig); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -6116,7 +6207,7 @@
 			}
 		}
 		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*StreamingVideoConfig); i {
+			switch v := v.(*StreamingAutomlObjectTrackingConfig); i {
 			case 0:
 				return &v.state
 			case 1:
@@ -6128,6 +6219,18 @@
 			}
 		}
 		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
+			switch v := v.(*StreamingStorageConfig); i {
+			case 0:
+				return &v.state
+			case 1:
+				return &v.sizeCache
+			case 2:
+				return &v.unknownFields
+			default:
+				return nil
+			}
+		}
+		file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
 			switch v := v.(*CelebrityTrack_RecognizedCelebrity); i {
 			case 0:
 				return &v.state
@@ -6148,11 +6251,12 @@
 		(*StreamingAnnotateVideoRequest_VideoConfig)(nil),
 		(*StreamingAnnotateVideoRequest_InputContent)(nil),
 	}
-	file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[53].OneofWrappers = []interface{}{
+	file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_msgTypes[44].OneofWrappers = []interface{}{
 		(*StreamingVideoConfig_ShotChangeDetectionConfig)(nil),
 		(*StreamingVideoConfig_LabelDetectionConfig)(nil),
 		(*StreamingVideoConfig_ExplicitContentDetectionConfig)(nil),
 		(*StreamingVideoConfig_ObjectTrackingConfig)(nil),
+		(*StreamingVideoConfig_AutomlActionRecognitionConfig)(nil),
 		(*StreamingVideoConfig_AutomlClassificationConfig)(nil),
 		(*StreamingVideoConfig_AutomlObjectTrackingConfig)(nil),
 	}
@@ -6162,7 +6266,7 @@
 			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 			RawDescriptor: file_google_cloud_videointelligence_v1p3beta1_video_intelligence_proto_rawDesc,
 			NumEnums:      4,
-			NumMessages:   55,
+			NumMessages:   56,
 			NumExtensions: 0,
 			NumServices:   2,
 		},
diff --git a/googleapis/home/graph/v1/homegraph.pb.go b/googleapis/home/graph/v1/homegraph.pb.go
index facd7d1..232ea4f 100644
--- a/googleapis/home/graph/v1/homegraph.pb.go
+++ b/googleapis/home/graph/v1/homegraph.pb.go
@@ -191,6 +191,11 @@
 	// Required. Third-party user ID.
 	AgentUserId string `protobuf:"bytes,2,opt,name=agent_user_id,json=agentUserId,proto3" json:"agent_user_id,omitempty"`
 	// Token to maintain state in the follow up notification response.
+	// Deprecated. See the [notifications
+	// guide](https://developers.google.com/assistant/smarthome/develop/notifications)
+	// for details on implementing follow up notifications.
+	//
+	// Deprecated: Do not use.
 	FollowUpToken string `protobuf:"bytes,5,opt,name=follow_up_token,json=followUpToken,proto3" json:"follow_up_token,omitempty"`
 	// Required. State of devices to update and notification metadata for devices.
 	Payload *StateAndNotificationPayload `protobuf:"bytes,3,opt,name=payload,proto3" json:"payload,omitempty"`
@@ -249,6 +254,7 @@
 	return ""
 }
 
+// Deprecated: Do not use.
 func (x *ReportStateAndNotificationRequest) GetFollowUpToken() string {
 	if x != nil {
 		return x.FollowUpToken
@@ -271,7 +277,8 @@
 	sizeCache     protoimpl.SizeCache
 	unknownFields protoimpl.UnknownFields
 
-	// Request ID copied from [ReportStateAndNotificationRequest][google.home.graph.v1.ReportStateAndNotificationRequest].
+	// Request ID copied from
+	// [ReportStateAndNotificationRequest][google.home.graph.v1.ReportStateAndNotificationRequest].
 	RequestId string `protobuf:"bytes,1,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
 }
 
@@ -1077,7 +1084,7 @@
 	0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x05, 0x61, 0x73, 0x79, 0x6e, 0x63, 0x18, 0x02, 0x20, 0x01,
 	0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x61, 0x73, 0x79, 0x6e, 0x63, 0x22, 0x1c,
 	0x0a, 0x1a, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x79, 0x6e, 0x63, 0x44, 0x65, 0x76,
-	0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x80, 0x02, 0x0a,
+	0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x84, 0x02, 0x0a,
 	0x21, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e,
 	0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
 	0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64,
@@ -1086,176 +1093,176 @@
 	0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0d,
 	0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
 	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x55,
-	0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x5f,
-	0x75, 0x70, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
-	0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x55, 0x70, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x50, 0x0a,
-	0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31,
-	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61,
-	0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f,
-	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61,
-	0x64, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22,
-	0x43, 0x0a, 0x22, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e,
-	0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
-	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
-	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65,
-	0x73, 0x74, 0x49, 0x64, 0x22, 0x6f, 0x0a, 0x1b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64,
-	0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6c,
-	0x6f, 0x61, 0x64, 0x12, 0x50, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01,
-	0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f,
-	0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f,
-	0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69,
-	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x07, 0x64, 0x65,
-	0x76, 0x69, 0x63, 0x65, 0x73, 0x22, 0x92, 0x01, 0x0a, 0x20, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74,
-	0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
-	0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x73, 0x74,
-	0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f,
-	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72,
-	0x75, 0x63, 0x74, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x0d, 0x6e,
-	0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01,
-	0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
-	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0d, 0x6e, 0x6f, 0x74,
-	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x8b, 0x01, 0x0a, 0x16, 0x44,
-	0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
-	0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
-	0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65,
-	0x73, 0x74, 0x49, 0x64, 0x12, 0x52, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73,
-	0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02,
-	0xfa, 0x41, 0x28, 0x0a, 0x26, 0x68, 0x6f, 0x6d, 0x65, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x67,
-	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67,
-	0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x50, 0x61, 0x74, 0x68, 0x52, 0x0b, 0x61, 0x67, 0x65,
-	0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x9c, 0x01, 0x0a, 0x0c, 0x51, 0x75, 0x65,
-	0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71,
+	0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x0f, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x5f,
+	0x75, 0x70, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02,
+	0x18, 0x01, 0x52, 0x0d, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x55, 0x70, 0x54, 0x6f, 0x6b, 0x65,
+	0x6e, 0x12, 0x50, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x03, 0x20, 0x01,
+	0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65,
+	0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41,
+	0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61,
+	0x79, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c,
+	0x6f, 0x61, 0x64, 0x22, 0x43, 0x0a, 0x22, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61,
+	0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
+	0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71,
 	0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72,
-	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e,
+	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0x6f, 0x0a, 0x1b, 0x53, 0x74, 0x61, 0x74,
+	0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+	0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x50, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63,
+	0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+	0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e,
+	0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f,
+	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
+	0x52, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x22, 0x92, 0x01, 0x0a, 0x20, 0x52, 0x65,
+	0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69,
+	0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x2f,
+	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17,
+	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+	0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12,
+	0x3d, 0x0a, 0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52,
+	0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x8b,
+	0x01, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x73,
+	0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71,
+	0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72,
+	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x52, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e,
 	0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42,
-	0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49,
-	0x64, 0x12, 0x44, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
-	0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e,
+	0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x68, 0x6f, 0x6d, 0x65, 0x67, 0x72, 0x61,
+	0x70, 0x68, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+	0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x50, 0x61, 0x74, 0x68, 0x52,
+	0x0b, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x9c, 0x01, 0x0a,
+	0x0c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a,
+	0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0d,
+	0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
+	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x55,
+	0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18,
+	0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68,
+	0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65,
+	0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x42, 0x03,
+	0xe0, 0x41, 0x02, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x22, 0x58, 0x0a, 0x11, 0x51,
+	0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74,
+	0x12, 0x43, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+	0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e,
 	0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65,
-	0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
-	0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x22, 0x58, 0x0a, 0x11, 0x51, 0x75, 0x65, 0x72, 0x79,
-	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x43, 0x0a, 0x07,
-	0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e,
+	0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x07, 0x70, 0x61,
+	0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x54, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65,
+	0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x3d, 0x0a, 0x07,
+	0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e,
 	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70,
-	0x68, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
-	0x74, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61,
-	0x64, 0x22, 0x54, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
-	0x74, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x3d, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x69,
-	0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
-	0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31,
-	0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x52, 0x07,
-	0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x22, 0x1f, 0x0a, 0x0d, 0x41, 0x67, 0x65, 0x6e, 0x74,
-	0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
-	0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x74, 0x0a, 0x0d, 0x51, 0x75, 0x65, 0x72,
-	0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71,
-	0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72,
-	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c,
-	0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
-	0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31,
-	0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61,
-	0x79, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0xbe,
-	0x01, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
-	0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x51, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63,
-	0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
-	0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e,
-	0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x79,
-	0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72,
-	0x79, 0x52, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x1a, 0x53, 0x0a, 0x0c, 0x44, 0x65,
-	0x76, 0x69, 0x63, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
-	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2d, 0x0a, 0x05,
-	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f,
-	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74,
-	0x72, 0x75, 0x63, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
-	0x55, 0x0a, 0x0b, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d,
-	0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
-	0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a,
-	0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02,
-	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x61, 0x67, 0x65, 0x6e, 0x74,
-	0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x72, 0x0a, 0x0c, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65,
-	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
-	0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75,
-	0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64,
-	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
-	0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79,
-	0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61,
-	0x64, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x71, 0x0a, 0x13, 0x53, 0x79,
-	0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61,
-	0x64, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f,
-	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x55,
-	0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73,
-	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
-	0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65,
-	0x76, 0x69, 0x63, 0x65, 0x52, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x32, 0x8c, 0x07,
-	0x0a, 0x13, 0x48, 0x6f, 0x6d, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x41, 0x70, 0x69, 0x53, 0x65,
-	0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xab, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
-	0x74, 0x53, 0x79, 0x6e, 0x63, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x2f, 0x2e, 0x67,
+	0x68, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
+	0x49, 0x64, 0x52, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x22, 0x1f, 0x0a, 0x0d, 0x41,
+	0x67, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02,
+	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x74, 0x0a, 0x0d,
+	0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a,
+	0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+	0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x07,
+	0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e,
+	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70,
+	0x68, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+	0x73, 0x65, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f,
+	0x61, 0x64, 0x22, 0xbe, 0x01, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70,
+	0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x51, 0x0a, 0x07, 0x64,
+	0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67,
 	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68,
-	0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x79, 0x6e, 0x63, 0x44,
-	0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e,
-	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70,
-	0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x79, 0x6e, 0x63,
-	0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
-	0x32, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x22, 0x17, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x76,
-	0x69, 0x63, 0x65, 0x73, 0x3a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x79, 0x6e, 0x63,
-	0x3a, 0x01, 0x2a, 0xda, 0x41, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72,
-	0x5f, 0x69, 0x64, 0x12, 0xee, 0x01, 0x0a, 0x1a, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74,
-	0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
-	0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65,
-	0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74,
-	0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
-	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x67, 0x6f,
-	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e,
-	0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e,
-	0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
-	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x22, 0x26, 0x2f,
-	0x76, 0x31, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x3a, 0x72, 0x65, 0x70, 0x6f, 0x72,
-	0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
-	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x29, 0x72, 0x65, 0x71, 0x75, 0x65,
-	0x73, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x61,
-	0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x2c, 0x70, 0x61, 0x79,
-	0x6c, 0x6f, 0x61, 0x64, 0x12, 0x9d, 0x01, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41,
-	0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
-	0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e,
-	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52,
-	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
-	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x44,
-	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x2a, 0x21, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x61, 0x67, 0x65,
-	0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x3d, 0x61, 0x67, 0x65, 0x6e, 0x74,
-	0x55, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2a, 0x7d, 0xda, 0x41, 0x18, 0x72, 0x65, 0x71, 0x75,
-	0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65,
-	0x72, 0x5f, 0x69, 0x64, 0x12, 0x90, 0x01, 0x0a, 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x22,
-	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61,
-	0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
-	0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65,
-	0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52,
-	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x16, 0x22,
-	0x11, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x3a, 0x71, 0x75, 0x65,
-	0x72, 0x79, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x1f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f,
+	0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+	0x65, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73,
+	0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x1a, 0x53,
+	0x0a, 0x0c, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
+	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
+	0x12, 0x2d, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
+	0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+	0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
+	0x02, 0x38, 0x01, 0x22, 0x55, 0x0a, 0x0b, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65,
+	0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64,
+	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49,
+	0x64, 0x12, 0x27, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f,
+	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x61,
+	0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x72, 0x0a, 0x0c, 0x53, 0x79,
+	0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65,
+	0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
+	0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x07, 0x70, 0x61, 0x79,
+	0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f,
+	0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76,
+	0x31, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61,
+	0x79, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x71,
+	0x0a, 0x13, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61,
+	0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75,
+	0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x67,
+	0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x07, 0x64, 0x65, 0x76,
+	0x69, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
+	0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76,
+	0x31, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
+	0x73, 0x32, 0x8c, 0x07, 0x0a, 0x13, 0x48, 0x6f, 0x6d, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x41,
+	0x70, 0x69, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xab, 0x01, 0x0a, 0x12, 0x52, 0x65,
+	0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x79, 0x6e, 0x63, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73,
+	0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67,
+	0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53,
+	0x79, 0x6e, 0x63, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+	0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e,
+	0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+	0x53, 0x79, 0x6e, 0x63, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
+	0x6e, 0x73, 0x65, 0x22, 0x32, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x22, 0x17, 0x2f, 0x76, 0x31,
+	0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x3a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+	0x53, 0x79, 0x6e, 0x63, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f,
+	0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x12, 0xee, 0x01, 0x0a, 0x1a, 0x52, 0x65, 0x70, 0x6f,
+	0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69,
+	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+	0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65,
+	0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69,
+	0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+	0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72,
+	0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61,
+	0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
+	0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5d, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+	0x2b, 0x22, 0x26, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x3a, 0x72,
+	0x65, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x4e, 0x6f, 0x74,
+	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x29, 0x72,
+	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f,
 	0x69, 0x64, 0x2c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64,
-	0x2c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x85, 0x01, 0x0a, 0x04, 0x53, 0x79, 0x6e, 0x63,
-	0x12, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67,
-	0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75,
-	0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d,
-	0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x52,
-	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x36, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x22,
-	0x10, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x3a, 0x73, 0x79, 0x6e,
-	0x63, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x18, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69,
-	0x64, 0x2c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x1a,
-	0x1b, 0xca, 0x41, 0x18, 0x68, 0x6f, 0x6d, 0x65, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x67, 0x6f,
-	0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x42, 0xbb, 0x01, 0x0a,
-	0x18, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65,
-	0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x42, 0x18, 0x48, 0x6f, 0x6d, 0x65, 0x47,
-	0x72, 0x61, 0x70, 0x68, 0x41, 0x70, 0x69, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72,
-	0x6f, 0x74, 0x6f, 0x5a, 0x39, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61,
-	0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
-	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x68, 0x6f, 0x6d, 0x65, 0x2f,
-	0x67, 0x72, 0x61, 0x70, 0x68, 0x2f, 0x76, 0x31, 0x3b, 0x67, 0x72, 0x61, 0x70, 0x68, 0xea, 0x41,
-	0x49, 0x0a, 0x26, 0x68, 0x6f, 0x6d, 0x65, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x67, 0x6f, 0x6f,
-	0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e,
-	0x74, 0x55, 0x73, 0x65, 0x72, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x61, 0x67, 0x65, 0x6e, 0x74,
-	0x55, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65,
-	0x72, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x3d, 0x2a, 0x2a, 0x7d, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
-	0x6f, 0x33,
+	0x2c, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x9d, 0x01, 0x0a, 0x0f, 0x44, 0x65, 0x6c,
+	0x65, 0x74, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x2c, 0x2e, 0x67,
+	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68,
+	0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x55,
+	0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
+	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
+	0x74, 0x79, 0x22, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x2a, 0x21, 0x2f, 0x76, 0x31, 0x2f,
+	0x7b, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x3d, 0x61,
+	0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2a, 0x7d, 0xda, 0x41, 0x18,
+	0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x61, 0x67, 0x65, 0x6e, 0x74,
+	0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x12, 0x90, 0x01, 0x0a, 0x05, 0x51, 0x75, 0x65,
+	0x72, 0x79, 0x12, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f, 0x6d, 0x65,
+	0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52,
+	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+	0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75,
+	0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3e, 0x82, 0xd3, 0xe4,
+	0x93, 0x02, 0x16, 0x22, 0x11, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73,
+	0x3a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x1f, 0x72, 0x65, 0x71, 0x75,
+	0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65,
+	0x72, 0x5f, 0x69, 0x64, 0x2c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x85, 0x01, 0x0a, 0x04,
+	0x53, 0x79, 0x6e, 0x63, 0x12, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x68, 0x6f,
+	0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x6e, 0x63,
+	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+	0x2e, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53,
+	0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x36, 0x82, 0xd3, 0xe4,
+	0x93, 0x02, 0x15, 0x22, 0x10, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73,
+	0x3a, 0x73, 0x79, 0x6e, 0x63, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x18, 0x72, 0x65, 0x71, 0x75, 0x65,
+	0x73, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x73, 0x65, 0x72,
+	0x5f, 0x69, 0x64, 0x1a, 0x1b, 0xca, 0x41, 0x18, 0x68, 0x6f, 0x6d, 0x65, 0x67, 0x72, 0x61, 0x70,
+	0x68, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+	0x42, 0xbb, 0x01, 0x0a, 0x18, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+	0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x76, 0x31, 0x42, 0x18, 0x48,
+	0x6f, 0x6d, 0x65, 0x47, 0x72, 0x61, 0x70, 0x68, 0x41, 0x70, 0x69, 0x53, 0x65, 0x72, 0x76, 0x69,
+	0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x5a, 0x39, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+	0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72,
+	0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x68,
+	0x6f, 0x6d, 0x65, 0x2f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2f, 0x76, 0x31, 0x3b, 0x67, 0x72, 0x61,
+	0x70, 0x68, 0xea, 0x41, 0x49, 0x0a, 0x26, 0x68, 0x6f, 0x6d, 0x65, 0x67, 0x72, 0x61, 0x70, 0x68,
+	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+	0x41, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x61,
+	0x67, 0x65, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x61, 0x67, 0x65, 0x6e, 0x74,
+	0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x3d, 0x2a, 0x2a, 0x7d, 0x62, 0x06,
+	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 }
 
 var (
@@ -1561,7 +1568,8 @@
 	//
 	//
 	// The third-party user's identity is passed via the `agent_user_id`
-	// (see [RequestSyncDevicesRequest][google.home.graph.v1.RequestSyncDevicesRequest]).
+	// (see
+	// [RequestSyncDevicesRequest][google.home.graph.v1.RequestSyncDevicesRequest]).
 	// This request must be authorized using service account credentials from your
 	// Actions console project.
 	RequestSyncDevices(ctx context.Context, in *RequestSyncDevicesRequest, opts ...grpc.CallOption) (*RequestSyncDevicesResponse, error)
@@ -1578,7 +1586,8 @@
 	// `INVALID_ARGUMENT` error response.
 	//
 	// The third-party user's identity is passed in via the `agent_user_id`
-	// (see [ReportStateAndNotificationRequest][google.home.graph.v1.ReportStateAndNotificationRequest]).
+	// (see
+	// [ReportStateAndNotificationRequest][google.home.graph.v1.ReportStateAndNotificationRequest]).
 	// This request must be authorized using service account credentials from your
 	// Actions console project.
 	ReportStateAndNotification(ctx context.Context, in *ReportStateAndNotificationRequest, opts ...grpc.CallOption) (*ReportStateAndNotificationResponse, error)
@@ -1590,7 +1599,8 @@
 	// authentication](https://developers.google.com/assistant/smarthome/concepts/fulfillment-authentication).
 	//
 	// The third-party user's identity is passed in via the `agent_user_id`
-	// (see [DeleteAgentUserRequest][google.home.graph.v1.DeleteAgentUserRequest]).
+	// (see
+	// [DeleteAgentUserRequest][google.home.graph.v1.DeleteAgentUserRequest]).
 	// This request must be authorized using service account credentials from your
 	// Actions console project.
 	DeleteAgentUser(ctx context.Context, in *DeleteAgentUserRequest, opts ...grpc.CallOption) (*empty.Empty, error)
@@ -1672,7 +1682,8 @@
 	//
 	//
 	// The third-party user's identity is passed via the `agent_user_id`
-	// (see [RequestSyncDevicesRequest][google.home.graph.v1.RequestSyncDevicesRequest]).
+	// (see
+	// [RequestSyncDevicesRequest][google.home.graph.v1.RequestSyncDevicesRequest]).
 	// This request must be authorized using service account credentials from your
 	// Actions console project.
 	RequestSyncDevices(context.Context, *RequestSyncDevicesRequest) (*RequestSyncDevicesResponse, error)
@@ -1689,7 +1700,8 @@
 	// `INVALID_ARGUMENT` error response.
 	//
 	// The third-party user's identity is passed in via the `agent_user_id`
-	// (see [ReportStateAndNotificationRequest][google.home.graph.v1.ReportStateAndNotificationRequest]).
+	// (see
+	// [ReportStateAndNotificationRequest][google.home.graph.v1.ReportStateAndNotificationRequest]).
 	// This request must be authorized using service account credentials from your
 	// Actions console project.
 	ReportStateAndNotification(context.Context, *ReportStateAndNotificationRequest) (*ReportStateAndNotificationResponse, error)
@@ -1701,7 +1713,8 @@
 	// authentication](https://developers.google.com/assistant/smarthome/concepts/fulfillment-authentication).
 	//
 	// The third-party user's identity is passed in via the `agent_user_id`
-	// (see [DeleteAgentUserRequest][google.home.graph.v1.DeleteAgentUserRequest]).
+	// (see
+	// [DeleteAgentUserRequest][google.home.graph.v1.DeleteAgentUserRequest]).
 	// This request must be authorized using service account credentials from your
 	// Actions console project.
 	DeleteAgentUser(context.Context, *DeleteAgentUserRequest) (*empty.Empty, error)
